Deathtank related Linkswww.death-tank.com
Thurrock Deathtank Clan
Website design and implementation by Tom Russell © 2004
Last modified: Thu Apr 15 21:46:01 BST 2004
What kind of game is Groundfire?
As I mentioned on the main page, Groundfire is inspired by Death Tank for the Sega Saturn. For those of you not familiar with Death Tank, I will attempt to describe what Groundfire is all about (If you are interested in learning more about Death Tank, check out some of the Death Tank links on the menu to the left.
Groundfire is a multiplayer (no single player mode) game in which each player takes control of a tank sitting on a simple 2D landscape. The game is divided up into a number of rounds. The aim of each round is to destroy the other players' tanks using a selection of weapons at your disposal. Blowing up other tanks, or simply not dying, will result in points being awarded at the end of the round. Points are converted into money which can be used to purchase new weapons and tank upgrades. After all the rounds have been played, the player with the highest score is crowned the winner and everyone else gets annoyed and demands a re-match (usually). For more details on how to play the game, see the Help section.
Game RequirementsThese are the minimum system requirements for the latest release of Groundfire (Note: Groundfire is still in development and has not been optimised as-of-yet. It is possible the requirements will go down in the future).
History of GroundfireI started writing Groundfire shortly after I discovered Death Tank on the Sega Saturn and realised how fun it was. I quick search of the Internet revealed that there was nothing equivalent to it available on the PC. I thus, took on the challenge of making my own PC version of this game. The first lines of code were were written in September 2002. By Christmas 2002, I had a very basic tank game complete with deformable landscapes and tanks able to shoot at each other. Since then work has proceeded at a irregular rate. I am a full time software engineer so it's sometimes hard to motivate myself to program when I've just spent 8 hours at work doing just that! Regardless, I am still commited to Groundfire. The recent release of a early version of Groundfire onto the Internet is hopefully the first of many releases I intend to do.
The Technical sideGroundfire has been written from scratch in C++. The main objective was to produce a game that would work on as many different platform as possible with only minor changes. To this end, the game makes use of several freely available APIs to provide most of the functionality. Firstly, all the graphics are programmed using OpenGL which is supported, in one way or another, by every system that is worthy of being called a modern operating system. Other options, such as Direct3D, were out of the question because they would tie the game solely to the Windows platform (not to mention the fact that I hate programming in Direct3D). OpenGL by itself however, is not entirely platform independent. You still need to set up a window to draw the graphics in and this is done by totally different means on different platforms. To avoid this I use the GLFW API. This is a platform independent framework that can handle setting up of windows and other tasks that require different implementations on different systems. It provides generic interfaces for Threads, Input devices (including joysticks/pads) both of which are (or will be in the future, in the case of threads) used in Groundfire. In fact, GLFW provides everything Groundfire needs except Sound. Decent platform-independent sound is hard to come by, but eventually I came across OpenAL (Which, as the name suggests, touts itself as the Aural equivalent of OpenGL). OpenAL Supports several of my target platforms and adding it to the project turned out to be a doddle.
So which operating systems does Groundfire work on? I have only tested on two systems at the present time. Windows and Linux. Both of these will compile the source without modification and the game runs flawlessly on both systems. One thing to be aware of is that, although the game will work without hardware accelerated 3D, it will most likely be unplayable. The game should in theory compile and work on any other platform as long as it satisfies the following requirements: It has a standards-compliant C++ compiler available for it, GLFW can be compiled and used sucessfully on it, and OpenAL can be compiled and used successfully on it. Actually, it is technically possible to build Groundfire without sound support, which removes the dependency on OpenAL, but that's a bit of a poor solution. Using these factors, I have compiled the following list of systems that (should) be able to run Groundfire.
The Future...I have many plans for Groundfire. Obviously, the first stage is to get the rest of the weapons into the game so that it is comparable to Death Tank (This project was started as a way of being able to transfer the fun of mass Death Tank sessions to the PC). In the long run there are several other enhancements I would like to add. These include:
The Designer / Programmer / Webmaster
Finally in this section, a bit about me: the genius (?!) behind Groundfire. My name is Tom Russell, I'm 24 years old and I live in Bristol in the UK. I'm a professional software engineer, I work for a local company that makes CAD software so I know my 1s and 0s, so to speak. I have a degree in Computer Science from right here in Bristol, I went to the University of Bristol and graduated in 2000. Since then I've been programming a bit in my spare time and Groundfire (my first game to make it this far) is the pinnicle of 18 months of hard work (Well, moderately hard work anyway.)