Clever Quest Lab ← Games

Tank Arena

Fight robot tanks in a first-person wireframe arena; each robot’s barrel glows before it fires, and its shells are slow enough to dodge.

Tank Arena

Destroy the robot tanks, wave after wave. Their shells are slow and glowing: drive out of the way or hide behind a cube or pyramid.

With a mouse: click Start, move the mouse to turn, click to fire and drive with W and S; without a mouse use the arrow keys and Space; on a touch screen use the left stick and the FIRE button.

Click Start, then move the mouse to turn your tank, click to fire and drive forward and back with W and S (A and D also turn).

Drive and turn with the stick on the left, drag on the right to aim and hold FIRE to shoot.

No mouse? ← → turn, ↑ ↓ drive, Space fires, P pauses.

Difficulty

No best score yet

mouse: turn   click: fire   WS/↑↓ drive   AD/←→ turn   Space fire   P/Esc pause   F full screen   M sound

Runs on your device. Nothing you type or record is uploaded. Keeps working without a connection while the page is open. Works with touch. Saves your settings and your best score and wave for each difficulty on this device.

Added

How to play

You sit in a tank on a flat arena ringed by a fence, with mountains on the horizon. Robot tanks arrive in waves. A robot that sees you turns towards you, glows at the tip of its barrel for a moment and fires a slow, bright shell. Shells fly in a straight line and burst on the first cube or pyramid in their way, so drive out of the line of fire or put an obstacle between you and the robot.

You have three lives. A hit cracks the view and costs a life; for the next 2.5 seconds nothing can hit you and every enemy shell in the air fizzles out. Every third wave you clear gives an extra life, up to five. Wave 1 has two to four tanks, depending on the difficulty, and every wave one more, up to sixteen. From wave 3 on, any new robot may be a fast scout, and from wave 5 on, a heavy tank that needs two hits; both get more common in later waves. The difficulty sets how fast the robots drive, turn, react and fire and how well they aim. Your best score for each difficulty is saved in this browser.

Controls

How it works

Projection and hidden lines

Every point is moved into the frame of your gunsight (x right, y up, z ahead) and projected, so that an object twice as far away looks half as big:

xscreen = W/2 + f · x / z,   yscreen = yhorizon − f · y / z,   f = (W/2) / tan(FOV/2)

W is the view width and FOV its horizontal field of view (50° to 90°, depending on the window shape). Edges that reach behind you are cut at a plane a quarter of a metre in front of the eye. Faces turned away from you are skipped (back-face culling), and objects are painted from the farthest to the nearest with a dark fill (the painter’s algorithm), so a near cube hides a tank behind it. Mountains, moon and stars are infinitely far away: they turn with you but never come closer.

How the robots think

Each robot runs a small state machine ten times a second. It patrols towards points near you until it notices you: within range, with no obstacle on the straight line between you, and after a short reaction time. Then it turns towards you, keeps its distance and fires when its barrel points at you and nothing is in the way. After firing, or when one of your shells flies close by, it sometimes hides behind the nearest obstacle, on the side away from you, for two to four seconds. To get round an obstacle it steers for the tangent of a circle drawn around it.

Robots aim with a limited lead. They find the flight time t of their shell to the interception point from

|P + Vt − E| = st

where P and V are your position and velocity, E is the robot and s the shell speed, and then aim at P + k·V·t. The factor k is 0 on Easy, 0.35 on Normal and 0.6 on Hard, plus a small random error. So on Normal and Hard a steady speed is not a sure escape; braking or turning after the shot is.

Things to try

Frequently asked questions

Why does the game pause when I press Esc?

Esc releases the captured pointer, so the game pauses until Resume captures it again.

The view stops turning when I move the mouse far to one side. Why?

On some computers the hidden pointer still stops at the screen edge. The game notices when no more movement arrives and keeps turning that way until you move the mouse back; without a captured pointer, the edges of the view turn the tank.

Can the robots shoot each other?

No. A robot does not fire while another tank is in the way, and a shell that hits another robot just bursts.

Is every hit fair?

Enemy shells are slow and bright, those within 90 m also show on the radar, a robot glows for at least half a second before it fires, and no shell passes through an obstacle.