


















































Study with the several resources on Docsity
Earn points by helping other students or get them with a premium plan
Prepare for your exams
Study with the several resources on Docsity
Earn points to download
Earn points by helping other students or get them with a premium plan
Community
Ask the community for help and clear up your study doubts
Discover the best universities in your country according to Docsity users
Free resources
Download our free guides on studying techniques, anxiety management strategies, and thesis advice from Docsity tutors
The potential of procedural content generation for cooperative game levels, focusing on the rogue-like genre and its applications in serious gaming and VR training. The study includes objectives, problem formulation, and future work, as well as references and appendices with figures and pseudocode.
What you will learn
Typology: Study notes
1 / 58
This page cannot be seen from the preview
Don't miss anything!
by Justin Heffron A Thesis Submitted to the Faculty of Purdue University In Partial Fulfillment of the Requirements for the degree of Master of Science Department of Computer Graphics Technology West Lafayette, Indiana August 2020
Dr. Christos Mousas, Chair Department of Computer Graphics Technology Dr. David Whittinghill Department of Computer Graphics Technology Dr. Tim McGraw Department of Computer Graphics Technology Approved by: Nicoletta Adamo-Villani
Table 1: A list of hazards for the dungeon crawler game.............................................................. 24 Table 2: An example list of moves of the RPG dungeon game, divided into the 5 main categories of moves......................................................................................................................................... 31 Table 3: The minimum and maximum for optimized parameters................................................. 47
Procedural level generation is a novel area of research within the field of computer graphics and game development. However, current research and implementations of procedural generation for cooperative games is sparse. Further study is required to validate the use of automatic level creation and to test additional methods of optimization for cooperative games. Additionally, despite many recent developments, many areas within the field of virtual reality remain underexplored. We propose a mathematically defined total cost function for controlling a procedural level generation algorithm for cooperative virtual reality games. This cost term controls an algorithm which gradually improves a generated solution over a series of iterations, bringing it to an optimal state. We present here two games with procedurally created levels and gameplay elements using this mathematical total cost function, as well as proposed experiments to validate the effectiveness of this content in encouraging cooperation and potential use cases for this technology.
perceived lack of artist control over the generation process, many companies fail to utilize it to its full potential (if at all). This results in consistent but slow development times for hand-placed content which can greatly limit the size and scope of a game with a limited timeline. By making use of current procedural generation techniques, developers can significantly speed up their development pipeline and save artists/designers the tedious tasks of repetitively assembling similar levels. 1.2 Research Question The following items represent the research questions for this study: ● To what degree can we control procedural level generation through a mathematical formula to effectively encourage cooperation ● To what degree are the levels of cooperation between two players in procedurally generated game levels similar to the degrees of cooperation between two players in manually created game levels? ● To what degree can this optimization algorithm ensure a fairly consistent level of required cooperation and difficulty across solutions? ● To what degree does playing procedurally generated cooperative game levels improve the cooperative behavior of individuals in performing cooperative tasks? 1.3 Research Significance Procedural content generation holds immense potential for solving a wide variety of problems in a highly efficient manner. In addition to being incorporated into existing game companies workflows, procedural generation holds great potential for rapid development of virtual reality training software. Additional research must be performed to help verify the effectiveness and reliability of procedural generation to encourage its expanded usage in industry. In addition to its applications in the field of entertainment video games, rapid generation of collaborative content has potential applications for the field of collaborative training. Whether for the purpose of creating games to teach team members to collaborate or to generate scenarios for safety/training simulators, these same generative systems can be applied to the developing field of serious gaming and VR training.
1.4 Purpose The question which this research project intends to answer is as follows: to what degree can cooperative game levels be defined mathematically to procedurally generation game content. The results of the procedural content ideally should be user-tested and compared with a similar hand- assembled game level for validity. However, due to the COVID-19 pandemic and subsequent suspension of in-person user studies, this test was not able to be performed. 1.5 Assumptions ● Participants have some prior experience with video games ● Participants have some prior experience with virtual reality ● Participants should all be physically capable of interacting with virtual reality motion tracked controllers 1.6 Limitations ● Due to health concerns resulting from the COVID-19 outbreak, user studies were not able to be performed ● It may be difficult to accurately quantify the level of cooperation between two players ● Cooperation is a loosely defined concept and is highly situational and a user’s awareness ● Different participants may have different social behaviors and be more or less inclined to cooperation due to their personality 1.7 Delimitations ● Given the time constraints of the project, only two simple games will be developed to test the generation algorithm. ● The generation will be balanced with two players in mind.
2.1 Virtual Reality Virtual reality is one of the most popular recent developments in technology in the field of game design. The emergence of consumer-affordable virtual reality equipment has created a boom in development and research. According to a Reuters article from 2018, “The Global Virtual Reality Market was valued at USD 3.13 billion in 2017 and is expected to reach USD 49. billion by 2023.” (Costello, 2018). According to a 2018 TrendForce study, total VR hardware sales have increased from 3.7 million to 5 million between 2017-2018 (Tsaj, 2018). Similar trends can be seen in the data from Forbes on monthly connected VR headsets as found through Steam (Rogers, 2019). Figure 1 : Forbes data on monthly connected headsets on Steam^3. Market trends show a strong increase in virtual reality content, likely due to significantly reduced prices making the hardware affordable to consumers, coupled with the novelty of the relatively new technology. As compared to more traditional games or interactive digital media, immersive virtual reality has much greater room for future development and a larger untapped market potential. Industry developers and researchers alike must take advantage of the booming popularity of this technology in order to utilize it to its full potential. 3 Retrieved from: https://www.forbes.com/sites/solrogers/2019/06/21/2019-the-year-virtual-reality-gets-real/
2.2 Virtual Reality Training As virtual reality becomes more affordable and easily available to consumers and software developers, new and creative use cases for the technology are being found. Virtual reality offers an incredibly high level of immersion and a level of physical interaction/motion which traditional computer games/software lack, while being safe to use (Noguchi, 2019). This allows content creators to simulate potentially dangerous situations (such as construction job sites) without the risk of physical injury or to simulate tasks with large consequences for failure (such as performing surgery or flying planes) without risking damage to property of individuals (De Vries, et al. 204). Additionally, using virtual reality technology is a highly engaging and novel experience, often motivating greater levels of participation and focus which leads to long-term retention benefits. As a result, companies are becoming increasingly interested in virtual reality as an alternative to real-world or on-site training for applicable tasks. In their 2013 paper, Farra et al. (Farra et al., 2013) discuss the potential for VR training for disaster response for nurses. When compared with a more traditional web-based method of instruction, the researchers found that virtual reality training resulted in significantly higher retention of the information over a 2 month period. Virtual reality training, along with virtual reality in general, is becoming increasingly popular due to its many benefits. Given the importance of teamwork in many jobs (such for firefighters and the police), cooperative virtual reality training software could be greatly beneficial. 2.3 Cooperative Games Cooperative games are a subcategory of multiplayer games in which two or more players must work cooperatively, typically against AI enemies or to solve puzzles (games with two or more teams against each other are usually regarded as competitive, even though they involve cooperation). Several different methods have been used throughout the history of video games to encourage (or even force) cooperative behavior between players. In their paper “Game Mechanics for Cooperative Games,” Rocha et al. lists some of the ways in which gameplay elements can be used to encourage cooperative behavior. Perhaps the most obvious of these is
(such as A Way Out^4 ) while less coercive methods can be used to create a game in which multiplayer is strongly encouraged and implied but not rigidly enforced (such as with dungeons in World of Warcraft^5 ). 2.4 Video Games’ Effects on Cooperative Behavior The topic of the impact of video games on human psychology and behavior is quite broad, especially with regards to violent video games. One subset of this research area is the effect of games (either cooperative or competitive) on human cooperative behavior. A study by Greitemeyer and Cox aimed to examine this effect. The researchers defined two condition groups: one group of participants to play a game (Mario Kart: Double Dash^6 ) in single player mode and another to player with a partner. Following this, the groups were separated and the participants were paired randomly with another participant (other than the one with which they had played previously). Participants were asked to complete a moral/trust dilemma with playing chips in which they were asked to give as many chips as they expected to receive from the other person. The study found that those who had played the cooperative mode experienced higher levels of trust than those who had played single player, even when paired with someone other than their original partner. (Greitemeyer & Cox, 2013). 2.5 Procedural Content Generation Procedural content generation (PCG) is a popular new area of research as it allows developers to rapidly create large amounts of content without having to manually create them. This results in slower upfront development times as the procedural generation algorithms are developed and much quicker development speeds later as only fine-tuning needs to be made (Kruel, 2017). The history of procedural generation in games can be traced back many years to early pioneering games such as Rogue^7. The original Rogue created a random dungeon for the player to explore and fight their way through and featured a perma-death (permanent-death) system in which a 4 https://www.ea.com/games/a-way-out 5 https://worldofwarcraft.com/en-us/ 6 https://www.mariowiki.com/Mario_Kart:_Double_Dash!! 7 https://docs.freebsd.org/44doc/usd/30.rogue/paper.pdf
player’s death was permanent and required a complete restart of the game. This game’s core concepts and namesake have spawned the genres “Rogue-Like” and “Rogue-Lite” which feature randomly generated content and frequently similar permadeath mechanics to the original. Figure 2 : A screenshot^8 of the game Rogue. Another well-known title which features heavy amounts of procedural generation is Minecraft, a sandbox exploration/crafting game and the current best-selling video game of all time^9. Procedural content can also be created by the developers and “baked” into static content, rather than being generated at runtime. In his talk at the 2012 SIGGRAPH conference, Caleb Howard of Electronic Arts explains how his team created 300 tracks for the snowboard racing game SSX, a feat which would have been impossible if done manually (Howard, 2012). As the growing number of unique and interesting use cases shows, the potential applications for procedural content generation in the gaming industry are quite vast. A 2017 article by Jonas Freiknecht and Wolfgang Effelsberg (Freiknecht & Effelsberg, 2017) examined the various forms that procedural generation has taken in computer graphics as well as the prevalence of each type as found in either scholarly research or in industry. Some of the types of procedural content generation include: “creation of textures and materials, generation of floor plans, humanoid model generation, animation of humanoid models, and artificial personality generation” (Freiknecht & Effelsberg, 2017). One key takeaway from this study is the apparent 8 Taken from https://commons.wikimedia.org/wiki/File:Rogue_Screen_Shot_CAR.PNG 9 https://www.engadget.com/2019/05/17/minecraft-has-sold-176-million-copies-worldwide/
such as No Man’s Sky^11 and Shadow of Mordor^12 appear to show a widening acceptance of PCG, Additional research on procedural generation and its use cases are required to ease developer anxieties regarding the topic and encourage its expanded usage in the gaming industry. 2.6 Procedural Content Generation for Cooperative Games Many of the well-known coop-supported procedural games (such as Minecraft^13 , Don’t Starve^14 , and No Man’s Sky^15 ) feature extensive single player modes as well and appear to have coop as an additional feature rather than a key element of the game. By comparison, many of the most iconic cooperative games (such as Overcooked 16 and Portal 2^17 ’s multiplayer mode) feature manually created content. Very little research has been done on the usage of procedural level generation in coop multiplayer games. One noteworthy article, “Procedural Content Generation for Cooperative Games” by Rafael Ramos stands alone in this area of study. In this study, the author aimed to examine the viability of using a procedural generation algorithm in a simple cooperative game (Geometry Friends) and whether or not users could determine which content was manually created and that which was automatically created. The results found that users believe all content to be made by hand and found strong levels of cooperation (even in levels which did not force cooperation). This study is a critical beginning for this area of research (Ramos, 2015). However, it has many limitations as mentioned by the author. Firstly, the generation algorithm used is not evolutionary, meaning it generates a random solution and checks its viability. If the level is unsuitable, a completely new solution is generated. By comparison, algorithms such as simulated annealing progress through a series of iterations and gradually bring a solution closer to an optimal state. Secondly, the scope of the game itself is quite small. All game levels are 2D and take place on a single screen (no scrolling maps). This limits the content being generated to a very small area. Additionally, the levels are fairly simple puzzles which require the users to 11 https://www.nomanssky.com/ 12 https://store.steampowered.com/app/241930/Middleearth_Shadow_of_Mordor/ 13 https://www.minecraft.net/en-us/ 14 https://www.klei.com/games/dont-starve 15 https://www.nomanssky.com/ 16 https://store.steampowered.com/app/448510/Overcooked/ 17 https://store.steampowered.com/app/620/Portal_2/
cooperatively gather purple diamonds scattered about. The game features very few elements (players, diamonds, platforms, walls) and simple cooperative mechanics. In order to verify the usefulness of procedural generation for cooperative games, it must be applied to a wider array of games with different genres and form factors. 2.7 Simulated Annealing Simulated annealing is a stochastic optimization technique for finding a solution to a computational problem through randomly generated solutions. It’s named is based on the classical blacksmithing where metal is heated to a high temperature for making large changes. As the material cools down over time, it becomes less malleable and changes become more precise. Similarly, with simulated annealing, a series of optimization iterations will start with a high temperature value which allows for a wide range of values to be accepted during each proposed change to the solution, including potentially “bad” changes which take the solution farther from a desired outcome. As the iterations progress and the temperature cools down, the changes become less drastic until, ultimately, a final solution is reached which meets the desired conditions (Carr, 2012). During each iteration, a “move” is performed: an action in which the current configuration or solution is altered slightly in a random way. Depending on the desired results and the content being optimized, developers can define any number of moves to be a part of their optimization process. In the paper “Make it Home: Automatic Optimization of Furniture Arrangement” explored the use of simulated annealing as part of an algorithm to generate random arrangements of furniture. (Yu, et al. 2011). The generation algorithm determines things such as pairwise relationships between objects (such as between tables and chairs) and required visibility (such as between a sofa and a tv) by providing examples of hand-placed furniture arrangements. Based on these pairwise relationships, several cost terms are defined for the simulated annealing process. Less accurate arrangements lead to higher costs which the optimization then tries to correct. During each iteration, a random move of objects occurs. Then, the system re-assesses the current cost. This cycle continues as the furniture arrangement becomes more optimal, ultimately resembling a sensible configuration. The key factor which allows simulating annealing to be effective for solving this problem is that the relationships between objects can be mathematically defined and