This article was written following the second annual Step Up Your Sound Game Jam, an Android mobile game jam where teams developed one-of-a-kind gaming experiences using Dolby Atmos with Wwise. This is a 5-part series; in this fourth blog, Steven, Kathleen and Greg of the Tin Heart Interactive team dive into their game Soar Up The Charts.
Tin Heart Interactive is an independent video game studio based in Maryland. We’ve released sound packages for the Unity asset store as well as created a number of small narrative games as a nights and weekends endeavor for the past several years. In 2021, our studio went full-time as a contributing member on the vampire-fighting adventure game, #BLUD.
We were overjoyed to be invited to participate in the second annual Step Up Your Sound game jam. The development team for this project was Steven Palermo (core systems programming), Kathleen Parker (3D modeling & textures), and Greg Lane (game design and general development). We all met through the games industry in Maryland or through the Baltimore Chapter of the IGDA and were excited to work collaboratively on a project together. Before getting into the games industry, Greg was an active member in a number of regional touring bands and naturally wanted to bring this experience to an audio-focused game jam.
Reaching out to former bandmates in the music industry, we were able to bring on Alden Ave and Keep Flying to bring their songs to life for our game Soar Up the Charts. Their pop-punk sounds had the right energy to really draw the player into a twitch-based action game.
In our game, you play as either a blimp or a paper plane that represents the band. Your goal is to build up your band’s sound while flying through the liminal spaces backstage of the concert venue. Players begin with just the drums, and their power is determined by the beat of the music.
As you pick up collectables scattered throughout the track, new instruments (known as stems) are added to the game’s soundtrack. In addition to making the sound more complete, each of these stems is also paired with a power, so you’ll gain lasers, missiles, or shields to help you out. There are additional collectables in Soar Up the Charts that allow players unlock additional songs if they’re able to pick up enough credits during play. Depending on the cost of the track, this may take a few playthroughs in order to gain enough credits.
Along the way, enemy radios will fire static at your ship hoping to disrupt your sound. If they’re able to hit you, they’ll take away one of the song stems and reduce your overall power.
It’s often true that constraints breed creativity, forcing you to focus on creative solutions. We knew that we’d want a health bar and score on the UI, but we didn’t want to burden the screen with too many other distractions. Since the goal of this jam was to build a game for Android, we set up the player’s plane motion to work with finger swipes or a virtual joystick. (There’s a toggle in the menu for players.) When it came to firing weapons, however, we didn’t want to add yet another button for the player to track. After all, on a phone without tactile buttons, it’s possible that the player’s finger could drift while controlling the plane, and missing a fire button would be the difference between life and death!
Instead, we went back to the focus: the music of the game.
We were able to leverage the power of Dolby Atmos to add sonic variety to positioning each of the stems in a different place to immerse the player in the middle of the song. We randomized the instrument locations so they would be close to the player but also located in slightly different places, allowing the player to ‘sit in the mix’ in a unique way each time they went through a level. Add in the doppler effect of whizzing by enemies and narrowly avoiding bullets, and there’s a full soundscape throughout the game!
We defined custom attenuation for each of the stems to achieve sonic variety of the different track placements. We adjust the Speaker Panning to Balance-Fade, allowing the source audio to be upmixed or downmixed as needed to match the channel configuration. For 3D Position we select Emitter with Automation. This is normally best for game interfaces, menus, and sources where 3D positioning is less important. After all, our stems are going to stay with the player for the whole level.
Finally, we want to define our automation. After creating a new path for each stem, we moved the positioning to the center (since we don’t want to hard-code our audio source’s position) and instead opted to randomize the starting position of each stem with Random Range. We’ve settled on a value of 25 for all of our vectors: close enough to be heard well, while far enough to provide some variety.
We wanted the players to fire to the rhythm of each instrument, and the enemies to fire to the overall tempo of the song. In Wwise, we were able to set up each of our instrument stems to sync to the rhythm, which would in turn cause it to fire in time with the beat.
To achieve this effect, we first opened the Source editor. To do so, go to the menu bar > Views > Editors > Source Editor. (You could also use the shortcut Shift + X). This opens a new window where we can see the full waveform of a selected track.
In the new window, on the right-hand side, we can see the option for ‘Marker Input Mode’. It defaults to ‘Import From File’, so we’re going to change it to ‘Detect from Transients’ in the drop-down menu. A transient is the onset of a change in the audio file, and Wwise has a built-in algorithm to add markers to these changes.