Catacombs
A downloadable game
A while back I shared my first-ever game in Rust—a Dangerous Dave clone built using Macroquad and Tiled as a way to learn the language and survive the compiler's ownership rules.
https://www.reddit.com/r/rust_gamedev/comments/1jpt3e2/dangerous_dave_rust/
I wanted to tackle something a bit more ambitious for my second project: a 2D dungeon roguelike I've been calling Catacombs. Since I wanted to understand how everything works under the hood rather than relying on an library or game engine, I've put together a custom stack using raw OpenGL and a handful of modular crates.
The Tech Stack
- Graphics & Windowing:
glowcoupled withglutinandwinitfor context creation and window management, usingnalgebra-glmfor matrix math and projections. - ECS & Scheduling:
hecspaired withhecs-schedulefor managing components and system execution order. - UI & Layout:
egui(integrated viaegui_glow) for tooling and debug overlays, alongsidetaffyfor flexbox-based UI layout calculations. - Levels & Audio:
ldtk_rustfor loading LDtk level designs andlibfmodfor handling audio middleware. - Data & Concurrency:
serdeandronfor data-driven asset and configuration serialization, withrayon,crossbeam, andparking_lothandling concurrency and synchronization.
Graphics
Bought the Dungeons & Pixels pack from
https://indie-vova.itch.io/dungeons-and-pixels-starter-pack
AI
About %85 of the code was written from scratch, learned a lot, then I've had access to an AI tool that did code reviews for me, fixed the code manually, few of the suggestions didn't make much sense to me so I have ignored them.
I have generated the start up page using Google's Gemini free credit.
What's Next?
Since I never really built out a story or a concrete endgame vision for Catacombs, I've decided to officially wrap up the project here and archive the repo. I have also learning a lot and improved my Rust programming skills, I can see that transition from the Dangerous Dave game code to Catacombs code.
For my next steps on this Rust learning journey, I'll be moving past OpenGL to build a low-level renderer using Ash for Vulkan, with plans to experiment further with advanced procedural generation algorithms and explicit graphics pipeline design from scratch.
Leave a comment
Log in with itch.io to leave a comment.