The Global Game Jam

Posted January 31, 2010

Edit: The fruits of our efforts can be found here.

It’s the final night before the final day of the global game jam, and I’m alone in my dorm room trying to sort out the adaptive music system for our Deceptive Platformer game, which has yet to be given a name.

Titles are usually thought of last for a reason, and that was plainly exemplified here. On my way back to my dorm I got a call from Stefan about our heroine Sprite (whose name may have been Lucy, Alice, or lord knows what) and how she really just wasn’t working out, and we decided that it’d be best for both of us if Lucy/Alice/? and us went our separate ways. Alice/Lucy/? was to be replaced by the original little blue ball. Our title selections weren’t much affected by this decision since they were mostly about things involving iPad-bashing and Fish-Kabob. However, I worried that our game had lost some of its personality. We’d invested a little heavily into a hip 70s-but-modern pop art style, and I had contributed to this aura of cool with a funkadelic soundtrack. Would the little blue ball ever hold a candle to Alice/Lucy/? ?

Turns out I came home to find my friends playing Apples to Apples and causing a ruckus, and when I asked Aditi to come down and record cute ball voices she brought everyone down with her. It’s fortunate she did though, because by luck Melvin Felix was there and strangely enthused about making strange abstract voice overs. He began with your typical Mario fare of whoops and woohoos meant to accompany typical platforming activities, but it wasn’t until he began speaking Spanish that the real magic began. Hearing somebody talk about blue balls and falling off platforms in Spanish arouses a certain level of hilarity within all who witness it.

It’s the final night before the final day of the global game jam, and I’m alone in my dorm room trying to sort out the adaptive music system for our Deceptive Platformer game, which has yet to be given a name.
Titles are usually thought of last for a reason, and that was plainly exemplified here. On my way back to my dorm I got a call from Stefan about our heroine Sprite (whose name may have been Lucy, Alice, or lord knows what) and how she really just wasn’t working out, and we decided that it’d be best for both of us if Lucy/Alice/? and us went our separate ways. Alice/Lucy/? was to be replaced by the original little blue ball. Our title selections weren’t much affected by this decision since they were mostly about things involving iPad-bashing and Fish-Kabob. However, I worried that our game had lost some of its personality. We’d invested a little heavily into a hip 70s-but-modern pop art style, and I had contributed to this aura of cool with a funkadelic soundtrack. Would the little blue ball ever hold a candle to Alice/Lucy/? ?
Turns out I came home to find my friends drunk and playing silly games, and when I asked Aditi to come down and record cute ball voices she brought all the drunkards with her. Fortunately she did, because by luck Melvin Felix was there and strangely enthused about making strange abstract voice overs. He began with your typical Mario fare of whoops and woohoos meant to accompany typical platforming activities, but it wasn’t until he began speaking Spanish that the real magic began. Hearing somebody talk about blue balls and falling off platforms in Spanish arouses a certain level of hilarity within all who witness it.

As for the music, it’s got the funk. And, it’s adaptive. Or, at least as adaptive as you can get in 48 hours with an amateur development team. Not to say my teammates are amateur, I’ll take on the label of amateur, but I would like to mention how lucky and grateful I am to have been able to work with such a talented group of developers. The 7 of us just had it together. One of our artists was even an artist for Kuma Games!

Unfortunately I didn’t get to observe a lot of our artists work because I was buried in ActionScript trying to figure out how to get mp3s to loop seamlessly (which is a very bizarre workaround, by the way). However, I accomplished my mission, and am about to embark on designing the final version of our adaptive music system. The system works such that each level introduces a new layer of music on top of the old, but as you die the music will transition back to simpler versions until the player completes the level. Then it will shoot right back up again to the appropriate level of awesome, depending upon what level you just reached.

The word “layer” here is a bit misleading, and while I was using the stem concept for a while (since it does keep all the main tracks lined up even with audio lag), but ultimately decided to go for the node-transition-node approach. I’m counting fractions of seconds every update loop of a Flixel state, and Flash is unpredictable at best when it comes to playing back audio or video on some computers (at least on my XP machine it’s horrible). By resynchronizing the timer and the start of playback of a loop, the transition stingers will be much more accurate. I’ll post the game on this site once it’s complete.

Back to the jam!