Why choose to make a Roguelike/lite?


Welcome to this, the first of many I hope, dev log for Coffee Break RL. Before I get to answering the question posed in the title, allow me to give you a bit of my background for context. I was originally a physicist but now work as a systems engineer working on wide variety of projects mainly focussing on AI and simulations.

Python is my primary programming language (don’t hate me for it), but I’ve dabbled in a lot of languages over the years. I’ve wanted to branch out however I’ve grown to love Python’s package manager. One of my friends suggested that I try Rust, as it has Cargo (which I am loving for those who care), has a very strict compiler that is full of useful learning pointers, and one of the best communities around. As a learning exercise, I decided to create a game. This may seem optimistic, but it would allow me to touch on all the aspects of programming I use daily (GUIs, databases, networking, etc.) and would be fun enough to keep me motivated.

So ever since I was in front of computer I’ve loved management games. I fondly remember hours in front of a screen playing Dungeon Keeper. Games like Dwarf Fortress and Rimworld rank among my favorite, but I didn’t want to create strategy/management game. This is because I knew I’d always be comparing myself to those games and would probably end up copying them. Instead I wanted a genre of game that I wasn’t as familiar with, but could still relate to.


In my day job as a systems engineer, I am constantly trying to avoid emergent behaviour. It makes systems non-deterministic and unreliable. Unfortunately for me, I love watching dynamic behaviours emerge! I find it completely fascinating to see patterns appear out of nowhere. The friend who suggested Rust to me is also into Dungeons & Dragons in a big way, and I often create small Python tools for him. If only there was a way I could use my love for emergent systems and existing knowledge of role-playing games to find a genre...


As you might have guessed from the title, I eventually came across Roguelikes. I’d heard about them before. They were this really niche area of super-difficult games that were procedurally generated. I knew they had role-playing elements, so I had that going for me. After reading into them a little further, I stumbled upon the Entity-Component-System (ECS) architecture.

This architecture allowed loose coupling of systems to encourage emergent behaviour. Jackpot! After completing the Python tutorial on RogueBasin (check that place out if you want a great introduction), I was confident that I could at least attempt building a RogueLike in Rust. Thinking more about the ECS architecture, it would be great for my style of development: I’d be able to add small systems/components and cross features off my checklist regularly (a great motivator for me).

I’m hoping that this ECS system will also allow me to create a game with an easy platform for modders (it’s just another system/component pair right?). I’ve found two truly awesome communities (r/Rust and r/RogueLikeDev) so watch this space!

As a little extra for those of you who have made it this far, the name: “Coffee Break Devs” refers to the fact that I do most of my coding during my coffee breaks. Not massively exciting I know, but there you go.

Get Coffee Break RL

Download NowName your own price

Leave a comment

Log in with itch.io to leave a comment.