Mothbun Goes to BLINK

Mothbun Goes to BLINK

A rabbit, a holiday, and a light festival

A friend has a weathered concrete rabbit in their yard. For one holiday it got dressed up as Mothman, and the look was too good to leave alone. Mothbun is a small side-scrolling game built around it: long upright ears, mossy stone, dark indigo bat wings, glowing red eyes.

Level 1 takes place during BLINK, the light festival where artists project animation onto historic buildings across Cincinnati and Covington. Mothbun runs past Music Hall in Over-the-Rhine, along the river with the Roebling Bridge lit up behind, and on to Mother of God Church in Covington while the facades light up around it.

Tap or press space to jump, hold to glide, and press the eye button or X to glare. Best on a phone held sideways.

How it plays

It's an auto-runner, built for one thumb. The street scrolls on its own. Tap to jump, and hold to spread the wings and glide. Geese and cryptid hunters with flashlights block the sidewalk, and moth swarms drift at head height, so you either stay low or glide over them.

Mothbun's eyes are a weapon too. The eye button fires a red-eye glare that knocks hunters flat and scatters moth swarms. Geese don't care, so those you still have to jump. Glowing orbs of projected light are there to collect, and three hits ends the run.

The run is about a minute long, from Music Hall to Mother of God. At the church, Mothbun slows to a stop and the facade lights up in a full projection show with fireworks before the score tally. Sound effects are synthesized in code with Web Audio, so there isn't a single sound file in the project.

The closing projection show at Mother of God Church

The enemies are still placeholder shapes. Real sprites are next.

Projections drawn in code

The buildings were generated deliberately dark and flat, so the light shows aren't baked into the art. Every frame, the game draws an abstract pattern (rising color bands, pulsing rings, sweeping stripes, flipping tiles), masks it to the building's silhouette, and screen-blends it over the facade so it reads as light rather than paint. The patterns are original and don't copy any real BLINK artist's work.

The windows switch on and off too. Lit glass and the cream stone trim share the exact same palette colors, so color alone can't tell them apart. A cleanup script separates them by shape: solid blocks at least three pixels tall are glass, and thin lines are trim. Each building ends up as a lights-off facade, a lit-windows layer, and a list of window rectangles the game dims one at a time. When a projection starts, most of the windows go dark so the show can read. The Roebling Bridge gets shows too, masked to just its two stone towers so the blue cables stay dark.

Music Hall with its windows lit, and with them switched off

The art pipeline

All the art started in ChatGPT on a solid green background. Generated "pixel art" is rarely on a true pixel grid, so a set of Python scripts does the cleanup:

  • Key out the green and remove the green fringe along the edges
  • Detect the underlying pixel grid and downscale onto it
  • Scale each building against the rabbit's 86 pixel standing height
  • Reduce the palette to about 40 colors and night-grade everything except the lit windows

The character sheet goes through the same steps, plus aligning every frame on the red eye and the feet so the animation doesn't wobble.

How it's built

The game is TypeScript drawing to a plain HTML canvas, with no game engine. An auto-runner needs gravity, a jump, and some rectangle collision checks, and writing those directly keeps the whole game small. It runs at a fixed internal height of 560 art pixels, with the width following the screen's aspect ratio, and scales up with crisp nearest-neighbor pixels. Every gameplay number (jump height, glide strength, how fast it speeds up) lives in one tuning file. Vite handles the build, and Vercel redeploys on every push.

Gameplay along the river, with the Roebling Bridge behind

What's next

  • Real sprites for the geese, hunters, and moths
  • More Cincinnati and Covington landmarks for the middle of the run
  • A sidewalk and street with some texture