Archives - December 2005
2005.12.02
I hope to have gamepad support for the game when it's completed. I played around with it for a little while today and noticed that it was extremely easy to implement. I ran into a few problems, however. Unfortunately the gamepad I have is designed for Windows only. To my surprise Allegro actually detects it fine under Mac OS X. The only problem here is that the analog sticks and D-Pad register differently under OS X than they do in Windows. I attribute this to the fact that the gamepad isn't of the best quality.

While in the OS X world, the analog sticks always think they are being held slightly up and to the left. Even using Allegro's calibration routines doesn't fix the problem. While this is a minor setback, and I won't be playing around with the gamepad code until I get a piece of hardware that produces similar results under OS X and Windows, it's nice to know that the functionality exists and everything is set up to work properly.

I've already added a button configuration screen for gamepads (if one is detected at startup). The settings class also takes care of saving/loading the corresponding values of what key maps to what functionality in the game. When it comes down to it, all I have to do is uncomment the gamepad code, and add in checks that work in parallel to the keyboard polling for action keys.

It's all very slick. I can't wait to try out my game with a console-style controller instead of a keyboard. It's going to have a much better feel to it.

2005.12.01
Finally! I have added key customization to the options menu. This is one of those things that I really wanted to implement, but a few things were preventing me from doing so. The first I have already mentioned: loss of debugging "special" keys. The solution I used for that was pretty simple: hold down a modifier key to gain access to debugging keys. Simple!

Other than that, the main issue was coming up with the code that actually does the core work. Incidentally, the system is set up to work just like how key configuration takes place in Zep's Dreamland, except a little more intuitive. Essentially all that was needed was a cut/paste job for the core key choosing and displaying. I modified it to be a little more efficient than how it was in ZD.

That said, key configuration works perfectly fine--and it's saved for future use due to the great applicability of the settings class. All the code was already in place to load and save custom keys, I just had to implement actually changing the keys to something else. Ironically enough, now that I can change the keys on the fly, the only settings I like are my crazy and difficult to use key combinations.

On top of that I added a new background to main gameplay screen. I had been using an old mockup from the game's very early conception that was getting a bit dated. It didn't look extremely terrible, but it was rather drab and boring. I've spruced it up with something a bit interesting. Of course, I have no doubt that the background will change again. Let's just say the style of the background doesn't perfectly match the style of the sprites that are put on top of it. In any case, what I have now is better than what I had before, so I'm happy with the results.

Another thing I'm very happy about is that I have been able to remove all content from the game that wasn't originally created by myself. Well, that's not 100% true, actually.... There are some sounds and images in there that seem pretty general domain, and have been altered so much from the original you couldn't tell anyway. The point is that I've removed all questionable content. The thing that finally did it was the background music during gameplay.

Originally, I didn't already have any music that fit the theme of the game in any way, so I just grabbed a module that was sitting around in my library that seemed to fit well. Needless to say, I've had that same module for the music for the entire duration of the game's musical life. It has finally been replaced with something completely original that I was able to whip up in a few hours. Honestly, I didn't think I'd be able to get something that would fit properly, but I suppose this time I got lucky.

Some of the more pressing things that are on the to-do list include implementing high score tracking and adding some more basic AI to a few of the enemy types that are lacking. After that stuff is done, the game seems like it might be in good enough shape to show off to a few people and see what they think about it. Maybe I'll even be able to pick up an artist? That'd be great.
copyright © 2001 - 2010 loomsoft