Temporary sounds and experimenting with the audio system in FMOD
This week I was able to put together some quick sounds so that we can have something to iterate on. I also put together an audio design doc that should guide me in the creation of future sounds as well. Here is the audio design in its current state.
- Prefuse 73
- Tron Legacy
- DEF CON XX
- Inside the master event, the Weapons parameter will select which weapon will be played by each event
- Orb State
- Orb will add a percussive layer to the music that increases in intensity as it gets closer to exploding
- The orb is a percussive layer so that it doesn’t have to match any of the levels in the Match Progress parameter
- It may be possible to give the orb elements that match the key and chords of the match progress parameter, it will just take more time
- Match Progress
- Measured by percentage of tiles left or another metric that defines the progress of the match
- Lives left
- Territory claimed by one player
- This will have at least 7 different levels of progress, the sound of the game will change in key, chords, and intensity depending on which level the player triggers. The things that will be influenced by this parameter are:
- Sound of hitting the tiles
- Random multisound with sounds matching the notes in each level of progress
- Character Speed
UI (There isn’t really much UI to speak of at this point, so we’ll keep it simple for now)
- Button click
- Primary Weapon
- This will play the root of the chord in each level of intensity
- Place bomb
- Bomb explode
- Bomb charge
- Tile change color
- This will play a random selection of pitches that match each level of intensity
- Limit the number that can be played simultaneously so it’s not too overwhelming
- Tile Remove
- All tiles of a certain color stretch and disappear
- Tile Replace?
- Tiles of a certain color return to their place
- I don’t know whether the character has legs or not, so I won’t call this footsteps
- If the character has multiple speeds, indicate that with sound
- Death and re-spawn
- 7 levels of intensity that seamlessly merge from one to another
- 3 levels of intensity for the Orb
- If I’m matching the key and chords of the 7 levels then I will need 3 levels of Orb intensity for each of the 7 levels of match intensity
- End of match
- Menu music
- Pause music?
We met together as a team to discuss the different design ideas that I told you about last week. Although the team seemed to like the ideas, I’m afraid that I’m coming to the party a little late and there isn’t enough time to implement most of them. They will be put on the team’s backlog along with all the other ideas and fixes and prioritized from there. There are quite a few things on the list that need to happen before we can add new features and it is possible that we won’t be able to get to any new features. Which I think is a wise decision at this juncture in the development process. I think it’s better to decide on a collection of the strongest features and then iterate on them with the little time we have left. Over the long run we will have a stronger, more polished game if we begin to focus now than if we keep trying to add new features until the last minute.
I’m out of time for now, but next week I’ll talk more about the sound work that has been done so far.
I was able to create several game mechanic designs that I think will help this game break through some of the problems it is having with player engagement and using the environment in a more strategic way so that the player can feel more in control of the rounds rather than just spamming the fire button and getting lucky. Here are the designs. Just to let you know, when I talk about a “bot” I am referring to little characters that run around the environment. When you catch one of them it activates a power-up.
- Player picks up a bot that represents the sticky bomb (covered in grease, or vfx indicating that it is magnetic). The bot will be running around the level and might be hard to catch
- Player throws sticky bomb at enemy player
- Sticky bomb makes a sound indicating that it is active
- Enemy player has time to get out of range
- Bomb explodes
- If enemy is within range, random tiles from the immediate area fly over and stick to the enemy, temporarily immobilizing him/her
- If the enemy is out of range, Tiles fly up and then return to their place
- The tiles directly underneath the enemy will not be affected by the bomb. The bomb is meant to immobilize the enemy, not drop them into oblivion. This should give the other player an opportunity to use other tools to kill the enemy while they are trapped.
- Player picks up a bot that represents the Seismic Bomb (bigger bot, moves slowly, acts kind of stupid). These are rare bots that only show up toward the end of the match. Hopefully this will make up for the fact that it is a slow bot.
- Player throws Seismic Bomb toward other player
- Bomb explodes
- The bomb will create a wave of tiles (A) that moves away from the player that threw it
- If an enemy is caught in the wave, it will push them a predetermined distance toward the edge of the level (B)
- The wave is big, but it moves slow and only has maximum effect within a certain radius from the original explosion. In other words, the effect dissipates as the wave travels (C)
- Player picks up a bot that represents the Mega Stomp (small body, huge feet)
- Once the player picks up the bot, there will be an indication that he/she has entered the Mega Stomp state (the player’s feet will get bigger, or the player will begin to flash, or something else to indicate the new state)
- Once in this state, if the player presses the fire button, the avatar will play a powerful stomp animation
- Tiles all around the player will change to their color in a pattern radiating out from the original tile that they stomped on.
This week I tried to solidify my role in the group, but that seems to be a difficult thing to do. I have joined a group that is running pretty smoothly and because of this, there isn’t much space for an extra person. So I decided that besides sound, I will do what I can to relieve any undue pressure felt by any of the producers by helping them do their jobs wether it is helping with design docs for the design lead or helping with assigning hansoft tasks for the producer lead and so forth. Hopefully after a couple of weeks, I’ll be able to find the place where I fit in the best.
As for sound. Due to some unforeseen circumstances, I don’t think I will be able to learn Wwise well enough in the time that we have in order to do what I want to with the sound in the game. Especially not by the time GDC comes around. So, even though I really wanted to learn Wwise better, I’m afraid we’ll probably have to stick with FMOD due to time constraints. That’s okay though. In a semester that is going to be stressful enough, this will relieve a great deal of stress.
I did figure out, at least in part, what I want to do with the sound in the game. I want both the weapons and the music to change their sound depending on the progress of the game and I also want them to stay in the same key as each other. In other words, when the music changes chords from C major to F minor, the pitch of the weapons will follow so every sound in the game will be related musically to each other. Other games have done similar things with the sound and music, like Peggle 2 and Super Mario Galaxy and Rayman Origins. They all made things that happen in the game match the key and chord of the music that is playing. I hope to take what the sound designers did in those games and add a little bit more to it. I’ll explain later how I plan to do it, but for right now, I’m very excited to have a direction to go and a problem to figure out.
After making a proposal to the inventions committee at EA, I was able to convince them that they should let me work on student projects and finish my degree since I’m only 7 credits away. So I am back in projects class, but on a different team. The Inventions Committee had a problem with me working on All is Dust, so I had to choose another team. Hostile Territory seemed to have more need for sound than the other teams, so I joined them and started on the home stretch to finish their game.
Hostile Territory is a 3rd person shooter where your weapons effect the environment around you instead of your enemy. When you shoot at your environment, the material the floor is made out of changes color to indicate that you have claimed that territory. Once you have territory, you can remove it at strategic moments causing your enemy to fall through the floor into oblivion.
My role on this team is still kind of in flux since I am new, so this week I made some design docs for ideas that I have, and I got started researching Wwise and the possibility of using it as a tool to implement audio into our game. Over the weekend I got certified in Wwise and next week I plan to figure out how to get it working with Unity. I also need to figure out how to use sound in not only an effective way, but a way that will help the game get more attention, if possible. I’m sure we’ll figure something out.
I got my first overtime pay this week and also learned that salaried workers don’t get paid overtime. I’m sure this is probably pretty obvious to most of you out there, but I’ve never really thought about it until now. Up to this point in my life, I’ve only ever worked in jobs that are paid by the hour or by the project. I’ve never had a salary job. Hopefully that will happen soon enough. The reason for the overtime was caused by a little bit of a planning snafu. The fact that in many situations the audio team cannot act until many other elements of the game have made it through the pipeline was not considered at the beginning of the sprint, so we had a lot to do right at the end of the sprint when all our tasks began to be unblocked at the same time and deadlines started to come due as well. It wasn’t too much overtime, but it could probably be avoided in the future with a little bit of planning and communication. We’ll make it a goal for the next sprint.
The company hired an outside group to create the mini games and we are providing them any audio support that they may need. I’m always learning more and more about how the process around here works, but this kind of threw a wrench into how I think about the approval process that I’ve used up to this point here. It will likely take some time to learn what the priorities are and how the approval system works with these new outside entities. Happily there is already a solid communication system in place so we will hopefully be able to stay on top of any foreseeable problems.
I really wish I could talk about the game. These posts would be much longer if I could. Sorry.
So I started writing music for some mini games this week and I think I’m enjoying it a bit too much. I have a capable computer chock full of virtual instruments to play with all day. What more could I want. There are meetings here and there that interrupt the process, but overall it has been a blissful, music-filled couple of days. There have been a couple of hang-ups though. We’re not sure what style to write the music in. I just realized that I can’t adequately explain why without potentially giving away too much information about the game. Sufficed to say, we eventually arrived at some pretty effective music and I’m pretty excited to keep writing more using the tools provided. It’s like playing all day long! Yay!
It is very interesting to see how everything works together here. It is so different than the academic world. There are people here who have been doing this for 20 years working alongside people like me who are just getting started. You don’t always get those opportunities when working with students. Even though we still have our hiccups here, the collective experience of the team absorbs any problems with far greater efficiency than a group of students being thrown to the wolves Hunger Games style. Don’t get me wrong, you can learn a lot in the Hunger Games style, but I’m glad that I get to learn from such a diverse group of experienced professionals to compliment what I was able to learn at the University of Utah.
Over the last sprint we, as an audio team, were able to put together a system that controls the audio of the character animations in the game. This system will hopefully improve the intelligibility of the characters by focusing on what is in the middle of the screen and controlling which characters can be heard over the other ones based on their priority (I think that covers it without saying too much about the game. I’ve really got to be careful about choosing the appropriate level of vagueness). We got some help from the engineers in order to implement it, but the system we built was met with a decent reception. In fact, I was nominated for sprint MVP for designing and creating the system in FMOD. Not bad for my first sprint here. I doubt it will happen again for some time though. I’m usually pretty good at fading into the background. We’ll see if I can avoid that as much as possible.