Arcade › Last Light
Click the game above and it runs right here in your browser. No download, no installer, no account needed. Khushi Sharma built it with Cinevva, so it works on a phone or a tablet too.
Nobody has said anything about Last Light yet. Play it, then tell Khushi Sharma what you would add next.
Last Light was built by Khushi Sharma 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.
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 portrait-friendly 2D top-down survival shooter titled “Last Light,” set in a dark, sparsely lit Zone 07. Use a full-screen HTML canvas with a fixed 2200x1500 world and a camera that follows the player while clamping to world edges. Render a dark blue-gray floor (#151d28) with a subtle 60px grid, and eight simple rectangular obstacles in muted blue-gray with lighter outlines: horizontal blocks near (260,260), (1060,240), (860,1080), and (1450,880), plus vertical blocks near (680,180), (1600,180), (380,930), and (1850,1000). Obstacles and the world boundaries must block movement and bullets. The player is a small pale blue-white circular survivor at the world center, radius about 17, with a short dark-blue rectangular gun barrel pointing toward the aim direction. Move with WASD or arrow keys at about 235 world units/second, using collision-aware movement. Aim with the mouse/pointer position relative to the camera. Hold the mouse button to fire repeatedly, with a shot interval of about 0.18 seconds. Each shot consumes one round, creates a small fast pale-yellow bullet traveling in the aim direction, and emits a few brief yellow muzzle sparks. The magazine holds 12 rounds and the starting reserve is 48. Press R or the on-screen RELOAD button to instantly refill the magazine from reserve; show an “OUT OF AMMO — R TO RELOAD” message when attempting to fire empty, and “RELOADED” after reloading. The central mechanic is surviving successive zombie waves in darkness. Start at wave 1 with 5+3*wave zombies to spawn (8 in wave 1), spawning one at a time from a random world edge, generally at least 450 units from the player. Zombies are muted olive-green circles, radius about 18, with two tiny dark eyes and a subtle darker outline. They chase the player around obstacles at roughly 42 + 3*wave plus a little random variation units/second. Each zombie has 2 health, so it takes two bullets to kill; killed zombies award 100 score. On contact, a zombie bites for 10 health every 0.8 seconds, with the player briefly invulnerable for 0.45 seconds and a “BITE!” notification. Start with 100 health. When all spawned zombies are dead, wait about two seconds, increase the wave, add 10 reserve rounds up to a maximum reserve of 72, and begin the next wave. Display a brief centered “WAVE N” notification at each wave start. If health reaches zero, stop gameplay, show a dark translucent overlay with centered “THE DARKNESS WON” and “Tap or press Enter to restart”; tapping/clicking or pressing Enter resets health, ammo, reserve, score, wave, player position, and enemies to the initial state. Make the flashlight the defining visual feature. It is enabled initially and toggled with F or the mobile LIGHT button. While enabled during play, cover the screen with a very dark translucent overlay, then cut out a soft circular glow around the player (roughly 360px radius) and a forward-facing cone about 0.88 radians wide extending up to roughly 500px in the aim direction. The center should be warm pale yellow-white, fading to dim transparency toward the edges. The player, enemies, bullets, obstacles, and grid outside the illuminated region should be barely visible or hidden; flashlight off reveals the complete dim blue-gray arena. Do not show the darkness overlay after game over. Briefly tint the player brighter while invulnerable. Use a minimal HUD layered above the canvas. At the upper left show bold spaced branding “LAST LIGHT //” and “ZONE 07” (or the equivalent single-line “LAST LIGHT // ZONE 07” on narrow screens) in pale blue-gray. At the upper right show four dark translucent rounded statistic panels with thin blue-gray borders: HEALTH with the current health, AMMO with “current / reserve,” WAVE with the current wave, and SCORE with the score. Centered near the top, fade short gameplay messages such as WAVE, BITE!, RELOADED, and the out-of-ammo warning. On desktop, show a bottom instruction strip: “WASD / arrows move · mouse aims · click shoots · F flashlight · R reload · survive the waves.” Support touch/mobile play with a bottom overlay: three large circular directional buttons labeled left arrow, down arrow, and right arrow on the left side, and compact rounded buttons labeled LIGHT, RELOAD, and FIRE on the right. Hold FIRE for continuous shooting; hold directional buttons for movement. Match the visual style in the provided reference: nearly black navy background, restrained blue-gray UI borders, pale cool typography, rounded translucent HUD panels, and simple geometric/vector gameplay art. Keep the title and HUD legible over the darkness, and make the layout responsive for a narrow portrait screen.