Objetivo
Implementar el sistema de audio con música ambiental por bioma, SFX mapeados a señales del juego y ajustes de volumen persistidos.
Alcance
- Buses de audio: Master, Music (−6 dB), SFX (0 dB)
- Música: loops ambientales por bioma dominante (pradera, desierto, tundra, océano), crossfade suave
- SFX: mover unidad, atacar, construir ciudad, finalizar turno, victoria, derrota, wallet conectada
- Volumen configurable en menú de opciones, guardado con
ConfigFile
- Silencio automático al perder el foco de la ventana (pestaña del navegador en segundo plano)
Skill de referencia
/godot-audio-systems
Tareas
Aceptación
La música cambia de loop al moverse a una región de bioma diferente, los SFX suenan en la posición del evento en el mapa y los ajustes de volumen persisten entre sesiones del navegador.
🎁 Evidencia = reward mayor
- Si tu PR incluye capturas de pantalla mostrando esto andando end to end, entra a reward de GrantFox en esta issue.
- Si además sumás un video demo corto, califica para reward mayor.
- No es obligatorio, pero pesa mucho en la evaluación.
Qué conviene mostrar en esta issue:
- Video con audio moviendo una unidad de una región de bioma a otra, para que se escuche el crossfade entre los loops de MusicManager.
- Video con audio de varios SFX disparados desde EventBus (mover unidad, atacar, fundar ciudad, finalizar turno) donde se note la atenuación 2D según la posición del evento en el mapa.
- Captura del OptionsMenu con los sliders de Master, Music y SFX, más un clip que muestre que el valor persiste al recargar la pestaña del navegador y que la música se silencia al perder el foco.
Pegá las capturas directo en la descripción del PR, arrastrándolas al cuadro de texto de GitHub.
Objetivo
Implementar el sistema de audio con música ambiental por bioma, SFX mapeados a señales del juego y ajustes de volumen persistidos.
Alcance
ConfigFileSkill de referencia
/godot-audio-systemsTareas
AudioServery guardar layout enaudio_bus_layout.tresMusicManager.gdautoload:play_biome(biome)con tween de volume para crossfadeSFXLibrary.gd: diccionario{ "unit_move": preload(...), "attack": preload(...), ... }AudioManager.gd: suscribirse a EventBus y llamarplay_sfx(key, position)con atenuación 2DOptionsMenu.tscn: sliders para Music/SFX/Master conectados aAudioServer.set_bus_volume_db_notification(NOTIFICATION_APPLICATION_FOCUS_OUT): silenciar Music busAceptación
La música cambia de loop al moverse a una región de bioma diferente, los SFX suenan en la posición del evento en el mapa y los ajustes de volumen persisten entre sesiones del navegador.
🎁 Evidencia = reward mayor
Qué conviene mostrar en esta issue:
Pegá las capturas directo en la descripción del PR, arrastrándolas al cuadro de texto de GitHub.