Daily Pick

Gravedigger.io – The Nightshift

A single-file first-person zombie wave-defense game set in a procedural graveyard. Wield six weapons, survive escalating waves, and hold the line in your browser with no install.

ActionFree (MIT License)Featured as Daily Pick on July 27, 2026

Selected for clarity, strong early game coverage, and a clean path to the official game page.

Game screenshot

At a Glance

Quick Info

Developer
eons2eons
Platforms
Browser
Price
Free (MIT License)
Updated
July 27, 2026

Daily Pick

One deeply researched guide worth reading today.

A practical route through the systems that matter most, written to help new players make confident decisions quickly.

Gravedigger.io – The Nightshift — Deep Dive Strategy Guide

Overview

Gravedigger.io – The Nightshift is a single-file, zero-dependency first-person zombie wave-defense game that runs entirely in your browser. Built by eons2eons, the entire game — procedural graveyard, six-weapon combat system, escalating waves, synthesized audio, and HUD — lives inside a single 62KB index.html file. No install, no server, no asset downloads.

You're the gravedigger on the night shift. The dead aren't staying buried. Zombies rise from tombstones in a procedurally generated graveyard, and your job is to survive as many waves as possible. There is no final wave — the horde keeps coming until you fall.

DetailInfo
GenreAction / FPS / Wave Defense / Survival Horror
Developereons2eons
PlatformBrowser (itch.io, GitHub Pages, or local)
PriceFree (MIT License for code, All Rights Reserved for game design)
PlayersSingle-player
EngineThree.js r128 + Web Audio API
InputKeyboard (WASD + Arrow keys + Number keys)
Session Length5–30 minutes per run
DifficultyMedium-Hard — easy early waves, brutal scaling after wave 7+

Target audience: Fans of classic browser FPS games, zombie wave-defense enthusiasts, and anyone who appreciates technical marvels — the entire game is one HTML file with procedurally generated geometry and synthesized audio.

Unique angle: This game was produced from a single AI prompt. The entire codebase, weapon mechanics, enemy AI, procedural generation, and audio synthesis were created in one shot. It's both a fascinating case study in AI game development and a genuinely fun wave shooter.


Getting Started — First 10 Minutes

How to Launch

Open index.html in any modern desktop browser with WebGL + Web Audio support (Chrome, Firefox, Edge, Safari):

Your First Shift — Step by Step

1. Press "BEGIN THE SHIFT". You get a brief 0.6-second grace period before wave 1 starts. Use it to orient yourself.

2. Wave 1 starts — 5 slow zombies rise from the ground near tombstones. They move toward you at randomized speeds (1.35–2.5 units/second).

3. Use the shovel. It's a one-hit kill with a 0.46-second swing cooldown. But it only hits zombies within a 54-degree cone in front of you and within 2.55 units. Walk toward a zombie, line it up in the center of your view, and press Space.

4. Find weapon pickups — they glow and rotate on the ground. During wave 1, locate the pistol (usually near the starting area). Walk within 1.7 units to pick it up — it spawns fully loaded.

5. Survive wave 1. With only 5 zombies, this is essentially a tutorial. Once all 5 are down, you get a 4.2-second break before wave 2.

Beginner Mistakes

MistakeWhy It Hurts
Ignoring weapon pickups earlyThe shovel alone won't cut it past wave 3
Picking up the Gatling Gun first2.6-second reload is a death sentence for beginners
Standing stillZombies converge on your position — keep moving
Forgetting to reloadNothing worse than pulling the trigger on an empty mag mid-horde
Hoarding ammoAmmo crates respawn every 26 seconds — use your guns freely
Cornering yourselfTombstones and dead trees can trap you. Always leave an escape route

Core Mechanics

Health & Regeneration

Your health bar sits at the bottom-left of the HUD:

  • Max HP: 100 (5 hits from a zombie at 20 damage each)
  • Regeneration trigger: 4.2 seconds without taking damage
  • Regeneration rate: 4 HP per second
  • Damage flash: Red overlay appears for 0.35 seconds on hit
  • Camera shake: 0.06 magnitude shake for 0.28 seconds on hit
  • Regen indicators: HUD shows "wound fresh — regen delayed" while the 4.2s timer is counting, then "recovering…" when regen kicks in
  • Low health warning (<30 HP): Pulsing red vignette overlay + heartbeat audio (syncs to a 1.6Hz timer)

Strategic implications: When hit, disengage immediately. The 4.2-second regen delay means you need to avoid damage for that entire window. Kite zombies away, then let regen top you off at 4 HP/s. From 40 HP to full takes about 15 seconds.

The Wave System — Exponential Scaling

Each wave follows the formula: 5 × 2^(wave−1) zombies.

WaveZombiesConcurrent CapSpawn IntervalStrategy
157~0.95sShovel only. Learn movement.
2109~0.92sGrab the pistol. Learn weapon swap.
32011~0.89sYou need a gun now. Find shotgun or SMG.
44013~0.86sShotgun territory. Defend the mausoleum.
58015~0.83sAssault rifle becomes your workhorse.
616017~0.80sCrowd control is critical. Cycle weapons.
732019~0.77sSoft cap maxing at 20. Full survival mode.
8+640+20~0.74s+Maximum chaos. Every weapon matters.

The soft cap: The game limits how many zombies can be alive simultaneously (base 5 + 2 per wave, max 20 at wave 8+). Zombies queue up and spawn as you kill them. The TOTAL per wave still counts — you must kill every zombie to clear the wave.

Spawn rate mechanics: Zombies spawn near tombstones at least 14 units from the player. The interval between spawns starts at ~0.95s and decreases by 0.03 per wave, with a minimum of 0.22s. Each spawn also gets a random multiplier between 0.7 and 1.3. At wave 10, zombies spawn as fast as every 0.45 seconds during peak cadence.

Zombie state machine: Each zombie follows a four-state cycle:

  1. Rising — emerges from the ground over 1.65 seconds with a shaking animation. Not targetable during this phase.
  2. Chasing — paths toward the player with basic separation AI and tombstone avoidance.
  3. Attacking — lunges forward with sinusoidal arm motion when within 1.55 units. Deals 20 damage, then enters a 1.05-second cooldown.
  4. Dying — sinks into the ground over 0.9 seconds with rotation, then removed from the game.

Weapon System — Full Analysis

Six weapons, each with a specific role. When you pick up a weapon, it arrives fully loaded (mag at max, reserve at max).

WeaponDamageFire RateMagReserveReloadSpreadPelletsRangeDPSRole
ShovelInstant kill0.46s0.95 rad arc2.55Always-have melee. One-hit kill.
Pistol400.22s12961.05s0.012160182Early-game ranged. Accurate.
Shotgun19 × 80.86s6481.75s0.11824177Close-range devastation. Best for chokepoints.
SMG180.085s302401.05s0.038145212Crowd thinning. Fast fire rate.
Assault Rifle280.11s302401.35s0.022172255Best all-around. Long range, high damage, controllable.
Gatling Gun220.05s1004002.6s0.05155440Emergency DPS. 20 rounds/sec. Brutal reload.

Assault Rifle breakdown: 28 damage per shot × 0.11s fire rate = ~255 DPS. Range of 72 units with low spread (0.022) means it's effective at any distance. Most zombies die in 4 shots. This is your primary weapon from wave 5 onward.

Shotgun damage math: 19 damage × 8 pellets = 152 max damage per shot if all pellets hit. At close range (under 12 units), this kills most zombies in a single blast. The wide spread (0.11) means damage falls off quickly at range — get close.

Gatling Gun math: 22 damage × 20 rounds/second = 440 DPS. Highest raw damage in the game. Tradeoff: 2.6-second reload ties you to one spot. Use ONLY when cornered or during a wave break for cleanup.

Shovel melee arc: The shovel hits in a 0.95 radian (~54-degree) cone. You must face the zombie within this arc and be within 2.55 units for the hit to connect. It's precise but devastating — one hit, any zombie, dead.

Ammo Economy

  • Weapon pickups: Each gun spawns once per run. When you pick it up, it comes fully loaded (mag + reserve at max). If you miss a weapon pickup, it's gone forever.
  • 10 ammo crates spawn across the map initially.
  • Each crate refills ALL guns you're carrying to full (both mag and reserve).
  • Crates respawn 26 seconds after being picked up.
  • At 10 crates, you can theoretically refill every 2.6 seconds by cycling between them.

Ammo conservation rules:

  • Waves 1–2: Shovel only. Save ammo.
  • Waves 3–5: Pistol + Shotgun. Conserve assault rifle ammo.
  • Waves 6+: Assault rifle primary, SMG secondary. Shotgun for emergencies.
  • Wave 8+: Gatling gun comes out. Burn ammo freely — you either survive or die.

The Graveyard — Your Battlefield

Every run generates a fresh graveyard. Understanding the terrain is essential.

Procedural generation details:

  • Terrain: 2D noise function creates gentle hills (height variance up to 0.55 units)
  • Tombstones: 50+ tombstones placed randomly, each with a collision radius
  • Trees: Dead trees scattered as visual cover and collision obstacles
  • Lantern posts: Flickering light sources (intensity modulated by sine waves at 9Hz and 3.3Hz)
  • Mausoleum: A central structure with walls that block movement and line of sight
  • Fence perimeter: The world boundary at ~66.8 units from center. Zombies can't leave, and you can't either.
  • Mist: Drifting particle fog that rotates slowly (0.01 rad/s), adding atmosphere around the graveyard

Collision system:

  • The player pushes away from tombstones (tombstone radius + player radius of 0.42).
  • The mausoleum is a single solid obstacle — you cannot pass through it.
  • Zombies also avoid tombstones with a mild push force (1.4x multiplier).
  • Zombies avoid each other with separation behavior within 0.85 units — they never all pile into one spot.

Progression Strategy

Early Game (Waves 1–3) — Gear Up

Objective: Collect weapons while the pressure is low.

  1. Wave 1: Shovel only. Locate the pistol and at least one ammo crate.
  2. Wave 2: Grab the pistol. Practice weapon swap (T) and reload (R).
  3. Wave 3: Find the shotgun and/or SMG. Locate the assault rifle if you can.
  4. Do NOT pick up the gatling gun yet — it takes a valuable weapon slot and its reload is crippling this early.
  5. Use the 0.6-second grace period before wave 1 to orient yourself and spot nearby pickups.

Mid Game (Waves 4–6) — Hold Chokepoints

Objective: Establish defensive positions and manage multiple weapons.

  1. Locate the mausoleum. Its narrow entrance creates a natural chokepoint — zombies can only approach single-file.
  2. Stand at the mausoleum entrance with the shotgun. One blast clears the entrance.
  3. When the shotgun runs dry, switch to the assault rifle for cleanup.
  4. Circle the perimeter — don't stand still in the open. Use WASD to strafe around the graveyard's outer edge.
  5. Watch the soft cap: at wave 4, only ~13 zombies can be alive at once. Kill fast enough and new ones spawn immediately.
  6. Use the fence perimeter as a backstop — zombies can only approach from one direction.

Late Game (Wave 7+) — Pure Survival

Objective: Maximize DPS and never stop moving.

  1. Primary: Assault Rifle. Its combination of damage (28), fire rate (0.11s), range (72), and low spread make it the best weapon.
  2. Secondary: SMG for crowd thinning or Shotgun for close emergencies.
  3. Tertiary: Gatling Gun — only when you have a clean escape route after emptying the mag.
  4. Shovel stays in your inventory forever. Use it to finish stragglers and conserve ammo.
  5. Never let your back face an open area. Zombies rise from tombstones — keep your back to a wall, fence, or the mausoleum.
  6. At wave 8+, zombie spawns can come as fast as every 0.5 seconds. You need to kill faster than they spawn.

Step-by-Step Strategy — 7 Actionable Sequences

Sequence 1: Wave 1 — Scavenge Run

1. BEGIN THE SHIFT. Use the 0.6s grace period to look around.
2. Identify nearby weapon pickups (glowing, rotating objects on the ground).
3. Kill the first 2-3 zombies with the shovel (one-hit each, 0.46s swing).
4. While remaining zombies approach, jog to the nearest weapon pickup.
5. Grab the pistol. It arrives fully loaded (12/96 ammo).
6. Kill the remaining wave 1 zombies with shovel or pistol.
7. During the 4.2-second break, locate ammo crates and weapon pickups.
   Memorize their positions for future reference.

Sequence 2: Mausoleum Hold (Waves 4–6)

1. During the wave 3 → 4 break, move to the mausoleum.
2. Verify: shotgun is loaded and in your active slot.
3. As wave 4 starts, position yourself at the mausoleum entrance.
4. When zombies approach single-file, blast the first one with the shotgun.
5. Immediately switch to the assault rifle. Pick off approaching zombies from range.
6. When they get close (under 15 units), switch back to the shotgun.
7. Cycle weapons: Shotgun for chokepoint → Assault Rifle for ranged → SMG for mid-range.
8. If health drops below 60 HP, retreat through the mausoleum and kite zombies around it.
9. Let regen activate (4.2s without damage), then re-engage.

Sequence 3: Perimeter Patrol (Any Wave)

1. Instead of staying in one spot, move in a large circle around the graveyard's edge.
2. Keep the graveyard on one side — zombies can only approach from one direction.
3. As you circle, pass by previously memorized ammo crate locations.
4. Pick up ammo as you pass — this keeps all guns topped off without dedicated runs.
5. Kill approaching zombies with the assault rifle at range (60+ units).
6. If the perimeter becomes crowded, cut through the center to the opposite side.
7. Key advantage: zombies never surround you if you're circling the edge.

Sequence 4: Ammo Cycling (Resource Management)

1. Memorize the positions of all 10 ammo crates.
2. Assign each crate a mental zone (North, East, South, West).
3. When any weapon reaches 50% reserve ammo, path toward the nearest crate.
4. Pick up the crate — it refills ALL guns simultaneously to max.
5. Never let the assault rifle drop below 120 reserve (50% of 240).
6. If you're on the shotgun and below 24 reserve, switch to the SMG until you reach a crate.
7. Ammo crates respawn in 26 seconds — by the time you circle back, they're ready.

Sequence 5: Health Crisis Recovery

1. Screen flashes red → you've been hit. Immediately disengage.
2. If HP is 80+: keep fighting but be more cautious.
3. If HP is 40–60: fall back to the mausoleum or the far side of the graveyard.
4. Use the shovel to kill pursuing zombies (one-hit kill, no ammo cost).
5. Once no zombies are within attack range (wait 5+ seconds), health regen activates.
6. Check the HUD regen indicator: "wound fresh — regen delayed" → "recovering…"
7. At 4 HP/second, you go from 40 HP to full in 15 seconds.
8. After full recovery, re-engage with ranged weapons first.

Sequence 6: Gatling Gun Emergency Protocol

1. Activate ONLY when: (a) cornered with 20+ zombies approaching, OR
   (b) wave 8+ and you need to thin the horde fast.
2. Switch to gatling gun. Fire in controlled bursts (1–2 seconds each).
3. 100 rounds at 20 rounds/second = 5 seconds of continuous fire.
4. After 3 seconds of firing, start looking for your escape path.
5. When the mag is empty or you're at 10 rounds, immediately start moving.
6. Hit R to reload (2.6 seconds). During reload, you cannot fire.
7. If zombies are within 10 units during reload, switch to shovel, kill them,
   then complete the reload.
8. Only use the gatling gun once per wave unless you have a clear reload path.

Sequence 7: Wave Break Optimization

1. Last zombie dies → 4.2-second timer starts.
2. Immediately check health. If below 100, let regen do its work first.
3. If above 80 HP, sprint to the nearest ammo crate.
4. Pick up the crate → all guns get refilled to max.
5. Check weapon status. Swap to a better starting weapon for the next wave.
6. Reposition to a good starting spot for the next wave.
7. Consider starting the next wave with the shovel for the first few zombies —
   saves ammo on easy kills.

Advanced Tips

Weapon Tier List by Wave Phase

PhaseS-tierA-tierB-tierF-tier
Waves 1–3ShovelPistolShotgunGatling Gun
Waves 4–6ShotgunAssault RifleSMGGatling Gun
Waves 7–8Assault RifleSMGShotgunGatling Gun (situational)
Wave 9+Assault RifleGatling Gun (emergency)SMGShotgun

The 5-Hit Rule

You have exactly 5 hits before death at 20 damage per hit. Track each hit:

  • 5 hits remaining (100 HP): Full health, fight normally
  • 4 hits remaining (80 HP): First hit taken. Start playing cautiously.
  • 3 hits remaining (60 HP): One more hit and you're in the danger zone
  • 2 hits remaining (40 HP): Critical. Next mistake could be fatal.
  • 1 hit remaining (20 HP): The next hit kills you. Disengage immediately.

Practical application: Treat every hit as a wake-up call. Immediately reposition. Don't stand still to finish a kill if you were just hit — the next zombie could already be closing in.

Zombie Separation & Flocking

The zombie AI includes separation behavior: zombies push away from each other when within 0.85 units. This means:

  • Zombies never all pile into a single point — they spread out slightly.
  • You can't funnel them all into a single shotgun blast — some will flank.
  • Use this to your advantage: back up to spread the group wider, then pick them off individually.
  • Zombies also avoid tombstones — use gravestones as natural barriers to funnel zombie movement.

Mausoleum Tactics

The mausoleum is the single best defensive position:

  • Its narrow entrance forces zombies into single file pathing.
  • The shotgun's 24-unit range perfectly covers the approach angle.
  • If overwhelmed, retreat behind the mausoleum — zombies path around it, buying you time.
  • The mausoleum blocks line-of-sight from distant tombstones, giving you a safe reload point.
  • During wave breaks, the mausoleum roof blocks line-of-sight, providing a safe area.

Movement Speed & Kiting

Your speed (5.4 units/second) is 2–4× faster than any zombie (1.35–2.5 units/second). Use this:

  • Group zombies into a trailing pack, then turn and fire.
  • Circle around the pack to approach from a different angle.
  • Lead zombies toward ammo crates so you can pick up while kiting.
  • Never stop moving. Every half-second standing still lets zombies close the gap.
  • Camera bob frequency: 9Hz while moving, 2Hz while idle — the visual tells you your movement state.

HUD Signals & Audio Cues

  • Regen status: Check the text below your health bar. "wound fresh — regen delayed" means the 4.2s timer is still counting. "recovering…" means you're healing.
  • Low health heartbeat: Below 30 HP, you'll hear a rhythmic heartbeat synchronized to a 1.6Hz timer. The red vignette pulses in sync.
  • Weapon slot indicators: The bottom of the screen shows 1-6 weapon slots. Gray = not owned. Highlighted = currently selected.
  • Wave banner: Displays for 2.6 seconds at wave start with "WAVE X — Y HOSTILES RISING" and at wave clear with "WAVE X CLEARED — the ground falls quiet…"
  • Pickup notifications: Grabbing a weapon shows "WEAPON NAME ACQUIRED — fully loaded". Ammo crates show "AMMO RESUPPLIED — all weapons reloaded".

Weapon Sound Signatures (Audio Cues)

Each gun has a unique synthesized sound profile. Learn to recognize them by ear:

WeaponSound Profile
PistolBright, mid-range crack (1000Hz tone + bandpass noise at 1600Hz)
ShotgunDeep, heavy boom (500Hz tone + noise at 900Hz, longest duration)
SMGHigh-pitched, fast rattle (900Hz tone + noise at 1800Hz)
Assault RifleSharp, controlled bang (950Hz tone + noise at 1700Hz)
Gatling GunHigh-frequency buzz (850Hz tone + noise at 1900Hz, fastest cadence)

Game Over Stats

When you die, the game over screen shows:

  • Wave reached — your highest wave
  • Zombies slain — total kill count across all waves
  • Time survived — MM:SS format from the moment you hit "BEGIN THE SHIFT"

Use these stats to track improvement between runs.

Config Tuning (For Advanced Players)

The game has a CONFIG block at line 190 of index.html. Adjust these to change difficulty:

ConfigDefaultEffect
PLAYER_MAX_HP100Higher = more survivable
ZOMBIE_HIT_DMG20Lower = easier; higher = more punishing
MOVE_SPEED5.4Higher = faster strafing
MAX_CONCURRENT_BASE5Higher = more simultaneous zombies
MAX_CONCURRENT_CAP20Higher = more chaos
RISE_DURATION1.65Longer = more warning before zombies become active
REGEN_DELAY4.2Lower = faster recovery
REGEN_RATE4.0Higher = faster healing
AMMO_RESPAWN_TIME26Lower = more frequent ammo
WORLD_HALF68Larger = more room to maneuver
PICKUP_RADIUS1.7Higher = easier to grab items
ZOMBIE_ATTACK_COOLDOWN1.05Higher = slower attacks, easier

FAQ

Q: The game doesn't start or shows a black screen. A: You need a modern browser with WebGL support. Chrome, Firefox, Edge, and Safari all work. Check that hardware acceleration is enabled. The game loads Three.js r128 from CDN — a stable internet connection is needed for the first load.

Q: How many waves are there? A: Technically infinite. The formula is 5 × 2^(wave−1). Wave 1 has 5 zombies, wave 10 has 2,560. The soft cap limits concurrent zombies to 20 at wave 8+, but the total per wave keeps climbing.

Q: What's the best weapon? A: The Assault Rifle is the best all-around — 28 damage, 0.11s fire rate, 72-unit range, low spread, 30-round mag. For close-range crowd control, the Shotgun (152 max damage per shot) is devastating. The Shovel is always a one-hit kill with no ammo cost and never needs reloading.

Q: What if I miss picking up a weapon? A: Weapons spawn once per run. If you don't pick them up, they're gone forever. Each weapon spawns in a specific location — learn the patterns to find them quickly.

Q: Do ammo crates respawn? A: Yes. 10 crates spawn initially and each respawns 26 seconds after being picked up. They auto-refill all weapons to maximum (both magazine and reserve).

Q: Why is the gatling gun reload so slow? A: 2.6 seconds. This is the game's built-in balance mechanism — it has the highest DPS (440) but the longest reload. Never let the mag hit zero unless you have a clear escape path.

Q: How does the shovel's hit detection work? A: The shovel hits in a 54-degree cone in front of you within 2.55 units. You must be facing the zombie. It's not a 360-degree swing — aim carefully.

Q: Can I play on mobile? A: No. The game requires a physical keyboard (WASD + arrow keys + number keys). There are no touch controls.

Q: Is every graveyard the same? A: No. Terrain (2D noise), tombstone positions, dead trees, lantern posts, and the mausoleum are all procedurally generated each run. No two shifts look the same.

Q: How do I heal? A: Health regenerates automatically 4.2 seconds after your last hit, at 4 HP per second. There are no health pickups. The HUD shows your regen status — "wound fresh" while the timer counts, "recovering…" while healing.

Q: What does the low-health heartbeat mean? A: Below 30 HP, the game triggers a heartbeat audio cue and a pulsing red vignette. You're one or two hits from death. Disengage immediately.

Q: What information does the game over screen show? A: Wave reached, total zombies slain, and time survived in MM:SS format from the start of the run.

Q: The game feels too easy/hard. Can I adjust it? A: Yes. Open index.html in a text editor, find the CONFIG block at line 190, and adjust ZOMBIE_HIT_DMG, PLAYER_MAX_HP, MOVE_SPEED, or any other parameter listed above.


Weapon Matchup Guide

SituationBest WeaponWhy
Single zombie approachingShovelOne-hit kill, no ammo cost
2–4 zombies at mid-rangePistol40 damage, accurate, fast reload
5+ zombies at chokepointShotgun152 max damage clears the entrance
Large group at rangeAssault Rifle28 damage, low spread, 72-unit range
Thinning a crowdSMG0.085s fire rate, 30-round mag
Cornered, maximum DPS neededGatling Gun440 DPS for 5 seconds
Finishing the last zombieShovelAlways available, always lethal
During reload (any gun)ShovelInstant switch, instant kill

Performance Notes

The game caps concurrent zombies at 20, light count at modest levels, and decoration density so it stays playable on modest hardware. If you experience slowdown:

  • Lower MAX_CONCURRENT_CAP in the CONFIG block
  • Reduce decoration density
  • Close other browser tabs that use WebGL

On modern hardware (2020+, dedicated GPU), the game runs smoothly at 60fps through wave 10+.

Changelog

VersionDateNotes
1.0.0June 18, 2026Initial release. Single-file HTML, 6 weapons, procedural graveyard, escalating waves, synthesized audio.
1.0.1June 21, 2026README update, dual-licensing clarification.

Guide last updated July 2026. Game mechanics verified against the live browser version and source code.