Last tank standing: Tank Battle's first five days

TL;DR: Tank Battle is a top-down tank game that runs in your browser, on a computer or a phone. It is five days old. Click Play now and you are in a match.
Play Tank Battle on itch.io (click Run game, then click the game once so it gets your keyboard)
What's new
Welcome to the first devlog. Tank Battle started on 1 October 2026 as a very small game: a green T-34 against 3 AI tanks, and every tank died in one hit. Here is what it is now:
A main menu with Play now. One click starts Deathmatch on the highest level you have unlocked. Below it sit the two modes, with Easy, Medium and Hard, and a Slow speed.

Deathmatch, a five-level campaign. You against 1, 3, 5, 6 and finally 7 AI tanks, who shoot each other as hard as they shoot you. Tanks have 2 HP (3 on the river levels), a forcefield shield for your front, and from level 3 on, 2 mines each.

Siege, a lane battle. You and an AI tank each defend an Embassy on one road. Soldier waves march every 25 seconds, a checkpoint cannon shields each Embassy until it falls, and your tank's gun aims itself while you drive. Kills earn credits to spend at your Embassy.

Phones and controllers. On a phone an on-screen joystick and buttons appear, see-through until you touch them. On a desktop, any standard gamepad works.

What I learned: the phone that rebooted
On 4 October, someone testing on Android Chrome reported that the Siege respawn screen stayed grey, then the browser hung and the phone rebooted. That grey was a CSS filter over a canvas redrawn 60 times a second, so I moved it into the game's own drawing code. A black screen after launch then pointed at the soft blur behind the menu, which costs the same on every frame, so it went too. An opaque canvas stopped the reboot on the test phone but made the menu flicker, so I reverted it within half an hour. The lesson: a cheap-looking effect over a live canvas is not cheap on a phone. If anything still looks off on yours, tell me in the comments.
How it was made
Every picture is drawn by code and every sound is synthesized in the browser, so there are no image or audio files: the whole game is one HTML file of about 500 KB. The rules live in a core with no screen, so matches can also run on a small server without drawing anything, with the battlefield read as text.
In its first five days the repo got more than 180 commits and 71 merged pull requests (15 of them are deploys to this page).
Try it
Play here: https://nzkozar.itch.io/tank-battle. Tell me in the comments which level or mode you got stuck on, and what felt unfair.
Next: the Siege mode in detail (why your tank's gun aims for you, and how it leads a moving target), and then how a simulator plays hundreds of seeded matches to balance the AI.