Last Stand

Saved games stay in this browser only.

About the game

Last Stand is a zombie survival game in the style of the "survivors" genre. You steer one soldier through a ruined city at dusk, and everything else happens on its own: your weapons aim and fire automatically, so the whole game is about where you stand, where you run and what you choose to carry. Zombies pour in from every side, a few at first and then in crowds of hundreds, and the plan is to stay alive for ten minutes, after which a three-phase boss arrives to finish the job.

Kills drop gems, gems fill a bar, and every time the bar fills the game stops and offers three cards. A card can add one of ten weapons (rifle, shotgun, submachine gun, sniper rifle, flamethrower, grenade launcher, homing rockets, landmines, a tesla coil and spinning blades), raise a weapon one of its five levels, or give you one of six passive bonuses. You can hold up to six weapons, and when a weapon reaches the top level and you own the passive that matches it, it can evolve into a stronger form. The cards show in numbers what each choice changes, so picking is a decision and not a guess.

Guns use magazines and have to reload, and ammo crates keep the supply coming. Even an empty rifle still fires weak free shots, so you are never left without a way to fight back. There are eight kinds of zombie plus tougher elite versions, and the boss telegraphs its attacks before they land; its health grows with your build. Wrecked cars lie around the map and are solid: you and the zombies slide around them, chargers crash into them and the boss flattens them. Two endless maps, the ruined city and a desert highway, are generated from the seed of each run while the day slowly turns into night, and the title screen lets you choose between four difficulties, from Easy to Hell.

Last Stand was written by Shan Platon in C++ and has no image or sound files at all. The pictures, the music and the sound effects are all painted and synthesised by the program when it starts.

Playing it here

Click Play and give the game a moment to load, a few hundred kilobytes. Click once on the game so it gets the keyboard, then pick a difficulty and a map on the title screen. Your best results are kept in this browser. On a phone or tablet the game shows a stick in the lower left corner and a dash button in the lower right, so it works on touch screens, and a gamepad works too.

This version is the author's game as published, with only the "install as an app" button and the offline service worker taken out. The game makes no requests to other sites.

Controls

Input Action
W A S D or arrow keys move
Space or Shift dash (it has a cooldown)
Arrow keys, Enter, Esc menus and level-up cards
Touch stick in the lower left to move, DASH button in the lower right
Gamepad left stick moves, right shoulder dashes, D-pad or stick and A, B, Start for menus
Mouse click the menus and the dash icon under the weapons

A few things worth knowing

Keep moving. Standing still is how you get surrounded. Run in a wide circle so the horde trails behind you in a line, and your weapons will cut it down while you kite.

Build around a few weapons. With six slots it is tempting to take everything, but a weapon that reaches level five and meets its matching passive evolves, and that is worth more than a sixth gun at level one.

Use the cars. Wrecks block the zombies as well as you. Slipping behind one splits the crowd, and chargers that hit a car stop for a moment.

Dash early, not late. The dash is for leaving a closing circle, not for escaping at one hit point. Keep it ready for the moment before a pack arrives.

Start on Easy. Easy lets you see the whole run, boss included. Hard and Hell are for later.

Credits and licence

Last Stand was made by Shan Platon and is released under the MIT licence; the repository says that all art, music and sound are generated in code. The only outside file is the Pixelify Sans font (SIL Open Font License 1.1), and the game uses the raylib library (zlib licence, Ramon Santamaria and contributors). This site builds the game from the author's source code with Emscripten; the only changes are the removal of the install button and the offline worker. The licence texts, the exact source and the build script are linked from this page.