The Startup Contract
Package provenance — this chapter ships with the Ontology & Structure Engine. Provenance tag:
source-ontology-project. When loaded into a new world, grep the tag to find the engine's templates and instructions.
This engine is a system module, not a world. When it is loaded into a fresh project — cloned, copied, or dropped in as a dependency — it does not assume a setting. It asks. The startup contract is the promise about what gets asked and what gets done with the answers, so anyone booting the module knows what to expect and how to override it.
The vision pass
Startup opens with a vision pass before the structured questions: it asks for scope, themes, narratives, flavor, and secondary genres (intent is part of it too) in the user's own words. The answers land immediately in the World Vision scaffold (world-vision, folder /World Visions/) — a writable, premade document that startup creates at the very start and fills as the user speaks. The scaffold is the recovery point: because it is a normal writable file, an interrupted or time-limited setup loses nothing. The user — or a later session — can finish or modify setup from the scaffold at any time, either through the assistant ("continue the setup") or by editing the scaffold directly with the world-building tools.
Every question: examples plus write-your-own
Every startup question follows one pattern: a handful of example picks, each carrying backend direction (what the engine sets and scaffolds when that example is chosen), plus a write-your-own field for the user's own answer. The examples are starting shapes, not forced enums — a user-defined answer always overrides the picked example and is recorded in their own words. The per-step map lives in the Builder's Manual chapter Startup Examples; the game-system families have their own deep chapter (Game Systems).
The core questions
| Question | What it sets |
|---|---|
| Genre | The scaffolding bias — fantasy grows magic and religion folders, science fiction grows technology |
| Magic level (none / subtle / common / pervasive) | Whether a magic system is recorded, and whether /Lore/Magic/ exists |
| Magic system | How magic works — source, cost, who can cast (asked when magic level is not none) |
| World name | The namespace everything new is filed under |
| Era | The temporal anchor every lore file carries |
| Tone | How content is presented — canon levels are read through the world's register |
| Intent (one-shot → sandbox) | How much content and structure to scaffold now |
| Game System | Which mechanics the world runs on — the stock family (d20 / d100 / narrative / wow-derived) or a written-in system; recorded as gameSystem (+ gameSystemSummary) on the profile; the Game Systems chapter holds the internal summaries that drive rule generation |
| Scope | How much world and how deep — one region, a continent, a whole cosmos |
| Themes | What the world is about; the questions its stories ask |
| Narratives | Arcs, tensions, and hooks available to play |
| Flavor | Texture and register — the sensory signature |
| Concepts included | The opt-in domain list from the Startup Checklist — which content domains get scaffolded at all. Un-picked domains are declared absent. |
The World Vision scaffold (world-vision, /World Visions/) is the writable record of these intent answers; the World Profile (world-profile, folder /World Profiles/) is the canonical store of the world's identity. The world profile is the sheet the whole world hangs from; every later file carries its era and aims at retrieval.
Follow-up guidelines
Answers branch into follow-ups only when they matter — fantasy asks about gods and species; a world without magic asks what replaces wonder; a grim tone asks how dark and what hope remains; a sandbox asks which factions the players can push on. The questionnaire stops when the world is playable; it never interrogates. Extra vision offered mid-flow is appended to the scaffold so nothing said is lost.
What startup executes
Given answers, startup applies them (including the game-system pin and its rule generation — see the Game Systems chapter):
- Writes the vision pass into the World Vision scaffold (
scope,intent,themes,narratives,flavor,genres,setupStatus: draft). - Completes the scaffold into the World Profile file, including
conceptsIncluded, andgameSystem+gameSystemSummary; links the scaffold'srelatedProfileto it. - Scaffolds the lore tree for the genre — Geography, History, and Culture always; Magic, Religion, Technology, Economy when the answers warrant them.
- Generates mechanic
rulefiles per the game-system summary — d20 checks/combat/rests, d100 skill tests and experience, narrative clocks and conditions, wow-derived resources and item level. Internal summaries live in the Game Systems chapter; never invent derived math (AC, HP, modifiers) on a family — narrative — that must not carry it. - Creates starter content only in the selected concept domains. Everything not picked is declared absent on the profile so recall never hunts for content the world decided not to have.
- Generates the founding lore chunk and sets the world's starting canon.
- Builds all new content in the new world's namespace.
The example and legacy policy
Files tagged example are templates, not the world. Startup never auto-deletes them — it builds the new world alongside them. When a file's future is in question the order of preference is reuse, rename, retire, delete — deletion only with explicit user approval. Retirement is a holding state, not an endpoint.
Cloning
Assistant instructions may not survive a clone; the Builder's Manual is the portable copy of the conventions. To restore automatic prompting, re-add the World Bootstrap Sentinel instruction, which runs the Startup Protocol — or this chapter plus the Startup Checklist and Startup Examples chapters when the protocol file is absent.
Overriding
The contract is mutable by design. The scaffold is a normal writable file: edit scope, intent, themes, narratives, flavor, genres, gameSystem, gameSystemSummary, or setupStatus directly and ask the assistant to pull in the changes. A builder who dislikes a default changes the profile type, the startup instruction, or the example options in the creation flow, and the module adapts.