Files
settled-reach/docs/sprints/sprint-8/audio.md
T
jpmschweitzerandClaude Opus 4.6 7873b77a5c chore(meta): add Sprint 8 briefings and DB backup
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>
2026-02-16 01:26:04 +01:00

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
```