Inspiration

Snake never gave you a reason to come back. We wanted the same twitch loop but with the board itself as the hook: snake on a cube where gravity follows you, on surfaces that morph mid-run, on the same daily puzzle everyone on Reddit is trying to beat.

What it does

Snake on non-Euclidean geometry, played inside a Reddit post.

Escher mode: crawl all six faces of a cube, gravity reorients at every edge, wormholes tunnel through to the far side. Metamorph mode: the surface morphs under you through torus, sphere, Klein bottle, egg, trefoil knot, and Möbius band (which has edges you can fall off).

Every day a Daily Dimension posts one seeded board, identical for all players, with its own leaderboard. Plus five themes that reskin the whole game live including the music, per-post and all-time boards, streaks, and a bonus food worth five points.

How we built it

Devvit Web: React 19 + three.js in the webview, Hono serverless backend, Redis for boards and seeds. Cube movement uses edge-transition tables; Metamorph moves in UV space and maps onto any surface. Boards are generated from a date-seeded PRNG, so the daily is identical for everyone, music included. Zero external assets: fonts bundled, all audio synthesized at runtime with Web Audio.

Challenges we ran into

The Escher camera roll read an Euler angle that hits the ±π seam on some faces, snapping a full rotation for one frame. Reading input against pending direction instead of last-moved direction let a fast swipe reverse the snake into its own neck. Wormholes needed to tunnel straight through, land you safely, and show which way they flow.

Accomplishments that we're proud of

Non-Euclidean gameplay that's actually playable on a phone. A generative soundtrack synthesized in the browser that changes per theme, no audio files. Five distinct art directions, and a daily loop that answers the retention brief instead of bolting a scoreboard on the side.

What we learned

A lot! Love reddit's dev tools, never used them before this project.

What's next for HyperSnake

  • More topologies and more themes.

Built With

Share this project:

Updates