Enough generic wisdom. Now what? Where do I start?
Answering this wrong led straight to the failure of my first 4 or 5 attempts at making a game.
It’s tempting to just dive straight in and start creating stuff with your chosen engine. I like to see visible results from my coding – that’s what motivates me. But diving in without proper preparation is like starting to build a wall for a house with no blueprint for the property, or even an idea of where the property is going to be located! Before doing anything, you need a plan.
As a User Experience Designer, here’s where I can draw on professional expertise. What I need most is to come up with an MVP – a minimum viable product. The definition of this MVP is the absolute minimum needed to get the most basic features of the game up to a running state; the smallest set of features I could keep that would let me still call what I’m making a game. I should try to include every major core system so I can make sure I can at least make each of them. So what’s my MVP for “Legends of Sanctorum”, the roguelike I want to create?
First, let’s look at a list of features I want to have:
- An open world where you can go wherever you want whenever you want. Some areas will be hardcoded to be more difficult than others, though, so the player can have some challenges to set their sights on.
- Procedurally generated dungeons and encounters. I want to be surprised by my own game.
- Extensive system of quests. Maybe some even procedurally generated.
- Lots of lore. The world this game is set in is one I’ve spent a lot of time building… I’d like to show that off.
- Meaningful crafting. Equipment should be customizable and craftable things should have use.
- Altering the map by being able to build your own house.
- An overarching plot. Given the open world nature, this will naturally progress slowly.
- A highly interactable world. One of those games where you should try to do something crazy and be surprised that the game engine actually takes it into account. This is obviously a very long term goal.
- Leveling and progression.
- My unique magic system and cosmology. One moon’s light regenerates magic, the other’s can kill.
- A game that my daughters would find fun, and if they ask “can you put X in the game?” my answer is “yes.”
Ok. So that’s a hefty list. I know this can be done though. Just look at games like Avernum or Dwarf Fortress.
So what should my MVP be? What’s the smallest I can pare this down to and still call it a game?
- A world map that you can walk around.
- At least one preset town
- At least one randomly generated location. A cave is probably a good place to start.
- Some super basic combat mechanic. An enemy that simply bumps into the player for damage.
- A way to import town or other static element files from an external CSV. Creating tilemaps is a pretty solved problem. I’d like to use Tiled to paint these pregen elements then import them into the game.
Below are 5 more items that I think are pretty key, but aren’t required to be in the game for it to be super bare bones. I’ll honestly be surprised if I don’t get sidetracked and add in at least one of these before the above 5 are done.
- NPCs that can do dialogue and give a quest.
- A working celestial cycle. I made a very specific table for this in Google Sheets years ago for this fantasy world. Just need to get that into the game.
- A quest to do something in that cave.
- A weapon with several parts – like handle, pommel, and blade, that can be changed in and out.
- A working magic system.
I feel like there’s a critical mass sort of thing going on here. If I can get enough of these into a game, I’ll start to see something fun coming together. Once I reach that point, adding more cool stuff will be really fun and growing the game will be more and more fun with each addition. But I think I need the above 10 first. I’m making a promise to myself, one that may be helpful for you, too. I’M NOT GOING TO GIVE UP OR GET BORED WITH THIS PROJECT UNTIL THESE 10 ARE AT LEAST DONE.
As I work on these, I MAY code things in a way to anticipate some future features, but I’m not going to go much out of my way to do so. I need to focus on getting these done!
The Roguelikedev subreddit has some great tutorials that elaborate on why you should focus on making an MVP first, but essentially it revolves around the idea that it’s much easier to motivate yourself to add features to something that already works in a rudimentary way than to keep adding features to something that remains “not yet a game”.


