# /content — authored game data Cross-cutting authored writing, split by role in the data model (see the canon log spec in [`/docs`](../docs)): ``` /world Static, ID-referenced game content. Identical every playthrough. /locations The map — towns, dungeons, points of interest (by id) /npcs Per-NPC persona + knowledge lists (charter §6) /quests Story skeletons and quest definitions (charter §17) /items Item definitions — gear, consumables, cursed items (§7) /origins Thin starting-state seeds. One per starting point. POC authors one. /fallback Authored degraded-DM text for every AI surface (charter §13) ``` ## The three layers - **`world/`** is static content the origin and the canon log reference by stable string **id**. Authored once; the same for every play. - **`origins/`** are thin seeds — where the player starts, the situation, and disposition/quest/item/build seeds. Values, not maps. Increase replayability without multiplying authoring work. - **`fallback/`** is not world content — it is degraded-DM prose (§13), consumed when the API is down. It sits outside `world/` on purpose: nothing resolves an id against it. At new-game, code constructs the runtime **canon log** from a chosen origin + world content + character creation. See [`/docs/canon-log.md`](../docs) (spec) — authored via the design under [`/docs/superpowers/specs`](../docs/superpowers/specs). ## Authoring notes - **NPC knowledge lists are the whole design** (§6). The only thing stopping the blacksmith from revealing the twist. Real authoring work — budget for it. - **Fallback text is content, not error handling** (§13). Every AI-dependent surface needs one before it ships. - Story skeletons are authored for now. AI-generated skeletons are v2 (§17).