Dungeon Lab is a project that I wanted to start because of the lack of transparency in available game engines. There are some open source engines out there that let you dive into the code, but few of them output well-structured, readable code. So, I decided to make a game engine for
roguelikes.
Dungeon Lab will allow users to look at all the code and see exactly what the code looks like once you export your game.
## A Game Engine Built For Learning
My vision for Dungeon Lab is a game engine that lets users start at the top with a prefab game engine while also allowing them to dive deeper as they learn more.
Start with configuring your game through gui elements. Once you've learned a few things, you can start scripting your game through a simple scripting language. Finally, once you're ready to start learning to write low level code, take a look at the C code yourself and make your game exactly what you want it to be.
Hopefully this can be a tool to get more people into making games and learning about how computers work. Programming is too much fun to hide the code behind a graphical game-making engine.
### Project Overview
- Language: C
- Editor: Vim
- Libraries: SDL, stb
- Repository: GitHub
- Misc: GIMP, GDB
### Development Goals
Create a graphical game engine that...
- * is used for making roguelikes.
- * exposes all code, from the engine to the game.
- * encourages learning from high to low level.
- * allows gui interaction, scripting, and coding of roguelikes.
- * is stable and usable on multiple platforms (Windows, Linux, OSX, etc.).
- * teaches me a lot about programming while making it.
### Misc
I originally started working on a roguelike of my own for my handmade project, but it sort of evolved into me wanting to build tools to help others make roguelikes. Thus, Dungeon Lab (laboratory or labyrinth, you decide) was born!
While I'm working on the engine, I will be simultaneously creating two very simple roguelikes in order to motivate decisions made about the engine. Each step of the way, I will have a specific mechanic from each game in mind, which will determine what modules need to be added.
It's a big project (my biggest ever, in fact) so it will be a while before it's finished. The first step is to get the bare minimum in place so people can poke at the engine and give me feedback on how it works.
Stay tuned! I will add images and videos as I create them for previews and demos of how the project is coming along. Also keep an eye on my site,
GamesKraft, in case I get the urge to write about how things are going.