menu
 

Sea of Stars: Modern Tools for Retro Aesthetics

게임 오디오

Sabotage Studio’s philosophy for creating games is “Retro aesthetics with modern design,” and our game audio follows the same principle. Most of us from the studio grew up in the NES/SNES/Genesis/N64 era and kind of never left. When Sabotage was founded, the main goal wasn’t to make games identical to the titles we loved growing up; it was to capture that same feeling of playing a game you were permitted to rent from Blockbuster for the weekend with your siblings, sitting criss-cross applesauce on the floor, an oversized T-shirt pulled over your legs. It doesn’t mean pixel art for the sake of pixel art, it means creating specific limitations to distill the experience down to the core of what really matters. It means paying respect to the classics while considering decades of game design evolution and modern player expectations.

WHAT IS SEA OF STARS?

Sea of Stars is a retro-inspired, turn-based JRPG in the vein of the classics. Players take on the role of two Solstice Warriors who combine their powers of Sun and Moon to create Eclipse Magic, the only force capable of fending off the forces of the evil Fleshmancer.

AUDIO DIRECTION: MUSIC

Our first game, The Messenger, was quite straightforward to me in terms of the music it needed. It’s an 8-to-16 bit action-platformer built to look and feel like a supercharged NES title. With my background in creating chiptune music using specialized tracker programs designed around retro console audio limitations, I wrote an authentic 2-part chiptune soundtrack that could be played back on NES and Genesis hardware.

For Sea of Stars, it’s a much more detailed world that demanded more than a simple chiptune soundtrack could provide. Months (and even years) before we ever began production, there was an R&D period where I was experimenting with different instruments and sounds to find “the” sound. 

We ultimately landed on what I like to call “SNES++,” which continued to evolve as production went on over the course of 5 years. The bulk of the idea is there are recognizable Super Nintendo sounds doing most of the heavy lifting on each song, but the SNES sounds are almost always layered and supplemented with more modern sounds, fancy mixing, processing, and world percussion to create a unique but familiar vibe. 

For a bit of context, SNES music is sample-based, but there are a few things that give the  console its signature sound. There are a total of 8 available channels shared by both music and SFX, plus an additional 8 that can be used for “reverb,” which is really just a stereo ping-pong delay. A game cartridges’ memory contains all of the music’s individual instrument samples, and sequencer data triggers the samples for music playback. Not unlike how MIDI works, but instead of MIDI there were custom tracker programs written explicitly for this purpose at the time. The instrument samples come from commercially available synthesizers of the time (Roland, Korg, etc) and to fit into the 32kb memory budget, they were reduced down to single-cycle waveforms. For sustained notes, the sample is looped in hardware, which kind of gives it a “choppy” sound as the sample is looped. Add some BRR (bit rate reduction) compression, and you’ve got your SNES sound.

For the music production in Sea of Stars, in addition to using existing libraries sampled from retro hardware, occasionally custom instruments were created using similar techniques as above. 

The world of Sea of Stars is divided into islands, each with its own biomes, points of interest, and cultures. I sought to identify a signature instrument for each island—pan flute for Sleeper Island, where the wind blows through holes in the mountain, or strings for Wraith Island, a dark, cursed land.

AUDIO DIRECTION: SFX, UI, AMBIENCE

Sound design is essential in maintaining a retro aesthetic. We needed to make deliberate choices to keep the sound from straying too far from that realm. Overly polished effects would take someone out of the retro experience, while bitcrushing everything to death would be unpleasant, disrespect the animations, and lead players to mute the game.

Keeping it simple was key, but Wwise played a major role in keeping things interesting and organized. Many of the game's sound effects are split up and layered within Blend Containers, with each layer having its own subtle pitch or filter randomization, ensuring that sounds are never repeated in exactly the same way. This prevents player ear fatigue, especially for repetitive effects.

Each level has its own unique ambience bed to match the visuals and environment, serving to supplement the music and sfx, and to help the environments come to life a bit more. Ambience was the only thing that we didn’t really hold back on in terms of fidelity, consisting mostly of high quality foley recordings; but since it was quite subtle it just felt correct and didn’t take one out of the experience.

THE SEA OF SOUND: IMPLEMENTATION

Once production ramped up and I got a clearer picture of the full scope of the project and the level of detail & work required, I realized I needed a tag team partner, so I called up my friend Jake who joined to lend a hand a few days a week. Jake had never done game audio, but with a bit of time and perseverance, he learned Wwise from the ground up following along with the documentation and sample projects, the same way I learned prior to starting work on Sea of Stars.

The music is managed using States that change based on the game setting. Much of this setup mirrors the Wwise sample projects and is hard-coded to respond to in-game actions. For example, the default music state while exploring is "Explore," which switches to "Combat" during battles, “Dialog” for dialog-heavy cutscenes, "Boss" for boss fights, etc. Specific transition rules were refined through extensive playtesting. We ended up with almost 10 of each type because we kept needing more for different reasons.

The game has Day and Night, not in automated cycles but can be changed at will once unlocked. All outdoor areas get a Day and Night version of their music that stays in sync with each other. This is accomplished through the use of a volume RTPC linked to the in-game time of day; they're actually both playing in parallel at all times, but Night is muted during the Day and vice versa. Each composition shares the same core structure but features distinct differences, like the use of more bells, subdued tones, or a halftime rhythm at night.

An exception was made for one island, where we wanted the same music to play during combat. Our programmer, Fro, developed custom scripts in Unity, allowing us to configure unique settings for encounters by ticking a checkbox and selecting from a drop-down list of music states.

We added another State group called "EncounterState," which tracks whether the player is in combat. For the tracks that don’t change during battle, we included an extra layer of percussion or guitar that fades in when EncounterState is On, to help ramp up the intensity of the track during combat.

With some “Fro magic,” we set up Audio Zones in our Unity scenes for various purposes, such as:

  • Shifting the ambience tone when moving deeper into a cave
  • Triggering music changes at specific points based on location, if it couldn’t be done in Unity’s cutscene graph
  • Adjusting ambience for "Indoor" vs. "Outdoor" zones by altering volume, filters, and muting certain elements, or bringing in new ones
  • Differentiating between "Underwater" and "Above Water" portions of a level

THE “SNES SIDE-CHAIN”

The most interesting thing on the audio side that you’d never really know was there, is a feature I created I’m calling the “SNES side-chain.” 

In SNES games, the console was only capable of 8 channels of simultaneous, monophonic audio samples, shared by the music and the sfx. To make room for effects, a channel or two might drop out from the music track, sometimes a harmony but usually the drums—something easily noticed performing special moves in Chrono Trigger.

I set off to recreate this limitation as an effect. 

Deciding it would mainly be Impact sounds affecting this, I created a sub-bus to assign the output of all those sounds.

Wwise-Output-Bus-Sea-of-Stars

Using the Meter plugin to detect audio above a threshold, I set up an RTPC to react to it called “SFXvol”

Wwise-meter-Sea-of-Stars

Since I wanted only the drum track of the battle theme to be affected, I imported the song with the kick and snare on its own separate track, and set up curves on the drum track for lowpass, highpass, and volume, to react to incoming sound effects above the set threshold.

Wwise-RTPC-tab-Sea-of-Stars

And there we have a deliberate self-imposed fake limitation modeled after an actual hardware limitation!

CHALLENGES

There were many challenges, as with any major project. Since this was my first time working in Wwise it was a bit of a learning curve, but the documentation is thorough and it got me set up for success. Growing into an audio director role was a fairly big task, especially with the sheer number of assets we ended up needing for this project.

Sometimes it is difficult to find a specific answer for a weirdly specific problem online, since every project setup is different. There was a lot of trial and error. There were also a few late nights pulling my hair out troubleshooting a problem that turned out to not be on the Wwise end at all but on the Unity end, and took a programmer 2 minutes to fix in the morning. 

Learning the hard way that some platforms have voice limitations and I can’t just blast infinite layers of sound effects, which include silence objects in a random container. I discovered this later than I care to admit because walking into deeper water made the voice count shoot up to about 150 and performance suffered.

Learning how to use the Profiler properly to diagnose and fix problems.

When it comes to the actual sound design, sometimes I would need to pump the brakes on taking something too far sonically when keeping it simple was more often the best solution.

Being a musician my whole life and not knowing how to effectively write any code or script, I did as much as I could but had to bug Fro or one of the other programmers if I hit a wall or needed specific integration. 

CONCLUSION

Creating the audio experience for Sea of Stars was the journey of a lifetime and wouldn’t have been possible as a solo effort, or without software like Wwise and the support from Audiokinetic. Oftentimes the best ideas come from embracing limitations, and the best results come from being a part of a motivated team of multiple brains working toward the same goals. 

Eric W. Brown

Composer & Audio Designer

Sabotage Studio

Eric W. Brown

Composer & Audio Designer

Sabotage Studio

Eric is a drummer, artist, composer, and sound designer with a diverse background in chiptune, heavy metal, and electronic music. Since 2006, he's been touring the world, either behind the drumkit or at the front of the stage. He has been crafting music and sound for Sabotage Studio’s games since its inception and continues his work with the studio even while on the road.

 @ericsabotage

댓글

S.Z. Spagna

January 07, 2025 at 03:25 pm

So good; thanks, Eric! Love these retrospectives on professional journeys in gamedev. Looking forward to the DLC and the magic you'll no doubt work there. Hopefully the newly added Watchmaker wheels boss battle music ("The Final Turn") and the DLC music find their way into the Steam OST or as a separate DLC buy option on Steam or the youtube channels. Gotta annoy family and neighbors playing the OST 24/7.

댓글 달기

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

다른 글

머더러스 퍼수츠(Murderous Pursuits)의 대사와 대화 설계 - 제 2부

안녕하세요, 머더러스 퍼수츠의 대화와 대사 시스템의 제 2부로 다시 돌아온 제이미입니다. 제 1부를 아직 보지 않으셨다면 여기를 클릭하여 읽어주세요! 제 1부에서는 게임에서의...

20.5.2020 - 작성자: 제이미 크로스(JAIME CROSS)

Wwise Unity 커닝 페이퍼

Wwise Unity 통합에 대해 말해봅시다. 언제든지 참조할 수 있는 수년간 제작된 교육 자료가 꽤나 많습니다. Audiokinetic 교육 자료로 말하자면 Youtube에도...

2.2.2021 - 작성자: 매스 마라티 소노로 (MADS MARETTY SØNDERUP)

게임 사운드 보관 | 제 2부: '컨커 최악의 날'과 미스터리한 MP3

오늘 소개할 이야기는 뜻밖의 결과, 다시 말해 우연한 발견에 관한 이야기입니다. 연구 프로젝트가 의도한 대로 끝나지 않았기 때문에 복잡하게 느껴지실 수도 있지만 끝까지...

29.9.2021 - 작성자: 파니 러비야르 (Fanny REBILLARD)

텔 미 와이(Tell Me Why) | 오디오 다이어리 제 1부: 환경음과 보이스오버

'텔 미 와이(Tell Me Why)'는 DONTNOD(돈노드)가 개발하고 Xbox Games Studios(엑스박스 게임 스튜디오)가 출판한 싱글 플레이어 서사적 어드벤처...

4.5.2022 - 작성자: 루이 마르탱 (Louis Martin)

우주의 침묵 속 사운드 | 하드스페이스: 쉽브레이커의 시스템

하드스페이스: 쉽브레이커(Hardspace: Shipbreaker)는 최근 Playstation 5, Xbox Series S/X 및 PC에서 출시된 1인칭 무중력 우주선 해체...

6.1.2025 - 작성자: 벤 맥컬러프 (Ben McCullough)

Scars Above(스카스 어보브)의 오디오 최적화 모범 사례

소개 이 글에서는 게임 스카스 어보브(Scars Above)를 프로파일링하고 오디오를 최적화하는 데 적용한 다양한 원칙을 설명해드리려고 합니다. 사운드 디자이너분들에게 저희가 겪은...

12.3.2025 - 작성자: 밀란 앤틱(Milan Antić)

다른 글

머더러스 퍼수츠(Murderous Pursuits)의 대사와 대화 설계 - 제 2부

안녕하세요, 머더러스 퍼수츠의 대화와 대사 시스템의 제 2부로 다시 돌아온 제이미입니다. 제 1부를 아직 보지 않으셨다면 여기를 클릭하여 읽어주세요! 제 1부에서는 게임에서의...

Wwise Unity 커닝 페이퍼

Wwise Unity 통합에 대해 말해봅시다. 언제든지 참조할 수 있는 수년간 제작된 교육 자료가 꽤나 많습니다. Audiokinetic 교육 자료로 말하자면 Youtube에도...

게임 사운드 보관 | 제 2부: '컨커 최악의 날'과 미스터리한 MP3

오늘 소개할 이야기는 뜻밖의 결과, 다시 말해 우연한 발견에 관한 이야기입니다. 연구 프로젝트가 의도한 대로 끝나지 않았기 때문에 복잡하게 느껴지실 수도 있지만 끝까지...