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>
4.4 KiB
4.4 KiB
title, description, type, status, agents
| title | description | type | status | agents |
|---|---|---|---|---|
| World Generation Architecture Workshop | Design the procedural world generation pipeline — from Rust server layout generation to Godot client rendering. Covers urban, rural, wilderness, and station interior zones. | workshop | complete | TYRE, GESTALT, NIGEL, MIRI, OZZIE |
Workshop Brief — World Generation Architecture
To: TYRE, GESTALT, NIGEL, MIRI, OZZIE From: Jeroen
The problem
We need a procedural generation pipeline that creates explorable locations — station interiors, settlements, rural villages, wilderness areas, industrial zones. The server generates the layout (Rust/bevy_ecs), the client renders it (Godot 3D isometric). No location is hand-authored — everything comes from the generator with cultural, economic, and narrative constraints.
Constraints
- Server-authoritative (D-010, D-020) — generation logic in Rust, client renders from snapshot data
- Chunk-based streaming (D-096) — only load what's near the player
- Simulation tiers (D-097) — Active/Background/State-saved/Ungenerated
- Tile-grid foundation — server works in 2D tile coordinates, client renders 3D
- Must handle z-levels (D-148 confirms multi-height structures)
- Toon shader aesthetic — all assets go through our shader pipeline
- Assets from Poly Haven (CC0) and Quaternius — run through toon shader
Zone types to generate
- Station interiors — corridors, modules, docking rings, residential blocks, commercial areas
- Urban/port zones — streets, buildings, markets, docking facilities
- Rural villages — scattered buildings, fields, paths, natural terrain
- Wilderness — forests, terrain, water bodies, cave entrances
- Industrial — factories, extraction sites, refineries, warehouses
Reference implementations to study
These are Godot plugins studied for patterns — the generation itself happens in Rust.
| Reference | What to study | Relevance |
|---|---|---|
| CityCrafter3D | Road networks, building placement, district zoning, lot subdivision | Urban zones |
| Chunk Manager | Runtime chunk load/unload, LOD tiers, async generation, memory budget | Streaming infrastructure |
| Retro Terrain | Tile-based 3D terrain, terrain edge transitions, height variation, water | Wilderness/rural zones |
| Spatial Gardener | Procedural vegetation placement, density controls, collision avoidance, LOD | Wilderness population |
| GridMapLayer | 2D tile rules → 3D grid rendering, autotiling | Client-side tile rendering |
| Block-based Procedural Map | Perlin noise, seed determinism, chunk loading patterns | Terrain generation |
| PathMesh3D | Extrude 2D profiles along paths (pipes, cables, corridors) | Station interior detail |
| DeformableMesh | Runtime mesh deformation for variety from shared assets | Environmental variation |
| Poly Haven | CC0 3D models, textures, HDRIs | Environment asset sourcing |
| SunshineClouds | Cloud shadow dappling on ground surfaces | Exterior zone atmosphere (borrow the ground shadow shader, skip the sky) |
Questions to resolve
- What data does the server send? Tile palette + grid + object placement? Or higher-level "room type + seed" that the client expands?
- How are buildings generated? Wave function collapse? L-systems? Grammar-based? Template stamping with variation?
- How does the client render tiles? GridMapLayer autotiling? Direct mesh placement? Hybrid?
- How do z-levels work visually? Transparency of upper floors? Cutaway? Layer toggle?
- What's the minimum viable generator? What ships in v0.2 vs what's future?
- How do cultural constraints flow into generation? Corridor heritage → architectural style → tile palette selection?
- How does the generator handle interiors vs exteriors? Same pipeline or separate?
This workshop does NOT produce
- Working code
- A locked technology choice
- Implementation tickets (those come after)
It produces an architecture document with the data flow, algorithm choices, and client-server boundary defined.