Six new open questions identified by the Tyre/Troblum architecture review: shadowcasting algorithm selection, entity ID stability, multi-entity collision resolution, tick budget overflow policy, pathfinding cache eviction, and debug visualization scope. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
136 lines
8.5 KiB
Markdown
136 lines
8.5 KiB
Markdown
# Open Questions
|
|
|
|
Tracked questions awaiting discussion or resolution.
|
|
|
|
---
|
|
|
|
### Q-001: Game engine selection
|
|
- **Status:** Resolved → [D-020](architecture.md#d-020-engine-and-architecture-selection--godot-client--rust-simulation-via-subprocessipc)
|
|
|
|
### Q-002: Scope of v0.1 playable prototype
|
|
- **Status:** Map spec resolved ([D-014](scope.md#d-014-v01-map-specification)). Remaining: mechanics, characters, interactions for minimum playable build.
|
|
- **Assigned to:** Full team
|
|
|
|
### Q-003: Art direction / presentation style
|
|
- **Status:** Further resolved for v0.1 via Content Gap Analysis Workshop. Araminta's v0.1 Visual Grammar proposal covers: entity color palette (D-033), zone-specific color palettes (3 zones with hex values), fog rendering (4 states), monologue presentation spec, insert dual-character variants. Long-term art direction beyond v0.1 remains open.
|
|
- **Remaining:** Long-term art direction, sprite replacement timeline, full visual identity.
|
|
- **Assigned to:** Araminta (lead)
|
|
|
|
### Q-004: One campaign spanning all eras or separate era scenarios?
|
|
- **Status:** Not yet discussed
|
|
- **Context:** Gore raised that Commonwealth Era and Void Era play very differently. Prototype focuses on pre-Starflyer War era.
|
|
- **Assigned to:** Gore, Miri to lead discussion
|
|
|
|
### Q-005: Scale for prototype - locations, characters, factions
|
|
- **Status:** Partially scoped
|
|
- **Early signal:** Institute/Armstrong City hub, ~10-20 characters, Guardians + institutional + political factions
|
|
- **Assigned to:** Gestalt, Tyre, Miri
|
|
|
|
### Q-006: Multiplayer or single-player only?
|
|
- **Status:** Resolved → [D-009](architecture.md#d-009-multiplayer---design-for-it-build-single-player-first)
|
|
|
|
### Q-007: Target platform(s)
|
|
- **Status:** Not yet discussed
|
|
- **Context:** Team Leader has Linux background (Fedora). Cross-platform considerations?
|
|
- **Assigned to:** Tyre
|
|
|
|
### Q-008: Licensing / distribution model
|
|
- **Status:** Not yet discussed
|
|
- **Question:** Open source? Free? Commercial? This affects engine choice and asset decisions.
|
|
- **Assigned to:** Team Leader
|
|
|
|
### Q-009: Time system
|
|
- **Status:** Resolved → [D-031](architecture.md#d-031-time-system--game-clock-and-day-phases)
|
|
|
|
### Q-010: Storyteller AI design
|
|
- **Status:** Not yet discussed
|
|
- **Question:** How does the Rimworld-style storyteller work? What are the pacing rules? How much structural randomness vs dramatic randomness?
|
|
- **Assigned to:** Gestalt, Nigel
|
|
|
|
### Q-011: Character selection and playable characters
|
|
- **Status:** Not yet discussed
|
|
- **Question:** Which characters are playable in the prototype? How different are their starting positions? Can you play canon characters or only original ones?
|
|
- **Assigned to:** Miri, Paula
|
|
|
|
### Q-012: Generation expansion method for dialogue
|
|
- **Status:** Open
|
|
- **Question:** How does the 4x generation expansion pass work? LLM-based, template-based, or rule-based? Affects how base lines are authored — LLM needs style-strong anchors; rules need substitution patterns.
|
|
- **Assigned to:** Gestalt, Mellanie
|
|
- **Source:** Content Gap Analysis Workshop (Mellanie R2)
|
|
|
|
### Q-013: Line previewer temporal progression
|
|
- **Status:** Open
|
|
- **Question:** How does the line previewer (#193) handle THE FRIEND's multi-visit contradiction arc? Needs sequence mode to simulate interaction progression over multiple encounters.
|
|
- **Assigned to:** Gestalt, Dudley
|
|
- **Source:** Content Gap Analysis Workshop (Mellanie R2)
|
|
|
|
### Q-014: Audio timing with monologue chime
|
|
- **Status:** Open
|
|
- **Question:** When does the monologue chime fire relative to text appearance? Before, simultaneous, or overlapping? Affects monologue line writing rhythm.
|
|
- **Assigned to:** Gestalt, Ozzie
|
|
- **Source:** Content Gap Analysis Workshop (Mellanie R2)
|
|
|
|
### Q-015: Generation expansion for THE FRIEND content
|
|
- **Status:** Open
|
|
- **Question:** Does the 4x generation expansion apply to THE FRIEND's custom lines, or are all ~70-100 lines per FRIEND hand-authored? Recommendation: no expansion on FRIEND lines — risk of flattening hand-crafted voice.
|
|
- **Assigned to:** Mellanie, Gestalt
|
|
- **Source:** Content Gap Analysis Workshop (Ozzie R2, Gestalt R2)
|
|
|
|
### Q-016: Knowledge hierarchy for monologue prerequisites
|
|
- **Status:** Open
|
|
- **Question:** Monologue prerequisites currently use binary flags (`knows: smuggling_operation`). Need a hierarchy: `suspects` < `knows_of` < `knows_details`. How granular?
|
|
- **Assigned to:** Gestalt, Paula
|
|
- **Source:** Content Gap Analysis Workshop (Gestalt R2)
|
|
|
|
### Q-017: Triangle pressure threshold
|
|
- **Status:** Open
|
|
- **Question:** Triangles need a numeric pressure value that increases based on events. When it crosses a threshold, `confrontation` situation activates. What events increase pressure? What's the threshold?
|
|
- **Assigned to:** Gestalt, Paula
|
|
- **Source:** Content Gap Analysis Workshop (Gestalt R2)
|
|
|
|
### Q-018: Shadowcasting algorithm selection
|
|
- **Status:** Open
|
|
- **Question:** Which line-of-sight algorithm should be used? Symmetric shadowcasting (Albert Ford) vs recursive shadowcasting. Both are proven but differ in symmetry properties (symmetric: if A sees B, then B sees A) and implementation complexity. Requires benchmarking at 150x150 map scale with 30 entities to validate performance within 100ms tick budget.
|
|
- **Context:** D-011 mandates LOS shadowcasting for fog of perception. Architecture review identified this as unspecified (audit section 2.2). Critical for Sprint 2 perception pipeline.
|
|
- **Assigned to:** Tyre, Dudley
|
|
- **Source:** Architecture Review Audit 2026-02-11
|
|
|
|
### Q-019: Entity ID stability strategy
|
|
- **Status:** Open
|
|
- **Question:** How are stable `entity_id: u64` values generated from bevy_ecs `Entity` handles? Must IDs be stable across save/load cycles? How does the client map entity IDs to scene nodes for entity lifecycle management (creation, updates, despawning)?
|
|
- **Context:** `VisibleEntity.entity_id` is a `u64` in the protocol (server/src/bridge/types.rs). bevy_ecs `Entity` is a generational index that may not be stable. Architecture review flagged this as MEDIUM severity gap (audit section 2.2).
|
|
- **Assigned to:** Tyre, Dudley
|
|
- **Source:** Architecture Review Audit 2026-02-11
|
|
|
|
### Q-020: Multi-entity collision resolution
|
|
- **Status:** Open
|
|
- **Question:** When two NPCs attempt to move to the same tile on the same tick, what is the resolution policy? Options: first-write-wins (deterministic with system ordering), both fail (conservative), priority-based (e.g., player > NPC, Active tier > Background tier).
|
|
- **Context:** D-012 defines tile collision. WalkabilityMap exists (server/src/simulation/movement.rs) but handles single-entity validation. Architecture review identified multi-entity collision as unspecified.
|
|
- **Assigned to:** Gestalt, Dudley
|
|
- **Source:** Architecture Review Audit 2026-02-11
|
|
|
|
### Q-021: Tick budget overflow policy
|
|
- **Status:** Open
|
|
- **Question:** When a simulation tick exceeds the 100ms budget, what happens? Options: (1) slow down real-time and preserve determinism (tick completes fully before next), (2) skip ticks and break determinism, (3) cap work per tick and defer to next tick. Must align with D-010 principle 4 (deterministic simulation).
|
|
- **Context:** D-026 defines 100ms tick budget for Active tier at 10 tps. Architecture review consensus recommendation proposes "slow real-time, don't skip ticks." Needs formal decision.
|
|
- **Assigned to:** Tyre, Dudley
|
|
- **Source:** Architecture Review Audit 2026-02-11
|
|
|
|
### Q-022: NPC pathfinding cache eviction
|
|
- **Status:** Open
|
|
- **Question:** With 80 Active-tier NPCs each caching ~3 pathfinding routes, the cache holds ~240 paths. What is the eviction policy? LRU? Time-based expiration? Fixed size per NPC? How are paths invalidated when walkability changes (doors lock, areas become restricted)?
|
|
- **Context:** Architecture review identified pathfinding as MEDIUM gap (audit section 2.2). Cache management needs specification regardless of algorithm choice.
|
|
- **Assigned to:** Tyre, Dudley
|
|
- **Source:** Architecture Review Audit 2026-02-11
|
|
|
|
### Q-023: Debug visualization scope
|
|
- **Status:** Open
|
|
- **Question:** What information should the debug overlay display? Candidates: LOS rays, pathfinding waypoints, vision cones, information boundary tags (who knows what), tick timing breakdown, spatial partition grid cells. Dev-only tool, or accessible for mod development?
|
|
- **Context:** Architecture review (Troblum) identifies debug visualization as missing operational infrastructure. Needed for debugging perception system, information boundaries, and performance issues.
|
|
- **Assigned to:** Tyre, Stig
|
|
- **Source:** Architecture Review Audit 2026-02-11
|
|
|
|
---
|
|
|
|
*23 questions (3 resolved, 2 partially resolved, 18 open). Last updated: 2026-02-11*
|