Back to timeline
hobby Spring 2022 Source lost

Blink shooter (two-color dimensions)

A Python shooter, made during a game jam at Torshus folkehøyskole. It used the webcam to detect blinks, and every blink flipped the player between two color dimensions. Only your current color could damage enemies of the same color, so you had to control your blinks to stay in the right one.

Two minutes of gameplay.

Top-down screenshot of the game on a white background. The player ship sits in the lower-right; the field is scattered with blue and orange polygonal enemies. A left-hand panel lists nine upgrade slots: Movement speed, Max Health, Health Regen, Reload Rate, Bullet Damage, Bullet Speed, Refresh rate, Projectile damage, Projectile speed. A right-hand panel shows the player's blue special-attack icons.
Mid-game, blue dimension. The orange enemies are untouchable until the next blink.

The mechanic

  • Webcam blink detection. Simple eye-aspect-ratio heuristic on the webcam stream, calibrated per player.
  • Two dimensions: red and blue. Each blink flipped you. Your color could only damage matching enemies; the other half of the field was untouchable until you blinked again.
  • Upgrades. Standard meta-progression (fire rate, health, move speed), but the mechanic that made it weird was that not blinking became a skill.
  • A loading screen with spinning arrows that was completely unnecessary and entirely worth it.

What I learned

That a game's "core mechanic" is whatever the player still talks about the next day. Nobody remembered the upgrade tree; everybody remembered trying not to blink. Constraint-driven design beats feature-driven design.

The Python server code is lost; folkehøyskole files did not survive the move. The video above is most of what is left.

Back to timeline