--- title: "Stig - Project Briefing" description: "Client UI developer — owns Godot 4 UI implementation including character customisation screen, insert/HUD, dialogue panels, and fog/entity rendering integration" type: briefing status: active agent: Stig updated: 2026-03-13 --- # Stig - Project Briefing Last updated: 2026-03-13 ## Current Project State The Settled Reach: top-down immersive sim, single-character perspective, asymmetric information core mechanic, Rimworld-style storyteller. 137+ confirmed decisions. Where's the Fun? Workshop complete (2026-03-05) — 24 decisions locked. v0.2 direction: generator-first proof-of-life, tycoon bookmark, all NPCs generated. Sprint 25 generator spike confirmed as critical path. ## Status **ACTIVE.** v0.2 brings a character customisation UI requirement and removes the dual-character variant for insert/HUD. ## Key Decisions for Your Domain Read `decisions/perception.md` (primary) and `decisions/scope.md` (D-013). Key decisions: - **D-013:** Diegetic insert/POI navigation system - **D-015:** Camera locked to character, vision cone - **D-016:** Internal monologue text display - **D-017:** Perception mode overlays - **D-019:** Top-down primary view, Godot 4 client (GDScript) - **D-028:** Dialogue UI — four relational layers (access tiers, history, trust-gated, unprompted) - **D-033:** Entity color = relationship to player — palette: unknown teal, friendly green, POI amber, hostile red, static grey. 0.5s transitions. Unchanged in v0.2. - **D-117:** Tycoon bookmark — single character type in v0.2 (no smuggler/detective variants) - **D-126:** Full character customisation (hair, clothing, colours) — new UI requirement - **D-131:** First Settled Reach moment = apartment + insert activation — UI must support this moment ## What's Been Delivered (Sprints 1-4) ### Sprint 1 (Run): IPC bridge, player movement ### Sprint 2 (See): Fog rendering (#113), camera lock (#116), tile rendering (#129), entity sprites (#130), fog overlay (#131) ### Sprint 3 (Know): Content directory structure used by client ### Sprint 4 (Feel): Integration tests (#410 tile data, #411 input roundtrip), server bug fix for tile type data (#412) ## Current Priorities Consult `docs/sprints/` for active sprint briefing. ### v0.2 client UI: 1. **Character customisation screen** — hair, clothing, colours (D-126). Blocked by Araminta's character customisation visual spec and Q-WTF-039 (portrait vs tile-scale preview). Once Araminta delivers the spec, implement. 2. **Insert/HUD — tycoon variant** — remove dual-character variants (smuggler/detective). Single `lattice_profile` parameter. Coordinate with Araminta on tycoon insert wireframe. 3. **UI microcopy integration** — coordinate with Mellanie on tycoon-voice UI strings. YAML format, length constraints. - File location: `content/campaigns/main/_meta/ui-strings.yaml` or `client/scripts/constants/ui_strings.gd` ## Development Workflow See `docs/DEVOPS.md` for full procedures. Your key targets: - `make setup` — verify Godot is installed - `make client` — launch Godot with `client/` project - `make test-client` — gdUnit4 tests (headless runner pending) - `make lint-client` — gdlint/gdformat (pending setup) - `make ci-client` — full client CI pipeline (lint -> build -> test) - Client code lives in `client/` — scenes, GDScript, assets - UI tests use gdUnit4 (D-030) ## Key Documents - decisions/ — domain-split decision files (see decisions/README.md for index) - docs/DEVOPS.md — build, test, lint, CI procedures - docs/sprints/sprint-5/client.md — current sprint briefing - client/scripts/rendering/ — rendering infrastructure - client/scripts/protocol/ — protocol types