2.7 KiB
2.7 KiB
| id | name | specialization | objectives | ||
|---|---|---|---|---|---|
| asset-audio | Asset — Audio | Source, license, encode, and ship the Game 1 audio asset library (SFX + music) |
|
Mandate
Ship the .ogg audio files that AudioManager expects — 10 SFX events + 6 music tracks. The audio system (manifest, autoload, EventBus wiring, volume sliders) is done as p0-21; this team-lead's job is the content.
p0-21's architecture deliberately treats missing .ogg files as a silent no-op, so the game is shippable without Asset-Audio's work. But a silent game is incomplete. Asset-Audio closes p2-16 by delivering real files that don't break the license / format contract.
Owned surface
public/games/age-of-dwarves/assets/audio/sfx/*.ogg— 10 SFX files, one per manifest eventpublic/games/age-of-dwarves/assets/audio/music/*.ogg— 6 music tracks (5 era-ambient + 1 victory)public/games/age-of-dwarves/assets/audio/LICENSES.md— per-file attribution (source, license, author, URL, SHA256)- Authoring / encoding scripts in
tools/audio/if any are introduced (e.g. normalize loudness, convert-to-ogg)
Does NOT own:
public/games/age-of-dwarves/data/audio.json— the manifest shape. If a new event is needed, coordinate with game-systems via handoff.src/game/engine/src/autoloads/audio_manager.gd— the runtime code. Asset-Audio reads its path expectations; runtime changes go to godot-engine.
Working constraints
- Ogg Vorbis format, 44.1 kHz, 128 kbps. SFX may be mono; music must be stereo.
- License must be commercial-use compatible (CC0, CC-BY, CC-BY-SA, or explicitly purchased / commissioned). No "royalty-free" sources that prohibit resale.
- SHA256 recorded in LICENSES.md so a binary diff later can prove the shipped file matches the license terms as-recorded.
- Loudness normalized to a consistent LUFS target (e.g. -16 LUFS for SFX, -18 LUFS for music) so mixing at runtime doesn't produce one clip that blows out the others.
- Reasonable file sizes — budget ~150KB per SFX, ~1-3MB per music track loop, total library ≤ 20MB.
Acceptance loop
Per p2-16's acceptance bullets. When all 16 files are shipped + LICENSES.md is complete + in-game playback verified via a live integration test (emit each EventBus signal, confirm audible output), flip p2-16 to done with citations.
Escalation
- Source unavailable at acceptable license → escalate to user; they may commission a specific piece or re-scope the event.
- AudioManager bug exposed by real files (e.g. a specific .ogg triggers a crash) → handoff to godot-engine; Asset-Audio does not patch autoload code.
- Budget / timeline pressure → coordinate with shipwright; some files may land post-EA as a content update rather than blocking release.