Standardized YAML frontmatter on all 115 sprint briefing files across sprints 1-26 with title, description, type, status, sprint number, and team fields. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
5.1 KiB
title, description, type, status, sprint, team
| title | description | type | status | sprint | team |
|---|---|---|---|---|---|
| Sprint 5 — Client Briefing | Interaction prompt carry-over, UI microcopy joint work | sprint | archived | 5 | client |
Sprint 5: Live — Client Tasks
Goal: Content at scale — FRIEND packs, PC-as-NPC authoring, NPC style guide
Branch: client
Agents: Stig (UI lead), Tyre (integration), Hoshe (testing)
Carry-over from Sprint 4
| # | Title | Status | Notes |
|---|---|---|---|
| #405 | Interaction prompt — client extensible prompt system | in_progress | Stig actively working, carries into Sprint 5 |
New Tickets
| # | Title | Blocked by |
|---|---|---|
| #409 | UI microcopy | — (joint with copy team) |
Use db/connectors/ticket show <id> for full details.
Key Decisions
decisions/architecture.md— D-020 (Godot client + Rust server via IPC)decisions/scope.md— D-027 (vertical slice), D-039 (wow moments)decisions/content.md— D-028 (dialogue architecture), D-035 (tag taxonomy)
Critical Path
#405 (interaction prompt, carry-over) → complete independently
#409 (UI microcopy) → starts when copy delivers strings
Client team has light load this sprint — Sprint 4 delivered most client infrastructure. Sprint 5 focus is content authoring (copy team) with client providing integration points.
Notes
#405: Interaction prompt — client extensible prompt system (CARRY-OVER)
What exists:
- Server-side interaction system with proximity detection (#404, done in Sprint 4)
- Multi-verb
InteractionOptionsserver state - Client rendering infrastructure at
client/scripts/rendering/ - Protocol types in
client/scripts/protocol/
What to deliver:
- Client-side interaction prompt UI system
- v0.1: single context-sensitive E prompt
- Architecture must support v0.2 multi-verb menu (design for extensibility now, build minimal version)
- Prompt reads
InteractionOptionsfrom server snapshot - Visual design: minimalist, diegetic feel (neural insert aesthetic)
- Position: near interactable entity or HUD corner (test both, choose best)
File location: New script at client/scripts/ui/interaction_prompt.gd or extend existing HUD system
Integration: Reads from ObserverSnapshot message field interaction_options. When non-empty, show prompt. On player input (E key), send Interact command to server.
Gotcha: This is Sprint 4 in-progress work. Stig should finish architecture in early Sprint 5, then support #409 integration.
#409: UI microcopy (JOINT TICKET)
What exists:
- Client UI elements from Sprint 3
- Interaction prompt system (#405, finalizing)
- Constants at
client/scripts/constants.gd - Rendering scripts at
client/scripts/rendering/
What to deliver:
- Integration of ~50 UI strings from copy team
- Determine string format (YAML file vs GDScript constants)
- Apply strings to: interaction prompts, knowledge panel labels, relationship state descriptors, HUD labels, tutorial text
- Coordinate with copy team on file format and location
Workflow:
- Early sprint: coordinate with copy team (Mellanie) on format and location
- Copy team authors strings
- Client team integrates into UI systems
- Test in-game, provide feedback to copy if strings don't fit UI constraints
File location (proposed): client/scripts/constants/ui_strings.gd or load from content/campaigns/main/_meta/ui-strings.yaml via content loader
Integration points:
- Interaction prompt labels (E to interact, E to talk, E to examine, etc.)
- Knowledge panel headers ("Known Contacts", "Persons of Interest", etc.)
- Relationship state text ("Trusted colleague", "Flagged by case file", etc.)
- HUD labels (time display, location name, pause indicator)
- Tutorial/hint text (if any)
Gotcha: UI strings must be brief — HUD space is limited. If copy delivers long strings, client team provides length constraints and copy revises.
Sprint Success Criteria
By end of Sprint 5, client team delivers:
- Interaction prompt system complete (#405) — context-sensitive E prompt working in-game
- UI microcopy integrated (#409) — all 50 strings applied to UI elements, tested in-game
Light sprint for client team. Primary work is finishing #405 carry-over and coordinating #409 integration with copy.
Testing Notes
Both tickets need in-game validation:
- #405: Test interaction prompts with multiple verb types (talk, examine, interact with object). Verify prompt appears/disappears based on proximity. Test visual clarity in fog/non-fog areas.
- #409: Test all UI strings in context. Check for text overflow, truncation, readability. Verify tone matches Sova setting (quotidian-with-undertow, working-class pragmatic).
Use existing client test infrastructure (gdUnit4 if applicable, or manual playtesting).
PR Workflow
When ready to submit, create a PR with tea CLI:
tea pr create \
--repo jpmschweitzer/settled-reach \
--login schweitz \
--title "feat(ui): interaction prompt + UI microcopy" \
--description "Sprint 5 client delivery - see docs/sprints/sprint-5/client.md" \
--base main \
--head client