I’ve dubbed the project with the DDR dance mats the Rumbler Project, and I actually mostly fixed the sound playback issue I was having last week. There is still a lot more work to be done with the audio module, but it works and is fairly simple in usage.
I did find that, while the concept is kind of fun in a “ooh that’s neat” kind of way, it’s too hard to actually use the mats to produce some kind of music. So this week I’m going to introduce a basic rhythm system – pushing a button starts a sound and a timer, and pushing it a second time will play the sound again and indicate the end-of-loop time. Here, the sound starts to loop with the timing that the user has provided himself, freeing his feet up for more stuff.
Doing this should make it easier to make music, although the users’ control becomes less immediate. We’ll see how it works out in the end. If all goes well I may add a lot more sounds and start improving the layout-to-sound mappings to ‘feel more natural’.
Last week I had an idea for a small project – party entertainment. The trend towards computer party games is long gone, but there are still many unexplored ideas. I’ve been thinking about using another concept that used to be a hype – floor sensors, most notably used in Dance Dance Revolution.
The thing I’m trying to accomplish is to use the floor as a kind of instrument – more specifically a sample playback device. This idea is not new by any means, but I just thought it would be a good exercise, and a nice usage of my engine. Also, if it works properly it should be pretty fun and something that would be a special enhancement for parties and such.
So I got my old DDR dance mats and looked into how the buttons could be read. Turns out they are being modeled as gamepads with 10 buttons. So I needed joystick support, which turned out to be pretty straightforward to implement.
I also needed some way to load and play back audio samples, which meant audio support. I went for OpenAL with the libsndfile library, which took a bit longer to get working. It turned out kind of okay, although the sound playback is slightly too slow – right now there is a noticeable delay between pressing a button on the dance mat and the actual playback.
Even so, given some good audio samples the setup is pretty fun to toy around with. I’m probably going to refine it a bit more over the next couple of weeks and try it out at a small in-house party I’m having. As soon as it’s at least semi-working, I’ll put it up here for grabs.
It’s pretty exciting to have something that’s even remotely fun working… I’m probably going to do many more of these as I continue to develop my engine.
For a long time, I’ve been watching the day9 video casts, and it continues to fascinate me. I’m not really trying to become a better starcraft player, but still the strategy discussions surrounding the game are really interesting.
According to day9, being a pro-gamer is like a cross between a chess champion and a racecar driver – a reflection of the infamous macro/micro-playstyle. If you’re even remotely interested in the thought process of pro-gamers, I highly recommend taking a look at a couple of his videocasts. He’s even funny!
I’ve been playing a little gem of a game lately – Hydorah. It’s a free horizontal shooter (a la gradius or r-type) and it is clearly inspired by a lot of good stuff from horizontal shooters from the eighties and nineties. This type of game is relatively rare nowadays, and Hydorah is *hard*. I find it very refreshing and a tad nostalgic having to really work to get anywhere.
The game has 16 levels and is very intense. The entire game is incredibly oldschool, but still done with somewhat modern technology – no skimming on the rotating/zooming bitmaps and such.
Highly recommended if you enjoy arcade games 😉
Download it [here]
Blimey, /me has a new job as a code monkey at Re-Lion. I’m pretty exited about it actually, as that company produces stuff that I find interesting (which is a first for my jobs). I’m not entirely sure what I’m going to be doing there, but it’s got to do with virtual reality and engine technology, so I’m happy already. Now I just need to learn a bit of LUA and directX… I don’t think it’s going to be a problem, and I welcome the challenge.
It may be that the tutorials will be updated at a slower pace, now that I don’t have as much spare time though. I do promise to continue them however, so don’t worry. When the Overdrive Assault tutorial reaches a point where you may actually use it to create a game with it I’m planning to submit it to GameDev.net as well, they’re probably interested in this sort of thing.