What’s up designers and welcome back to Rempton Games!
Fractals are, in my opinion, one of the coolest things out there. A fractal can be anything that shows self similarity at different scales, which basically means that it looks similar when you zoom in and out on it. Mathematics has come up with some really cool fractals, such as the famous Mandelbrot set, which was one of the first fractals ever discovered, or the Sierpinsky triangle which sort of looks like infinitely repeating triforces.
However, fractals are not only found in math, but in nature too. Romanesco broccoli is well known for growing in beautiful fractal patterns. Trees also grow in fractal patterns – they have a repeating pattern of branching that occurs at many different levels, which combines to create some incredible complex networks of branches. If you zoom in even further, even the veins in the leaves of the trees carry a similar structure to the entire tree. These patterns can also be seen in the way that frost crystals form on surfaces, or the way that electricity moves through objects .
Fractals can be beautiful, but they can also be incredibly useful, particularly in computer graphics. By studying the fractal patterns found in nature, programmers can then generate programs to mimic them. By studying the branching patterns of trees it is possible to procedurally generate trees programmatically, and by slightly varying the parameters of these fractals you can generate an infinite number of unique, realistic looking trees.
These fractals can also be applied at a larger scale, to generating landscapes. Many real world geographic features exhibit fractal similarity, such as mountains, rivers, and coastlines. In the same way, fractals can be used by programmers to generate these terrains procedurally, without needing to model by hand, and can get some pretty impressive results.
However, while these techniques can be very useful, they aren’t what I mean when I refer to “fractal game design”. Much like a fractal looks similar when you zoom in and out, some video games do the same – not on a visual level, but on a mechanical one.
For a great example of this, simply look at The Legend of Zelda: Link’s Awakening. In this game Link finds himself on a mysterious island full of strange inhabitants, with no apparent way off. Link’s goal is to leave the island, and in order to do so he must explore and unravel it’s secrets. As Link explores he will come across various dungeons that he must complete. Each dungeon presents Link with new items and abilities, which he can then use to reach areas of the world that were previously unreachable.
Link’s Awakening can be seen as a fractal 3 layers deep. On the outer layer you have Koholint Island itself. This is the larger, all encompassing puzzle that Link is trying to solve. Zooming in a bit, and you have the dungeons themselves – each one representing a self-contained challenge for Link to overcome. At the smallest layer you have the individual dungeon rooms. As can be seen with the “dungeon maker” feature that was added to the Switch remake, each individual dungeon room can act as a miniature, self contained puzzle for Link to overcome.
Each of these layers is different, but they strongly resemble one another because they share the same core gameplay. At every level – whether it be individual room, dungeon, or world map – the core loop of the gameplay is collecting new items, experimenting and learning how to use them, and then using those items to solve puzzles that allow you to move onto the next stage.
Each room in Link’s awakening often has a single main puzzle that needs to be solved, which often serves as a way of teaching Link how to use his new skills. For example, certain enemies might teleport away from you if you try to hit them, so you have to use your tools to figure out how to defeat them – for example, by leaving bombs to where you know they are going to teleport to. This might give you a key that you can use to unlock new areas of the dungeon. As you explore the dungeon you might then find a Hookshot that opens up completely new areas of the map to explore.
This fractal pattern emerges naturally out of a design principle that is driven by a single core mechanical idea. By taking this mechanical idea and applying it to multiple areas of the game you can create a game that feels cohesive without getting too repetitive. If the core mechanical idea is solid, then it can lead to the creation of some very interesting and original games.
Another example of this is in the puzzle game The Witness. The core mechanical idea of The Witness is to solve a series of puzzles with a very similar premise – draw a line through the grid from the starting position to the ending position. While these puzzles seem simple at first, designer Jonathan Blow explores this simple concept more exhaustively than I’ve ever seen before.
In addition to come up with dozens of unique twists on this simple mechanic, he also applies this mechanic at multiple layers to create a fractal effect. At the lowest level you have each individual puzzle, which must be solved to activate the next puzzle in the sequence. Zoom out a bit and you have groups of puzzles with similar mechanics grouped together into unique sub-areas, with each sub-area representing a larger puzzle that must be solved in order to activate a lazer.
Zooming even further out, and you can see the entire island as an even larger puzzle, which requires you to complete enough sub-areas to unlock even more secrets and finally finish the game. You could even zoom out one more time to reach the level of the meta-narrative, which players have tried to piece together using various cryptic clues throughout the game and which can require multiple playthroughs to unravel.
While Link’s Awakening may have developed this fractal pattern more naturally, like the branches on a tree, I believe that the fractal nature of The Witness was entirely intentional, and I feel like it had a number of benefits for this game. If The Witness simply presented the player with a series of puzzles that they had to solve in sequence I think it would still be fun, but I don’t think the fun would last. I think a lot of players, myself included, would eventually get tired of solving the puzzles and move on to the next thing without actually completing the game.
Instead, because of the way the game is laid out I know that every puzzle is part of something larger. Every time I solved one I wanted to keep going so I could complete the sub-area, and every time I completed the sub-area I wanted to move onto the next one to see what greater mysteries the island held. Compare this to another game I also really enjoy – the color matching game I Love Hue. I have a lot of fun solving these puzzles, but when I solve one I don’t have the same drive to keep going,
While I don’t think I’m breaking new ground with the idea that having a larger goal made up of smaller goals can help pull your player forward through your game, I do think that the Fractal approach has a number of advantages. Since larger layers are similar to the smaller layers you can pretty much guarantee that if a player enjoys your game at the micro level, they will also enjoy it at the macro level.
This isn’t something that should be taken for granted, because it is entirely possible for a game to have multiple different layers with different styles of gameplay, and there is no guarantee that players who enjoy the game on one layer will enjoy it at another layer. That being said, having layers that require different types of gameplay can add more variety to your game, and potentially bring in a wider range of different players.
As with all areas of game design, it’s a bit of a balancing act. On the one hand, you want to make sure that the different styles of gameplay mesh well with eachother, even if they do not match up perfectly. On the other hand, even if you are designing a game with a fractal structure you want to ensure that there is enough variety in the different kinds of activities that your game provides.
Going back to Link’s Awakening, all of the different layers follow the same core style of gameplay, but the types of puzzles you will have to solve at each level are different. On a room level you generally only need to understand the information in each room, and figure out how your items and abilities interact with the various enemies and elements of the room. On a dungeon level you need to understand the overall structure of the dungeon – discovering the locations of treasure chests, switches, and other features. When solving the entire map it is a matter of understanding how the different parts of the map connect, and how you can use your new abilities to explore areas that were previously unreachable.
For an example of a game that could have used a fractal structure, but didn’t, we can look at Fire Emblem: The Three Houses. This game takes place primarily at two levels – individual battles, and the overarching narrative structure. Each of these layers is very different from eachother – during battle you are controlling troops in a very strategic way to take out your enemies, while in between you spend your time running around a monastery to recruit troops and level up their skills – the gameplay at each of these levels is completely different.
This isn’t necessarily a bad thing – I really enjoyed Three Houses when I played through it the first time, but I will say that I enjoyed battling significantly more than running around the Monastery. This could be due to the way I played – talking to every NPC and exploring every area of the Monastery to pick up glowy items – but I felt that these sections really slowed the game down without adding as much as I think they could.
In addition, with the exception of one or maybe two major choices, the narrative path is completely linear. You basically decide on your path at the very beginning, and that determines everything that will happen for the rest of the game.
Once again – this isn’t necessarily bad, but I do think that a fractal approach could have helped bring this game to the next level. How do we apply fractal design to this game? First, we need to identify what the core gameplay loop is. What is the appealing thing that draws players to this game? I think there are two main things. The first is the tactical combat, and the second is the ability to recruit and build relationships with various characters. Each of these factors is already in the game at one level or another, but how do we expand these core appeals to different layers of the game?
Throughout the story of three houses the player is presented with what appear to be strategic decisions. Do we attack this capital or that capital? Should we meet to discuss terms with this person, or do we think that it’s a trap? Do we take the Western route or the Northern route? These sorts of questions are asked of the player, but the game will always turn out the same no matter what you decide.
What if the player was actually able to choose which battles they wanted to make? At different points in the campaign you could present the player with two different options. Then, the player will get the opportunity to talk to different characters to hear their opinions on what to do. Finally, the player will be able to use the information they have collected to determine which strategic decision to make.
On the other hand, I think that you could also have the relationships between the various characters matter more. Because the stories are so linear the decisions about who you will eventually be allies and enemies with is pretty much decided by a choice you make at the very beginning of the game. While you can recruit characters to your cause, who you do or don’t recruit only really affects the options you have in battle – not the larger narrative structure.
For an example of a situation where you could have this matter more, there is a particular battle that takes place in the game with three different armies. One of those armies is your enemy. The other army is also your enemy, but initially seemed neutral, or even like they may have been your ally. In this fight I initially thought that I could talk to the neutral army to try to bring them to my side, but when I got to close they got hostile. I reset time, and this time I simply tried to not attack them, hoping that at least they wouldn’t get in my way. This strategy was also unsuccessful, and eventually they began attacking me anyways.
I think it could be really interesting if the actions you took – both on the battle level and the larger, more strategic level – affected your relationships with other factions. Make the wrong choices and everybody is now against you. Play your cards right, and you might actually be able save everyone. While I enjoyed playing Three Houses, I think that making some of these changes could have taken it to the next level, and would have made for a deeper, more cohesive experience.
At the end of the day there are many different ways to design a game, and Fractal Design is only one possibility. That being said, I think that the principles of Fractal design – taking the core gameplay concepts of your game and trying to apply them at multiple different layers – can and has resulted in some really cool games, and could be a useful tool to consider when designing your next game.
Until Next Time
That is all I have for this week. If you enjoyed this article, check out the rest of the blog and subscribe on Twitter, Youtube, or here on WordPress so you will always know when I post a new article. If you didn’t, let me know what I can do better in the comments down below. And join me next time for part 2 of my “Evolution of Pokemon Designs” series, where I’ll take a look at designs from generation 2. See you then!