Blog Archives
Analyzing Your App Using Game Thinking: Part 3 – Depth
In this series of articles, I am taking a look at how innovators and entrepreneur developing non-game apps and other products through the application of Amy Jo Kim’s Game Thinking process can analyze their work using some of the factors that game designers use to determine that the games they are developing are delivering the desired player experience. Last week I discussed how to analyze an app in terms of its Complexity. This week I will focus on its Depth.
Depth: The ability to find enjoyment in a game as one’s skill in playing the game increases.
One of the Cardinal Rules of game design is that games should be easy to learn but difficult to master. The “easy to learn” provision means that a game should have low Complexity, while the “difficult to master” provision means that a game should have high Depth. The greater the Depth, the more difficult it is to master the game.
Why should a game be difficult to master? Well, that just means that a game should remain challenging even as your skill in playing that game increases. In other words, a game should remain engaging no matter how many times you play it.
Depth is directly related to the number of interesting decisions the player can make, whereas Complexity is related to the number of rules there are in the game. For example:
- Tic-Tac-Toe has few decisions, but it also has few rules
- Chess has more rules and elements, but it has many interesting decisions
- Monopoly has even more rules and elements, but relatively few meaningful decisions
While it is possible to learn the basic rules of Chess in just a few minutes, it might take players years, if ever, to master the game. A game like Chess, where there is a high Depth to Complexity ratio, is referred to as design elegance by game designers. Many game designers strive for design elegance by creating as much depth as possible without too much complexity.
This can be tricky to achieve, though, since Depth (lots of interesting decisions) can come from Complexity (lots of rules), but too much Complexity can also decrease Depth. Why? Well, if there are too many rules in a game, it may make it too difficult to every truly master a game.
So, what does this have to do with apps that aren’t games? If you recall The Player’s Journey from Game Thinking, Mastery is the final state of the Journey. It is when Enthusiasts who’ve built their skills and mastered the system are ready for something more. If your app has Depth, there will be something more to give your Enthusiasts. That is, it will still have value for users who have used your app for a long period of time.
Game designers have given a lot of thought to how to add Depth to a game, because the Enthusiasts who have mastered the game are often its best promoters and it’s important to keep them loyal. Here are some take-aways from game design that you can use to add Depth to your app:
- Providing the more advanced users with different ways to use the app’s main action, different actions to perform or even different overall uses for your app will increase the users sense of freedom of choice within the app. However, these different choices need to produce different results for them to be meaningful and truly create an app with Depth.
- If the knowledge or timing of when your users use the main action of the Core Learning Loop is a factor in determining how useful that action is, then your app already has a potential for Mastery. The better your users get at acquiring the right knowledge or adjusting their timing, the more skill they develop on the Journey to Mastery.
- If the timing of using your app’s action involves any trade-offs; that is using the action for one purpose at a given time might be at the expense of the benefits of doing something else instead, that strategic knowledge of when or the best order to use your app’s action can form the basis of Mastery.
- While your app may built upon a single Core Learning Loop, you can design in different actions to support, expand on, or provide variations of the main action your users use, each of which makes it possible for users to train in additional skills.
- Allowing the users with learning how the rules of cause and effect work in your app without experiencing any actual negative consequences can encourage users to learn about all the different ways your app can be used. Such experimentation will allow users to gain information about how your app works, and that knowledge can lead to Mastery of your app.
- Allowing users to use the actions as expressions of creativity, particularly if they can share those expressions with others, can give users a sense of creative control that can lead to Mastery. Such expressions of creativity can be as non-obtrusive to your app’s main function as allowing the users to create the look of their avatars or change the skin of the user interface, or it may be the main purpose of the app, such as with a photo editing app.
- Congratulatory messages for using the app well and prompting about what features can be unlocked as the users improve their skills can help motivate them to achieve Mastery.
Unfortunately, there are also mistakes you can make that can interfere with creating a Player Journey to Mastery:
- If your app is too Difficult for people to use in the Onboarding or Habit-Building stages, they will bail on it before reaching Mastery.
- If your app is not Complex enough to provide increased utility (more things for your users to do) as their skills in using it improve, there is little motivation for them to keep on using your app to improve their skills.
Of course, these considerations are all for users who already have become skilled in using your app. But what about the users who are still in the Habit-Building stage? What will keep them returning to your app so that they can build that habit? This is what game designers call Replayability, and we will examine that factor next week.
Analyzing Your App Using Game Thinking: Part 2 – Complexity
In this series of articles, I am taking a look at how innovators and entrepreneur developing non-game apps and other products through the application of Amy Jo Kim’s Game Thinking process can analyze their work using some of the factors that game designers use to determine that the games they are developing are delivering the desired player experience. Last week I discussed how to analyze an app in terms of its Difficulty. This week I will focus on its Complexity.
Complexity: The number of rules or game elements that the player must understand and interact with.
Complexity and Difficulty can be interrelated, as it may require a high degree of skill to memorize a vast number of game rules or maneuver around a multitude of obstacles to achieve a game’s goals, but the two factors are not synonymous. For example, it may be very difficult get past a single obstacle, and achieving a goal may require a doing a number of actions correctly, each one of which is easy to perform.
Here is a chart for distinguishing between Difficulty and Complexity:

The first rule of game design is that a game should be easy to learn but difficult to master. The “hard to master” component of the rule means that it has high depth, a factor that we will look at in a later article in this series.
The “easy to learn” component means that the game has low complexity, because the higher the complexity, the harder it is to learn how to play the game.
It’s not just the number of rules alone that can make a game complex, but how difficult they are for the player to understand. In order to apply rules and make decisions about how to interact with game element, the player needs information about the game state. However, a cluttered or non-intuitive interface can contribute to a game being too complex.
Yet another problem that can increase a game’s complexity is the player not being able to plan many actions ahead or not being able to understand the consequences of the actions that are taken. An overly complex game design can have so many different elements determining the outcome of a player’s actions that the player may not be able to comprehend all of the relationships between the elements in the game system.
Of course, these same design issues can adversely affect the user experience of any type of software application, not just games. When an app is too complex, users may feel like their actions will not allow them to get the desired utility out of the app, either because they don’t know what to do or what effect their actions will have.
So, how do you find out if the app is too complex? Ask your users during playtesting! “How simple or complex was the app to use?” “Did you understand the instructions?” “Was there any time while you were using the app that you did not know what to do next, or how to do it?”
If your playtesters found the app too complex to use, game designers have come up with a number of remedies.
- Providing a tutorial that helps the user learn how to use an app. A well-made tutorial or other form of automated assistance can mean the difference between users bailing out at the Onboarding Stage and continuing onward to the Habit-building Stage.
- Provide additional information and information about using your app outside of the app, such as through a website or a customer service line.
- Allowing new users to get utility from the app by using only a few basic features at the beginning, and then drawing their attention to secondary or more advanced features as they become more experienced with the app. This, along with establishing the right level of difficulty of those features, can provide a smooth learning curve that will get them through the Onboarding Stage and well into the Habit-building Stage.
- Reducing the amount of information or number of elements that must be considered when making decisions about what actions to perform.
- Reducing the number of relationships between different app elements (e.g., Feature A affects Feature B, which affects Feature C, which affects Feature D).
- Reducing the amount of attention swapping the user has to get information from more than one screen or metric to make a decision about what action to perform next.
- Providing information about the effect of an action before the user takes that action.
- Combining sequential or related actions together into a single action.
- Automate some app features so that the user does not have to continuously control or monitor them.
Still, a game designer may not want to reduce a game’s complexity to its bare minimum, as that may also strip away any opportunities players have to experiment or exercise creative control. So, a designer’s goal may not be to create a game with the minimum complexity, as that will restrict a game’s depth, but the right level of complexity.
To do that, we also need to ensure that the game has the right amount of depth, which we will discuss in next week’s article.


