Files
settled-reach/docs/workshops/world-generation/sw1-round1-notes.md
T
jpmschweitzerandClaude Opus 4.6 252e3d380a docs(workshops): complete world generation architecture workshop
3 rounds of SW1 (endgame feature vision) with 5 agents + Qatux.
Produced endgame-feature-vision.md (692 lines) covering the full
galaxy-to-ground generation pipeline, cultural cascade, replayability
architecture, and player experience beats.

Workshop was cut short when PO redirected to a 6-phase development
cascade (wiki content → economics → planetary maps → player control →
world gen → detail coloring). v0.2 target dropped. Heritage roots
(D-104/D-105/D-101/D-107) flagged for supersession — real-world
cultural corridors replace abstract roots.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-24 17:12:09 +01:00

19 KiB
Raw Blame History

title, author, workshop, sub-workshop, round, created, status
title author workshop sub-workshop round created status
SW1 Round 1 — Consolidated Notes qatux world-generation 1 1 2026-03-24 ready-for-review

SW1 Round 1 — Consolidated Notes

Prepared by: Qatux Source files: gestalt-sw1r1.md, miri-sw1r1.md, nigel-sw1r1.md, ozzie-sw1r1.md, tyre-sw1r1.md Date: 2026-03-24


⚠️ CRITICAL FLAG: Station-Only Recommendations

Both Gestalt (Q4) and Tyre (Q1) independently recommend station-only scope for v0.2.

Gestalt: "Recommendation: A (station only) with explicit deferral of everything else." Tyre: "My recommendation: Option A for v0.2 core, with Urban as a fast-follow."

The product owner has explicitly rejected this framing as a cop-out that avoids the hard questions. The workshop must address how one pipeline handles all 5 zone types, not whether to defer 4 of them.

This is the primary tension Round 2 must resolve. Every recommendation below that depends on "station only scope" should be read with this flag in mind. Gestalt's systems questions and Tyre's architecture questions remain valid — the scope assumption underneath them does not.


Summary of All Questions by Theme

25 questions total across 5 agents. Grouped into 6 thematic areas below.


Theme 1: Zone Scope — Which Zone Types and When

The most architecturally load-bearing set of questions. Two agents recommend station-only (flagged above).

Question Agent Recommendation
What SettingType(s) ship in v0.2? Tyre Q1 ⚠️ Station only (flagged)
What zone types does v0.2 actually need to generate? Gestalt Q4 ⚠️ Station only (flagged)
What is the replayability floor — what MUST be different every run? Nigel Q4 Zone arrangement + triangle topology + NPC identity (C)

Convergence: Gestalt and Tyre reach the same station-only conclusion from different directions — Gestalt from scope risk ("5 half-working zone types"), Tyre from implementation cost ("each SettingType is essentially a separate generator"). The convergence makes this a substantive recommendation, not a coincidence.

The hard question for Round 2: Given that station-only is not acceptable, what does a single pipeline look like that handles all 5 zone types at different fidelity levels? Tyre's cost table (Station: 23 weeks; +Urban: 46 weeks total; +Wilderness: 710 weeks) is the starting point for negotiating a multi-zone path.


Theme 2: Generator Algorithm and Pipeline Architecture

Tyre-heavy. Most questions have clear technical recommendations with little disagreement.

Question Agent Recommendation
What building/room generation algorithm? Tyre Q2 BSP + template stamping for special rooms (B)
2D TileMapLayer → 3D migration — when? Tyre Q3 Generate 3D-ready data now, keep 2D renderer temporarily (C)
How detailed is Phase 2 chunk fill in v0.2? Tyre Q4 Walls + floors + doors + basic objects (B)
Full Phase 1 skeleton or simplified bootstrap? Tyre Q5 Simplified random block assignment, guarantee audit as warning-only (B)

Convergence: No agent disputes Tyre's algorithm recommendations. BSP determinism aligns with D-010 requirements. Tyre's "generate 3D-ready data, render 2D temporarily" approach (Q3) is elegant — it decouples generation from rendering and avoids double work.

Tension: Tyre's Phase 1 recommendation (simplified, no guarantees) creates potential friction with Nigel's replayability floor (zone arrangement must differ visibly per run). A guarantee-free Phase 1 may not produce the zone cluster variety Nigel requires. Flagged for Round 2.


Theme 3: Cultural Identity in Generation

Miri-heavy. Requires an upstream product decision before authoring can begin.

Question Agent Recommendation
How many heritage roots to author for v0.2? Miri Q1 Roots present in starting district blend only (B)
Does heritage influence Phase 1 layout or Phase 2 surface only? Miri Q2 Lightweight Phase 1 numeric targets per root (B) — extends D-104
How does cultural mixing work at district boundaries? Miri Q3 Junction archetypes for urban hubs (C), weighted blend for rural/wilderness (B)
Does cultural naming use generative grammar or flat lists? Miri Q4 Grammar for infrastructure, lists for establishments (C)
How does corridor position map to heritage root probability weights? Miri Q5 Corridor probability table (B)

Convergence: Miri's Q2 (lightweight Phase 1 cultural targets) and Ozzie's Q1 (zone identity legible in 3 seconds) are solving the same problem from different angles. Miri argues for spatial-structural legibility; Ozzie argues for visual-architectural legibility. Both require cultural constraints to influence tile placement at generation time, not just surface materials. Ozzie's Q5 makes this explicit: "cultural fingerprint visible" is the #1 priority for screenshot moments.

Upstream dependency flagged by Miri: What is the heritage root blend of the starting district (Sova Transit / Van Maanen's Star)? This is a content decision, not a worldbuilding derivation. Without it, Q1, Q2, and Q3 authoring scope cannot be determined. Miri offers a working hypothesis (Iron/Stone blend with Tide undertow) but defers to Jeroen.

Tension: Miri's Phase 1 cultural targets (Q2 recommendation B) add parameters to the same Phase 1 block planning that Tyre is already calling a constraint-solving challenge. Tyre's Phase 1 assessment does not mention cultural parameters. This gap needs to be addressed — how do 2-3 numeric targets per heritage root interact with the guarantee tier system?


Theme 4: Tycoon Integration and Economic Wiring

Gestalt-heavy. These questions define what "functional" generation means for the core gameplay loop.

Question Agent Recommendation
What does a "functional" room need to provide for the tycoon loop? Gestalt Q1 Function-tagged (B) — rooms carry interaction-type flags, not full simulation
How does the tycoon's starting business relate to generated space? Gestalt Q2 Guarantee-driven (B) — D-097 tier system ensures buyable commercial zone exists
Do NPC schedules follow zone type or triangle assignment? Gestalt Q3 Hybrid (C) — zone baseline foot traffic + triangle override for key NPCs
Does the player ever modify generated space? Gestalt Q5 Static for v0.2 (A), owned-premise modification as first post-v0.2 enhancement (B)

Convergence: Gestalt Q3 (hybrid zone baseline + triangle override for NPCs) and Ozzie Q4 (zone baseline as foundation, time-of-day as simulation layer, narrative state as override) are structurally identical recommendations arrived at independently. Both agents want: ambient NPC behavior driven by zone type, narrative/story events override locally. This is a strong convergence — treat as near-settled.

Note on Gestalt Q2: Recommending the guarantee tier system (D-097) ensures a buyable commercial zone exists is a clean architectural solution. The product owner should confirm whether the guarantee system should be extended with this Tier 1 entry for v0.2.


Theme 5: Replayability — What Must Differ Per Run

Nigel-heavy. These questions set the acceptance criteria for the generator.

Question Agent Recommendation
Is the world per-run or persistent? Nigel Q1 Per-save persistent (B) — world fixed within save, new game = new seed
Is spatial anti-metagaming structural or social? Nigel Q2 Cultural templates constrain, seed randomizes within (D)
Does social site adjacency vary per seed? Nigel Q3 Zone clusters vary per seed within cultural constraints (C)
What's the replayability floor for v0.2? Nigel Q4 Zone arrangement + triangle topology + NPC identity (C)
How much does era layering contribute to variety? Nigel Q5 Era mix seeded per district + weighted by world economic state (B+C)

Note on Nigel Q1 (per-run vs persistent): This is architecturally load-bearing for save file design and is uncontested — no other agent addresses it. Needs product owner confirmation before implementation begins.

Tension with Tyre Q5: Nigel's replayability floor (Q4, option C) requires zone cluster adjacency to differ visibly. Tyre's Phase 1 recommendation (Q5, option B — simplified, no guarantees) may produce skeletons where zone arrangement is too similar between seeds. Specifically: if Phase 1 is "random block assignment" without guidance, cultural templates can't constrain the arrangement (Nigel Q2 rec D). These two recommendations are in latent conflict.

Nigel Q2 is aligned with Miri Q2: Nigel wants cultural templates to constrain spatial arrangement while seed randomizes within. Miri wants lightweight Phase 1 numeric targets per heritage root. These are the same architectural request from different angles — Nigel from replayability, Miri from cultural legibility.


Theme 6: Spatial Experience and Sense of Place

Ozzie-heavy. These questions define the experiential quality bar for generated spaces.

Question Agent Recommendation
Does zone type communicate visually in 3 seconds? Ozzie Q1 Distinct architectural vocabulary per zone (C), cultural layer later (D)
Does exploration feel like discovery or corridor management? Ozzie Q2 Zone anchor landmark (C) + dead ends earn their keep (D)
How visible are upper floors / z-levels? Ozzie Q3 External building silhouette (B) for MVP, cutaway fade (C) as premium
What NPC density makes a space feel inhabited? Ozzie Q4 Zone baselines (B) + time-of-day rhythm (C) + narrative state override (D)
Can we design screenshot moments deliberately? Ozzie Q5 Cultural fingerprint (C) > environmental story clusters (D) > scale contrast (B)

Convergence: Ozzie's Q1 (3-second zone legibility via distinct architectural vocabulary) and Miri's Q2 (heritage root at Phase 1) are the same architectural requirement stated from experience (Ozzie) and systems (Miri) perspectives. Architectural vocabulary IS cultural heritage made spatial. These should be treated as one design requirement.

Ozzie Q3 note: Upper floor silhouette (B) is called out as a cheap but high-impact visual — "you're walking through a narrow corridor and there's a 6-storey block above you." This aligns with D-148 (30° Camera3D) giving visibility of building fronts and height. No other agent addresses z-level visual treatment, so this is Ozzie's uncontested recommendation.


Convergence Map

Where multiple agents independently reached the same conclusion:

Topic Agents Shared Conclusion
Station-only for v0.2 Gestalt, Tyre ⚠️ FLAGGED — both recommend, both wrong per PO
Zone baseline as NPC behavior foundation Gestalt Q3, Ozzie Q4 Ambient foot traffic = zone type; narrative overrides locally
Cultural identity must be spatially expressed Miri Q2, Ozzie Q1, Ozzie Q5 Architecture must carry heritage, not just surface materials
Cultural templates constrain, seed randomizes within Nigel Q2, Miri Q2 Same architectural request: heritage in Phase 1, not just Phase 2
Generate 3D-ready data now Tyre Q3 No other agent disputes; aligns with D-148/D-149 direction

Tensions Map

Where agents disagree or produce incompatible recommendations:

Tension Agents Description
Zone scope vs product owner Gestalt Q4, Tyre Q1 vs Jeroen Station-only vs all 5 zone types — must be resolved in Round 2
Phase 1 simplicity vs Phase 1 cultural parameters Tyre Q5, Miri Q2 Tyre wants minimal Phase 1; Miri wants cultural numeric targets in Phase 1 — additive but uncosted
Phase 1 simplicity vs replayability floor Tyre Q5, Nigel Q4 Guarantee-free Phase 1 may not produce zone variety Nigel requires

Tyre's Feasibility Cheat Sheet — Summary

What's Already Built

  • DistrictSkeleton full type hierarchy (579 lines) in server/src/simulation/generator.rs
  • Chunk streaming with load/unload at chunk_streaming.rs
  • Movement + walkability (WalkabilityMap, TileKind, ChunkCoord with z)
  • Tile renderer (placeholder — colored rectangles)
  • Dual-scale grid (0.5m sim / 1m visual, D-066)
  • 3D camera (D-148) and 3D character system (D-149, Sprint 28)

What Needs to Be Built (not stubbed)

  • Phase 1 generation algorithm (no logic exists — only output shape)
  • Phase 2 chunk fill (tile-level fill logic)
  • ZonePalette data and heritage→material mapping
  • GuaranteeAuditResult (stub string)
  • MobileChunk structs (D-108)

Cost Tiers

Feature Effort
Template-stamped room generator 23 days
Corridor carving between rooms 12 days
Tile palette → 3D mesh mapping 23 days
Single-z-level GridMap rendering 23 days
BSP room layout 2 weeks
Full Phase 1 with Tier 1 guarantees 34 weeks
WFC or grammar-based interiors 23 weeks
Multi-z-level cutaway rendering 23 weeks
Organic layout mode 12 weeks
Full ZonePalette with cultural modifiers 23 weeks (asset-dominated)
2D→3D renderer migration 24 weeks (in progress)

Reference Implementations — Priority

  • CityCrafter3D — HIGH (study algorithm, not code; server-side)
  • GridMapLayer — HIGH (client rendering upgrade path)
  • Chunk Manager, RetroTerrain, PathMesh3D — MEDIUM (specific techniques)
  • Spatial Gardener, DeformableMesh, SunshineClouds — LOW (future)

Proposed Interview Clusters for Product Owner

The 25 questions across 5 agents can be consolidated into 6 interview clusters. Within each cluster, questions share the same product-level decision.


Cluster A: Zone Scope — The Pipeline Question

Pre-requisite for everything else. Cannot proceed without an answer.

  1. All 5 zone types are in scope for v0.2. Given Tyre's cost estimates (station 23 weeks, station+urban 46 weeks, station+urban+wilderness 710 weeks), what is the v0.2 zone scope? The question is not "station only vs not" — it's "which multi-zone path and at what fidelity?"
  2. What does "minimum viable multi-zone" look like? Is it: one zone fully working + four zones as spatial stubs that prove the pipeline handles them? Or all five at equal depth?

Sources: Gestalt Q4, Tyre Q1. Flagged per PO direction.


Cluster B: Starting Location — The Content Unlock

Pre-requisite for authoring work (heritage roots, naming, cultural identity).

  1. What is the heritage root blend of the starting district (Sova Transit / Van Maanen's Star)? Miri's working hypothesis: Iron/Stone blend with Tide undertow. PO confirmation needed.
  2. Is Van Maanen's Star a station/port or does it have accessible exterior zones? Affects whether the tycoon's starting experience is interior-only or includes urban/industrial context.

Sources: Miri upstream dependency, Gestalt Q4, Tyre Q1.


Cluster C: Cultural Identity in Architecture

Informs Phase 1 architecture and authoring scope.

  1. Does heritage root influence spatial geometry (Phase 1 layout targets) or only surface materials (Phase 2)? Miri recommends lightweight Phase 1 numeric targets; Tyre's Phase 1 assessment doesn't include them. Adding them is low cost but needs confirmation.
  2. How do cultural boundaries work at district edges? Junction archetypes for urban hubs (Miri rec C) vs weighted blends (Miri rec B) vs hard cuts.
  3. Corridor position → heritage root — hand-authored per system or derived from corridor probability table? Miri recommends a one-time corridor table (B) enabling procedural heritage assignment anywhere in the Reach.

Sources: Miri Q1, Q2, Q3, Q5.


Cluster D: Tycoon Wiring and NPC Behavior

Determines what "functional space" means and how NPCs populate it.

  1. Are generated rooms cosmetic (art), function-tagged (interaction flags), or fully simulated (demand curves)? Gestalt recommends B (function-tagged) as the v0.2 minimum. This is the crux question — it determines whether generated spaces are art assets or simulation primitives.
  2. How does the tycoon's starting business connect to generated space? Guarantee tier system ensures buyable commercial zone (Gestalt rec B), or tycoon just picks from what spawns?
  3. Do NPC schedules follow zone function, triangle assignment, or both? Gestalt and Ozzie independently recommend the hybrid: zone baseline + triangle override.

Sources: Gestalt Q1, Q2, Q3; Ozzie Q4.


Cluster E: Replayability Floor

Sets acceptance criteria for the generator — what "working" means.

  1. Is the world per-save persistent or does it regenerate per run? Nigel recommends per-save persistent (B). Architecturally load-bearing for save design. Currently uncontested.
  2. What is the minimum run-to-run difference for v0.2? Nigel recommends C: zone arrangement + triangle topology + NPC identity all differ. This sets the acceptance test for the generator spike.
  3. Does era layering (CorporateMerger, OrganicGrowth, etc.) contribute to run-to-run variety? Nigel recommends seeding era distributions per district + weighting by world economic state. Cheap lever, high return.

Sources: Nigel Q1, Q4, Q5.


Cluster F: Spatial Experience Quality Bar

Defines what "feels like a place" means — experiential acceptance criteria.

  1. Can a player identify zone type from visual shape alone in 3 seconds? Requires distinct architectural vocabulary per zone type (not just different tile colors). Ozzie Q1, aligned with Miri Q2.
  2. Does every location have one "money shot" — a zone anchor landmark the player will encounter? Ozzie Q2 recommendation C. Low implementation cost, high perceptual impact.
  3. Are upper floors visible as building mass above the player? External silhouette without revealing interiors (Ozzie Q3, option B). Cheap, communicates scale and habitation.

Sources: Ozzie Q1, Q2, Q3, Q5.


Open Questions Not Yet Addressed

The following questions were raised by agents but have no current recommendation to evaluate — they represent gaps in the current knowledge base:

  • Q-??: How does the server-side generator handle exterior terrain height variation (for rural/wilderness zones)? Tyre's cheat sheet notes RetroTerrain crashes at 1000×1000 with no chunking — no recommendation exists for terrain generation algorithm.
  • Q-??: What is the wire format for transmitting large generated worlds? Tyre flagged this as a protocol optimization (~1 day) but it's unaddressed. Should it be scoped into v0.2?
  • Q-??: Does MobileChunk (D-108) enter v0.2 scope? Tyre lists it as "stubbed, needs implementation" but no agent has scoped the work.

Notes produced by Qatux from 5 agent outputs. Round 2 design deferred pending product owner review of these clusters.