(Mystic Polka Shootout - August 2007)
Full game can be downloaded from FileShack, or AtomicGamer
Videos: regular combat, more combat, and the concertina death blossom.
Mystic Polka Shootout was a game born out of a "make the entire game from scratch in a single month" development competition. The theme was to choose a name generated from a particular random game name generator, and what did I pull? "Mystic Polka Shootout." So I ran with it. I got a tiny bit of help from an artist in the form of a couple of animated gifs and a background (which is why everything is so hacked together looking - I had to snip it up and prep it myself, and fake/make what I didn't have), but the gameplay itself is polished and more or less precisely how I envisioned it. Hanz the hero leaps around the battlefield, armed only with his trusty trumpet, trombone shotgun and concertina deathblossom. His foe is the ever-growing hoarde of clarinet-playing bad guys. Basic survival side-scrolling arena shooter, only one real level due to art constraints.
The only libraries I used were DirectX and a C# audio library (for OGG playback), everything else was built up from bare metal. I rolled my own physics, animation schemes and old-school bounding box collision, and I even experimented with a pixel-based terrain collision system. The pixel-based terrain collision turned out to be a bad idea (because it breaks when you try and give it a low-res version of the terrain, your interactions with it become heavily aliased), but it worked well enough and made the system extremely flexible. If you're adventurous, feel free to open up the two level TGAs and paint your own new level - it'll work fine, the only hard-coded element was the enemy spawn placement. That was also meant to be sourced from the TGA, but alas, a month goes by so quickly.
As it happens, the entire game was written in C#. I went from knowing nothing about C# to a full game developed in it, all in a single month. It was a fun little learning project, and C# turned out to be fairly effective as a rapid development language. It (C#) is, however, prone to crashing if you don't have PRECISELY the correct DLLs, which means this won't run on XP64 (it depends on 32-bit DLLs), and it likely won't operate unless you properly install the included DirectX August 2007 and .NET 2.0. It will crash before even fully executing and give little to no explanation if you lack the DLLs - alas, I would have tried to do more, but such is the nature of C# applications when you don't wrap them in a comprehensive installation routine.