Audio Development Blog for Food Drive

10.png

Introduction

Hello friends! :) I've been working on an exciting project with Gamers for Good and several of my amazing friends that I met at GDC!

In Food Drive, you drive around a truck with a cannon perched on top of it, and you're delivering food to various neighborhoods within the colorful but very hungry town. The game is a food bank awareness game and promotes the activities of food banks and how we can help in real life.

While the game is fun, the audio development process was just as fun as well! I wanted to share with you what I've learned so far, and what I wish I could have differently so that I can improve myself even more.

 

A Clear Mindset and Achievable Goals

No matter what happened by the end of this project, (whether it finishes or not,) I wanted to make sure that I learned 3 of these things:

  1. I wanted to use WWise to integrate all the sound effects and music.

  2. I wanted to write my first adaptive music score.

  3. I wanted to improve my sound design capabilities and mix it with the integration process to make the audio stand out as a portfolio piece.

I needed to learn Wwise, and the best way to do that was by working on a project while using it. I knew that I needed a strong motivation to learn, so, I decided to purchased the exam bundle on Audiokinetic and set aside a time of each day to go through the quizzes and studying for the Exams. From these exams, I've learned a tremendous amount, and I also learned a lot from integrating audio on my own on a recently finished month-long game jam project. I'm really close to earning my 201 certification!

The Beginning of Development for [Project Lunchbox]

Opportunities to work on really cool projects with awesome people can show up anytime.

I was browsing Facebook when I saw the producer's post, looking for a VFX person for a month-long game. I referred a friend, and also let him know that I was available as a Sound Designer. I knew I had the time while I was still a student, and I wanted the opportunity to work on a 3D game. With people coming from all paths from different times of their journey in the game industry, it was amazing to see that we still all had the same love for making games. I wanted to provide positive vibes for the team by doing my work on time and Plus Ultra.

Our team of 6 people (now 7) started out with a very solid idea on how we should scope the game and what we should prioritize working on. Thankfully to this, we are on schedule and not daydreaming about features that we may not be able to put in by the first week of September.

Music and the Trial and Error for Theme

Before the first day of the development process, I had a week of time to study the concept art that Peet drew. Our producer Will showed me 4-5 links to music that he'd like me to listen to, including Crash Bandicoot, Sonic and Mario Kart 8. I took these feelings, our premise of the game and our artist's concept art and composed this short theme for our game by Day 2 of our development process.

[audio src="https://dankimaudiocom.files.wordpress.com/2018/08/q-theme-1.mp3"][/audio]

It was a good start, but it was missing the excitement. I continued to obsessively search Mario Kart 8 for inspiration that would evoke excitement. This was a mistake because I should have taken careful consideration of putting the theme of our game first before just pure excitement. Have I avoided that mistake, I probably would have avoided buying the Swing More! sample library just so that I can write a Big Band style music track.

[audio src="https://dankimaudiocom.files.wordpress.com/2018/08/q-theme-2.mp3"][/audio]

I received a mortifying (at the time) but a very needed feedback from our artist Peet, who called out that while the excitement of the music was there, the theme of our game of helping poor neighborhoods didn't match the high class, big band kind of sound. While I made a frowny face, I agreed with his thought and looked to solve this problem somehow.

After a long train of thought, I decided to scrap that high-class sound from the theme while keeping the excitement. His critique also gave me an idea of adding in more 'hopefulness' to my chord progress, and I started researching what kind of music was the most nostalgic and would be memorable for a charity game.

[audio src="https://dankimaudiocom.files.wordpress.com/2018/08/theme-3.mp3"][/audio]

This is the current menu music and the theme of Food Drive. If I can have a brief moment to explain the musical ideas here:

• The beginning chord progression stays on 1 for a while, causing the sense of unwavering coolness, and the addition of roaring electric guitar calls for a rush of excitement.

• The chord progression moves upwards and gives you the sense of "notorious good guys" vibe with the minor iii chord then quickly resolving it to the major IV chord.

• Adding high noted synth arpeggios gave that arcade feeling that made the game feel a bit more friendly to approach.

I hope to look into writing a big intro to draw the player in, as well as come up with a great melody that will keep our game remembered through time.

After this theme was composed, I was able to easily write an in-game music for the game, but while keeping the adaptive Musical structure in mind.

Adaptive Music, Mistakes, and Lessons Learned

While I composed the theme and the in-game music, I spent a few days sketching basic ideas of how I wanted the music to behave in-game.

11.png
extremely complex idea on the top, simplified on the bottom.

extremely complex idea on the top, simplified on the bottom.

Here's a mistake I made. There was one variable that I really wanted to work closely with: Time. Time was a resource in this game that you live and die by. So I naturally inclined to use 120 BPM for my in-game music. But when I did that, I realized that it just felt so slow and it killed the excitement of the game. I learned that no matter what, music needs to serve the game, not the other way around, which in this case was to be exciting. Although it would have been technically impressive to sync the music's tempo to 120 bpm, it certainly would have killed 20% of the excitement.

Another mistake I made is that I overcomplicated things a bit too much. There were many possibilities here with what I could have done with the music. How would random phrases work? How will transitions from one time zone to the next work? Can the player hear different instruments in different parts of the town? How will the music shift based on the player's performance? At first, my masterplan started out very bold and complex, but sooner or later I realized that more complexity doesn't always mean that it's better. I started narrowing down the scope for my adaptive music and actually focused on writing a good piece of music that would fit the theme first.

[audio src="https://dankimaudiocom.files.wordpress.com/2018/08/ingame-music.mp3"][/audio]

This is the current in-game music.

There are several tricks that I used to write this piece of music.

1. It carries elements from the Main Menu music but is 15 BPM faster (from 135 to 150, so that when you are actually playing the game, you're feeling the excitement).

2. It has the melodies from the Main theme and uses bits and pieces of it to develop. This allows the player to connect from the Main Menu instantly into the game.

3. The piece starts out in A Major but transposes towards the 3rd quarter of the music to C Major. Transposition is a powerful little trick that I love to incorporate into my music because it really does the job of making the ears not fatigue as much when listening to the same key.

4. The chord progression used throughout the music invokes a mixture of the feeling of nostalgia and justice. The 'I - iii - IV - I' is used in the main theme, to give the sense of 'notorious justice' feel.  The vi - VII - I  chord progression is used in games like Legend of Zelda to give the feeling of adventure and bravery. Mario games tend to have transition passages that start with IV chords then using the circle of fifths to return back to I. However instead of returning to I, I transpose to C Major, the key that we're very familiar with.

I plan on taking dividing this piece of music into three phrases: A (intro & melody), B (transition), C (chorus) and letting the system choose from 2-3 different melodies for each section, so that everytime you play the game, you'll hear a new mixture of music.

The Grand Reveal Issue

One of the mistakes that I made earlier on was waiting for the grand reveal. As an artist and a musician, I tend to wait until my 2nd version of the theme was at least at 90% of what I hoped it to be, before releasing it to the team for feedback, filled with hope.

The feedback came in, and I needed to take out the big band, which was what I spent the whole day working on. As a result, I had to salvage what I can - the drum beats that kept the excitement, and start over from the ground up.

The Grand Reveal is fun when it works. You surprise your team with an amazing piece of music and your pride goes up. You don't have to show your embarrassing piece of music and instead can cover it up with the fairy dust of production.

However, not only was the Grand Reveal method of work very risky because it cost me a lot of time, it also cost me the loss of confidence in myself to getting started on writing a new piece of music for evaluation. After a short talk with my producer, I learned that failing fast and often is the fastest way to work and the least stressful way of working overall. Knowing when to show my work so that it's at a decent progress, enough to show my intention, but not at a near-finished level is key. There's no need to produce our music to the point where it can immediately be used in the game.

Wwise is SO Amazing

I can't begin to express how learning Wwise before and during the development has helped me tremendously. I saved the time of our programmer Greg, by being able to implement the audio myself in creative ways. When I got stuck on a problem, I looked it up on google or youtube in order to find an answer. It usually meant that I was scavenging for answers here and there, but it always leads to learning that I will never forget. Some of the basic and the most important tips about Unity and C# integration that I was not able to learn anywhere, I created a page for that. You can look at it! Click here (Cheat Sheet for myself).

Closing

While I'm still only halfway into the development into Food Drive, I feel that I've already gotten a lot closer to my teammates during the time and learned ten times as much as I would have if I just sat down and learned Wwise through some quizzes online. The music still needs a lot of work on.

We just uploaded a demo version of our game on gamejolt to make it available for playtesting. You can play it here!

https://gamejolt.com/games/fooddrive/361446

Thank you for reading this. I hope this can help you as much as it helped me to organize my thoughts and share it with you and the rest of the world!

~Daniel