Implements the docs restructure half of the content-track design (the
currency item is code and stays unbuilt). Content stops being unbounded:
the work is now a countable checklist with an end.
content/roadmap.md — new. Three sections, only one of which is ever the
work:
Spine Greywater Docks + one dungeon, patron Ghaul the Yoke; the
cosmology touching ground. Plus what is already canon.
BOM ~57 discrete pieces for a complete, playable game, per
milestone. Numbers, not vibes.
Backlog Everything the slice does not need. Not a debt — where ideas
go to be safe.
Its rule: never author anything that is not in the Bill of Materials.
The BOM carries a Fixed/Variable column — the seven-campaign saga spec's
only ask of this table. ~37 fixed / ~20 variable: a second town costs the
20, not the 57. That is also the exact split v2 generation would need.
content/lore/canon-roadmap.md becomes a pointer (older specs and plans
reference the old path). An items-and-prices table does not belong under
lore/.
docs/roadmap.md — M4..M9 each gain a "Content it consumes →" line into
the BOM.
world-building skill — SKILL.md and evals.json now point at
content/roadmap.md, and the skill is told to respect the BOM rule: ideas
that arrive during authoring go to the Backlog, not into the world.
Build + --check green; generated content/world and content/server are
byte-identical. No Python touched.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
44 lines
2.2 KiB
Markdown
44 lines
2.2 KiB
Markdown
# /content — authored game data
|
|
|
|
Cross-cutting authored writing, split by role in the data model (see the canon
|
|
log spec in [`/docs`](../docs)):
|
|
|
|
```
|
|
roadmap.md The content track — Spine · Bill of Materials · Backlog. START HERE.
|
|
/lore Authored Markdown bibles. THE SOURCE OF TRUTH; world/ + server/ are built from it.
|
|
/world Static, ID-referenced game content. Identical every playthrough. BUILT.
|
|
/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)
|
|
/server Spoiler bodies + personas. API-only; excluded from the client export. BUILT.
|
|
/origins Thin starting-state seeds. One per starting point. POC authors one.
|
|
/fallback Authored degraded-DM text for every AI surface (charter §13)
|
|
```
|
|
|
|
**[`roadmap.md`](roadmap.md) governs what gets authored.** Its rule: *never author
|
|
anything that is not in the Bill of Materials.* Ideas that arrive go to its Backlog.
|
|
|
|
## 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).
|