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.

The beat sheet inside Narrative Engine: an emotional pacing chart across three acts, then each beat with its summary, the mechanic it is bound to, the characters on stage, and what it reveals. The validation panel reads all green.

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.

  1. 03Beat sheetyou edited
  2. 04Cast · World
  3. 05Questsstale
  4. 06Dialoguestale
  5. 07Carriersstale
  1. 01You rewrite one beat in the beat sheet.
  2. 02The engine works out exactly which later work was built on that beat, and marks it stale.
  3. 03Cast and world never depended on it, so they are left alone — and so is every line you wrote yourself.
Change the beat sheet and the engine knows exactly what it invalidated. Only what actually depends on it is rebuilt — the rest, and everything you wrote yourself, stays.

What makes it different

Every row below is a real difference in what the software does, not a claim about quality.

ElsewhereHere
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.

  1. 01

    Mechanic ideation

    Playable loops drawn out of your idea, before any prose exists.

  2. 02

    Direction divergence

    Distinct narrative directions to pick between — an approval gate, not a suggestion.

  3. 03

    Beat sheet

    The structure, every beat bound to a mechanic and placed on an emotional pacing curve.

  4. 04

    Cast · World

    Character dossiers with a voice bible each — register, verbal tics, forbidden words — plus the world bible.

  5. 05

    Quests

    Quest state machines: preconditions, effects, failure branches.

  6. 06

    Dialogue

    Dialogue trees with no dead ends and no unreachable nodes.

  7. 07

    Carriers

    Cutscenes, barks, environmental storytelling, system text — the four ways a story actually reaches a player.

  8. 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