menu

Flexible XML Powered Space Shooter?

With my second year of Uni starting next Monday and having done mostly contract work I haven’t exactly been able to do everything I wanted to do in terms of programming. I was somewhat considering writing my own DirectX 11 rendering engine, although at this point I’d rather wait and see what my final project ends up being – it helps to know if it’s even going to be 3D or not.

With that said, with the exciting addition of networking, AI, Ogre 3D, new media business compliance and managing new media projects comes the first proper time when, as students, we are properly co-developing a game. Although I’ve now had my first bit of group-work experience behind me from only the start of this year, chances are this will be nowhere near as smooth considering. While the ‘designers’ fight eachother off with ideas I’ll be quietly preparing the framework of what we’ll be using.

Essentially from what I’ve gathered it’s going to be a space shooter, simple and 2D and of course we all have to do something at one point or another. Fortunately I just already happen to have made a start on that and have prepared an SFML 2 build with the addition of the TinyXML parser and some careful core mechanics written by me to ensure we’re going to have a very stable and powerful little game tool.

Although I did originally think about a level editor, it ended up seeming impractical due to the nature of these simple top-down little 2D games where level design can just as easily be written by simple text documents. Essentially there will be two kinds of documents:

  1. A level configuration file – This will handle the events that occur within the level as well as the basics such as enemy spawns, and whatever else the designers come up with (god help me).
  2. An enemy configuration file – This is responsible for the fun part, where the designers as well as I can tweak bullet patterns, ship movement, and other exciting little bits specifically designed for each category of enemy.

I’ve already designed an effective system in my mind from one-too-many nights of idiopathic insomnia and, despite the project not having officially started yet, am quite confident to say we’re going to get some mighty fine grades, so I can focus on some of the other courses (such as all the programmers having a little self-programmed robot fight – nerd power for the win!)

Excuse the lack of a screenshot, I was contemplating adding one in but right now it is literally a black screen with the occasional XML data and some test sprites on it. I think in the future I may begin including HTML5-based video samples rather than images as images are becoming limited in terms of telling a story.