Skip to content

Arcade › Last Light

Last Light

  • 2d
  • top-down
  • survival
  • shooter
  • zombies
  • wave-based
  • dark
  • mobile-friendly
0
Remix it Discord

0 plays

How to play

Click the game above and it runs right here in your browser. No download, no installer, no account needed. João Wolfe built it with Cinevva, so it works on a phone or a tablet too.

Discussion

Nobody has said anything about Last Light yet. Play it, then tell João Wolfe what you would add next.

Make your own game

Last Light was built by João Wolfe with the Cinevva game creator: describe the game you want in chat, watch it get built, and play it in your browser minutes later.

Remix Last Light opens the real game in the creator and forks its actual files, chat and design doc, so you start from the code rather than from a description.

Read the build brief for Last Light

Cinevva's analyzer read this game's design doc and its source, then wrote the brief below. "Make your own" hands it to the game creator as your opening message, so you start from a real spec rather than a one-line idea.

Create a browser-playable top-down 2D survival shooter titled "Last Light". Use a full-screen canvas with a dark, moody teal/black visual style and a camera that smoothly follows the player around a bounded 2200x1400 world. The world has a dark green-gray floor with subtle 80-pixel grid lines, rectangular industrial barriers/walls outlined in muted blue-gray, and scattered rotating golden ammunition pickups. Place the player at the center initially: a small pale blue circular character with two dark facial/visor dots and a cyan rectangular gun barrel extending in the aim direction. Aim with the mouse cursor; the gun and player rotate toward the cursor. Move with WASD or arrow keys, with collision against the walls and world edges. On touch devices provide a virtual joystick at bottom-left plus circular fire and reload buttons at bottom-right.

The defining mechanic is a flashlight/darkness system: after drawing the world, cover the entire screen with a heavy translucent black overlay. Cut out a soft circular area of visibility centered on the player, roughly 230px radius, and add a warm pale flashlight cone extending in the aim direction, about 84 degrees wide and up to roughly 330px long. Enemies and pickups should be difficult or impossible to see outside this light, making movement and aiming important. Keep the player visible in the light. Show a brief pale yellow muzzle-flash wedge when firing.

Start with wave 1 containing 8 zombies (5 + 3*wave), then advance to the next wave whenever all zombies are defeated. Zombies can also spawn from the world edges over time, with the active population capped around 10 + 2*wave. They are simple green circular enemies with dark eyes and a light green mouth, slight bobbing animation, speed around 38-55 plus 3 per wave, and 2 health each. They continuously chase the player, navigate around walls using the same circle-vs-rectangle collision behavior, and damage the player continuously on contact (13 health per second). On taking damage, briefly tint a zombie a pale skin color. Killing one awards 100 score and has an 18% chance to drop a golden ammo pack. Ammo packs also exist as eight randomly placed pickups at startup; touching one adds 12 reserve ammo, capped at 60.

The firearm has a 12-round magazine and reserve ammunition, starting at 12 / 36. Clicking fires one projectile in the current aim direction, consuming one round; bullets are small glowing pale-yellow dots traveling quickly, disappear after about 1.2 seconds or on wall impact, and deal one damage to a zombie. Holding the mouse button or touch fire button repeatedly shoots as rapidly as the game loop permits. If the magazine is empty, trigger reload automatically; otherwise press R or the reload touch button. Reload takes one second and fills the magazine from reserve up to 12. Do not allow firing during reload or after death.

Build a fixed HUD over the canvas. At top-left, use a translucent rounded dark panel with blue-gray border and four stats: AMMO (magazine / reserve), WAVE, SCORE, and HEALTH. At top-right, show a matching instruction panel reading approximately "WASD / arrows to move · Mouse to aim · Click to fire · R to reload" and "The flashlight reveals danger — stay moving." On mobile, show the joystick and two circular controls along the bottom. Add a small bottom-center "RELOADING…" status while reloading. Health starts at 100 and decreases from zombie contact; when it reaches zero, stop gameplay and show a centered translucent panel with the title "LAST LIGHT", text "They got you.", the final "Score ... · Wave ...", and a RESTART button. Restart resets player position, health, ammo, score, wave, enemies, and bullets and begins wave 1 again. Use clean system sans-serif typography, cyan/pale-blue UI highlights, subtle shadows, rounded panels, and restrained neon-like glow; do not add mechanics not described here.

More free browser games

Browse the whole Arcade →