Skip to main content

The Docs

One deterministic core. Three kinds of game. Every new game is content, not code — that's the bet, and the front page makes the case for it.

The Game Engine is a deterministic, game-agnostic narrative-game platform. This is its generated human documentation, in the order the sidebar presents it. Canonical agent inputs live under design/; the project's front page — what it is, where the code lives — is the site root.

Orientation​

Start here. Two documents, and between them the shape of the whole thing.

DocumentHolds
VisionWhy the platform exists; the core/kind/campaign model
ArchitectureEvery settled architecture decision, with rationale — the contract (decisions)

Contracts​

What the engine is, as types. Each is scoped deliberately and cross-references the other by section number.

DocumentHolds
The CoreThe core as types: the Kind interface, the GameState envelope, the engine API, projection, validation — the contract (types)
Story-Graph KindThe flagship kind: nodes, choices, typed variables, consequences, endings, turn and settle semantics
ObservabilityLogging and tracing: the operational event channel, and the rules that keep it from breaking determinism
ExtensibilityWhere the engine can be extended and by whom: the ports a host supplies, and why the determinism boundary is the trust boundary
ReplayThe regression oracle: replaying committed fixtures across engine versions, and what "the same game" means when the bytes may differ
Session CaptureTurning a played session into a fixture: what may be taken from a person, what is refused, and how long it lives
ClientsThe client contract: what a client may and may not do, and the API coverage checklist that verifies it
Playable Web DemoHistorical record of the first public browser client; the successor is SubZeroDev.Adventures
Game InterfaceHistorical record of the engine repository's adventure cabinet; presentation now belongs to the Adventures client
Platform Static HostThe first Platform consumer: a product-owned container that serves the same verified static artifact, publishes immutably, and deliberately stops before hosted engine execution or deployment
Simulation KindThe second kind, expressed against the Kind seam: the week as a turn, plan actions, and what its state must not duplicate
Content PacksResolving many packs into one frozen registry — merge, override, dependency — and the identity that keeps a game reproducible
Content EpochsPublishing new content into a running host: epochs, adoption at recorded log positions, pinned sessions, and the kind's judgement
World-Graph KindThe third kind: a tick batch as a turn, spatial verbs, and the batch-invariance property that keeps presentation speed out of the results

The Core comes first deliberately: 04 implements 03 as types, and the core is the shorter way in. The two drift apart more easily than anything else here — a canonical edit to one that is not reconciled in design/20-contract.md is this project's most common defect.

Delivery​

What ships first, in what order, and what is still undecided.

DocumentHolds
MVPThe smallest slice that proves the platform, and its Definition of Done
TODOThe delivery ledger: open items carried forward, and every landed unit with its pull requests
Open QuestionsLiving register of unknowns and deferred decisions; §1 is a decision log

Working on It​

Not specifications — how to build, run, and check what the specifications describe.

DocumentHolds
Developer GuideSequential integration guide generated from the canonical brief, design, and contract
Engine PackageThe npm package: layout, commands, the determinism guard
Documentation SitePreviewing this site, what is generated, and the two link checks