Behind the Sound of Headbangers: Rhythm Royale | Bringing the Pigeon Rhythm Game to Life

게임 오디오

Headbangers: Rhythm Royale is the world's first competitive online music game. It pits you against 29 other players in intense musical and rhythmic battles. The challenges involved in creating this game were enormous. In this article, I'll explain some of them and show you how we managed to get around some of the limitations.


Online synchronization

The way we synchronize our 30 online players in Headbangers is unique. The game is not based on the characters' movements in space or their actions, but on their responses to musical events. We therefore decided to synchronize the client and the server to the music and its progress. 

Since time and validation are managed by the server, we can detect whether a player is out of sync with the network time. Above a 100 ms time lag, the player will be resynchronized, which in practice means that the playback head will move in the music to synchronize the player at the right moment. Thanks to extensive network optimization, we were able to ensure that these resynchronizations were extremely rare. 

When it came to implementing all this in Wwise, we were faced with a real challenge: Wwise is not designed for the method we wanted to apply. There's no simple way of moving the playback head of music and sounds forwards or backwards according to network time instructions.

We came up with a (largely random) trick: using the transition system to create specific rules. We noticed that by creating an immediate, fade-free transition from a song to itself in the Transitions tab of a Switch Container, we could now move the playback head as we wished. 

img1

This method was quite cumbersome to apply to the whole game. Headbangers contains thousands of musical segments (over 50 hours of music), and this procedure had to be applied to every musical segment in the game. Which brings me to my next point. 

SoundBank management and optimization

The sheer quantity of sounds and music contained in Wwise (tens of thousands in total) makes it certainly one of the most voluminous games in terms of sound content in the history of video games. With the game being released on all consoles and the PC, managing memory and SoundBanks (especially for the Switch) was a real challenge. 

My advice is to anticipate these issues as far in advance as possible. On my end, I had to deal with this concern late in the development process, which forced me to completely rework my architecture. 

There are 23 mini-games in Headbangers. In the end, we decided to divide the game into 24 SoundBanks: one SoundBank per mini-game and one general SoundBank, containing sounds common to all mini-games, as well as menu sounds and music. The decision to distribute sounds between these SoundBanks is a key element in memory management. We therefore had to think long and hard about the use and place of each sound in the game to optimize all this. 

In the same spirit of saving space and memory, we also had to optimize conversion. We therefore created several conversion parameters in Wwise, some of which are only used on certain platforms such as the Switch. So, by converting all sound effects to ADPCM on this console, we were able to save a great deal of space with very little loss of quality, while maintaining a more optimal result for music (the key element of the game) in Vorbis.

img2

Synchronize audio feedback with player actions

Most games accept a certain latency between the moment the player presses a button and the sound feedback of the action. In Headbangers, it was impossible to be satisfied with this latency. Indeed, for a musical game, if the time lag between the button press and the sound feedback is significant, the player's entire perception is blurred. 

We therefore decided to apply streaming parameters to certain sounds directly linked to gameplay. Defining that a sound will be streamed means that it can be called up more quickly, thus reducing audio latency. The key is then to set the Prefetch length for each sound, to avoid source starvation effects or untimely audio cuts. 

img3

In one of our mini-games, Piano Mezzo Forte, our pigeon has to sing over background music. So we created an event for each note in each nuance (Piano, Mezzo, and Forte) and set their Prefetch length according to their characteristics and durations. Even if the end result was totally ridiculous (that’s what we wanted), this near-perfect synchronization was very important, as you can see in the video below. 


Dynamic menu music

What I particularly like about Wwise is how easy it is to create dynamic music.

Even though Headbangers wasn't the game that needed most in this respect (it's a very scripted game), I had a lot of fun creating dynamic, ever-changing music in the menus, which is always appreciated by players.

Our main menu is made up of several tabs, each representing a different menu in the game: Home, Progress, Challenges, Customization, Shop, Options (see video below). 


The process for creating this dynamic music effect is simple. I created one tune per menu, with the constraint that all these tunes have the same tempo, duration and harmonic progression. Then simply use Wwise transitions to create an immediate "Same time as playing segment" transition rule, and you can move from a point in one piece to that same point in another piece smoothly and efficiently. 

img4

It's all very simple and quick to set up, and the effect is always satisfying. Wwise really helped us meet a lot of the challenges on Headbangers, and we consider it to be a really reliable and robust audio engine, yet accessible and intelligent enough for composers or sound designers. 

Charles Bardin

Director and Co-founder

Glee-Cheese Studio

Charles Bardin

Director and Co-founder

Glee-Cheese Studio

Charles Bardin is the director and co-founder of French video game studio Glee-Cheese Studio. For over 10 years, he has been creating sound worlds for a wide variety of independent games, including Stellar Overload, Overloop, A Musical Story, and the very recent Headbangers: Rhythm Royale.

 @GleeCheese

댓글

댓글 달기

이메일 주소는 공개되지 않습니다.

다른 글

UI 설계 관점에서 UI 오디오 접근하기 - 제 1부

어떤 게임에서는 사용자 인터페이스가 플레이어의 전체 경험에 궁극적으로 영향을 거의 미치지 않습니다. 수많은 모바일 게임과 같이 어떤 게임에서는 거의 전체 게임플레이 동안 UI를...

14.10.2020 - 작성자: 조셉 마척(JOSEPH MARCHUK)

아우터 월드(Outer Worlds)의 사운드: 제 2부

아우터 월드(Outer Worlds)의 사운드를 심층적으로 알아보는 블로그 제 2부에 오신 것을 환영합니다!...

12.1.2021 - 작성자: 옵시디언 엔터테인먼트 (Obsidian Entertainment)

Strata 멀티트랙 SFX 라이브러리를 먼저 사용해본 사람들은 이렇게 말했습니다.

Strata의 시작 지난 40~50년 동안 SFX 라이브러리 제작자들은 거의 동일한 방식으로 콘텐츠를 제작하고 배포했습니다.디자인한 사운드를 녹음, 믹싱, 렌더링하고 테마별...

30.11.2022 - 작성자: 시몽 아슈비 (Simon Ashby)

노 스트레이트 로드(No Straight Roads)의 음악적 게임 세계 설계하기

안녕하세요, 게임 오디오 여러분들! 저희가 Wwise와 Unreal Engine을 사용해서 '노 스트레이트 로드(No Straight Roads, NSR)'의 극도의 스타일링을...

29.3.2023 - 작성자: Imba Interactive (임바 인터랙티브)

에이지 오브 엠파이어 IV의 음악

안녕하세요, 저는 린 가디너(Lin Gardiner)라고 합니다. Relic Entertainment(렐릭 엔터테인먼트)의 수석 오디오 디자이너이자 에이지 오브 엠파이어...

22.1.2025 - 작성자: 린 가디너(Lin Gardiner)

Audiokinetic Theater 발표 세션 요약 | GDC 2024

GDC 2024에서 개최된 Audiokinetic Theater에서는 많은 오디오 전문가들을 초대해 소중한 정보들을 나눌 수 있어 매우 영광이었습니다. 첫 번째 영상들이 올라와...

22.5.2025 - 작성자: Audiokinetic (오디오키네틱)

다른 글

UI 설계 관점에서 UI 오디오 접근하기 - 제 1부

어떤 게임에서는 사용자 인터페이스가 플레이어의 전체 경험에 궁극적으로 영향을 거의 미치지 않습니다. 수많은 모바일 게임과 같이 어떤 게임에서는 거의 전체 게임플레이 동안 UI를...

아우터 월드(Outer Worlds)의 사운드: 제 2부

아우터 월드(Outer Worlds)의 사운드를 심층적으로 알아보는 블로그 제 2부에 오신 것을 환영합니다!...

Strata 멀티트랙 SFX 라이브러리를 먼저 사용해본 사람들은 이렇게 말했습니다.

Strata의 시작 지난 40~50년 동안 SFX 라이브러리 제작자들은 거의 동일한 방식으로 콘텐츠를 제작하고 배포했습니다.디자인한 사운드를 녹음, 믹싱, 렌더링하고 테마별...