← All work

Lantern Hollow

Five ghosts are hiding. Find them with the light.

Type
Interactive game
Year
2026
Role
Concept, scene, shaders and sound; hand-finished in the Rive Editor
Stack
Rive, RML, WGSL shaders, Luau, Data binding
Lantern Hollow screenshot

A dark room, a flashlight that follows your cursor, and ghosts that only exist inside the beam. Made for the Rive Halloween Challenge.

The cursor is your lantern. Ghosts hide across a bedroom, a graveyard and an attic, and only show themselves while the light is on them. Find them all, and the last one finds you.

The scene is authored with the Rive CLI in RML, with two GPU shaders: a fog and flashlight cone with shadows cast by the furniture, and a CRT glitch that takes over for the finale. Luau scripts wire the pointer to the shaders and handle the hit test between the beam and each ghost.

I finished it by hand in the Rive Editor, and recorded the whole process on video.

Details worth a look

  • Fog and flashlight shader with dynamic shadows from furniture and ghosts
  • Twelve ghost gags, one per ghost per room, picked by the state machine
  • Eyes that follow the light, dust motes in the beam, a portrait that watches you
  • Lantern battery that drains, a hidden spare, and a losing screen
  • CRT glitch and screen shake finale, with a synthesized soundscape
  • Hand-set in Pirata One, with a night-ink and lantern-amber palette
A ghost caught in the window of the bedroom.
A ghost caught in the window of the bedroom.
The graveyard: the beam is the only thing you can see by.
The graveyard: the beam is the only thing you can see by.
The finale: you found them all, they found you.
The finale: you found them all, they found you.

Next project

Sift