DOOR DEFENSE

Don’t invite them in.

It’s Halloween night. The porch light is on, the candy bowl is full, and someone is knocking.

Some of them are trick-or-treaters. Some of them aren’t.

Monsters can’t enter your home unless they’re invited, and handing over candy counts as an invitation. You get one look through the peephole to decide who gets a treat and who gets the door slammed in their face.

HOW TO PLAY

Each visitor knocks. Lean in to the peephole, study them, and choose:

  • Give candy: safe for real kids, a disaster if it’s a monster
  • Slam the door: perfect for monsters, but costly if it’s a real kid

Let in 3 monsters and your night is over. Turn away 3 real kids and your house gets egged into oblivion. Make it to dawn!

SPOT THE SIGNS

Monsters give themselves away, if you know where to look:

  • No shadow: flip the porch light ON to check
  • Glowing eyes: flip the porch light OFF to check
  • No cold-night breath: real kids’ breath fogs in the air
  • Wrong number of fingers: or claws
  • Floating: hovering just above the floor
  • A bad knock: too slow, too fast, or just wrong
  • A strange bucket: full of things that aren’t candy

Each round tells you which signs to watch for, and you can check the Field Guide anytime.

THREE LONG HOURS

Survive 8 PM, 10 PM and Midnight. The signs get trickier, the fog gets thicker, and the knocking never stops.

CONTROLS

  • Look around: Mouse
  • Lean in to the peephole: Hold Space or Right Mouse
  • Toggle porch light: F
  • Give candy: 1
  • Slam door: 2
  • Field Guide: Tab
  • Pause: Esc

Best played with headphones, a mouse and keyboard, and the lights off.

THEME: UNINVITED

Everyone at your door is uninvited. The question is which ones are dangerously uninvited. The game flips the usual horror setup: you aren’t sneaking into a haunted house, you’re trying to keep one out. Giving candy is the invitation, so every decision is about who you let in.

CREDITS

Made for the GameDev.tv Halloween Jam 2026.
Inspired by Papers, Please.
All visuals are procedural 3D built with three.js. All audio is synthesized in the browser with the Web Audio API. No external art or sound assets were used.

Development log

Leave a comment

Log in with itch.io to leave a comment.