Introduction
Asteroid Zone is a Java 2 Micro Edition (j2me) version of the classic
arcade game: your spaceship has ventured into a particularly unfriendly
area of space where it must strive for survival by blasting
asteroids which threaten to squash it. The ship has a powerful gun, a propulsion
system (be careful with inertia !), and can teleport.

Last update
October 14, 2002.

LicenseThe game is free software and is available under the GNU
General Public License (GPL). Basically, this means the license gives
you the following permanent rights: use the software forever, distribute
it to who you want, look at the source code and alter it if you are interested.
The flipside is that you must grant these very same rights to other people
as well if you wish to redistribute the software or publish your own software
based on this software.

Download

version 1.4

asteroids.jar (Java ARchive, a
compressed bundle which contains the game classes)

asteroids.jad (Java Application
Descriptor, a file used by the Java device to install the software)

Release notesVersion 1.4, October 14 2002
Bug fix release to correct problems for phones with a small screen (such as
the Nokia 6310i). Added an extra screen with license info so that people know the game is GPL.
Added the improvements developed by Pavel Machek (displaying the level at the beginning of each
stage, not resetting the ship position at the beginning of the stage, correcting the mechanics equations
so that the rockets fired take into account the velocity of the ship).

Bug fixed

0007 The rasterization algorithm was still
not right for steep lines and did not handle degenerate cases well (and degenerate cases
do happen with small screens). This would cause the game to get stuck in an infinite
loop at initialization time.

Version 1.3, October 26 2001
Bug fix release.

Bug fixed

0003 Collision detection problem. The
rasterized polygons used for collision detection were upside down and rightside left. The
fix gives much better accuracy in collision detection.

0004 Restored the keyRepeated()
method which had been removed in 1.2 in an effort to limit the number of events generated
and speed things up (it turns out is was a bad idea). The keyRepeated() method now also allows autofire.

Version 1.2, October 24 2001
This is a performance release again, to try to get decent performances on actual java phones.
The collision detection algorithm has been completely rewritten. Event handling has changed
also and ought to be more responsive.

Version 1.1, October 4 2001
This is mostly a performance / bug fix release. No new classes have been added,
though a lot of shuffling has occurred within the classes themselves. The game is
roughly 30% faster than 1.0.

New features

Faster ship.

Ship movement can be controlled with the UP key also.

Bug fixed

0001 Field thread was not destroyed at exit (which would cause 2 Field threads to be runnning
when the game was relaunched, causing every objects to move twice (and thus twice as fast !)).

0002 Once maximum ship velocity was reached, engine burns in the opposite direction where also
ignored, causing the ship to keep moving at its maximum velocity.

Version 1.0, September 9 2001
Initial release

Supported hardwareThe game is packaged as a MIDlet, an application designed to run on
j2me compatible cell phones and other java compatible devices with limited
resources. So far though, the game has only been tested on various emulators
and two actual cellular phones
so I cannot guarantee it will operate flawlessly or fast enough for a particular
j2me device. I am very interested in hearing about any compatibility /
playability problem on actual of j2me devices. Feel free to submit any
bug or problem and I will do my best to fix them as quickly as possible.
At the time of this writing, here is the present status: