|
|
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.
License
The 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) |
asteroids_src.jar (Game souce
code, comes with javadoc documentation) |
version 1.3 |
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) |
asteroids_src.jar (Game souce
code, comes with javadoc documentation) |
version 1.2 |
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) |
asteroids_src.jar (Game souce
code, comes with javadoc documentation) |
version 1.1 |
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) |
asteroids_src.jar (Game souce
code, comes with javadoc documentation) |
version 1.0 |
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) |
asteroids_src.jar (Game souce
code, comes with javadoc documentation) |
Release notes
Version 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. |
0005 Numerical precision problem
causing the graphics to be slightly distorted.
|
0006 The ship is unable to rotate back
to its exact original angle.
|
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 hardware
The 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:
Device or emulator name |
Status |
Comment |
Java 2 Wireless toolkit 1.02 early access Java 2 Wireless toolkit 1.03 early access |
Good |
Emulated on a 200Mhz Pentium Pro
Works fine with Default Color phone, Default Gray Phone, Minimal Phone,
RIM. Works slighly better with 1.02 than 1.03 |
Zucotto Wireless WHITEboard Device Emulator 2.0.1 |
Excellent |
Emulated on a 200Mhz Pentium Pro Provides the smoothest performance |
Palm POSE 3.08 |
Poor |
Emulated on a 200Mhz Pentium Pro Slow, black and white |
Motorola i85s/i50sx |
Good |
Works, at a decent speed it seems. Responsiveness still in question |
Siemens SL45i |
Medium |
Works, though somewhat sluggishly |
Nokia 6310i MIDP SDK Beta 0.9 |
Good |
Works, at a decent speed it seems. |
Contact
For any questions, problems or comments, you can reach me (Jean-Francois
Doue) at: jfdoue@yahoo.com
Resources
Here are the hyperlinks to various related works I mention in these
pages.
-
The Java 2 Micro Edition home page
contains information about j2me development and resources
-
The GNU home page
contains information about free software and the GPL
-
The JODE
( Java Optimize and Decompile Environment) home page contains information
about the obfuscator used to compress Asteroid Zone
-
The text effects on this page have
been generated using the tools available at the Flaming
Text web site.
-
The Java (tm) Programming Language, Third Edition by Ken
Arnold, James Gosling, David Holmes is the classic textbook reference on the Java language.
ISBN 0-201-63455-4, Addison Wesley
-
The java source code of Asteroid Zone, which can be browsed in the developer area, has been formatted in HTML using Lore's Source Converter.
This tool is free software also.
-
The home page of Zucotto Wireless, maker of the WHITEboard SDK.
-
The home page of Palm computing, which provide PC-based emulators.
Here are hyperlinks to J2ME specialized web-sites which provide resources,
technical discussion, articles and other MIDlets.
-
www.javamobiles.com provides a very complete list
of all the devices which currently support J2ME, plus free MIDlets downloads.
-
www.microjava.com provides news, technical articles,
discussion groups and a very complete resource index for MIDlet developers.
-
midlet.org provides a lot of free MIDlets downloads, which can be tested
online using a J2ME emulation applet.
-
www.midletcentral.com is an on-line MIDlet repository.
Credits
Many thanks to the following people who have provided technical expertise, suggestions, or spent time testing:
CheeMeng Lee, Maxence Bernard, Sami Lababidi, Jaweed Agha, Pavel Machek
Change history
- October 13, 2002
-
Added the new 1.4 release.
- October 26, 2001
-
Added the new 1.3 release. Upgraded the status of the Motorola i85s/i50sx to good.
- October 24, 2001
-
Added the new 1.2 release. Updated the Optimization section. Added a credits section
- October 04, 2001
- Added a change history section.
Added info about Motorola i85s/i50sx, Siemens SL45i and Java 2 Wireless toolkit 1.03 support.
Added a hyperlinks to several J2ME specialized web-sites.
Added the new 1.1 release. Added a release notes section.
Updated the Optimization section.
- September 12, 2001
- Initial Web site release.
|