N.A.D.S. v0.43
Copyright ©2001-2002 Matt Burns

A simple asteroids clone
Requires Window95 or later, DirectX 7 or later and a 3d graphics capable video card.

Document last updated: 7 July 2002

Background

This is a small Asteroids(tm) clone, written mainly for my own use, but also as a learning excercise. Any feedback gratefuly received by mailing nads@blis.co.uk

Controls

Default Controls Action
CURSOR LEFT/CURSOR RIGHT* turn left right
CURSOR UP/CURSOR DOWN* thrust forwards/back
LEFT CTRL* fire
SPACE* select current powerup
ENTER* discard a powerup token
P pauses game
PrintScreen saves the current screen as "screenXX.bmp"
Escape End the current game
* these controls can be configured within the game

Press "Space" to go to the menus
Press "Fire" to begin game from menu system
Press "Fire" to spawn a new ship
Press "Escape" to end game/quit

Hints

Powerups

There are 10 powerups in the game, these are described below:

Powerup Action
Key: unselected or unavailable current powerup activated or maxed out
Refuels your ship to it's maximum capacity.
Recharges your shields to their maximum capacity.
Increases the range of your bullets.
Increases the power and size of your bullets.
Increases your accelleration.
Increases your turning speed.
Doubles or triples your gun output.
Activates your retro burners.
Extra ship
Insurance

History

7 July 2002

I've cleaned up a lot more of the code, and also added some graphical instruction text rather than the normal text that was there before. I've also modified the explosions so that they look a lot better. It looks a lot more polished now, although it's nowhere near complete. :-)

I'm happy with the way it's progressing though, because I've always wanted to write my own version of Asteroids.

4 July 2002

Fixed the menu control system. It now responds properly to turning keys, and doesn't bunch them all up and go mental. I was re-using a variable, and getting confused. I've now separated the menu control system and the key configuration system, so they now both work perfectly. Nice!

I've also cleaned up a lot of the code, by organising it in libraries, and removing a lot of old (i.e. broken) and debugging code that wasn't being used. This should help reduce the file size and compilation time, and perhaps the size of the executable...

I must get around to remodelling the player's ship, cos it's crap at the moment. I like the shape, but there are far too many polygons in play.

2 July 2002

I've remodelled the asteroids so that they have a relatively useful (i.e. lower) number of polygons, and so can now have more objects on screen at the same time without the slowdown that I used to get (even on my laptop.) I've also tidied up the 'cel' outlines, although a little more could be done to optimise those. That's for another day though...

And apologies for the crap upgrade interface. I'll restore the nice semi-transparent interface when I have a moment, seeing as people seemed to like it. I think it was also faster than the current 2d interface as well, but I didn't know of an efficient way at the time. Now I do...

I've re-added the textures and UV mapped them in a semi-decent way to the asteroids. There's little (if any) performance hit incurred, probably due to the number of polys of the asteroids.

30 June 2002

I've modified some of the graphics to have a cel-shading effect, e.g. the asteroids and flying saucers. For some reason this seems to have sped up the game somewhat, although I don't know why. Maybe it's the lack of bitmapped textures, I don't know...

11 February 2002

Did a bit of tweaking to the UI (the powerup icons aren't where they should be, but I'll fix that later) and some of the collisions. I also received a bug report about the game not working at all with a TI200 under ME with 1GB but, as I have none of these available to test with, I'm not sure what the problem may be. Oh well... time will tell.

1 January 2002

This will probably be the last public beta before it's finally finished and ready for sale (I think I'm going to go down the shareware route with it.) So, in the interest of quality testing, I'm look for beta testers willing to put in a small amount of effort to help me test the game (mainly because I only have access to two machines here.)

If you're interested in beta testing this (you'll receive credit and a copy of the full game when released) please write to: nads@blis.co.uk with a subject of "I'd like to test your NADS" or something along those lines. Thanks!

26 December 2001

Cursor controls added, and text color changed to make it slightly easier to read on the default background. I shall be making the text colour independent at some point in the near future.

Note: text around the screen is for debugging purposes only.

21 December 2001

Unbeknownst to me, someone else has already written an "Asteroids" type game, and called it "Rocktoids", so in the spirit of confusionlessness(!) I have decided to rename my version to "N.A.D.S." which is short for "Near-Earth Asteroid Defense System" (it's better than nothing :))

Apologies to Krylar for hijacking his name.

Thanks to RobinS for the new name, and Lucifer[SD], Skully and blodrone and the rest of #blitzbasic on blitzed.org for the encouragement and testing. Cheers fellas!

Version History

Key: + added = changed - removed

7 July 2002

+ some instructional images
- some instructional text
= explosion lights

4 July 2002

= fixed the menu system
= fixed the key configuration system
= re-organised some of the code
= removed a bunch of old/debugging code

2 July 2002

*v0.42 compiled
+ cel shaded ship
= tidied cel shading
= fixed a few lines of code (nothing major)
= probably added a few bugs too... :-/

30 June 2002

*v0.41 compiled
+ cel shaded rocks
+ cel shaded flying saucers

11 February 2002

* v0.40b compiled
= collision code
= powerup icons

1 January 2002

* v0.40a compiled
= small bug fix (can't recall what)
* v0.40 compiled
+ alien flying saucers
+ aliens shooting back
= collision code
+ control configuration
+ control menu
+ 10 second wait to go to main menu after game over

29 December 2001

* v0.36 compiled
= fixed play area wrapping (no hidden rocks, ships or powerups)
+ 5 seconds of invulnerability with new ship
+ 2.5 seconds of invulnerability with new level
= modified collisions a bit (still a bit buggy)

27 December 2001

* v0.35 compiled
+ frame limiting code (60fps)
* v0.34 compiled
= better powerup token probability
= longer powerup token life
* v0.33 compiled
+ insurance powerup
+ more even chance of powerup tokens
+ HTML format readme (this file)

26 December 2001

* v0.32 compiled
+ cursor controls
+ powerup token discard
+ all powerups
+ powerup rejection
+ new powerup selector images
= rejigged powerup selector bar
= rejigged key mapping and selectors
= fixed power collision detection quirk

25 December 2001

* v0.31 compiled (internal)
+ pause function

24 December 2001

* v0.30 compiled
= powerups made larger
= powerup lifetime shorter
= powerups made rarer
+ working powerup interface
+ powerup collection sound
+ powerup selection (mostly)

23 December 2001

* v.023 compiled
+ 3d menu system (incomplete)
= completely fixed collision code
+ new powerup sprites
+ new powerup routines
= rejigged some internal code

22 December 2001

* v0.22 compiled
+ fragments of rock
* v0.21 compiled
+ some basic sounds
+ different backgrounds (only one in use at the moment)
= rejigged some internal code
= reduced the number of powerups still need to reduce it more)

21 December 2001

* v0.20 compiled
= game renamed to "N.A.D.S."
+ game logic
= standardised game routines
+ code modularisation
- buggy rock collisions

20 December 2001

* v0.12 compiled
= fixed "random" collisions
+ empties powerup cache when killed
+ replaced "wavey" things with a cooler one and reduced size
+ added lives
+ lose lives when killed
+ game over when no lives

17 December 2001

* v0.11 compiled
+ bullet/rock explosions
+ ship explosions
+ fuel
+ shields
* v0.1 compiled
+ powerup tokens
+ powerup token collections

16 December 2001

+ background
+ ship
+ ship controls
+ basic physics
+ bullets
+ rocks
+ rock/bullet collisions
+ baby rocks
+ ship engines
+ explosions
+ "wavey" things
+ title

To Do