Inspiration

The hackathon asked for one thing: a hook. Not just a fun game, but a reason to open Reddit tomorrow.

I wanted retention to be the core mechanic, not an afterthought. Most games bolt on daily rewards. I wanted the action itself to be the habit — where a missed day hurts more than any enemy could.

The visual direction came from a constraint: no images. Everything is drawn with Phaser Graphics. That limitation became the style — dark neon geometry, bioluminescent creatures made of pixel particles, an underwater world built entirely from light and shape.

What it does

Glyphborne is a hack-and-slash spellcrafting game where you play as an anglerfish in the Abyssal Depths, featuring massive asynchronous multiplayer.

Core loop:

  • Enemies spawn (Sharks, Human Hunters, Buff Fish)
  • Each drops an orb (Violet, Green, Yellow)
  • Combine 3 orbs to craft 1 of 4 spells
  • Cast spells toward your target with multi-touch mobile controls or mouse clicks

The Hook:

  • Massive Shared-State Boss Fight: The Abyssal Leviathan is a global community raid boss with 1,000,000 HP. Every player on the subreddit contributes damage to the exact same health pool synced live via the Devvit Realtime API.
  • Interactive Comment Drops: Viewers can influence active games by commenting on the Reddit post! Commenting !DropMana 10 causes a rain of spell orbs for all players. Commenting !HealPlayer 3 @username instantly and directly heals that specific player mid-fight.
  • Daily Glyph: One orb type is "blessed" each day (2x score).
  • Daily Streak: Consecutive days played = score multiplier (1x → 2x over 7 days).
  • Combo Streak: Kill 5 enemies in 3s → "HEAT" mode; kill 10 → "BLAZE" mode.
  • Persistent Progression: Earn XP from kills, level up, and choose permanent upgrades stored in Redis.

How to Play

Dive into the abyssal depths and master the geometric art of elemental spellcasting! Here is everything you need to know to survive and conquer the leaderboard:

  1. Move & Swim: Drag the dynamic Joystick on the left side of the screen to smoothly navigate the waters and dodge threats.
  2. Cast Magic: Tap the active icons on the bottom spell panel (or scroll the mouse wheel or simply press keyboard hotkeys 1-4) to unleash your active glyphs.
  3. Harvest Elements: Defeat deep-sea enemies to collect the glowing Spell Orbs they drop upon death:
    • 🟡 YELLOW
    • 🟢 GREEN
    • 🟣 PURPLE
  4. Combine Elements (Orb Recipes): Synthesize your collected elements to invoke devastating, high-tier spells:
    • 🔱 Spear: Requires 2 Purple + 1 Yellow
    • 💥 Burst: Requires 2 Yellow + 1 Purple
    • ⚡ Lightning: Requires 2 Green + 1 Purple
    • ☠️ Poison: Requires 1 of each color (Yellow, Green, and Purple)
  5. Daily Challenge: Cooperate with the community and kill 10 Bosses to secure your massive Titan Fall Daily XP bounty!
  6. Survive: Test your limits, manage your cooldowns, and outlast the horrors waiting in the Abyssal Depths!

How I built it

  • Platform: Devvit Web + Phaser 4.2.0
  • Backend: Hono + Redis + Devvit Realtime API
  • Frontend: Phaser Graphics (no image assets)

Key decisions:

  • All graphics are drawn procedurally — I didn't use a single 2D image asset.
  • Procedural Audio: All sound effects are mathematically synthesized in real-time using the Web Audio API, with zero external audio assets loaded.
  • Redis acts as the single source of truth for the global boss HP, streaks, XP, upgrades, and leaderboards.
  • The Devvit Realtime API is used to bridge the gap between Reddit comments and the active Phaser iframe seamlessly.

Challenges I ran into

  • Multiplayer scaling & clutter: I wanted a massive multiplayer boss fight, but drawing 50 other player sprites in a small iframe would make the screen unreadable and cause lag. I solved this by designing an "Asynchronous Co-op" model: players share the boss's HP and can send each other targeted care packages via comments, but fight in their own local visual instance.
  • Text rendering on mobile: Small text appeared blurry and poorly scaled. I fixed this with setFixedSize(), setResolution(2), and thick strokes.
  • Streak validation without WebSockets: The server validates every submission against the carry state and rejects it if the math doesn't match to prevent cheating.

Accomplishments that I'm proud of

  • Twitch-style Reddit Integration: Successfully tying Reddit comments directly into live Phaser gameplay using the Realtime API. Seeing someone comment !HealPlayer and immediately getting a heal and a popup thanking them mid-boss fight is incredibly satisfying.
  • Procedural visual style: The entire game is built with Phaser Graphics. No images, no sprites. Every enemy, spell, and particle is code-drawn geometry.
  • Retention built into the core loop: The Daily Glyph changes how you play. The streak multiplier rewards consistency. The combo streak rewards skill. It's not a bolt-on feature — it is the game.
  • Cross-platform UI: The combo bar adapts dynamically, and the multi-touch virtual joystick ensures mobile feels just as good as a desktop mouse-and-keyboard.
  • Shipped a complete game on Devvit: From prototype to a polished, playable submission running smoothly inside a Reddit post with a backend, database, live multiplayer, and responsive frontend.

What I learned

  • Retention is a design discipline, not a bolt-on. A streak is a promise you make to yourself yesterday.
  • Determinism is a superpower on Reddit — fair leaderboards and anti-cheat rely heavily on server-side validation.
  • The Devvit Realtime API is incredibly powerful for turning solo web games into massive community-driven experiences.

What's next for Glyphborne

  • Seasonal Boss Rotations: Introducing new massive bosses every month with unique mechanics and exclusive loot drops.
  • User-generated spells: Letting players create, name, and share custom orb recipes and spell combos with the community.
  • Subreddit vs Subreddit Leaderboards: Expanding the global state so different subreddits can compete to take down the Leviathan the fastest.
Share this project:

Updates

Submission history