BattleTank Version 3.0

To Start
Click on the game screen to start. Play until your tank is destroyed. If you scored, you will be prompted to enter your high score. Type in your name and hit ENTER. If keyboard controls do not work, the applet has lost focus. You need to click on the applet again to reset keyboard focus.

Shading Option

You can turn off shading (and see wireframe) by clicking towards the bottom of the screen. This may speed up rendering on some systems, since sorting vertices is turned off.

Mouse Controls
Mouse left turn left
Mouse right turn right
Mouse up move forward
Mouse down move backwards
Mouse click fire weapon

Key Controls
LEFT, RIGHT, UP, DOWN turn and move the tank.
SPACE Fire a missle
SHIFT-RIGHT, SHIFT-LEFT Flank left or right (move sideways).
Click on applet to begin a new game.

Netscape users: Most versions of Netscape have some sort of problem which impede performance.
3.0b5 and others: keyUp messages not sent, so keyboard controls work poorly.
3.0b7 and others: audio segments continue to download during gameplay, making response sluggish at best. Wait a little while, and the game will begin to play smoothly.
In all versions in 8bit mode, distant surfaces may appear black.

BattleTank uses my own libraries for 3D objects, and is not using VRML. By far the trickiest thing to do is determine when collisions occur, which I think is finally working well. This used to be a vector 3D graphics game, but I recently changed it to use polygons. This required sorting of vertices for each frame, and setting a different color for each polygon based on distance from the player. Surprisingly, this seems to have little effect on performance.

There is currently a 30 millisecond delay between drawing frames. This is to allow certain Java implementations enough cycles to process mouse and keyboard input in a timely fashion. The render engine is actually capable of running approximately 2X as fast.

To Do

I keep planning on getting a multiplayer version of this going. I'm looking for somebody that may be willing to host this game on their server for multiplayer purposes, since my web host will not allow it. This would require running a Java or C++ application on the server at all times, and would require use of at least 1 socket. I would also require interactive login during the testing and development phase, in order to restart the server application.

I am also planning to add more enemies, which move faster and have different weapons.

Blowing up buildings is also a possibility.

Be sure to send comments if you have suggestions.

�� �������� Java-��� �� �������� ��������� �����