by Malcolm Brown
Yeah I know... I didn't have time to whip up a fancy website...
This guy was created for the Experimental Gameplay Project
with the theme of Audio Input. It took about 7 evenings on and off mucking about in Flash. All art, music and most of the code is me, with a massive
special thanks to Gerry Beauregard for the FFT &
spectrum analysis code.
The game is played via Microphone (With minor keyboard input for menu navigation). The goal is to shatter glass obstacles by hitting the right note
as they slide on screen, or they push you back into Lava and it's Game Over. It's basically a survival no-win game where the goal is just to ramp
up a big score. The game gets progressively harder as you play, introducing faster movement, tougher obstacles & eventually removing the
audio hints that let you know what note to sing, meaning you'll need perfect pitch to get further than that (Or a *lot* of luck...)
Here's a very brief post-mortem:
- This was actually the second attempt at this project. The first one had you move around a ship by mapping an octave scale to directions - It was terrible. Never map an awkward control scheme to an existing one that works better without the abstraction! (I'm looking at you, Wii and touch-screen device developers... :p)
- Flixel is pretty cool for rapid prototyping.
- Singing random notes isn't hugely fun - Ideally I could map either MIDI or configured stuff to turn this into a Rhythm game (It probably wouldn't take much more effort... and it would probably be more fun)
- Gameplay variation is pretty poor. Original idea was that you'd gradually travel through other areas and the obstacles would be thematically different
(Wood, glass, rock, metal, diamond etc.) but ran out of time and ain't that great a pixel artist :p Plus nothing's added to the gameplay, it's still just an
odd varient on QTEs.
- FFT and Spectrum Analysis can be pretty expensive. The code taken from Gerry's example is pretty darn fast, but when you park a simple game on it and you want accuracy with
note detection, it can become quite pricey
- No idea how it performs with other styles of mic - It worked fine on my hilariously cheap headset mic so it should be able to handle anything you throw at it. Stuff I didn't try were:
Musical instrument input (guitar, keyboard, theramin etc.) and it was a bit funny with Whistling but I suspect I was just mouthbreathing all over it...)
- I'm hilariously lazy at personal projects. This is the closest I've got to an actual game in several years, so woo!
I think that's everything...