Level Design Patterns for 2D Games
Many game designers rely on content variability to develop gameplay. Repeated obstacles make the player bored, so designers usually tend to create a constantly engaging gameplay. Most often, games consist of parts: levels, mechanics, graphics, sounds, etc. One of the most important is level design. He does not bring a new dimension to the game, but is engaged in building existing elements. Due to the great need for games in content, the main goal of game design is level design. Their role is fundamentally important, in large-scale projects they are even engaged in by a separate team that is not involved in creating the design of the game and the mechanic.
When creating levels to ensure high-quality gameplay, only innovation and variability are not enough. Annoying situations, fuzzy instructions, or unattractive difficulties can lead to negative levels affecting players. Examining the levels of already released games, we can identify common patterns that contribute to improving the quality of design.
These patterns are simple conventions that describe standard level design approaches. Level design is part of the game design. That is, the level design pattern is a subset of the game design patterns. However, level design has many subtleties that are not part of the game design framework. Levels can emphasize the plot, create small short-term attainable goals and allow you to formulate the gameplay in order to enhance the player’s immersion in the game. Creating levels is so important in games that sometimes developers provide users with tools to design levels so they can create new levels and share them.
Although the level design patterns presented in this article may be familiar to game designers, it is important to document them formally. Thanks to this, we can simplify the interaction between experienced and novice designers, thus contributing to the development of level design techniques. In this article, we strive to formalize the concept of level design patterns, not only creating a valuable resource for beginners, but also laying the foundation for further research and development of such patterns. In addition, we believe that this work can benefit the research community, especially in the areas of game design, game analytics, procedural content generation, and automated level design.
In this post, we will describe in detail six level design patterns. These patterns appear in a wide range of 2D games. We will discuss the principles and reasons for using these patterns, and also show examples of their use in various games. This article will not be able to show all potential or even all existing examples of level design patterns. In it, we will consider the most common examples with the goal of formalizing the concept and laying the foundation for future research.
- Direction indication
- Safe area
- Pace violation
- Discussion and conclusions
- Reference materials
Design patterns appeared back in the 70s, and their foundations were laid by architect Christopher Alexander . Alexander created these patterns in order to find a more formalized language of communication. Design patterns summarize frequently occurring problems that can be detected in the environment, as well as their corresponding solutions. The solutions described are used as general instructions and not as final solutions to problems. This idea was transferred to software design in the 80s when Erich Gamma, Richard Helm, Ralph Johnson and John Vlisidis published a book describing software design patterns . Like Alexander, they collected problems often encountered in object-oriented design and proposed solutions to them. Kremeyer  similarly introduced game design patterns as a way to solve repetitive tasks. Their definition has become less stringent,
Developers, designers, scientists, game creators and critics have long been discussing design patterns. Often they are called not design patterns, but tips, tricks, tricks, etc. ... Usually they refer to the concepts of design patterns, analyzing a particular level or region of the world , ,  - , games [ 10] - , of the genre  - , or by studying them most generally  - ,  - . This information is usually based on their experience in game design and development, as well as participation in the gameplay itself. Most noteworthy are patterns that repeat in many games. Whenever possible, in the following sections we list the similarities between previous attempts to catalog and classify level design patterns.
In addition to searching and classifying design patterns, studies are exploring ways to use these patterns in procedural content generation. That is, design patterns were also used to generate levels , , ,  - ; in addition, there were attempts to use them to generate game rules , . In the standard approach, design patterns are used as constraints in the generation process to reduce the generation space so that only levels corresponding to the patterns remain in it , , , , ; this is most often used in structural generators . Another approach is to use design patterns in fitness functions for search-based generators ; these functions direct the search towards finding levels that apply these patterns , , , , .
The patterns we are considering are elements that are present at the levels of various games. Therefore, we will demonstrate them using screenshots of various games as examples.
Patterns are selected taking into account their importance (that is, they are often discussed in the community or other works), repeatability (that is, they are noticeable in a significant number of games) and influence (the importance of the pattern in these games). To create a sufficiently representative set, 30 games were selected, including old and new games; they were published by large companies and independent developers; they are used in different types of gameplay (platforming, racing and fighting games, puzzles, etc.). Priority was given to popular games, games with a large community, and games that are often referred to as positive examples.
|Avatar||entity controlled by players within the game. For example, Mario and Luigi in Super Mario Bros (Nintendo, 1985).|
|Boss||an enemy representing greater danger than the rest. Example: Iceman from Megaman (Capcom, 1987).|
|Collected item||a game object that players can pick up. Example: Coins from Super Mario Bros (Nintendo, 1985).|
|Enemy||danger taking the form of a character. An example of an enemy would be the Goombas from Super Mario Bros (Nintendo, 1985).|
|Environment Tiles||Entities used to decorate games that you generally cannot interact with. For example, clouds from Super Mario Bros (Nintendo, 1985).|
|Danger||entities that prevent the player from completing his task. Example: spikes from 1001 Spikes (Nicalis and 8bits Fanatics, 2014).|
|Unreachable area||an area that players cannot enter. May become available at some point in the game. For example, dungeon rooms from The Legend of Zelda (Nintendo, 1986), which require a key to enter.|
|Level||part of the game in which players act to win the game. Example: World 1-1 from Super Mario Bros (Nintendo, 1985).|
|Mechanics||an element of the game (visible or invisible) that implements the rule. For example, checkpoints in Sonic the Hedgehog (Sega, 1991).|
|An object||any entity that appears in the game scene and is able to change its state. Objects include dangers, enemies, bonuses, etc.|
|Bonus (power-up)||Collected item that has a positive effect on players. An example of power-up is the mushroom from Super Mario Bros (Nintendo, 1985).|
|Shells||moving entities emitted by danger or avatar. Example: hammers thrown at Super Mario Bros (Nintendo, 1985).|
|The rule||describes how to play a game or manage it. Rule Example: Collect all the points to defeat Pac-Man (Namco, 1980).|
|Scene||a fragment of a level / world based on a concept is usually an overcoming difficulty.|
|Screen||the part of the level / world of the game currently visible to the player.|
|Hard tile||a game object that does not allow the player to pass through it. Example: gender in Super Mario Bros (Nintendo, 1985).|
|World||A large area of the game made up of several levels. For example, Brinstar from Super Metroid (Nintendo, 1994).|
Before we get acquainted with the patterns we discovered, we recorded a vocabulary that we will use in this post. This vocabulary is taken from Anthropy and Clark , Bjork and Holopainen , as well as wiki design patterns , and adapted to our needs.
In our work, patterns are the result of the arrangement of game elements relative to each other at a level. For example, we did not attribute checkpoints to patterns, because we regard them as game mechanics. However, the mechanics of checkpoints can be used in conjunction with the patterns presented in the article. For example, checkpoints are usually located in safe areas and are associated with a violation of the pace.
We describe the patterns separately, but they can be combined or modified to create a new and fresh gameplay. New design patterns can be generated from combinations or variations of existing ones. For example, Thompson  showed that the pattern from New Super Mario Bros U (Nintendo, 2012) is a combination of several well-known patterns. It is also worth noting that the lack of a pattern does not necessarily mean poor design. Patterns are just recommendations and ultimately the designer decides to use them.
Not all patterns are applicable to any game or level, so we focused on those that seem to us the most common in various games. In this article, we presented six patterns: Guidance, Foreshadowing, Safe Zone, Layering, Branching, and Pace Breaking. In the following sections, we will consider them separately and provide examples of how they are used in games.
When passing the level, players may lose the route that they need to go, especially if one of the design aspects is research. The pattern, which we called the "direction indication", refers to the use of non-verbal game elements that guide the player in the right direction. Verbal cues and tutorials, for example, a character giving advice or instructions, we will consider an element of game design related to learning or storytelling, and not to the pattern. The direction indicating pattern includes the direction of the players in the direction of passing the level or in the direction of the secret or the collected item.
The easiest way to guide the player using the level form. In this pattern, designers use solid tiles to direct the player’s gaze in the right direction. The use of this pattern is more often discussed in 3D games , , ,  than in 2D , . In 3D games, players usually have more freedom of movement, so designers should push them towards the next location. The figure above shows how Super Meat Boy (Team Meat, 2010) and Super Mario World (Nintendo, 1990) use solid tiles to show the player the direction to complete the level.
One of the most commonly used methods for indicating directions is the use of collected items. They can show the main route, as well as report on places that the player is not yet able to see. Developers can use this technique to push players away from “bad decisions,” for example, from blind jumps when they cannot recognize the correct route to another location. Collected items can also be used to guide players toward exploring a path that initially seems “dangerous” or erroneous, or pushing them to a safe place or to a target area that they still don’t see in front of them. An example of this can be seen in the previous figure. It shows two successive screens from Donkey Kong Country 2 (Rare, 1994). If at the end of the second level of the game, players dive there, where the bananas are located (left image), in a place that looks like a bottomless pit, they will see a platform below (right image). A similar indication of the direction is mentioned in previous works by Anthropy , Smith , Pugh , Koncewicz  and Kremers . This concept is known under various names, for example, it is called “breadcrumbing”  or “signs” , but the meaning remains the same.
Hazards are another common way to indicate directions. When placed separately, dangers can affect the player’s inertia, as Anna Anthropy , Milam and El Nasr  say. In Expand (Chris Johnson and Chris Larkin, 2015), players move the pink rectangle in polar (rather than Cartesian) coordinates, trying to reach the center of the circle. The figure above shows a comparison of the scene with and without danger: a red floor in the inner circle. If there is no danger in such a scene (right image), then the players will always touch the inner circle, which will give them more time to avoid moving dangers. If on the inner circle there is a red floor (killing when touched), then the players are forced to stay at a safe distance from this area (left image). Although both scenes are the same,
Enemies may provide directions differently than most hazards. Enemies can be used to attract the attention of players, because they must fight with enemies. This type of guidance was discussed in the Boss Key Series video series  when analyzing the Super Metroid game (Nintendo, 1994), in the work of Milam and El Nasr  when analyzing the pattern of pursuing AI in 3D games, and also in Hoeg [ 22] when analyzing the effect of movement on player choice in FPS games. The presence of enemies directs the players in their direction. For example, the presence of enemies in seemingly inaccessible places makes players think about how to get to them. The left image of the previous figure shows how Super Metroid (Nintendo, 1994) uses enemies to push players to the desired route. The right image shows
Another common way of indicating direction is to use hints in the environment, for example, brighter tiles (changing the color or texture of individual scene tiles stimulates the player’s curiosity). This technique was considered in several previous papers , , , , , , , . The authors study the question of how the use of various environment tiles can attract the player’s attention to certain areas, stimulating them to explore. The figure above shows how tiles with different textures are used to motivate a player to research in Super Metroid (Nintendo, 1994) and The Legend of Zelda: A Link to the Past (Nintendo, 1991).
A “safe zone” is a pattern designating one or more areas in the current scene in which players are not exposed to negative interactions (with dangers, enemies, etc.). The presence of safe zones creates areas of space in which players can analyze their surroundings and safely plan their future actions. They are especially important at the starting point (spawn point) of the avatar, so that players have time to get comfortable with the environment and understand the difficulties that lie ahead. Safe zones are rarely drawn explicitly on the screen, the player identifies them by observing the scene for a short time and not noticing close dangers and their patterns.
In the figure above, we have drawn in red dotted straight lines the lines of fire of enemies on the screen that are invisible in the game itself. In these examples, the safe zone is the space where the avatar can stand without crossing a single line of fire. In the scene from Mega Man (Capcom, 1987), shown in the image on the left, you can see the safe areas on the lowest platforms, the area directly above the left-most stairs and the area in the upper right corner of the screen. In the scene from Star Guard (Loren Schmit, 2010), you can notice the safe areas in the form of empty black spaces. In such situations, players usually try to invent strategies for moving between safe areas toward their goal.
In the figure above, we have drawn dotted red rectangles showing safe areas in the scene. The image on the left shows the level from (Brett Taylor, 2017), in which there is a large central area where the player cannot be reached by moving dangers. It is important for players to use safe zones to move around the stage, because dangers move faster than their avatar. The image on the right shows that the doors to the dungeon rooms in The Legend of Zelda (Nintendo, 1986) are safe areas that allow players to become familiar with the challenges they have to overcome.
Safe zones can provide the possibility of a violation of the pace - we will consider this pattern below. But in addition, they can be used to indicate directions, pushing players towards specific routes. The concept of safe areas was also mentioned in previous works , , , , but there it was usually used to place checkpoints and conservation rooms , , ,  .
A forerunner is a literary concept  - : the author alludes to something that will happen later in history. This concept as a whole can be applied to games , , , , . We can call the “prediction” of the player’s acquaintance with an element in a controlled environment before this element becomes a more integral part of the game.
A harbinger is a useful pattern that allows a player to get acquainted with a new game mechanic or game object without tutorials. Once players have mastered the basics of the new product, the game can present a difficult situation based on this new element. The figure above shows how in the Mighty Jill Off (Anna Anthropy, 2008) a player gets acquainted with a new danger. The spider first appears in the scene shown in the image on the left, and becomes more dangerous later in the game (image on the right).
The figure above shows how danger in Mega Man (Capcom, 1987) portends a boss fight at this level. During the level, players are confronted with scissor-like shells (image on the left) that portend the boss’s weapons of the level shown in the image on the right.
In addition, the premonition stimulates the curiosity of the players, making them worry in anticipation of future opportunities. This is a common element of exploratory nature games. The figure above shows two examples of this. The Legend of Zelda: A Link to the Past (Nintendo, 1991) introduces the player to objects with which he can only interact later in the game (image on the left). Super Metroid (Nintendo, 1994) teases the player with routes that you can only go through after getting power-up. This use of the precursor pattern usually emphasizes a design that encourages players to come back, which often happens during research.
Layers are a pattern of combining several objects to create a new gameplay. Often, in order for difficulties to be honest for a player, this pattern is preceded by the “forerunner” pattern. Most often, layers are used to add new, more complex difficulties without the need to introduce new elements. Previously, the player met with the different elements separately, so he is familiar with their behavior, but now he has to invent a new strategy to overcome them. This pattern can lead to an annoying gameplay when the result of mixing elements is unplanned. Many games effectively use this pattern , , , , , ,  so that they do not have objects that rarely appear,
The figure above shows how games can create a more complex gameplay by combining multiple instances of the same enemy or danger. In the Lesbian Spider-Queens of Mars (Anna Anthropy, 2011) this problem is solved by adding many identical enemies, and in the VVVVVV (Terry Cavanagh, 2010) at the level, according to a certain scheme, several copies of mobile dangers are placed.
The figure above shows the games that create a completely new gameplay through the combination of various enemies. In the Mega Man shown on the left (Capcom, 1987), players must wait before jumping on disappearing platforms until they become solid, but at the same time keep an eye on the enemy who is running side to side on the platform on which they are standing . In Mighty Jill Off (Anna Anthropy, 2008), players must get to the level as quickly as possible without touching the flame and catch before the spider gets out of the yellow box and starts chasing the player.
Branching is the provision of several ways for a player to achieve their goal. Having a choice gives players a sense of empowerment. Having studied the previous works , , , , , , , ,  - , ,  , , , we came to the conclusion that this pattern is used in various ways to create different types of gameplay. Sometimes a game gives a false sense of choice , when to complete a level study, it takes most routes, for example, dungeons in The Legend of Zelda (Nintendo, 1986). In Mega Man (Capcom, 1987), levels can be completed in any order. That is, any level can be completed with only those tools that are provided to the player at the very beginning. Super Mario Bros (Nintendo, 1985) is known for having pipes that a player can enter,
Levels can be branched without restrictions, that is, all routes are open for player selection, this reinforces the feeling of exploration. The figure above shows two scenes that use branching without restrictions. In L'Abbaye Des Morts (Locomalito, 2010), shown in the left image, and The Legend of Zelda (Nintendo, 1986), shown on the right, players are free to choose a driving route.
Conditional branching gives the player several routes to choose from, but allows him to move on separate paths only after certain conditions are met. This type of branching stimulates the curiosity of the player and may require a return back in level or repeated attempts to explore several paths. The figure above shows two examples of conditional branching. In Super Metroid (Nintendo, 1994) in the image on the left, the doors are scattered around the levels, which are closed until players find the weapons that open them. In the case of Super Mario Land (Nintendo, 1989), an avatar can be in one of two states, small or large. The image on the right shows the level from Super Mario Land, where players can go along one of the paths only if the character is small.
Finally, branching can create a “risk reward” situation , , , , , , , . When a game introduces players to several routes, one may be a safe alternative with a small reward, while the other may require a higher skill, but also give a greater reward. This gives players the motivation to spend more time in the game, because they are rewarded for this investment. The figure above shows the Excitebike (Nintendo 1984) and SpeedRunners (DoubleDutch Games 2013) racing games that use branching with a risk reward. In both games, players can choose paths that require more skills, but if successful, they give an advantage in competition.
A pace violation is a deliberate change in the course of a game from one scene to another. It is used to increase or decrease tension so that players put more effort into the overall gameplay. The most powerful ways to transmit tempo disturbance are sound and visual cues. Usually, the “layers” pattern is combined with tempo violation, because the presence of many elements naturally increases tension, especially when creating difficult situations , . On the other hand, safe zones can be used to create the opposite effect and break the pace to reduce tension , .
A common way to create a tempo violation is to introduce dangers of greatly increased complexity. They can be perceived by players as a battle with the boss; detecting the presence of an increased threat usually attracts the attention of players, increasing the intensity of the gameplay. The figure above shows the difference between regular gameplay and boss fights in Final Fight (Capcom, 1989). When you go to the boss battle scene, the game changes the script and background music, and then a larger enemy appears, armed with weapons and having a separate band of energy. All this shows that he is a new, more complex obstacle.
Slowing down the pace of the game can lead to interesting results. It can be used to give players a break and enjoy other aspects of the game, such as new environments or opportunities. It’s sometimes interesting to give players a moment of calm right in front of a tense scene to create a climax (calm before the storm) . The figure above shows two examples of tempo disturbances that reduce player tension. In the L'Abbaye Des Morts (Locomalito, 2010) shown to the left, players are given time to relax after a series of tense moments and enjoy a picture of the night sky. Mega Man 11 (Capcom, 2018) added a completely empty room right in front of the culmination of the level - the boss fight. This creates a moment of calm right in front of the peak of the level of drama.
Violation of the pace can be a powerful tool to introduce players to the new gameplay, feel or mechanics of the game . When players get a new power-up in Super Metroid (Nintendo 1994), they usually have to use it in a very simple situation. Often, such situations arise immediately after the climax of the game, because power-ups in Super Metroid are usually given as rewards for overcoming very difficult obstacles. The previous figure shows a very similar approach from the Lesbian Spider-Queens of Mars (Anna Anthropy, 2011). In the image on the left, you see the usual level of play at which players must use the laser to capture other characters. The right image shows the beginning of the level where players are trying to get to other characters, until they break free and turn into more powerful enemies. This change of pace violates the usual gameplay, which requires reaction and dexterity, by the appearance of a level at which the player needs to complete a speed task (an obstacle in the form of a timer).
Another example of tempo disruption is the levels, which design has bottlenecks , , , arenas  or collision points . They move the player from a space where he has more freedom of movement and avoiding dangers to a closer space where interactions with dangers are usually not avoided. The previous illustration shows this concept using the example of Mighty Bomb Jack (Tecmo, 1986). In the long series of levels shown in the left image, players control their avatar in a long corridor, collecting power-ups and objects and avoiding dangers. At bonus levels (image on the right), players are in a small room in which dangers are much more difficult to avoid, and at the same time, to complete the passage you need to collect all the bombs.
Discussion and conclusions
In this post, we looked at six level design patterns highlighted when exploring various 2D games. It is understood that they are conventions that improve the gameplay, and are not required to create a high-quality game requirements. Formalization of these patterns contributes to the creation of a universal language for developers to share knowledge and expand it.
The patterns are presented separately in the article, but they are usually used together. Layering a multitude of dangers can create tension leading to a disturbance in pace. Closed doors may portend branches for future study. It is important to try to experiment with these patterns and not be limited to them, because this may require the solution of design problems.
Level design patterns usually have a positive effect on gameplay. However, it is worth noting that the deliberate abandonment of such concepts can create a unique gaming experience. For example, in Syobon Action (Chiku, 2007) and I Wanna Be The Guy (Michael “Kayin” O'Reilly, 2007), surprise is used as a level design element. The game presents objects that are standard for popular platform 2D games, but players are taken aback by their unexpected behavior, for example, the presence of deadly traps in places where bonuses usually lie, or the creation of enemies over the player’s character without warning.
Level design patterns demonstrate that the conclusions of this article can be applied not only
in 2D games. They were identified as a result of the study of 2D games, but are applicable to 3D games. Definitions are not limited to two-dimensional space, and a change of context does not invalidate their application. Hordes of zombies in Left 4 Dead (Valve, 2008) are the result of using layers that create tension by breaking tempo. The concept of open-world games, such as Red Dead Redemption (Rockstar Games, 2010), is an extrapolation of the branching pattern. Super Mario 64 (Nintendo, 1996) constantly uses coins to guide players and portend new possibilities to stimulate player curiosity.
The patterns outlined in this post have more technical applications. They can be used as the operating principles of procedural level generators, as part of the fitness functions for a search-based generator, or as training data sets for machine learning algorithms.
Ultimately, level design patterns have always been used in games. Knowing how to improve the gameplay is a very useful tool. Formal classification simplifies the dissemination of these concepts, stimulates their development, helping to improve the level design process.
 C. Alexander, A pattern language: towns, buildings, construction. Oxford University Press, 1977.
 E. Gamma, Design patterns: elements of reusable object-oriented software. Pearson Education India, 1995.
 B. Kreimeier, “The case for game design patterns,” https://www.gamasutra.com/view/feature/132649/the_case_for_game_design_patterns.php?print=1 , last Accessed: May 23, 2019.
 S. Bjork and J. Holopainen, Patterns in game design (game development series). Charles River Media, 2004.
 S. Bjork, “Gameplay design patterns collection,” http://virt10.itu.chalmers.se/index.php/Main_Page , 2009, last Accessed: May 30, 2019.
[6 ] A. Anthropy, “Level design lesson: To the right, hold on tight”,http://auntiepixelante.com/?p=465 , 2009, Last Accessed: March 5, 2018.
 A. Anthropy, “Level design lesson: In the pyramid”, http://auntiepixelante.com/?p = 459 , 2009, Last Accessed: March 5, 2018.
 A. Anthropy, “Star guard”, http://auntiepixelante.com/?p=499 , 2009, Last Accessed: March 5, 2018.
[9 ] A. Anthropy, “Level design lesson: Low overhead”, http://www.auntiepixelante.com/?p=1022 , 2011, Last Accessed: March 5, 2018.
 J. Penner, “Breaking the law of Miyamoto ”, The Gamer's Quarter, no. 7, pp. 4–11, 2006.
 A. Anthropy, “Knytt syndromes”, http://knyttlevels.com/levels/dessgeega-KnyttSyndromes.knytt.bin , 2011, Last Accessed: Jan 4, 2019.
 T. Thompson, “Researching super mario bros. level design ”, https://www.youtube.com/watch?v=tzXpKlccRE , 2015, Last Accessed: Jan 4, 2019.
 M. Brown,“ Super mario 3d world 4 step level design ”, https: //www.youtube.com/watch?v=dBmIkEvEBtA , 2015, Last Accessed: Jan 4, 2019.
 G. Soup, “Cave story's masterful game design”, https://www.youtube.com/watch ? v = c0sjTBzCW0 , 2015, Last Accessed: Jan 4, 2019.
 M. Brown, “Boss keys series”, https://www.youtube.com/playlist?list=PLc38fcMFcVul4D6OChdWhsNsYY3NA5B2 , 2018, Last Accessed: Jan 4, 2019.
 M. Thorson, “Level design workshop: Designing celeste”, https://www.youtube.com/watch?v=4RlpMhBKNr0, 2018, Last Accessed: Jan 4, 2019.
 M. Brown, “How mega man 11's levels do more with less”, https://www.youtube.com/watch?v=nYxHMZX6lN8 , 2018, Last Accessed : Jan 4, 2019.
 G. Soup, “Crosscode's brilliant level design: Analysis”, https://www.youtube.com/watch?v=Dk9OEt02aDE , 2017, Last Accessed: Jan 4, 2019.
[19 ] M. Guzdial, J. Reno, J. Chen, G. Smith, and M. Riedl, “Explainable pcgml via game design patterns”, arXiv preprint arXiv: 1809.09419, 2018.
 S. Dahlskog and J. Togelius, “Patterns and procedural content generation: revisiting mario in world 1 level 1”, in Workshop on Design Patterns in Games. ACM, 2012, p. 1.
 M. Stout, “Learning from the masters: Level design in the legend of zelda”,https://www.gamasutra.com/view/feature/6582/learningfromthemasterslevel.php?print=1 , 2012, Last Accessed: Jan 8, 2019.
 T. Hoeg, The invisible hand: Using level design elements to manipulate player choice. Guildhall at Southern Methodist University, 2008.
 R. Koncewicz, “What made those old, 2d platformers so great?” http://www.significant-bits.com/what-made-those-old-2d-platformers-so-great/ , 2009, Last Accessed: Jan 4, 2019.
 G. Smith, M. Cha, and J. Whitehead, “A framework for analysis of 2d platformer levels”, in SIGGRAPH symposium on Video games. ACM, 2008, pp. 75–80.
 K. Compton and M. Mateas, “Procedural level design for platform games.”, In AIIDE, 2006, pp. 109–111.
 S. Larsen and E. Aarseth, “Level design patterns”, 2006.
 S. Dahlskog, S. Bjork, and J. Togelius, “Patterns, dungeons and generators”, in Foundations of Digital Games. ACM, 2015.
 K. Hullett and J. Whitehead, “Design patterns in fps levels”, in Foundations of Digital Games. ACM, 2010, pp. 78–85.
 G. Smith, R. Anderson, B. Kopleck, Z. Lindblad, L. Scott, A. Wardell, J. Whitehead, and M. Mateas, “Situating quests: Design patterns for quest and level design in role- playing games ”, in International Conference on Interactive Digital Storytelling. Springer, 2011, pp. 326–329.
 T. Thompson, “The fine line between rehash and sequel: Design patterns of the super mario series”, in Workshop on Design Patterns in Games, vol. 15, 2015.
 GJ Winters and J. Zhu, “Guiding players through structural composition patterns in 3d adventure games.”, In FDG, 2014.
 T. Pugh, “Level design tips and tricks”, http: // www. gamasutra.com/blogs/TomPugh/20181022/329044/LevelDesignTipsandTricks.php , 2018, Last Accessed: Jan 4, 2019.
 R. Terrell, “Folded level design”, http://critical-gaming.com/blog /2008/8/5/folded-level-design.html , 2008, Last Accessed: Jan 4, 2019.
 A. Stamos, “Level design primer”, http://renegadesector.com/level-design- primer / , 2014, Last Accessed: Jan 4, 2019.
 A. Anthropy and N. Clark, A game design vocabulary: Exploring the foundational principles behind good game design. London, United Kingdom: Pearson Education, 2013.
 A. Anthropy, “Game dev 1”, https://docs.google.com/presentation/d/1l-uRlLM6jjQ1vwyyb-QPphk-EIAAEiOfayMrvZwEQOQ , 2017, Last Accessed: March 5, 2018.
 M. Sharif, A. Zafar, and U. Muhammad, “Design patterns and general video game level generation”, International Journal of Advanced Computer Science and Applications, vol. 8, no. 9, pp. 393–398, 2017.
 SM Beaupre and TG Wiles, “General video game level generation,” 2018.
 E. Adams and J. Dormans, Game mechanics: advanced game design. New Riders, 2012.
 R. Kremers, Level design: concept, theory, and practice. CRC Press, 2009.
 S. Rogers, “Everything I learned about level design I learned from Disneyland”, https://www.gdcvault.com/play/1305/Everything-I-Learned-About-Level , 2009 , Last Accessed: March 24, 2019.
 D. Milam and MS El Nasr, “Design patterns to guide player movement in 3d games”, in Proceedings of the 5th ACM SIGGRAPH Symposium on Video Games. ACM, 2010, pp. 37–42.
 A. Khalifa, D. Perez-Liebana, SM Lucas, and J. Togelius, “General video game level generation”, in Genetic and Evolutionary Computation Conference. ACM, 2016, pp. 253–259.
 A. Khalifa and M. Fayek, “Automatic puzzle level generation: A general approach using a description language”, in Computational Creativity and Games Workshop, 2015.
 S. Dahlskog and J. Togelius, “Patterns as objective for level generation, ”2013.
 A. Baldwin, S. Dahlskog, JM Font, and J. Holmberg,“ Mixed-initiative procedural generation of dungeons using game design patterns ”, in Computational Intelligence and Games. IEEE, 2017, pp. 25–32.
 S. Dahlskog, J. Togelius, and MJ Nelson, “Linear levels through ngrams”, in International Academic MindTrek Conference. ACM, 2014, pp. 200–206.
 G. Smith, J. Whitehead, M. Mateas, M. Treanor, J. March, and M. Cha, “Launchpad: A rhythm-based level generator for 2-d platformers”, pp. 1–16, 2011.
 A. Khalifa, MC Green, D. Perez-Liebana, and J. Togelius, “General video game rule generation”, in Computational Intelligence and Games. IEEE, 2017, pp. 170-177.
 TS Nielsen, GA Barros, J. Togelius, and MJ Nelson, “General video game evaluation using relative algorithm performance profiles”, in EvoStar. Springer, 2015, pp. 369-380.
 N. Shaker, J. Togelius, and MJ Nelson, Procedural content generation in games. Springer, 2016.
 J. Togelius, GN Yannakakis, KO Stanley, and C. Browne, “Search based procedural content generation: A taxonomy and survey”, Transactions on Computational Intelligence and AI in Games, vol. 3, no. 3, pp. 172–186, 2011.
 A. Summerville, S. Snodgrass, M. Guzdial, C. Holmgard, AK Hoover, A. Isaksen, A. Nealen, and J. Togelius, “Procedural content generation via machine learning (pcgml)”, Transactions on Games , vol. 10, no. 3, pp. 257–270, 2018.
 CW Totten, An architectural approach to level design. AK Peters / CRC Press, 2014.
 B. Ciplijauskaite, “Foreshadowing as technique and theme in“ one hundred years of solitude ”, Books Abroad, vol. 47, no. 3, pp. 479–484, 1973.
 F. Muecke, “Foreshadowing and dramatic irony in the story of dido”, The American Journal of Philology, vol. 104, no. 2, pp. 134–155, 1983.  B.-C. Bae and RM Young, “A use of flashback and foreshadowing for surprise arousal in narrative using a plan-based approach”, in International Conference on Interactive Digital Storytelling. Springer, 2008, pp. 156–167.