docs(decisions): record 24 workshop decisions and updated questions
D-records from Where's the Fun workshop across architecture, content, and scope domains. Updated open questions for v0.2 pivot. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
+116
-2
@@ -10,6 +10,7 @@ How narrative, NPCs, and world content are created: content tiers, NPC generatio
|
||||
- **Rationale:** A galaxy-spanning game needs content architecture that scales without hand-crafting everything. The life-sim substrate creates attachment that gives conspiracies emotional weight. Pool-based Tier 1 modules enable replayability and DLC expansion.
|
||||
- **Raised by:** Team Leader (Jeroen), with full team endorsement across 3 rounds
|
||||
- **Dissent:** None
|
||||
- **Amendment (2026-03-05, Where's the Fun? Workshop):** Tier 1 "authored drama modules" concept is deferred for v0.2. [D-114](scope.md#d-114-v02-proof-of-life--generator--graphics-not-hand-built-slice) (generator-first proof-of-life) and [D-127](#d-127-player-choices-are-the-content--rimworld-model-job-as-rails) (player choices are the content) establish that v0.2 ships zero authored drama modules. The three-tier architecture remains valid for the full game, but the Tier 1 pool is empty by design in v0.2 — generator-first validates Tier 2 and Tier 3 before Tier 1 modules are authored. Tier 1 will be authored after the generator spike (D-119) proves legible characters and readable relationships.
|
||||
|
||||
### D-024: NPC generation model — 10 axes + combat component
|
||||
- **Date:** 2026-02-10
|
||||
@@ -17,6 +18,7 @@ How narrative, NPCs, and world content are created: content tiers, NPC generatio
|
||||
- **Rationale:** Axes that create contradictions within NPCs produce player decisions. The 5 key interactions (Want×Secret, Routine×Secret, Tolerance×Relationships, Want×Relationships, Personality×Tolerance) drive the full investigation-and-social gameplay loop. Contentment axis (proposed by Gore) connects generated NPCs to the thematic spine. Combat as component follows the same pattern as perception modes ([D-017](perception.md#d-017-perception-modes-as-character-build-system)).
|
||||
- **Raised by:** Gestalt (consolidation), Gore (contentment axis), Paula (triangle model), Tyre (combat component). Full team endorsed.
|
||||
- **Dissent:** None
|
||||
- **Amendment (2026-03-05, Where's the Fun? Workshop):** The 10-axis model and core generation logic survive. However, [D-122](#d-122-all-npcs-generated--no-named-hand-authored-characters) (all NPCs generated) removes all named hand-authored NPCs from v0.2. Named NPCs and hand-authored triangles are now generator outputs, not authored content. The 10 axes apply to all generated NPCs. The `NpcBlueprint` struct (Tyre prerequisite for D-119 generator spike) must encode these axes as generator output format. Cultural/origin template (previously called "generation-time flavor") is now the primary driver per [D-128](#d-128-culture-implicit-in-starting-location--krenn-system-equals-krenn-culture) and [D-121](#d-121-voice-is-culture-driven--job-as-modifier).
|
||||
|
||||
### D-025: Social site / functional cluster as atomic template unit
|
||||
- **Date:** 2026-02-10
|
||||
@@ -31,6 +33,7 @@ How narrative, NPCs, and world content are created: content tiers, NPC generatio
|
||||
- **Rationale:** All four layers are load-bearing — each enriches the previous ones. Tagged pools avoid combinatorial explosion while trait modifiers produce character variety. The generation pass (write 10, generate 40) scales authored content. Every memorable line needs a human hand; the generation pass fills the background.
|
||||
- **Raised by:** Mellanie (authoring model), Paula (relational layers), Gestalt (axis-to-pipeline mapping), Tyre (previewer feasibility)
|
||||
- **Dissent:** None on model. Minor ordering difference: Mellanie front-loads access tiers (structural), Paula front-loads relationship history (narrative). Both sequences work.
|
||||
- **Amendment (2026-03-05, Where's the Fun? Workshop):** The tagged line pool architecture survives for authored content, but the v0.2 NPC content pipeline pivots to AI-assisted templating. [D-123](#d-123-generative-ai-for-npc-content-templating-via-culture-vectors) (generative AI for NPC content) replaces the hand-authoring model for NPC dialogue pools. The four relational layers remain valid as a selection architecture, but pools will be populated by template assembly (culture vectors + job modifiers + AI generation) rather than hand-authoring. Hand-authored content (anchor lines per D-092, player monologue) remains hand-authored.
|
||||
|
||||
### D-029: Population entanglement ratio — 30/50/20
|
||||
- **Date:** 2026-02-10
|
||||
@@ -39,9 +42,11 @@ How narrative, NPCs, and world content are created: content tiers, NPC generatio
|
||||
- **Rationale:** If every NPC is suspicious, investigation collapses. The mundane triangles ARE the life-sim game — hours of play that never touch conspiracy. Variable entanglement rate defeats metagaming across playthroughs. Quiet life must feel genuinely good, not empty.
|
||||
- **Raised by:** Gore (thematic), Paula (30/50/20 split), Nigel (anti-metagaming), Team Leader (majority unentangled)
|
||||
- **Dissent:** None
|
||||
- **Amendment (2026-03-05, Where's the Fun? Workshop):** The 30/50/20 population split rationale survives but implementation context changes. [D-122](#d-122-all-npcs-generated--no-named-hand-authored-characters) (all NPCs generated) means no NPC is hand-authored. The "entangled 20%" are generated NPCs whose triangles happen to be flagged for intrigue content. For the tycoon v0.2 bookmark ([D-117](scope.md#d-117-tycoon-is-the-v02-bookmark--zero-investigation-content)), the split applies to economic, social, and mundane triangles rather than investigation-intrigue triangles. The specific ratios will be revisited after the generator spike ([D-119](scope.md#d-119-generator-spike-confirmed-for-sprint-25--critical-path)) proves what population density the generator can sustain.
|
||||
|
||||
### D-032: Separate monologue pools per character
|
||||
### D-032: Separate monologue pools per character [SUPERSEDED]
|
||||
- **Date:** 2026-02-11
|
||||
- **Superseded by:** [D-117](scope.md#d-117-tycoon-is-the-v02-bookmark--zero-investigation-content) (single tycoon character in v0.2 eliminates the smuggler/detective hard partition). The principle of character-specific monologue pools survives — the tycoon has their own monologue pool. The hard partition between smuggler and detective does not apply when there is only one playable character. Per [D-127](#d-127-player-choices-are-the-content--rimworld-model-job-as-rails), the player's monologue reflects their character background. The partition design is preserved as a pattern for when multiple playable characters are reintroduced.
|
||||
- **Decision:** Internal monologue content is hard-partitioned by playable character. The smuggler and detective have completely separate monologue pools — no shared lines. The `character` tag on monologue lines is a hard partition, not a filter. File structure uses separate files per character per location (e.g., `monologue-smuggler.yaml`, `monologue-detective.yaml`).
|
||||
- **Rationale:** Shared monologue would dilute character voice and undermine the dual-lens experience. Each character's internal voice must be independently coherent. Same trigger, different pool — this is how mirror moments work without either pool knowing about the other.
|
||||
- **Cross-reference:** Dialogue lines remain character-agnostic — the access tier system (D-028 Layer 1) handles per-character filtering without separate pools.
|
||||
@@ -58,6 +63,7 @@ How narrative, NPCs, and world content are created: content tiers, NPC generatio
|
||||
- **Cross-reference:** NPC triangle model ([D-024](#d-024-npc-generation-model--10-axes--combat-component)), relationship web ([D-029](#d-029-population-entanglement-ratio--305020)), vertical slice criteria ([D-027](scope.md#d-027-vertical-slice--smuggler--detective-two-character-proof))
|
||||
- **Raised by:** Ozzie (emotional concept, Round 1), Paula (structural design and both FRIEND profiles, Round 2), project lead (confirmed, directive #4). Sera Venn confirmed by project lead over Mellanie's alternative proposal (Lera Sessik).
|
||||
- **Dissent:** Mellanie proposed Lera Sessik (bar owner) as detective's FRIEND. Project lead selected Paula's Sera Venn design. Lera remains bar owner / mundane triangle member.
|
||||
- **Amendment (2026-03-05, Where's the Fun? Workshop):** The FRIEND pattern (3+ relationship phases, observable contradiction, sympathetic motivation, no clean resolution, tell progression, dual-lens resonance) survives as a generator template for v0.2. Kael Davan and Sera Venn do not exist — [D-122](#d-122-all-npcs-generated--no-named-hand-authored-characters) eliminates all named hand-authored NPCs. In v0.2, the FRIEND role is filled by a generated NPC whose generator profile matches the FRIEND pattern template. The FRIEND pattern is now a generator instruction set, not an authoring assignment. Workshop convergence note: warmth with generated NPCs is earned through observed relationship progression, not authored backstory — this may produce stronger emotional investment than the hand-authored approach (Paula, Mellanie in Where's the Fun? Workshop §Phase Zero).
|
||||
|
||||
### D-035: Converged tag taxonomy for dialogue and monologue line pools
|
||||
- **Date:** 2026-02-11
|
||||
@@ -98,6 +104,7 @@ How narrative, NPCs, and world content are created: content tiers, NPC generatio
|
||||
- **Cross-reference:** Vertical slice ([D-027](scope.md#d-027-vertical-slice--smuggler--detective-two-character-proof)), contraband ([D-037](#d-037-contraband-specification))
|
||||
- **Raised by:** Miri (Sova setting brief, Round 1; Krenn System profile, Round 2), project lead (confirmed as worldbuilding milestone, directive #6)
|
||||
- **Dissent:** None
|
||||
- **Amendment (2026-03-05, Where's the Fun? Workshop):** Station Sova / Krenn System confirmed as the v0.2 setting. [D-128](#d-128-culture-implicit-in-starting-location--krenn-system-equals-krenn-culture) makes Krenn culture the cultural context for the tycoon bookmark — Krenn System IS Krenn culture by default. The setting details (naming conventions, atmosphere, sensory palette) survive as generator inputs and culture profile content. However, the Sova Transit District spatial layout (D-093) was designed for the v0.1 hand-built slice. v0.2 generates the location via the generator ([D-114](scope.md#d-114-v02-proof-of-life--generator--graphics-not-hand-built-slice)); the Krenn culture profile (Miri prerequisite for [D-119](scope.md#d-119-generator-spike-confirmed-for-sprint-25--critical-path)) captures the setting identity as generator inputs. Sova remains the canonical example system and the first culture profile to author.
|
||||
|
||||
### D-037: Contraband specification — unlicensed lattice components
|
||||
- **Date:** 2026-02-11
|
||||
@@ -288,4 +295,111 @@ How narrative, NPCs, and world content are created: content tiers, NPC generatio
|
||||
|
||||
---
|
||||
|
||||
*25 decisions. Last updated: 2026-02-27 (D-098, D-104, D-105, D-107 added — Generator Architecture Workshop #562)*
|
||||
### D-121: Voice is culture-driven — job as modifier
|
||||
- **Date:** 2026-03-05
|
||||
- **Decision:** NPC voice is authored at the culture level with job-specific modifiers layered on top. Culture is primary — a character IS their background. Job adds a layer. A Krenn tycoon sounds like a Krenn person who runs businesses, not a generic tycoon. This is an inversion of the prior assumption that job drove voice with culture as modifier.
|
||||
- **Rationale:** Culture-primary voice produces characters that feel like they belong to a place. Job-primary voice produces archetypes. The life-sim vision requires characters legible as inhabitants of the Krenn System, not as representatives of occupational categories.
|
||||
- **Source:** Where's the Fun? Workshop, Round 4 Interview, Decision 6
|
||||
- **Raised by:** Team Leader (Jeroen) — inversion of Mellanie's prior option C
|
||||
- **Dissent:** None
|
||||
- **Cross-reference:** [D-128](#d-128-culture-implicit-in-starting-location--krenn-system-equals-krenn-culture) (Krenn culture as starting context)
|
||||
|
||||
### D-122: All NPCs generated — no named hand-authored characters
|
||||
- **Date:** 2026-03-05
|
||||
- **Decision:** All NPCs in v0.2 are generated. There are no named, hand-authored characters. Kael Davan, Naia, Maret, and Sera Venn do not exist in v0.2. The generator produces NPCs that fit positions based on location characteristics. Limited vocabulary is acceptable at first. The FRIEND pattern (D-034) survives as a generator template, not an authoring assignment.
|
||||
- **Rationale:** Rimworld and The Sims are capable of generating characters that players form attachments to, even without dialogue or backstory. The generator-first approach (D-114) requires proving this foundation before hand-authored characters are layered on. Named NPCs and fixed triangles were a source of the rigidity that made v0.1 feel like a game level, not a place.
|
||||
- **Source:** Where's the Fun? Workshop, Round 4 Interview, Decision 7
|
||||
- **Raised by:** Team Leader (Jeroen)
|
||||
- **Dissent:** None
|
||||
- **Supersedes:** Named NPC assignments in [D-034](#d-034-the-friend--production-level-npc-pattern) (Kael/Sera as hand-authored characters — see amendment on D-034)
|
||||
- **Cross-reference:** [D-123](#d-123-generative-ai-for-npc-content-templating-via-culture-vectors) (AI templating), [D-129](#d-129-npc-personality-traits--behavior-first-relationships-codified-for-systems) (NPC personality model)
|
||||
|
||||
### D-123: Generative AI for NPC content templating via culture vectors
|
||||
- **Date:** 2026-03-05
|
||||
- **Decision:** NPC content (dialogue pools, voice, vocabulary) is generated using generative AI with culture vectors, tone, and accent prompts as constraints. Culture vectors are the primary prompt constraint — they prevent the AI pipeline from defaulting to genre conventions. The AI pipeline is an authoring tool for content assembly, not a runtime system. Limited vocabulary acceptable at first; AI templating scales content as the generator matures.
|
||||
- **Rationale:** The copy pool for all-generated NPCs at scale is enormous. Generative AI with culture-vector constraints is the only viable path to populating it without hand-authoring every line. Culture profiles (Miri prerequisite) become the primary authoring deliverable feeding the pipeline.
|
||||
- **Source:** Where's the Fun? Workshop, Round 4 Interview, Decision 8
|
||||
- **Raised by:** Team Leader (Jeroen)
|
||||
- **Dissent:** None
|
||||
- **Cross-reference:** [D-121](#d-121-voice-is-culture-driven--job-as-modifier) (culture-primary voice), [D-128](#d-128-culture-implicit-in-starting-location--krenn-system-equals-krenn-culture) (culture profile as generator input)
|
||||
|
||||
### D-124: In-game ollama for live NPC dialogue — deferred, door open
|
||||
- **Date:** 2026-03-05
|
||||
- **Decision:** Running a dressed-down version of ollama in-game for live NPC dialogue is possible and interesting, but deferred. The door is explicitly left open — this is not a rejected alternative, it is a future investigation item. For v0.2, NPC dialogue uses template-assembled content (D-123). Live in-game AI dialogue is post-proof-of-life.
|
||||
- **Rationale:** Live AI dialogue requires solving NPC quality floor, performance, and determinism questions that are out of scope for the generator proof-of-life. Deferred until the base generator is proven solid.
|
||||
- **Source:** Where's the Fun? Workshop, Round 4 Interview, Decision 9
|
||||
- **Raised by:** Team Leader (Jeroen)
|
||||
- **Dissent:** None
|
||||
|
||||
### D-125: World is quietly responsive — gradient of caring by social proximity
|
||||
- **Date:** 2026-03-05
|
||||
- **Decision:** The world does not care globally but notices locally. Primary social contacts (colleagues, neighbors) develop responsiveness over time. The gradient of caring is based on social proximity — the world is neither Kenshi-indifferent nor uniformly caring. The player should never encounter a truly indifferent world; even early builds will have localized responsiveness around primary contacts. Gore's concern about indifference is addressed by design — authored content will layer in before v1.0.
|
||||
- **Rationale:** True indifference breaks the life-sim emotional loop. Characters can't form attachments to a world that doesn't register their existence. The gradient model (socially close = responsive, globally = neutral) reflects realistic social structure and produces the "quietly alive" feel the workshop converged on.
|
||||
- **Source:** Where's the Fun? Workshop, Round 4 Interview, Decision 10
|
||||
- **Raised by:** Team Leader (Jeroen)
|
||||
- **Dissent:** None
|
||||
|
||||
### D-126: Groundhog Day alarm clock homage — first game day only
|
||||
- **Date:** 2026-03-05
|
||||
- **Decision:** The first game day begins with an alarm clock that opens with the *click* pa-pa pa-pa opening from Groundhog Day, cut short. This happens on the first day of a new game only. The tone is a wink: "new day, new start, new chances." It sets the life-sim framing without exposition.
|
||||
- **Rationale:** A single tonal signal at game start establishes the day-cycle framing and communicates the game's tone — forward-moving, possibility-oriented, gently aware of its own conceits — without explicit explanation. First day only; repeating it would undermine the freshness.
|
||||
- **Source:** Where's the Fun? Workshop, Round 4 Interview, Decision 14
|
||||
- **Raised by:** Team Leader (Jeroen)
|
||||
- **Dissent:** None (legality of the reference to be verified)
|
||||
- **Cross-reference:** [D-136](architecture.md#d-136-first-settled-reach-moment-auto-generated-apartment--insert-activation) (first game moment design)
|
||||
|
||||
### D-127: Player choices are the content — Rimworld model, job as rails
|
||||
- **Date:** 2026-03-05
|
||||
- **Decision:** Phase 1 of the game experience is not "an empty world before content arrives." It is "a world full of opportunity where the player's choices ARE the content." Rimworld model: one authored starting beat (the crash / the alarm clock + apartment wakeup), then agency and options. A job is rails to take off from, not a script to follow. The world provides opportunity and consequence; the player provides the story.
|
||||
- **Rationale:** The prior "no objectives" stance was a design stance, not a design solution. The Rimworld model is a design solution: curated starting beat, then genuine agency. Phase 1 is not empty — it is a full world of potential actions, economic choices, social encounters, and consequences. The player's story is the content.
|
||||
- **Source:** Where's the Fun? Workshop, Round 4 Interview, Decision 15
|
||||
- **Raised by:** Team Leader (Jeroen)
|
||||
- **Dissent:** None
|
||||
|
||||
### D-128: Culture implicit in starting location — Krenn System equals Krenn culture
|
||||
- **Date:** 2026-03-05
|
||||
- **Decision:** Culture is implicit in the starting bookmark location. The tycoon bookmark in the Krenn System means Krenn culture. The player does not select culture at character creation; it derives from where the bookmark places them. This resolves the culture-everywhere-but-nowhere tension: culture IS in the game from day one, it's just not a character creation slider. The Krenn System provides the cultural context; NPC generation uses regional culture as the primary vector.
|
||||
- **Rationale:** Seven of nine workshop agents independently flagged the tension between D-115 (culture deferred from creation) and D-121 (culture primary for voice). Implicit culture unblocks five downstream pipelines simultaneously: voice cards (Mellanie), culture profiles (Miri), NpcBlueprint culture field (Tyre), cultural visual grammar (Araminta), systems integration (Gestalt).
|
||||
- **Source:** Where's the Fun? Workshop, Round 5 Interview, Decision 16
|
||||
- **Raised by:** Team Leader (Jeroen)
|
||||
- **Dissent:** None
|
||||
- **Cross-reference:** [D-121](#d-121-voice-is-culture-driven--job-as-modifier) (culture-primary voice), [D-036](#d-036-sova-transit-district--krenn-system-as-v01-setting) (Krenn System canonical details)
|
||||
|
||||
### D-129: NPC personality — traits + behavior first, relationships codified for systems
|
||||
- **Date:** 2026-03-05
|
||||
- **Decision:** NPC personality starts with traits and observable behavior. Relationships form through two channels: Sims-style accumulation through repeated interaction, and Rimworld-style bonding through shared adversity (surviving a crisis together, helping each other). The player's subjective feeling is the real metric, but relationships must be codified in the system so that game systems (storyteller, consequences, NPC behavior changes) can reference relationship state.
|
||||
- **Rationale:** All nine workshop agents identified NPC legibility as the universal gate. Generated NPCs must have sufficient personality surface area for emotional attachment. Without legible NPCs, the life-sim loop cannot fire. Codifying relationships for systems enables the storyteller to use them as triggers and the consequence model (D-132) to escalate through them.
|
||||
- **Source:** Where's the Fun? Workshop, Round 5 Interview, Decision 17 (resolves Q-WTF-034/035)
|
||||
- **Raised by:** Team Leader (Jeroen)
|
||||
- **Dissent:** None
|
||||
- **Cross-reference:** [D-024](#d-024-npc-generation-model--10-axes--combat-component) (NPC axes — see amendment), [D-132](#d-132-dual-scale-consequence-model--rimworld-sharp-events-and-df-slow-accumulation) (consequence model)
|
||||
|
||||
### D-130: Fully emergent moral arc for v0.2 — generator proves relationships readable first
|
||||
- **Date:** 2026-03-05
|
||||
- **Decision:** v0.2 ships a fully emergent moral arc — no authored arc structure. The tycoon bookmark has no pre-designed story arc. The explicit test before layering narrative depth: can the player tell "this is a relationship my character has" from generator output alone? Full flavor and generated content will be layered in later, but only after the relationship foundation is proven solid. This is a deliberate proof-of-concept sequence: generator proves relationships are readable → then add narrative depth.
|
||||
- **Rationale:** The full flavor and generated narrative content would get in the way of properly evaluating the generator's strength. The generator must be rock solid and usable before truly interesting threads are pulled. Fully emergent may feel artificial, but it is the right v0.2 test.
|
||||
- **Source:** Where's the Fun? Workshop, Round 5 Interview, Decision 18 (resolves Q-WTF-043)
|
||||
- **Raised by:** Team Leader (Jeroen)
|
||||
- **Dissent:** None
|
||||
- **Cross-reference:** [D-129](#d-129-npc-personality--traits--behavior-first-relationships-codified-for-systems) (relationship legibility as test), [D-119](scope.md#d-119-generator-spike-confirmed-for-sprint-25--critical-path) (generator spike as prerequisite)
|
||||
|
||||
### D-131: Broad economic verb vocabulary — life verbs, not tycoon-specific
|
||||
- **Date:** 2026-03-05
|
||||
- **Decision:** The verb vocabulary is broad and economic, serving all careers, not tycoon-specific. Life verbs: buy, sell, hire, rent, contract, inspect, negotiate, invest. A detective also uses contracts (hiring informants, renting surveillance equipment). Implementation follows the speed of the interpreting systems — each verb requires its backing system (ownership registration for buy/sell, contract tracking for hire/rent). This is a life-sim verb set, not a job-specific verb set.
|
||||
- **Rationale:** Tycoon-specific verbs would lock the gameplay loop to one archetype. Broad economic verbs serve the life-sim vision where "detective, smuggler, tycoon are jobs you can have, not the game's identity" (workshop executive summary). The verb map is the mechanical expression of that philosophy.
|
||||
- **Source:** Where's the Fun? Workshop, Round 5 Interview, Decision 19 (resolves Q-WTF-027)
|
||||
- **Raised by:** Team Leader (Jeroen)
|
||||
- **Dissent:** None
|
||||
|
||||
### D-132: Dual-scale consequence model — Rimworld sharp events and DF slow accumulation
|
||||
- **Date:** 2026-03-05
|
||||
- **Decision:** The consequence model operates at two scales simultaneously. Rimworld-style sharp events (raids, crises, dramatic reversals) AND Dwarf Fortress-style slow accumulation (gradual relationship erosion, creeping debt, reputation shifts). Sharp events create drama; slow accumulation creates texture. Rimworld already manages both — sharp storyteller events on top of slow colony degradation. The Settled Reach follows the same dual-scale model.
|
||||
- **Rationale:** The dual-scale model produces both moment-to-moment drama and long-term narrative texture. A single-scale model either feels like it has no consequences (all slow) or like consequence happens arbitrarily (all sharp). Both are load-bearing.
|
||||
- **Source:** Where's the Fun? Workshop, Round 5 Interview, Decision 21 (resolves Q-WTF-037)
|
||||
- **Raised by:** Team Leader (Jeroen)
|
||||
- **Dissent:** None
|
||||
- **Cross-reference:** [D-129](#d-129-npc-personality--traits--behavior-first-relationships-codified-for-systems) (relationships as consequence substrate)
|
||||
|
||||
---
|
||||
|
||||
*37 decisions. Last updated: 2026-03-05 (D-121–D-132 added; D-023, D-024, D-028, D-029, D-032, D-034, D-036 amended; D-032 superseded — Where's the Fun? Workshop)*
|
||||
|
||||
Reference in New Issue
Block a user