I've been looking at heaps of different sets of resources for the game, and it's all becoming really confusing. Reading through all those code examples has taught me that my programming knowledge isn't at it's best. I think I'm still pretty good with C. But the advanced stuff with C++, such as being clever with templates, operator overloading and the proper use of exceptions, I'm not very good at. I know what all those things are, it's just the code goes into a blur every time I see them implemented.
I need to make a decision on what engine to use. Since logic tends to fail me, I guess I'll base my decision on my intuitive feeling of what's best. And my intuition is telling me that the best way for me to relearn C++ is to build my own 2D engine, but not from scratch. I've found superpig's excellent series of "Enginuity" articles, which cover a lot of what I was worrying about (such as memory managment and error logging). He also uses a lot of C++ that I'm rusty on, so writing code based on his articles will be a great refresher. I'll also be using SDL with OpenGL, so I can work through some of the basic tutorials here on graphics. At best, I'll understand how engines work and regain my competency in programming (and have fun!). At the very worst, I'll have a deeper understanding of why I should use Torque 2D or PyGame.
As for the game itself, I've decided on a look. Since I still need to boost my art skills to a decent level (need to get back to work on that!), I'll use a minimalist retro 2D polygon look. If done well, I think it will be fairly attractive. Here's a quick concept mock-up I made:
I'm not too sure about the player's ship, but the enemies look pretty good. In the game, there'll also be about a zillion bullets being fired at this point.
Question for anyone reading: I'd like to buy some more books; are there any you recommend on SDL, OpenGL, or programming in general? What do you think was useful to you?