Overview Make a clue game Make a spelling game Make a categories game Make word golf Make a dictionary Antonyms

Make a spelling game

Here we make an anagram game where the player solves for common words. One pool of seven letter tiles yields four words — 4 letters, 5, 6, then the 7-letter word that uses every tile. The commonness is the player’s own tool: knowing the hidden words are common, they filter their guesses by feel — TREES before CREST. A wrong-but-real word is a building clue, showing which letters sit right; the 7-letter answer can also take a word hint. Try it below.

DEMO
TRY IT: LETTER UNSCRAMBLER

Drag or tap the tiles to make each word, from 4 letters up to the final 7:

YOUR TILES
DECODE A COMMON 4-LETTER WORD
THE EASY WORDS

<Demo 1/50>

Spelling, guided by meaning

A letter-circle spelling game where the hints come from meaning. Players get three related words, partially revealed, and work toward a hidden answer. Every clue is pulled straight from the association data — and filtered so it shares no letters with the target, which here is a one-line query.

Definitions players understand, short clues sized for gameplay, and relationships strong enough to hint without giving the answer away.

Problems

Relevant data sources from Linguabase

This example draws on 5 of the 13 Linguabase tables — three to build the puzzles, two to show them to the player.

vocabulary A familiarity rank for every word. Everything below reads this one column: it decides what can appear in a puzzle at all, and where.
scores & labels The filter: a content rating and a sensitivity score, so a family game can hold itself to G and PG.
word families Which words are relatives. Keeps SMELL and SMELLY out of the same month, and a clue from quietly containing its own answer.
clues Short suggestive hints, close to cryptic — 26 angles apiece, so the same row can clue easy or hard.
definitions One plain readable paragraph, shown when a level ends.

Example 1: Can the game mechanic yield a lot of puzzles?

All word games are constrained by how letters are distributed across English words. Explore the solution space given a series of constraints — seven filters — starting from a baseline: the top 200,000 most familiar words in English, a list that reaches well into advanced collegiate vocabulary.

PROCESSING QUEUEDATA INSPECTOR
NEXT STEP
1

    

DATA INSPECTOR

The business question above is how many unique puzzles can be created — and step 9 lets you re-run the pipeline with different caps. Even so, the constraints yielded thousands of puzzles. By comparison, here are some other wordplay puzzles where the final solution space is much smaller. You could fill a book or a magazine, but not create years of daily puzzles:

The next question is how familiar the words in the game should be.

Example 2: What word hardness/easiness feels right?

How hard a word feels is an intangible — it depends on morphology (whether you can pattern-match your way into it) and on whether the word lives in your active vocabulary, your passive vocabulary, or neither. The Linguabase familiarity ranking is a proxy for how hard a word is, with the most broadly familiar words near the top. Deeper in the list are harder words, then technical jargon, rarities, and spelling variants; the bottom of the list is no longer English at all — proper nouns, OCR errors, and other noise.

BASIC that yes 10 · 15 BASIC time dog 100 · 106 EASY orange newspaper 1,005 · 1,007 CONVERSATIONAL unstoppable fingerprint 10,004 · 10,007 ADVANCED emblematic monosyllable 99,994 · 99,998 RARE debarring vascularity 299,997 · 300,001 OBSCURE unskittish monopolizability 999,999 · 1,000,000 NOISE lamebrians absolber 1,983,160 · 1,983,161 rank 1 1,983,183 words · linear scale

The low end of the list is its own kind of data. LAMEBRIANS and ABSOLBER arrived through OCR and online text — the first is lamebrains with two letters swapped, the second is absolver with a b for its v — and the scoring pushed them to the far end. Read this way, the low end is knowledge about probable errors: a catalog of the misspellings, scan artifacts, and character swaps that real text contains, each traceable to the word it corrupted.

We will stay in the realm of common and familiar words. Try varying the two caps here — one for the three easier words the player solves first (the easy words), one for the seven-letter word that ends the level (the answer):

Let easy words rank as deep as…
Let answers rank as deep as…
· — this page’s setting

The rest of this page uses 50,000 and 70,000: 1,510 puzzles, four years and one month of dailies. If you wanted ten years of dailies, no setting on this dial reaches it.

Example 3: Pre-build hundreds of game levels

Next, the levels themselves: five steps take a candidate from the finale list to a shipped level. The same seven tiles spell RESPECT and SPECTER — which one should ship? Let’s push RESPECT through the five steps and find out, watching the level record build on the right. The full script follows below.

BUILD QUEUELEVEL RECORD
NEXT STEP
1

    

LEVEL RECORD

Example 4: Build data package to validate solutions, and give clues, hints and feedback

A level ships with its display text: a word hint the player can request on the answer, an angle under each solved word as validation, and a line for every stray find. Two tables supply it — clues for the angles, definitions for the meanings — with word families filtering out any angle that gives the answer away. Tap each word of level 608:

THE DISPLAY PACKAGE · LEVEL 608
tap a word

Building the package is column selection. The clues table carries 26 angles per word, one-word through situational; the build takes the first angle from a stated priority order that survives the giveaway filter. PENSION’s “Superannuation disbursement” is discarded because superannuation is in pension’s word family. Definitions become the one-line meanings by trimming at a word boundary, markup stripped. The other hint in the demo costs no data at all — revealing a letter needs only the answer.

There are two kinds of wrong guess. A real word that is not the answer is a building clue — the letters it placed correctly stay put:

It’s not C-R-E-S-T. But the “R” and “E” were right. Keep guessing, it’s a common word!

Its display line lands under the message — every findable word carries one:

crest: “A crest is the highest point or top of something—the crest of a hill, the crest of a…”

A non-word earns nothing:

S-R-E-C-P isn’t a word here. Tap letters to remove and try again.

Distinguishing the two takes a word list in the page. How big? For the first stage of level 608: four slots, seven tiles — 7·6·5·4 = 840 ways to lay the tiles, 480 distinct strings once the doubled E collapses duplicates, and 16 of those strings are words in the top 200,000 of the familiarity list. One is the answer. Packed, the sixteen are a 64-byte string — tap a word to seek it:

SEEK IN THE PACKED STRING · THE 4-LETTER BUCKET
tap a word above

A guess seeks the string for its own length, at offsets divisible by that length; an aligned hit is a word. Four packed strings per level, one per length, and the whole fifty-level embed is 10.6 KB minified. The demo above runs on this exact structure.

The whole package for the fifty demo levels: 10.6 KB of packed word strings, 127.6 KB of display lines for the 1,336 findable words, 13.4 KB of clue angles for the level words — about 152 KB all told. The split is the finding: validating words costs a tenth of it; saying what they mean is the rest.

Example 5: Use the data packs at runtime

Nothing is computed at play time: each level’s content rides in the game’s bundle, written once by the build above. Toggle the first three demo levels and read what each one carries:

THE LEVEL BUNDLE
See data for level: 1

Play time is lookups, nothing more: seek a guess in its packed string, compare it to the answer, read the lines off the bundle.

Outputs

At this point the mechanic is counted (Example 1), the caps are set (2), the levels are built and vetted (3), and the display package is assembled (4). What each table contributed:

Example 1
(counting)
Example 2
(hardness)
Example 3
(levels)
Example 4
(display)
vocabularythe ranked list itselfrank is the dialpicks answers and easy wordsthe words themselves
scores & labelsG/PG + sensitivity filtersame filter, both lists
word familiesplural and kinship filterseasy words must be unrelateddrops clues that name a relative
cluesstep 5 attaches two anglesexpert and learner registers
definitionsstep 5 attaches meaningsa line for each stray find

Other considerations

1,510 is one spec against one release. Still open:

Next steps

For anagram-like games: download the tables from any of the three repositories, hypothesize your own game mechanics, and test them the way Example 1 tested this one — enough puzzles, and the right vibe of words — then build out the scripts in your language of choice. The walkthrough demos and each table’s README on the mirrors go deeper — and this page itself is a workable hand-off to whoever builds for you.

To help, two heavily documented draft scripts for you or your coding agent to continue from: