My goal with Amber Halls was to make a puzzle-heavy micro-roguelike. While that spirit remained always true, the game started as a very different thing. Let me explain the thought process behind the most important aspects of its design.
One of the great things about most roguelikes and solitary games is that you can play them forever. But this is not a free feature; you need to design the game so that it always offers a challenge to the player. One way to achieve this is by setting progressive goals. When I started working on Amber Halls, I wanted it to be hard to beat. Beating the game had to be the first big challenge. Once a player accomplished this, they would try to improve until being able to beat the game somewhat consistently. Finally, their goal would be to get a high score. Ideally in a game like this, the high score should not have a cap, so that there is always a challenge for the player. In Amber Halls, collecting gems is absolutely unnecessary and it makes the game harder because staying longer in the same room increases the chance of being hit by an enemy. However, if you are good at the game, you can get all gems pretty consistently. This bugged me a lot because it implied that the game was “beatable”: once the player figured out how to always get every gem, the game would lose all it’s fun because most of the challenge would be gone. This is part of the reason why I decided to include the Daily Quest feature: there’s always the challenge of competing against other people.
Driven by simplicity
In roguelikes, decisions are usually the center of gameplay. You want your game to have multiple resources so that the player has to choose which ones to get, which ones to use, how to combine them, etc. But adding resources increases the complexity of your game, which is not always a bad thing (DotA, LoL), but I wanted Amber Halls to be as simple as possible (in terms of design). The reason for this is that it is very difficult for me to get into a game if it has complex menus, hidden rules or unclear goals. Now, in Amber Halls, when I just started to develop it, the hero needed mana to attack and use magic blocks. Mana was obtained by walking or by getting those blue “mana drops” in the picture above. The gray ones also increased your maximum mana. This was very nice but it also made the game a lot more difficult (wait, is that even possible?) and it diverged from the original objective of the game: instead of just deciding which sokoban puzzles you wanted to solve, you had to plan ahead and figure out how to fight enemies without running out of mana. I decided to get rid of mana because it added an extra, unnecessary complexity layer. When I design a game, I like to focus on just a few interesting mechanics and get the most out of them. I like games that can be explained in just one simple phrase: What is Amber Halls about? It is about pushing magic blocks from level to level to keep them with you. What will my next game be about? It will be about a guy with a powerful spacesuit trying to escape from a hostile planet.
Now, unrelated to the gameplay, I made a lot of small changes to the art of the game because I wanted to create a style that reflected simplicity. As you can see below, the character went from the guy from Totem Clash (another game of mine) to a more human-shaped wizard.
Think about the player
I must say I made Amber Halls for myself. Most people tell me that I should be doing freemium games because “that’s how you succeed in mobile”. I tell them I will only publish a game if I feel proud of it, and I can’t feel proud of a game that is all about getting something from the player. I think Amber Halls is my best game so far. It was not very successful in terms of sales, but it is a step in the right direction. However, there is one important lesson that I have learned after publishing it: when you release a game you made for yourself, you have to be very careful with how frustrating it can be for other players, after all a game needs to be fun. I have received many comments of people saying the game constantly creates impossible levels, and although this is not the case, if a player feels this way, it is my fault for not communicating properly with them and not working hard enough on the difficulty curve.