Narrative Engine
Your narrative design package, drafted end to end.
Beat sheet, cast and world bible, quest state machines, dialogue trees, barks, string table. Every beat bound to a mechanic. Validated before it reaches you, exported as a git repository you own.

This is not runtime AI NPC dialogue. Nothing here talks to your players. Narrative Engine works upstream of that — it writes the design document those systems are built from, and hands it over as files.
- 03Beat sheetyou edited
- 04Cast · World
- 05Questsstale
- 06Dialoguestale
- 07Carriersstale
- 01You rewrite one beat in the beat sheet.
- 02The engine works out exactly which later work was built on that beat, and marks it stale.
- 03Cast and world never depended on it, so they are left alone — and so is every line you wrote yourself.
What makes it different
Every row below is a real difference in what the software does, not a claim about quality.
| Elsewhere | Here |
|---|---|
| Generates dialogue. | Generates the whole narrative design package. |
| Improvises at runtime. | Locks down at design time — into git, diffable, exportable. |
| An AI button inside an editor. | A pipeline with validation. Work that fails the checks does not reach you. |
| The AI writes, then you rewrite. | The AI drafts, you sign off. What you have inked, no model touches again. |
| Story and mechanics are written separately. | Every beat is bound to a mechanic — enforced by the schema, not by discipline. |
| A framework library: templates for you to fill in. | Methodology packs: executable rules, critic checklists and pacing constraints that take part in validation — and you can bake two of them off against the same project. |
| Change one thing, regenerate everything. | A dependency graph with dirty propagation: change a mechanic and only what actually depends on it is rebuilt. |
What comes out
Each stage is a narrow contract. You approve at the gates; nothing runs on past you.
- 01
Mechanic ideation
Playable loops drawn out of your idea, before any prose exists.
- 02
Direction divergence
Distinct narrative directions to pick between — an approval gate, not a suggestion.
- 03
Beat sheet
The structure, every beat bound to a mechanic and placed on an emotional pacing curve.
- 04
Cast · World
Character dossiers with a voice bible each — register, verbal tics, forbidden words — plus the world bible.
- 05
Quests
Quest state machines: preconditions, effects, failure branches.
- 06
Dialogue
Dialogue trees with no dead ends and no unreachable nodes.
- 07
Carriers
Cutscenes, barks, environmental storytelling, system text — the four ways a story actually reaches a player.
- 08
Export
Yarn Spinner files, a string table with stable IDs, and the whole project as a git repository with its history.
Pencil, ink, inked
Anything the model drafts is pencil. Anything you have edited is ink. Anything you lock is inked — and no later generation, revision or dirty-propagation pass will overwrite it. This is enforced in the engine, not by convention: a code path that writes over an inked field fails its tests.
It is your repository, not our database
A project is a directory of plain text. Export gives you a git repository with the full history — every generation, every edit, every approval as a commit — plus Yarn Spinner dialogue and a string table whose IDs stay stable across regenerations, so localisation does not shift under you. If you stop paying, you can still read, edit, diff and export everything you have.
Why not just ask a chat model?
You can, and for one scene you should. What you get back at the scale of a whole game is a document that reads well, cites characters that were never defined, paces flat in the middle, and treats story and mechanics as two separate jobs. And when you change one mechanic, you start over. The value here is not access to a model — it is the orchestration, the methodology packs and the validators around it.
See what it writes
New accounts get 100 points. That is enough to take an idea through mechanic ideation, narrative directions, a beat sheet and first-level validation — enough to judge the writing before you decide anything.
Start free with 100 points