A fast, procedural 2D dungeon crawler game in Go + Raylib
In my first year of university, we were tasked to create a game using unity. Me being me, I couldn't bring myself to commit blasphemy (using unity). So I set out on rawdoging it with Go and Raylib. Funnily enough, it got the best mark in the class.
This is a 2D dungeon crawler prototype built in Go on top of the Raylib C library. It's a fully custom engine, my personal milestone to explore procedural generation, performance-first rendering, and low-level engine architecture without heavyweight engines.
⚠️ Not a polished or commercial game. This is a technical playground to learn, optimize, and push boundaries in engine programming and procedural design.
You're dropped into a procedurally generated dungeon with one objective: collect all scattered keys to escape. If you take too long or fail, the map regenerates into a brand-new layout.
Each regeneration brings:
Enemies include Spiders, Skeletons, Goblins, and more, each with its own AI state machine and behavior. Along the way you’ll pick up buffs, dodge traps, cure poisons, and scavenge for heals while the world keeps changing under your feet.
It’s not a puzzle. It’s not a shooter. It’s a dungeon that resets itself against you if you slack.
You’ll need Raylib C libraries installed and accessible in your build environment.
Toadzill Art for the assets!
Madness TN for the theme music!