The whole machine, written down: every rule, every number, every seal, and a pass you can walk to prove it all still works. Spoilers throughout — this is the workshop manual, not the player's.
Two things check the build, and both are meant to be run before you trust a change.
node _tests/harness.mjs from the Emberglass folder. It pulls the simulation
out of the HTML between the CORE markers and runs it with no browser at all, which is why the
whole game is testable from a terminal. 131 checks at last run, and it exits non-zero if any fail.
It proves, among other things: the opening inscription and each of its five ablations; every one of the six seals opening by its intended route; the water actually arriving in the cistern after two gates are open; the lens igniting the brazier at midday; light reaching the deep monument down a fused conduit; save and load surviving a full round trip; and the soft-lock audit coming back clean.
In-game: Menu → Run the soft-lock audit. It walks every seal's requirement and proves the materials it needs are renewable and reachable, that no seal is walled behind another seal's only barrier, that every ancient barrier has a physical route that can break it, and that the last chamber has no targetable cell in its shell. A world with no undo may not contain a dead end, so this is a build failure, not a warning.
| Do this | Get that |
|---|---|
| ←→↑↓, drag, wheel | Pan. Hold Shift to pan far. |
| Click a cell | Put your attention there. That cell is what every sentence acts on. |
| Click something written | Read it. Your attention stays where it was. |
| Shift + click | Attend to a written cell instead of reading it. |
| Tab / Shift+Tab | Step through the notable places in view. |
| The 24 letter keys | Put that mark on the line. Click a key's label to name it. |
| Enter | Say the line. |
| Backspace / Esc | Unsay the last mark / clear the line. |
| 1–8 | Say a kept phrase outright. Shift+digit keeps the line there. |
| 0 | Say the last thing again. |
| Click a phrase slot | Put it on the line without saying it. |
| Space | Hold the world still. |
| + / − | Zoom. Your choice is remembered. |
The one rule that governs everything: a sentence keeps working for as long as your attention stays on the cell you said it to. Move the cursor and it stops, and what it was holding relaxes at its own rate. You have one cursor. Everything difficult in this game is a consequence of that sentence.
One tick per second, always running. Temperatures below are what the panel shows; internally they are tenths. The scale runs −3.0 to +5.0, and 0.0 is freezing.
A sentence with the repeating mark in it stays where you put it and says itself every tick with no attention on it. It costs the cell it stands on 1 integrity every 8 ticks, and it dies when there is nothing left to wear through. Twelve at most, and the chalk ring will not keep one past dawn.
Written here by design name. In play, every binding is seeded — see §9 for yours.
utterance := qualifier* ACT subject? qualifier*
Exactly one act. A qualifier before the act changes the act; after it changes the target. An act with no subject lands nowhere at all — that is the load-bearing lesson of the opening wall.
| Act | Does | Turned inside out by NOT |
|---|---|---|
| KINDLE | +1.0 a tick to the target | Heat-absence: pulls 0.8 out of every neighbour and puts 0.4 into the target |
| QUELL | −1.0 a tick | Cold-absence: the same trade, the other way |
| FLOW | Unholds it and shoves it one step downhill; moves wetness into porous ground | Stillness — held only while you hold it |
| BIND | Holds the cell in the state it is in | Makes it refuse to be held |
| LOOSE | Releases a hold and any kept form. Refused by ancient stone | Makes it refuse to be loosed |
| GROW | Advances a living thing | Withers it a stage |
| UNMAKE | −1 integrity. Refused by ancient stone | — |
| SHAPE | Imposes the form you then draw, and the cell keeps it. Sand, ice, glass, ore, stone, held water | — |
A subject picks what the act lands on. THIS is the cursor cell alone; every other subject takes everything of its kind within 3 cells. ALL-WITHIN floods the whole connected interior you are standing in, up to 400 cells.
| Subject | Selects |
|---|---|
| THIS | the cell your attention is on |
| STONE | stone and broken rock |
| WATER | water, and air holding wetness |
| WOOD | wood |
| SAND | sand |
| THAT-WHICH-IS-COLD | anything at or below 0.0 |
| THAT-WHICH-LIVES | moss, wood, root, and anything with growth in it |
| ALL-WITHIN | the enclosed space you are inside |
| Qualifier | Before the act | After the act |
|---|---|---|
| NOT | turns the act inside out | inverts the subject — everything but that |
| TWICE | double strength | says it twice in one breath |
| SLOWLY | a third of the strength. NOT SLOWLY is two and a half times | gentler still |
| OUTWARD | spreads out from the target as you hold it | +4 cells of reach at once. With TWICE, doubled again |
| WITHIN | works on what is inside the cell — its wetness, not its substance | picks out enclosed cells |
| AGAIN | leaves the sentence standing where you put it, saying itself, at the cost of the cell | |
| BEGINNING | with GROW: seeds new life in wet ground next door | retargets to the origin of that kind — the spring, the root |
| ENDING | stops what is ongoing: standing words on the cell, growth, and a fire that is burning there | |
None of these is stated anywhere in the world. All nine fall out of §3 on their own.
| Compound | What it takes | Evidence left lying about |
|---|---|---|
| Grey fused sand | sand at 4.0+ for 12 ticks, then left to cool | the workshop floor, thickest at the hearth ring |
| Clear fused sand | the same, then a fall of 2.0 or more in one tick | the pieces by the trough at the cold end |
| A lens | anything clear, solid, and curved by SHAPE — glass, or ice that is held | the shattered curved thing, and the deep scorch under its arc |
| Gathered light | a lens in sunlight; the focus lands 4 cells along the sun's ray and drives that cell to about +3.4 above ambient | the thumb-sized scorch on the floor of the deep pool |
| Steam force | an enclosed wet cell at 3.0; every third tick costs all four walls a point | the burst chamber, its pieces pointing away, and its intact twin |
| Frost wedge | water freezing with 2+ rock neighbours takes a point from each | the boulder split on one clean line, with a crack that held a cup of water |
| Root split | growth 3 pressing on rock: 24 ticks per point, built stone first | the wall that lost, with the root lying through the gap |
| Fertile ground | ash + wetness doubles growth | the burn scar in the gorge, greener than the stone around it |
| Hardened ore | ore over 3.5, then a fall of 2.0 in one tick | two discarded lumps, a scorch, and a trough that once held water |
Every one of them asks a question about a cell and opens when the answer is yes. None of them knows or cares how you did it.
| Seal | The question | Routes that work |
|---|---|---|
| The kiln door Region 1 | Is the sconce cell burning? | Anything that gets dry wood to 2.0. Two marks will do it. |
| The sluice plug Region 2 | Has any plug cell lost all its integrity? | Freeze the water standing in the plug's crack; each freeze costs three plug cells a point. Ancient, so unmaking is refused. Steam or a root would also do it. |
| The crucible seal Region 3 | Is there clear fused sand inside the ring? | Hold the ring's sand at 4.0+ for twelve ticks, then chill it hard in one breath. |
| The inner seal Region 4 | Has any seal cell lost all its integrity? | Heat the enclosed water pocket against it past 3.0 and let the pressure work. The seal has 3 integrity, so three bursts. Its other walls put themselves back, so it is always retryable. |
| The built wall Region 5 | Has any wall cell lost all its integrity? | Water down the swallow-hole wets the root lying against the wall; warm it into its window without setting it alight, and wait. Frost or steam also work if you can get water to it. |
| The last inscription Region 1 | Is the brazier burning? | Sunlight through a held, curved, clear thing four cells above it. Or molten ore poured down the vein into the chamber. Or anything else that leaves it burning — the shell is untargetable, so the world has to do it for you. |
Twenty-eight things to name, three rules of the place with nothing to call them. An entry is recorded the first time it happens on your screen — the ledger is your notebook, not the world's. This doubles as a coverage list: if you can trip all thirty-one, the simulation is intact.
| Entry | Fires when |
|---|---|
| ignition | anything reaches its ignition point dry |
| spread | a burning cell has a burning neighbour |
| standing-word | you leave a sentence standing |
| residue | something burns down to ash a thing |
| wet-suppress | fuel hot enough to burn refuses, being wet |
| evaporate | wetness leaves a warm cell |
| white-rime | the last wetness dries and leaves grain a thing |
| hard-water | water freezes a thing |
| thaw | ice softens back |
| split-by-cold | freezing water opens the rock around it |
| steam | water boils |
| burst | enclosed pressure breaks a wall |
| held | you hold a cell |
| form-kept | a cell keeps an imposed form |
| curve | that form is a bend |
| fused | sand comes out grey a thing |
| clear-fused | sand comes out clear a thing |
| light-through | light crosses a solid clear thing |
| gather | a lens focuses sunlight |
| scorch | the focus burns what is under it |
| molten | ore, glass or sand passes 4.5; stone passes 4.8 |
| quenched | hot ore is chilled hard a thing |
| growth | a living thing advances a stage |
| bloom | growth runs double over ash |
| root-split | a root takes a point out of built stone |
| regrow | a root puts out new wood |
| collapse | a cell loses its last integrity a thing |
| absence | you turn a heat act inside out |
| heat-rise | a cell stands hotter than its neighbours — a rule of the place |
| slump | loose grain slides — a rule of the place |
| level | water finds its level — a rule of the place |
Forty minutes, in order, from a fresh world. Each step says what you should see. Keys are given for
the default seed; if you are on another seed, use your own dictionary. Menu → New world with a blank
seed box gives you a fresh emberglass only if you type it — otherwise you get a random one.
This is the answer key. Every binding below is generated from the seed
emberglass, which is the world you get on first load. Reading it ends the game as a game —
it is here so a build can be verified in minutes rather than hours. A new seed rebinds all of it.
Every mark is built from these, in fixed places on a 3×3 tile with a dot at the centre. Crack this and you can read a mark you have never seen.
| Mark | Where it sits | Means |
|---|---|---|
| o | top left | heat |
| \ | top middle | binding |
| c | top right | origin |
| n | left middle | flow |
| + | right middle | repetition |
| - | bottom left | negation |
| = | bottom middle | self-reference |
| i | bottom right | interiority |
So o alone is to kindle, o with - is to quell, and
o - = is that which is cold — heat, negated, made a thing. The subjects all carry
=; the acts never do.
| Key | Kind | Is | Built from |
|---|---|---|---|
| Q | subject | ALL-WITHIN | self + interiority + repetition |
| W | qualifier | AGAIN | repetition + flow |
| E | act | SHAPE | binding + interiority |
| R | subject | SAND | self + repetition |
| T | qualifier | TWICE | repetition |
| Y | subject | THAT-WHICH-LIVES | self + origin + repetition |
| U | qualifier | NOT | negation |
| I | subject | THAT-WHICH-IS-COLD | self + heat + negation |
| A | qualifier | BEGINNING | origin |
| S | subject | WOOD | self + origin |
| D | act | KINDLE | heat |
| F | act | FLOW | flow |
| G | act | QUELL | heat + negation |
| H | qualifier | ENDING | origin + negation |
| J | subject | WATER | self + flow |
| K | qualifier | SLOWLY | flow + negation |
| Z | qualifier | OUTWARD | interiority + negation |
| X | subject | STONE | self + interiority |
| C | qualifier | WITHIN | interiority |
| V | act | GROW | origin + repetition |
| B | act | UNMAKE | binding + interiority + negation |
| N | act | BIND | binding |
| M | subject | THIS | self |
| , | act | LOOSE | binding + negation |
The opening: Z T D M W — outward, twice, kindle, this, again.
The last: A D I C — beginning, kindle, that-which-is-cold, within.
A cold that burns.
His second entry glosses the single mark on the sluice plug as water. It is N — BIND. He wrote water against it in four places and could not understand why the pools would not go down. Anyone who trusts him carries that mistake until they test it.
Deviations from the design spec, with reasons, are in
NOTES.md beside the game file. The simulation lives between the CORE markers in
Emberglass.html and touches no DOM, which is what makes all of the above checkable from a
terminal.