The Sounds & Music Of Offender 2 (Production Notes)

I’m happy to say that I’ve finished all the artwork, animation, and coding for Offender 2, and I’ve been busily working on the final stage of development: music (and sounds).

It’s been a whirlwind of creativity, and the direction the music has gone is both spooky and humorous. I’m happy with the quality, and it has added a lot to the game. Playing the finished portions of it is really something, to say the least.
I love how it takes itself serious, and is so ridiculous at the same time. You’re not sure if you want to laugh, or slip into the silly little dreamlike world that it has become. It is hypnotic in a very strange way.

As an example I’ve uploaded the Boss Intro Animation on Vimeo.
It’s a great illustration as to the quality of the animation, and art stile, mixed with how the music fits with it:

Offender 2 – Boss Intro Animation from Nathalie Lawhead on Vimeo.

While I was brainstorming for what type of music and sounds I wanted I decided to steer clear of the traditional cartoon approach (the expected goofy/over-the-top and sometimes cheesy style) and make something a lot more unusual. I wanted surrealism, with a level of depth that you wouldn’t expect from something that looks so cute.

On a more technical note, I’m (as I write this) working on programming the music for the main game game-play, interactions, and various states… which is a challenge due to the Flash Player only supporting 32 Sound Channels at a time. I totally forgot about that…
Right now I’ve just finalized the background soundtrack.
This has turned into a fun, and complicated project, because I wanted something that loops, and (in a way) composes itself. It should (as in a lot of my work) seem random, and be different every-time it plays.
Without spending too much time on it (which you very well could with that type of direction) I’ve come up the idea of first creating a complex, and very layered, two minute soundtrack that seamlessly loops, and having code handle what plays and what doesn’t play.
Parts of it will be randomly playing, or muted (these I’m calling Music FX). They keep things “fresh” / different.
The main track (Music) is the constant, persistent layer. That is the main body of the soundtrack.
Everything has been created in such a way that if one layer is deactivated (including the Music layer) it still sounds good. It all works together, building on itself.
There is another layer (I’ve called “Layer”) which is the creepy / trippy “high-cow-country” dialogue that plays. This comes in three sets, each working over the music in a somewhat non-intrusive, and complementary way. When one iteration of the entire soundtrack is finished (on complete) a new random Layer is chosen to play. The outcome is a seamless stream of nonsense commentary about the “high-cow-country” that you’re playing in.
To conclude all that, everything must be able to adjust its volume if an important event is taking place (character dialogue, or a sound effect). These Events control the volume of the soundtrack. When one is triggered it is added to an array, and an onComplete handler checks if it’s finished. If so, it removes itself from the array (array.splice). Using an array makes it simple to handle multiple ones without them “fighting” for control of the volume. If more than one are playing, they gradually drop off the array, and the very LAST one (if array is empty/0) sets the music back to full volume (everything resumes to how it was). I’m happy I got a simple solution together for this.

Bellow is the prototype I finished today. Play around with it!

There’s quite a bit of coding involved. Unfortunately the file is too big for me to post the source. Maybe later…
As a side note, the above also has the game’s theme mixed into it (the piano portions). It keeps things cute and relevant that way…

I’ve posted various excerpts, testers, and examples on my SoundCloud. Check them out here!

Monumental Blow (We Lost The Tutorial That Day):
[soundcloud url=”″ params=”” width=” 100%” height=”166″ iframe=”true” /]

“Day Beat” Transition
[soundcloud url=”″ params=”” width=” 100%” height=”166″ iframe=”true” /]

Evil Alien Base Loop
[soundcloud url=”″ params=”” width=” 100%” height=”166″ iframe=”true” /]

Abduction (The Top Ten Mini-Game)
[soundcloud url=”″ params=”” width=” 100%” height=”166″ iframe=”true” /]

Offender 2 “Day Beat” Transitions
[soundcloud url=”″ params=”” width=” 100%” height=”166″ iframe=”true” /]

The Game Over Music: Animation & Ending Ambient Loop
[soundcloud url=”″ params=”” width=” 100%” height=”166″ iframe=”true” /]

The Boss Tank Intro
[soundcloud url=”″ params=”” width=” 100%” height=”166″ iframe=”true” /]

Offender 2 – Gameplay Music & Ambience
[soundcloud url=”″ params=”” width=” 100%” height=”166″ iframe=”true” /]

AND, on a final note, here is an example of the voice acting.
Since I only have one voice actor (me) I’m faced with the challenge of making it sound diverse (you know… it can’t sound like the same person).
So I’m coming up with all sorts of creative ways of making me sound like an alien, rabbits, commander rabbits, trapped rabbits, scared rabbits, angry rabbits, enraged rabbits, and a guy.
Here’s what I ended up with for the latter (Before & After clip):

Superior Alien Gus – Voice Acting & Vocoding Sample
[soundcloud url=”″ params=”” width=” 100%” height=”166″ iframe=”true” /]

…And it totally doesn’t sound like me!

This monster belongs in Games, Werks. Bookmark the permalink. Follow any flames or other attacks to it with the RSS feed for this abominable creature. Voice your rage or leave a /b/roback: /b/roback URL.

Post a /B/romment

Chill, /b/ro. Your email is probably not, but most likely impossibly going to be not shared. Required fields are marked, yo... *


Use these /b/ro HTML haxxx: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>