Prototyping seemed like the right way to start off. I used Blender's game engine, which was a natural choice since I've used it so much already.
I find however, that the built-in game engine is only so useful. Blender's game engine makes certain difficult things very easy to do, and some simple things way too cumbersome. Its obvious that it was designed to make certain genre of games easy to make.
Knowing that all this work could not be easily translated into the final product, I decided to stop. I'll still continue to use Blender and Gimp to make all my graphics and animations and I'm sure there are better RAD tools out there. But for now I'm rejecting RAD tools for this project.
Instead, I will prototype my game on the target platform. I've almost decided to use Allegro for this game. Allegro is old but does 2D very well, considering it trades GPU acceleration for hardware surfaces and software optimizations. Allegro is a complete easy to use SDK. Its easy enough to prototype in, and optimized enough to develop a finished product. Especially one that supposed to resemble a game from 1995.
(BTW, I'm developing on a Thinkpad T20, PIII 650 Mhz with 256MB of ram and an 8MB Savage3D IX card).
The next thing to do is make some basic demos. For all my talk, I still haven't implemented a simple 2D scrolling sprite and tile engine yet. Once I figure all this stuff out, I can make a tool to prototype with.
TODO: (or to learn rather)
- Write a tile/sprite/font ripper. I'd rather use a little extra code, than keep each tile and sprite frame in seperate image files.
- Sprite demos w/ velocity, scaling, rotation and pixel perfect collision detection.
- parallax tile scrolling demo w/ map editor. Ideally, the editor will be built-in to the game engine. I think I'll just make the editor GUI in Tcl/Tk however.
- Sprite spline paths, and added to map editor. (Or can I animate sprites using linear interpolation and way-points by hand-in-mouse?)
- Bullet engine: A general module for generating and managing a barrage of bullets sprites and bullet effects. Swarming, homing etc.
- Lighting & Particle simulator: fire, smoke and plasma. I'll need this for the laser effects and explosion.