A few weeks ago, I was beginning my play through of Zelda: Breath of The Wild. I had just been playing through the game’s introductory area when I came to an interesting conflict. I was tasked with traveling to a shrine marked on my map, and the clearest path was a road going up a mountain I had not visited before. As I began traveling up the path, I began taking damage from the reduced temperature due to the altitude, rendering my initial path impossible. I had to reassess my plan. I’m extremely prone to getting lost in videogames, and the fear that I would wind up spending way to much time on a useless endeavor started to set in. I pulled up the game map, and figured I would try and circle around the mountain to the far edge and try to climb up. When I circled around, it was clear from a distance that there was a path to climb up directly to the shrine. This path ended up working out, but it also introduced me to a side quest along the way, which taught me other core game mechanics like hunting, cooking, and how to penetrate into colder climates.
The important thing about this instance is that my experience was not entirely based on luck. The game had to teach me how to hunt and cook, but it didn’t force me towards the quest that taught me those things. I was presented with a problem, and in how the developer predicted I would solve it they placed both the side quest and the solution. What this essentially does is create a bit of trust between the player and the developer. I then knew that I could trust the game to handle some degree of creative problem solving. My choice to rotate around the mountain wasn’t even all that adventurous, but the effect was real. I felt like I had discovered my own path but also understood that the developer had predicted this, and he had then used that path to teach other tools in the game. This kept me deeply immersed in the world I was exploring, which made the entire experience much more enjoyable.
While the player can always do unexpected things, a good developer can communicate to the player through the layout of the world or the environment and dramatically improve the immersion of the game. The YouTube channel hbomberguy has a very impressive review of the game Bloodborne, and in it he gives a good example of this. In the opening of the first game in the series, Dark souls, the player encounters a monster and is meant to die. The second time approaching this monster, the player can look around and find a shield hidden near by. Using the shield, the player can much more easily defeat the monster. The game is communicating very clearly, without ever breaking the immersion of the game (dying is actually a pretty key part of the immersion in these games) what the player is supposed to try. The more a developer is able to allow the player some creativity, they increase the trust that the player has in the developer and they become more immersed and creative.
The dynamic that develops between the player and its designer has an effect on the enjoyment and memorability of that game to the player. The more the player is consciously trying to understand what the designer meant for them to do, the higher the risk that they become drawn out of the experience becomes. This is not to say that the player should never face difficulty. Without difficulty, the satisfaction of having found a creative solution to a problem would be lost. Instead there is a sweet spot where the level of frustration makes sense given the situation presented in the game and the player can experience difficulty without it taking the player out of the experience entirely.
While these are concepts that I’ve thought about in my personal experience with games, it’s entirely different to think about while creating a game. Constructing an environment where the player will feel immersed, even in an engine as predictable as Twine, has proven to be a challenge. How do you make the player forget they’re playing a game? How do you make them feel like their path is their own? These are the questions our team is facing now.