Posted on June 21, 2007 by Doolwind

1 Day Game #1

Over the weekend I had a little spare time and decided to try out Haaf’s Game Engine (HGE). After spending the last year working on BSG and as long as I can remember on CIC I decided to make a small game that would take less than a day. The finished product came in at 13 hours and is a “Geometry Wars” style of game with a bit of a twist. I’ve aptly called the game “Game1“.

Below is a breakdown of the hours it took to create:

Description Hours
Initial setup of core, engine, game and entity 1.5
More initial setup, movement, firing with bounding 2
Player, Bullet, Collision detection 1
Player dir and enemy 0.5
Enemy moving and firing on enemy 0.5
Reflect bullets based on angle 1
Random level generation 1
Fixing bugs 1
Adding gameplay and ui 1
Leaderboard, more gameplay 1.5
Encryption 1
Finalising and preparation for launch 1

I’m quite impressed with HGE’s ease of use and will be looking to do a few more small games like this in the coming weeks. The features of note are:

– Dynamically generated levels using a seeded random number generator. This means that there are an unlimited number of levels that play the same way for every player.
– Online scoreboard. Your scores are uploaded at the end of the game and you can compare with other players. Simple encryption was used to stop abuse.

If anyone is really interested in the source code please add a comment and I may look at releasing it in the near future. I’d be interested in any comments or bugs. My main aim was to keep the development short so I missed out a few features I’d like to have added. These include audio and animations when the objects die.

Download the game below and let me know what you think.

Game 1

Controls:
wasd – movement
LMB – fire
RMB – shield
All enemies are red.
Reflected bullets become change to the reflectors team.
The uploaded score simply uses your computer name.

Thanks to Drealmer’s comments there are now a few more keys:
arrows – also for movement
zqsd – also can be used for movement on AZERTY keyboards.