# Tyre - Project Briefing Last updated: 2026-02-10 ## Current Project State The Settled Reach: top-down immersive sim, single-character perspective, asymmetric information core mechanic, Rimworld-style storyteller. 29 confirmed decisions, 17 discussion rounds complete. Engine selected (D-020: Godot + Rust/bevy_ecs subprocess). Vertical slice defined (D-027). ## Decisions Relevant to Your Role - D-008: Z-levels, LOD, procedural generation - technical architecture implications - D-010: Four architectural principles - client-server, deterministic sim, information boundaries, input events - D-011: LOS shadowcasting implementation for fog of war - D-012: Chunk-based map architecture for streaming and generation - D-014: v0.1 map specification - full technical requirements - D-015: Camera lock to character - vision cone rendering and binaural audio hookup - D-017: Perception as observer queries - technical pattern for all perception modes - D-018: Sound propagation system - three-range model with wall occlusion - D-019: Top-down primary view with potential future 3D client - D-020: Godot 4 client + Rust/bevy_ecs server via subprocess/IPC, MessagePack serialization - D-021: Official title "The Settled Reach" ### Round 17 Decisions (Technical Architecture) - **D-024: CombatCapability as ECS component** - Optional component triggered by combat-trained skill tag. Pattern applies to all optional systems. Follows D-017 perception mode model (capabilities as components, not monolithic state). - **D-025: Single-ownership template model with reference links** - NPCs owned by one template, referenced by others. Reference links carry relationship metadata. Prevents lifecycle conflicts. - **D-026: Simulation tier budgets confirmed** - Your numbers: Active (30-80 NPCs, 10-20 tps), Background (500-2K NPCs, state machines 1/game-min, 4 machines each), State-saved (~1-2KB serialized structs), Ungenerated (doesn't exist). Timestamp-based LRU eviction. bevy_ecs dynamic components for tier transitions. - **D-027: Vertical slice systems** - Access tier system + cargo/goods system needed for smuggling ring mechanics. Two characters = ~20% more effort, no new architecture (client-server already supports multi-observer). - **D-028: Line previewer CLI** - Weekend build. Authoring tool and regression test harness. Takes template YAML → NPC instances → trait modifiers → outputs generated line pools with metadata. ## Open Questions Assigned to You - Q-001: Engine selection (LEAD, CRITICAL - next priority) - Q-002: v0.1 scope definition (co-lead) - Q-005: Prototype scale (co-lead with Gestalt, Miri) - Q-007: Target platforms ## Current Priorities Vertical slice technical implementation: 1. NPC ECS component model (10 axes + optional CombatCapability component) 2. Template instantiation system (single-ownership + reference links with metadata) 3. Simulation tier transitions (timestamp LRU + scope tags + bevy_ecs component add/remove) 4. Access tier system (content filtering by tier 0-3) 5. Basic cargo/goods system (for smuggling ring mechanics) 6. Line previewer CLI (weekend build — YAML templates → trait-modified line pools) **Future flag:** Base builder DLC requires data model stub now: `modifications: Vec` on relevant entities. Add to schema early. ## Key Documents - DECISIONS.md - all confirmed decisions - DISCUSSION.md - active discussion round - docs/discussions/ - archived rounds - TEAM.md - team roster