Tank Trouble
A re-creation of the browser game of the same name. Tanks in a maze and shells that bounce off the walls, two players on one keyboard or online.
A re-creation of Tank Trouble, the existing browser game of that name: the idea and the name are its own, the code is written from scratch. Two tanks in a maze drawn at random each round, shells that bounce off walls up to 5 times and destroy the weak ones; the last tank standing wins the round. The bounce is the whole game: a missed shot comes back, sometimes towards whoever fired it.
The client is written with no engine and no framework, in Canvas 2D and JavaScript modules: maze generation, collisions, particles, seven power-ups (gatling, laser, fragmentation shell, homing, shield, speed, double shot) and sound effects synthesised on the fly. Two people play on one keyboard, or online: a small Node.js and Socket.IO server holds the rooms, which you join with a code.
The first networked version had a race condition between client and server. It was not patched but removed, by simplifying the server so that every state goes through the acknowledgements.
What is missing is known: computer-controlled opponents, planned but not written. A neighbouring
repository, tanks, holds the idea of an online remake of Zebest3000’s Tanks; so far it contains
only the intention.
Private project, no public link
