Sprint 8: React — briefings for server, client, audio, and joint teams. Database snapshot after Sprint 8 ticket assignments. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
66 lines
3.0 KiB
Markdown
66 lines
3.0 KiB
Markdown
# Sprint 8: React — Audio Tasks
|
|
|
|
**Goal:** Activate the dialogue pipeline end-to-end — player talks to NPCs, NPCs respond, the world reacts.
|
|
|
|
**Branch:** `audio`
|
|
**Agents:** Inigo (sound design)
|
|
|
|
## Carry-over from Sprint 7
|
|
|
|
| # | Title | Status | Notes |
|
|
|---|-------|--------|-------|
|
|
| #440 | 6 interaction audio assets — cursor hover, weapon aim, etc. | in_progress | 4/6 assets delivered, 2 remaining |
|
|
|
|
## New Tickets
|
|
|
|
None for Sprint 8. Focus on completing carry-over #440.
|
|
|
|
Use `db/connectors/ticket show <id>` for full details.
|
|
|
|
## Key Decisions
|
|
|
|
- `decisions/scope.md` — D-038 (audio in v0.1 scope: 8 files via Stable Audio Open)
|
|
- `decisions/perception.md` — D-018 (three-range sound model)
|
|
- `decisions/content.md` — D-063 (confrontation weight via audio dip)
|
|
|
|
## Notes
|
|
|
|
### #440: 6 interaction audio assets (MEDIUM, carry-over)
|
|
**What exists:**
|
|
- 4/6 assets delivered in Sprint 7:
|
|
- `sfx_cursor_hover.ogg` — soft tick on entity hover
|
|
- `sfx_cursor_entity_lock.ogg` — short pulse when locking to entity
|
|
- `sfx_interaction_confirm.ogg` — gentle chime on [E] press
|
|
- `sfx_weapon_aim_enter.ogg` — tense metallic slide when entering aim mode
|
|
|
|
**What the ticket needs to deliver (2 remaining assets):**
|
|
- `sfx_weapon_aim_lock.ogg` — sharper variant of cursor_entity_lock for weapon targeting. Distinct from general entity lock — should feel more clinical/dangerous. 0.3-0.5s. Weapon-selected + entity in sights = this sound plays.
|
|
- `sfx_stance_change.ogg` — soft mechanical click for stance toggle (Walk ↔ Sprint ↔ Careful ↔ Crouch). Subtle, not intrusive. Neural insert feedback aesthetic (D-048). 0.2-0.4s. Plays on every stance change (Shift/Ctrl toggle).
|
|
|
|
**Integration:**
|
|
- Both assets use Stable Audio Open (per D-038: self-hosted, free commercial use)
|
|
- Client integration: audio events emitted by cursor_state_machine.gd (weapon_aim_lock) and stance_indicator.gd (stance_change)
|
|
- Audio autoload (SoundManager) handles playback
|
|
|
|
**Non-obvious gotchas:**
|
|
- weapon_aim_lock should NOT be loud or startling — it's UI feedback, not a combat sound. Think "confirmation beep" not "alarm."
|
|
- stance_change fires frequently (player may toggle stances multiple times while positioning). Keep it short and pleasant — no long tails or reverb.
|
|
- Both sounds are UI/insert layer (z-layer 7), not diegetic world sounds. They don't spatialize or attenuate with distance.
|
|
|
|
**Sprint goal:**
|
|
Deliver final 2 assets. Audio team unblocked after this — no new audio tickets planned for Sprint 9 unless design requests.
|
|
|
|
## Dependency Chain
|
|
|
|
```
|
|
#440 (interaction audio) → standalone, completes Sprint 7 audio scope
|
|
```
|
|
|
|
## PR Workflow
|
|
|
|
When ready to submit, create a PR with `tea` CLI. **All flags are required** to avoid TTY prompts (see CLAUDE.md "Gitea access" section):
|
|
|
|
```bash
|
|
tea pr create --repo jpmschweitzer/settled-reach --login schweitz --title "feat(audio): interaction audio completion (Sprint 8)" --description "Delivers final 2/6 interaction audio assets (#440) — weapon aim lock, stance change" --base main --head audio
|
|
```
|