Scroll down or click on one of the links below for help information.
Hit Ctrl-Home to return to the table of contents. 

Close the window to resume game play.

* * * * * Table of Contents * * * * *



















Asteroid Battle” is a tactical simulation of a battle between two fleets of spaceships in an asteroid field. 

Each ship belongs to one of two opposing sides.  Each side can be represented by one or more ships. 

Each ship has a given amount of energy, which it can use for maneuvering, firing, or maintaining its shields against hostile fire. 

Points are awarded to a ship for damaging a ship belonging to the opposing side.  The points awarded to the ships of each side are totaled to determine which side is the winner. 

At the beginning of the game, you specify the parameters controlling the game.  Alternatively (if the application has full permissions), a file of game-parameters specified in an earlier game can be loaded. 

Game parameters are specified in dialog boxes, and control such things as the length of play, the number of asteroids, and the relative difficulty for each player.  By making it harder for experienced players, novices can compete with seasoned veterans. 

After the parameters are specified, the game begins, continuing for the specified length of time.  During this time, play is controlled by the mouse (and/or numeric key-pad) and their fire-buttons.  If necessary, the game can by 'paused' by clicking the “Pause” radio button.  Time spent pausing is not included in the time-limit of the game. 

If some other window gets focus (as would happen if you click the “Help” button), the game is automatically paused.  Game-play resumes when the game window re-gains focus. 

After the specified duration of play has elapsed, the score of each ship is displayed.  The game statistics (high, low, & average scores) are kept in memory, and will be saved on disk at the end of play.  Game parameter files can only be saved if you are using the version permanently installed on your machine. 

At this point, the game can either be restarted using the current parameters, or the parameters can be adjusted before resuming play. 


The playing screen has a large area (with a black background) where the actual game play takes place.  The area at the top contains radio buttons used to control the game, the “Help” button, and also displays the score of the winning side. 

The title-bar of the window shows the version number of the application, and the current parameters-file being used. 

If you want to pause the game, simply click the “Pause” radio button.  When you want to resume it, click the “Run” radio button.  If you want to end the game earlier than the specified period of play, click the “End” radio button. 

If the game window loses focus, the game is automatically paused, and will automatically resume when it re-gains focus. 

To specify new parameters for a new game, click the “New Game” radio button.  This is also how you exit from the title screen (or from the display of the scores at the end of a game). 

To read the help information using your browser, click the “Help” button. 

If you want to turn off the sound-effects and music, click on the “Mute” check-box, causing a check-mark to appear in it. If you want to restore the sounds and music, click it again, clearing the check-mark, and the sounds & music will again be generated.

Alternatively, when the scores are displayed at the end of a game, you can play a new game using the same parameters by clicking the “Run” radio button. 

You can re-size the game window to any size you see fit, but doing so will end any game in-progress, and return to the title screen. 


You can control many aspects of the game, as well as the relative difficulty-levels of the players by changing game-parameters.  If the game is permanently installed on your machine, these parameters are saved on disk, where they can be selected for use in future games. 

The first dialog box is for choosing which parameters-file is to be used.  The second dialog box is for parameters pertaining to the game as a whole. 

After that, there is a dialog box for each ship taking part in the game.  The number of ships in the game is controlled by the 1st (Game Parameters) dialog box. 


Before the program displays any parameter menus, it displays a list of parameter-files saved from earlier games.  You can choose an existing file, or specify a name for a new game-parameter file, starting from default values. 

In the screen-shot above, the “m1-p2d0-p0d2” file is selected, and will be used when the “OK” button is clicked. 

When running the sand-box version (rather than running the application which you have downloaded and installed), you don’t have the option of saving parameter files.  Instead, you have a single, in-memory file (not shown above).  You can modify the parameters of this file during the game-play session, but when you exit the application, this file is gone. 

You select an existing file by clicking on the file you want.  You name a new set of parameters by typing the name in the “New File:” edit-box. 

When you click the “OK” button.  The game parameters dialog box then displayed, will come from (or go to) this file, and any changes & game statistics will be saved in this same file. 

The game-parameter files can be named indicating what type of parameters they contain.  For example, “m1-p1d1-p0d3” might be "1-minute play-period, 1 piloted-ship and 1 drone-ship vs. 0 piloted-ship and 3 drone-ships". 

And “m1-p1-d1-w might be "1-minute, 1 piloted-ship vs. 1 drone-ship, with screen wrap-around".  You might want to use initials in naming the files, such as JD.JH for “John Doe vs. John Henry”.  Of course (if you don’t mind typing more characters), you could name it “John Doe vs. John Henry”.


The first field specifies the file name to be used for saving the parameters.  It was specified in the prior dialog, and can't be modified here. 

The next field is the time-of-play.  This is specified as a decimal number specifying how many minutes a game is to last.  For example, 4.5 specifies that the game is to last four and a half minutes (4 minutes 30 seconds). 

In the next field, you specify how many asteroids are to be placed on the screen (at random positions).  You can specify from 0 through 127 of them.  Using more asteroids makes it harder it is to maneuver, but also makes it less likely to be hit by a ship firing from far away. 

The next field specifies whether or not wrap-around screen mode is to be used (Checked if Yes, Clear if No).  In wrap-around mode, a ship leaving one side of the screen enters from the opposite side, keeping the same direction & speed.  Also, a laser-blast leaving one side of the screen continues on into the screen from the opposite side, continuing in the same direction (this happens on numeric-kepad controlled ships, or on all piloted ships if the “Fixed-Fire” option is selected). 

Without wrap-around, a ship can leave the screen, but all its energy is used to send it back.  While off the screen, a ship can't be seen, and can't be hit by laser fire.  But you don't know where it's going to come back, and it could hit an asteroid when it re-enters the screen. 

If the “Fixed-Fire” check-box is selected, all piloted ships fire only in the direction they are traveling, which requires more skill on the part of the pilot, and gives an advantage to the drone-ships. You can compensate for this drone-ship advantage by giving them less energy.

The next two sets of fields specify the parameters of the two opposing sides. 

In each group, you first specify the name (or nationality) of the side.  Then (for each side), you specify how many-piloted ships and how many computer-controlled (drone) ships will be in the game.  When a new game parameters file is being created the “# of ships” fields may be modified.  When modifying parameters from an existing file, these fields are read-only (as in the picture above). 

Piloted ships are controlled by the mouse or the numeric-keypad.  Drone ships are controlled by the computer acting as a pilot on behalf of the side (nationality) it is assigned. 

For a 2-player (pilot against pilot) game, you would normally have 1 piloted ship on each opposing side.  However, you can control more than 1 ship at the same time with the same mouse (or keyboard) if you are so inclined. 

Keep in mind that the game allows only a total of 10 ships (of all kinds), and that you have only the mouse and numeric-keypad for controlling ships. 


There is a ship-parameters dialog box for each ship in the game.  The name of the side or nationality is also displayed. 

You first specify the type of ship (piloted, or drone).  If it is a piloted ship, you also specify the name of the ship's captain.  You might put your name or initials here.  Initially, an acronym is formed from the first letter of each word of the name (nationality) of the side, with a number appended. 

For each side, the application first asks for parameters of each piloted-ship (if there are any), then (if there are any) it asks for the parameters of the drone-ships. 

You then specify how much energy is available to the ship each time it moves.  This is the amount of energy the ship has initially, or after being put back on the screen after having been destroyed. 

The amount of energy a ship has is decreased each time a ship is damaged from a neighboring explosion or from laser fire. 

You then specify the destruction-penalty.  This is the number of points deducted every time the ship is destroyed for whatever reason. 

Normally, this should be the same as the ship's energy.  For a beginner, however, it should be low.  An experienced player's destruction-penalty, especially when playing a beginner, should be high. 

The next field specifies the firing-delay for the ship.  If it is non-zero, even though the left mouse button (or numeric keypad “0” or “.” key) is kept pressed, the ship will fire only as often as once every 'N' (the firing delay) moves.  This is useful for making it harder for experienced players.  The default is a reasonable general-purpose value. 

If it is a piloted ship, you next specify what device (the mouse, or the keyboard) is used to control the ship (these radio buttons are not shown for a drone (computer-controlled) ship). 

Usually, all ships controlled by a given mouse or keyboard should be on the same side (the same nationality).  This is not required, but it is less confusing on the screen. 

At the bottom of the dialog box, the game statistics for the ship (from prior games) are displayed (high, low, & average scores).  Initially these are all zero. 


After the asteroid-field is drawn on the screen, each ship is placed on the screen at a randomly-selected position. 

You can tell which side a ship is on by its color.  Each piloted-ship is controlled by the mouse or the numeric-keypad assigned to it via the ship-parameter dialog box.  More than one ship can be controlled by the same mouse or keyboard. 

You can distinguish between drone-ships and player-controlled ships, by waiting before maneuvering.  The player-controlled ships are the one(s) that don't start moving. 

In controlling your ship(s) with your mouse or keyboard, each ship has a preset amount of energy to use.  This energy is used first for maneuvering.  If you fire your laser, any energy left over from maneuvering is used for firing, and you have no shields.  If you don't fire, any energy left over from maneuvering is applied to the shields. 

Keep in mind, though, that the shields are not 100% effective, and they won't save you from a collision with an asteroid.  Shields are effective against firing and explosions (including the explosion resulting when a ship of the opposing side collides with you). 


As each ship moves through space, it leaves a hot-plasma trail, which fades from yellow through red, then disappears.  This trail lets you see the direction a ship is traveling. 

Each piloted ship is controlled by its assigned mouse or numeric-keypad.  Drone ships are controlled by the computer. 

When you ‘drag’ with the mouse (with the right button pressed), or press a direction-key on the numeric-keypad, in a given direction, your ship starts building up speed in that direction.  When you let go of the right mouse button or direction-key, no power is applied to maneuvering, and your ship coasts at the current direction & speed. 

To slow down or reverse directions, ‘drag’ with the right mouse button pressed (or press a direction numeric-keypad key) in the opposite direction. 

Remember that it takes just as long to slow down in a given direction as it took you to speed up in that direction. 

To maneuver using the mouse, press and hold the right mouse button, and ‘drag’ the mouse in the direction (and by the amount of energy to be applied).  When you release the right mouse button, energy is no longer used for maneuvering, and the ship continues coasting with its current direction and speed. 

The numeric-keypad keys are assigned as follows:

7 = go up and left, 8 = go up, 9 = go up and right

4 = go left, 5 = no energy to maneuvering, 6 = go right

1 = go down and left, 2 = go down, 3 = go down and right

0 (or .) = fire

If the 'wrap-around' screen mode is used, the application will keep each ship from exceeding a pre-defined maximum speed, even if energy is applied to speed up more in that direction. 

In the 'non-wrap-around' screen mode, if a ship leaves the screen, all its energy is applied to send it back onto the screen, and you have little control. 

Thus you can leave the screen as an escape, but you will be coming back soon, and it's not easy to predict where you’ll re-enter the screen.  In some cases, a ship leaving the screen at the right direction & speed can end up 'orbiting' the screen for the rest of the game! 


When you press the left mouse button (or a numeric-keypad “fire” key), the ship will attempt to fire its laser-weapon.  For keyboard-controlled ships, it will fire in the direction the ship is currently moving (or if it isn't moving, it won't fire at all). 

When using the mouse, it fires at the coordinates where the mouse pointer is pointing. 

In firing, all energy left over after maneuvering is applied to the laser.  You therefore have no shields in the instant the laser fires.  The laser will not go through an asteroid or a ship.  This means you can hide from a ship that is firing at you by going behind an asteroid. 

If you damage an opposing ship with your laser, you get points for the amount of damage you inflict.  How quickly the laser fires again while the button is kept pressed depends on the firing-delay parameter specified in the ship-parameters. 

If you damage one of the ships of your own side (nationality), points are deducted from your score! 


Your shields can protect you from laser fire, and can even protect you when you are engulfed in an explosion.  If you are hit with less total energy than you are applying to your shields, your shields will flash as a red circle around your ship, completely protecting you.  If, however, more energy hits you than you have shield-energy to protect against, your shields will flash yellow, indicating some damage has been done. 

If the damage done is greater than the energy the ship currently has available, the ship explodes in a fireball, which may, in turn, damage other ships.  If your death-fireball damages an opposing ship, you get points for that damage. 

Remember that if you are hit by more than one ship's laser-fire at a time, the shield has to protect you against the total energy of both lasers.  It is also important to remember that the shields are not perfectly efficient. 

In other words, if you are hit by the same amount of energy as you are applying to the shields, some (small) damage will be done. 


Any time your ship is hit by laser-fire and/or an explosion with a total amount of energy exceeding the strength of the shields, damage is done to your ship. 

This damage causes your ship's energy source to be less efficient, meaning you have less energy available to use from now on.  This means you are slower, less maneuverable, have a less-formidable laser, and are more vulnerable to hostile fire.  If the damage inflicted on you is greater than the current power of your energy source, it overloads, and the ship explodes in a fireball. 

The size of the fireball is proportional to the amount of energy your ship had originally.  When a ship is totally destroyed, a new ship is placed somewhere on the screen to take its place (after deducting the destruction-penalty from its score).  This new ship has the amount of energy available to it specified by the ship-parameters dialog box (its original amount of energy).  The new ship has no motion initially. 


Collision with an asteroid is always fatal, no matter now much energy you have applied to the shields.  Even the smallest asteroid is dangerous.  In fact, a small asteroid is even more dangerous, because it's hard to see. 

Ships on the same side (the same nationality) have a collision-avoidance system which allows them to pass above/below each other at the last moment, thus avoiding a collision.  This system does not interface with ships on the opposing side, so such collisions always result in an explosion. 

In such a collision, the ship which actually runs into the other explodes, and the other ship may survive if it has enough energy on its shields. 


Any time a ship is destroyed for whatever reason, it explodes in a fireball.  The size of this fireball is proportional to the amount of energy the ship originally had available to it.  The force of the explosion is also proportional to the amount of energy the ship originally had. 

In blowing up, you get points for any damage your explosion does to any opposing ships. 

The force of the explosion may be blocked by any nearby asteroid or ship.  If a ship is in the 'shadow' of the explosion formed by a ship or asteroid, it won't be affected by the explosion. 


Whenever you damage a ship of the opposing side, whether by laser fire, or even by the fireball of your own destruction, you get points for the amount of damage you inflicted. 

These points are accumulated throughout the period of play.  However, any time a ship is destroyed, the # of points specified by the 'destruction-penalty' ship-parameter are deducted from the ship's score. 


The game may be paused by clicking the “Pause” radio button.  Play is resumed by clicking the “Run” radio button.  If the game window loses focus (some other window comes to the foreground), game-play is automatically paused.

This will happen if you click the “Help” button, and your browser window appears, and gains focus.  When you close your browser window (or click on the game window to give it focus) game-play resumes. 

Note that when the game is paused, the winning score is displayed at the top-right of the playing screen. 

You can immediately end the current game by clicking the “End” radio button.  


To avoid running into things, try to keep your speed low.  Use high speed only in emergencies, and then slow back down as soon as possible. 

If your course takes you through an opponent's line of fire, let off on the controls (if possible) so you have maximum energy on the shields. 

When using the keyboard controller, or the “Fixed-Fire” option, get your ship coasting in the direction you want to fire, then press the trigger (or trigger-key).  This way, you have full power applied to your laser. 

Remember that you have no shields at the instant you fire, so don't be firing at the moment an enemy ship periodically fires at you. 


Computer-controlled ships (and ships controlled via the mouse) are more advanced technologically than the piloted ships controlled via the keyboard.  Drone ships (and piloted ships controlled via the mouse) can fire the laser in any direction (not just in the direction the ship is traveling). 

These ships also have a longer range laser.  However, piloted ships controlled by a joystick can compete successfully with the computer ships because of superior strategy.  In specifying the parameters for computer ships, keep their energy low, or the game ends up as a "let's see how fast we can destroy the humans" exercise for the computer! 

Remember, you can have computer ships on your side too, which can increase your odds of your side winning.