Objective: Modify the Freestyle Zone of Donkey Konga 2 to be a viable platform for live drum performance. (PROOF OF CONCEPT)
Background: Despite this being the Nintendo consoles section I almost never see the Gamecube get brought up much here. Probably because it's too modern to really have a characteristic sound and nobody makes homebrew music software for it because of that. The library of music related games for the Gamecube is woefully small, but I have very fond memories of playing Donkey Konga back in the day. I recently picked up the lesser known sequel on the cheap via craigslist, and one of the new features really intrigued me.
The "Freestyle Zone" allows you to jam on your bongos indefinitely, without a note track or a scoreboard. You can select from one of the many custom buyable bongo sound sets and play with up to 4 bongos at a time for as long as you want. By turning the background music all the way down in the options menu, you can jam with just drum sounds to any external music you want. This feature never got much attention upon release, probably because the pre-set bongo sounds are too cheesy to do much with, and it was very uncommon for people to own more than two bongo sets in the first place.
However, with a few updates, I think this little side feature could be developed into a really cool platform for live drum performance on video game hardware. Drummers often get shafted in the chiptunes scene; not only are the noise channel and/or FM drum sounds commonly found in chiptunes (debatably) rather weak to begin with, but they don't get often get cool retro oddities to aid in their performance, like guitarists have the Casio DG-20 or pianists have the C64's keyboard overlay for example. Unlike a boring 'ol electriconic drumset fed through MIDI into your device of choice, DK bongos and the Gamecube are instantly recognizable. If nothing else, it would be a hilarious meme. People are beating Dark Souls on the DK bongos like it's some huge accomplishment, but actually making music on them? Now that's a challenge.
Proposed Updates: Green numbers are updates that have already been implemented, yellow updates are current issues, and red updates are planned features that I have not yet begun to address.
1) While the bongos themselves are fine to play on (as long as you adjust the clap mic sensitivity in the options menu to prevent excessive crosstalk), it is still unnatural for most drummers to play certain parts like the bass drum and hi hat with their hands.
These parts are usually played using pedals on a standard kit. To address this problem, I suggest picking up a third party racing wheel for the Gamecube and using the gas and brake pedals to play the bass and hat parts. Madcatz wheels from three generations ago are very cheap these days, and depending on the model they might even support three inputs. I picked up a Madcatz MC2 universal model for $15 on Craigslist, but steer clear of the 1st party Logitech wheels. Not only are they more expensive and rare, but they have a different protocol that won't be recognized in game.
By default the pedals are recognized as A and B on a standard Gamecube controller, and since most of them are universal, they usually have re-mapping functions to account for varying control schemes. Both pedals and the stickshift can be assigned to any button or trigger on my model, and along with the in-game control variants in the option menu, any combination of two sounds can be mapped to the pedals. You can also keep them both on the same sound if you want some double bass action. While racing pedals are a far cry from real drum pedals, you can get used to them with some practice.
2) In the Freestyle Zone, the game counts your total hits up to 999 until it rolls back around. Every 50 hits, it will play a random DK sound effect to "commemorate" your achievement.
While this may seem charming, it is not ideal for performance, and needed to be removed. Through the use of a hex editor (XVI) and an ISO builder (GC-Rebuilder), I was able to mute these sound effects. This leaves other parts of the game oddly silent, but this hack is only meant to improve freestyle mode so this is not a huge concern. See my proof of concept video below to compare the vanilla version to my mod.
3) Among the 3 sounds from the 16 buyable bongo kits and the 16 legacy kits that are unlocked by having a Donkey Konga 1 save on the same memory card, there are maybe 15 usable drum sounds that resemble snares, kicks, toms, and hats, but these usable sounds are not allocated well across the kits. Often only one of the three bongo sounds (left drum, right drum, and clap) will be usable, forcing you to waste two thirds of the available drum pads just to get one of the sounds you want.
For example, one of the few closed hat-esque sounds in the game is the left drum of the Latin Percussion legacy set from Donkey Konga 1, but the other drum sounds are a cajon and a timbale, which don't fit well with the more standard drum sounds you'd want on the other 3 controllers. If you wanted to play this hat sound and a bass drum sound on pedals in the vanilla game, you'd have to buy two racing wheels and waste four total sounds just to get two usable ones, which is not ideal. In order to maximize the number of sounds available to the performer, I am trying to figure out how to move the samples around in the ISO such that I can build more optimal "pedal" bongo sets that combine closed hat and kick sounds to free up 3 ports for bongo sets to be played with your hands. Relabeling the modified drum sets in the game code would be nice too.
4) Even though you have enough usable drum sounds to make up a few unique drumkits, the vast majority of the bongo sound sets are totally worthless in performance settings and only serve to annoy your friends who are trying to headbang to Rock Lobster and La Bamba. Even the "usable" drum sounds are somewhat bland, and most don't even mesh with the lo-fi aesthetic well enough to warrant the effort of using such a weird and memey drumkit.
Obviously the best course of action is to find a way to replace the unusable drum sounds with new drum samples of my choosing. This will vastly improve the versatility of Donkey Konga 2 as a drum module, and if I document the process well enough, anyone will be able to make their own custom drum sets with whatever sounds they want. Ideally the library would consist of an even mix of samples from iconic drum machines/synths (808, 909, VL-1 etc) as well as samples from the soundfounts of old Nintendo games (Bomberman Hero and Glover are definitely on the list). I would probably put out two separate libraries, one optimized for bongo/pedal set-ups like mine, and one that works better if you just want to use bongos.
This is unfortunately the part that leaves me the most puzzled right now. Gamecube games didn't have a uniform format for their audio files, so each ISO is laid out differently. Although there exists some precedent for Gamecube ISO sound replacement from the Smash Melee scene, Donkey Konga 2 stores its sound effects way differently. I am new to hex editing, and although I was able to successfully mute the 50-hit sounds, this issue is way more complicated. However, a couple years ago, someone also did similar ISO modifications on Donkey Konga 2 in order to import the songs from the Japan-exclusive Donkey Konga 3 into the American version. What intrigued me and inspired this project was that he was also able to bring over the new drum sets from Donkey Konga 3, which proves that it is possible to insert new sounds into the game as long as they're in the right format.
5) Racing pedals are a decent solution as a stop gap measure, but drum pedals feel way different and are better suited for technical performance. There are only so many old ass Gamecube racing wheels out there anymore, and having access to better pedals in greater supply would be better for the longevity and accessibility of the project.
The racing wheel+bongos combo is hilarious, but the novelty of it is bound to overstay its welcome eventually. While you can get used to the feel of the pedals, they are still not an ideal solution. A custom controller that could accept input from standard electronic drum pedals is the best possible scenario, and compatibility with Rock Band drum pedals (which many people have lying around and are in abundant supply otherwise) would be a huge plus. This would likely require an arduino or some other microcontroller to convert the pedal inputs to signals the Gamecube can understand, but plenty of crazier custom Gamecube controllers based on arduinos have been made for stuff like competitive Smash. If this project gains enough interest, I might consider releasing a custom arduino shield just for this purpose.
6) In Freestyle mode, the game shows a DK-related image to accompany every drum hit. These images repeat in predetermined patterns, and change to new sets of images every 50 sets for some variety. Even so, they are still goofy images, and they can get a little tiresome. For extra visual flair, it would be nice if cooler custom images could be put into the ISO to spice things up a bit and make the visual aspect of the project more personal to the performer.
I know nothing about texture editing myself, but I do know the images in Donkey Konga 2 are saved in .nut format, and there exist editors for .nut files that could be used to put custom flavor images in the game. This is a distant priority though, and will likely only be addressed if there is significant demand.
Media:
So far I have recorded only a short proof of concept video showcasing the potential for this project. I jam a little on the Racing Wheel pedals set-up, demonstrate pedal re-mapping, and show off the 50-hit sound effect fix in my newly modded ISO. Please excuse my lame drumming, I'm more of a keyboards guy and I have to twist my body a little out of the way to get decent camera angles. I plan to release more video updates as the project progresses, and I will likely outsource the demonstrations to my more talented friends in the future.
How can I help?
Like I said, I'm very new to hex editing and most of my experience with it comes from Smash Melee stuff, most of which doesn't really carry over. If you're familiar with romhacking, I would love some advice and hex editing help to swap these drum sounds around and insert new samples into the game.
I'm handy with a soldering iron but I don't know much about arduinos or controller modding so if anyone has experience with microcontrollers, Gamecube controllers, or the wiring of electronic drum pedals (the Rock Band pedals in particular), I would super duper appreciate your input in those areas as well.
I also don't want to just cherrypick the custom drum sounds I want to put in the game all on my own, so if you have any ideas or requests for sample sets from famous Nintendo games and/or iconic drum machines, feel free to make some suggestions. I'll definitely take them under consideration.
If you want to get involved, feel free to PM me or ask here. You can also check out my project thread on romhacking.net if you want to stay updated on the ISO-modding part of the project. Thanks for reading this huge wall of text, I'm excited to get to work and I really appreciate your interest.
Last edited by Chandy (Nov 29, 2017 9:14 am)