Dynamic game difficulty balancing

Dynamic game difficulty balancing, also known as dynamic difficulty adjustment (DDA) or dynamic game balancing (DGB), is the process of automatically changing parameters, scenarios, and behaviors in a video game in real-time, based on the player's ability, in order to avoid making the player bored (if the game is too easy) or frustrated (if it is too hard). However, letting AI players break the rules to which players are bound can cause the AI to cheat—for example, AI players might be given unlimited speed in racing games to stay near the human player. The goal of dynamic difficulty balancing is to keep the user interested from the beginning to the end, providing a good level of challenge.

Traditionally, game difficulty increases steadily along the course of the game (either in a smooth linear fashion, or through steps represented by levels). The parameters of this increase (rate, frequency, starting levels) can only be modulated at the beginning of the experience by selecting a difficulty level. Still, this can lead to a frustrating experience for both experienced and inexperienced gamers, as they attempt to follow a preselected learning or difficulty curve. Dynamic difficulty balancing attempts to remedy this issue by creating a tailor-made experience for each gamer. As the users' skills improve through time (as they make progress via learning), the level of the challenges should also continually increase. However, implementing such elements poses many challenges to game developers; as a result, this method of gameplay is not widespread.

[A]s players work with a game, their scores should reflect steady improvement. Beginners should be able to make some progress, intermediate people should get intermediate scores, and experienced players should get high scores ... Ideally, the progression is automatic; players start at the beginner's level and the advanced features are brought in as the computer recognizes proficient play.

Different approaches are found in the literature to address dynamic game difficulty balancing. In all cases, it is necessary to measure, implicitly or explicitly, the difficulty the user is facing at a given moment. This measure can be performed by a heuristic function, which some authors call "challenge function". This function maps a given game state into a value that specifies how easy or difficult the game feels to the user at a specific moment. Examples of heuristics used are:

The rate of successful shots or hits

The numbers of won and lost pieces

Life points

Evolution

Time to complete some task

... or any metric used to calculate a game score. Chris Crawford said "If I were to make a graph of a typical player's score as a function of time spent within the game, that graph should show a curve sloping smoothly and steadily upward. I describe such a game as having a positive monotonic curve". Games without such a curve seem "either too hard or too easy", he said.[1]

Hunicke and Chapman’s approach[2] controls the game environment settings in order to make challenges easier or harder. For example, if the game is too hard, the player gets more weapons, recovers life points faster, or faces fewer opponents. Although this approach may be effective, its application can result in implausible situations. A straightforward approach is to combine such "parameters manipulation" to some mechanisms to modify the behavior of the non-player characters (characters controlled by the computer and usually modeled as intelligent agents). This adjustment, however, should be made with moderation, to avoid the 'rubber band' effect. One example of this effect in a racing game would involve the AI driver's vehicles becoming significantly faster when behind the player's vehicle, and significantly slower while in front, as if the two vehicles were connected by a large rubber band.

A traditional implementation of such an agent’s intelligence is to use behavior rules, defined during game development. A typical rule in a fighting game would state "punch opponent if he is reachable, chase him otherwise". Extending such an approach to include opponent modeling can be made through Spronck et al.′s dynamic scripting,[3][4] which assigns to each rule a probability of being picked. Rule weights can be dynamically updated throughout the game, accordingly to the opponent skills, leading to adaptation to the specific user. With a simple mechanism, rules can be picked that generate tactics that are neither too strong nor too weak for the current player.

Andrade et al.[5] divide the DGB problem into two dimensions: competence (learn as well as possible) and performance (act just as well as necessary). This dichotomy between competence and performance is well known and studied in linguistics, as proposed by Noam Chomsky.[6] Their approach faces both dimensions with reinforcement learning (RL). Offline training is used to bootstrap the learning process. This can be done by letting the agent play against itself (selflearning), other pre-programmed agents, or human players. Then, online learning is used to continually adapt this initially built-in intelligence to each specific human opponent, in order to discover the most suitable strategy to play against him or her. Concerning performance, their idea is to find an adequate policy for choosing actions that provide a good game balance, i.e., actions that keep both agent and human player at approximately the same performance level. According to the difficulty the player is facing, the agent chooses actions with high or low expected performance. For a given situation, if the game level is too hard, the agent does not choose the optimal action (provided by the RL framework), but chooses progressively less and less suboptimal actions until its performance is as good as the player’s. Similarly, if the game level becomes too easy, it will choose actions whose values are higher, possibly until it reaches the optimal performance.

Demasi and Cruz[7] built intelligent agents employing genetic algorithms techniques to keep alive agents that best fit the user level. Online coevolution is used in order to speed up the learning process. Online coevolution uses pre-defined models (agents with good genetic features) as parents in the genetic operations, so that the evolution is biased by them. These models are constructed by offline training or by hand, when the agent genetic encoding is simple enough.

Other work in the field of DGB is based on the hypothesis that the player-opponent interaction—rather than the audiovisual features, the context or the genre of the game—is the property that contributes the majority of the quality features of entertainment in a computer game.[8] Based on this fundamental assumption, a metric for measuring the real time entertainment value of predator/prey games was introduced, and established as efficient and reliable by validation against human judgment.

Further studies by Yannakakis and Hallam[9] have shown that artificial neural networks (ANN) and fuzzy neural networks can extract a better estimator of player satisfaction than a human-designed one, given appropriate estimators of the challenge and curiosity (intrinsic qualitative factors for engaging gameplay according to Malone)[10] of the game and data on human players' preferences. The approach of constructing user models of the player of a game that can predict the answers to which variants of the game are more or less fun is defined as Entertainment Modeling. The model is usually constructed using machine learning techniques applied to game parameters derived from player-game interaction and/or statistical features of player's physiological signals recorded during play.[11] This basic approach is applicable to a variety of games, both computer[9] and physical.

Andrew Rollings and Ernest Adams cite an example of a game that changed the difficulty of each level based on how the player performed in several preceding levels. Players noticed this and developed a strategy to overcome challenging levels by deliberately playing badly in the levels before the difficult one. The authors stress the importance of covering up the existence of difficulty adaptation so that players are not aware of it.[12]

Archon's computer opponent slowly adapts over time to help players defeat it.[13]Danielle Bunten designed both M.U.L.E. and Global Conquest to dynamically balance gameplay between players. Random events are adjusted so that the player in first place is never lucky and the last-place player is never unlucky.[14]

The first Crash Bandicoot game and its sequels make use of a "Dynamic Difficulty Adjustement" system, slowing down obstacles and adding continue points according to the player's number of deaths. According to the game's lead designer Jason Rubin, the goal was to "help weaker players without changing the game for the better players".[15]

The video game Flow was notable for popularizing the application of mental immersion (also called flow) to video games with its 2006 Flash version. The video game design was based on the master's thesis of one of its authors, and was later adapted to PlayStation 3.

SiN Episodes released in 2006 featured a "Personal Challenge System" where the numbers and toughness of enemies faced would vary based on the performance of the player to ensure the level of challenge and pace of progression through the game. The developer, Ritual Entertainment, claimed that players with widely different levels of ability could finish the game within a small range of time of each other.[16]

In 2005, Resident Evil 4 employed a system called the "Difficulty Scale", unknown to most players, as the only mention of it was in the Official Strategy Guide. This system grades the player's performance on a number scale from 1 to 10, and adjusts both enemy behavior/attacks used and enemy damage/resistance based on the player's performance (such as deaths, critical attacks, etc.). The selected difficulty levels lock players at a certain number; for example, on Normal difficulty, one starts at Grade 4, can move down to Grade 2 if doing poorly, or up to Grade 7 if doing well. The grades between difficulties can overlap.[17]

God Hand, a 2006 video game developed by Clover Studio, directed by Resident Evil 4 director Shinji Mikami, and published by Capcom for the PlayStation 2, features a meter during gameplay that regulates enemy intelligence and strength. This meter increases when the player successfully dodges and attacks opponents, and decreases when the player is hit. The meter is divided into four levels, with the hardest level called "Level DIE." The game also has three difficulties, with the easy difficulty only allowing the meter to ascend to level 2, while the hardest difficulty locks the meter to level DIE. This system also offers greater rewards when defeating enemies at higher levels.

The 2008 video game Left 4 Dead uses a new artificial intelligence technology dubbed "The AI Director".[18] The AI Director is used to procedurally generate a different experience for the players each time the game is played. It monitors individual players' performance and how well they work together as a group to pace the game, determining the number of zombies that attack the player and the location of boss infected encounters based on information gathered. The Director also determines how quickly players are moving through the level towards each objective; if it detects that players have remained in one place for too long or are not making enough progress, it will summon a horde of common infected to force any players and AI Characters present to move from their current location and combat the new threat. Besides pacing, the Director also controls some video and audio elements of the game to set a mood for a boss encounter or to draw the players' attention to a certain area.[19] Valve calls the way the Director is working "procedural narrative" because instead of having a difficulty level which just ramps up to a constant level, the A.I. analyzes how the players fared in the game so far, and try to add subsequent events that would give them a sense of narrative.[20]

Madden NFL 09 introduces "Madden IQ", which begins with an optional test of the players knowledge of the sport, and abilities in various situations. The score is then used to control the game's difficulty.[21][22]

In the match-3 game Fishdom, the time limit is adjusted based on how well the player performs. The time limit is increased should the player fail a level, making it possible for any player to beat a level after a few tries.

In the 1999 video game Homeworld, the number of ships that the AI begins with in each mission will be set depending on how powerful the game deems the player's fleet to be. Successful players have larger fleets because they take fewer losses. In this way, a player who is successful over a number of missions will begin to be challenged more and more as the game progresses.

In Fallout: New Vegas and Fallout 3, as the player increases in level, tougher variants of enemies, enemies with higher statistics and better weapons, or new enemies will replace older ones to retain a constant difficulty, which can be raised, using a slider, with experience bonuses and vice versa in Fallout 3. This can also be done in New Vegas, but there is no bonus to increasing or decreasing the difficulty.

The Mario Kart series features items during races that help an individual driver get ahead of their opponents. These items are distributed based on a driver's position in a way that is an example of dynamic game difficulty balancing. For example, a driver near the bottom of the field is likely to get an item that will drastically increase their speed or sharply decrease the speed of their opponents, whereas a driver in first or second place can expect to get these kinds of items rarely (and will probably receive the game's weaker items).

An early example of difficulty balancing can be found in Zanac, developed in 1986 by Compile. The game featured a unique adaptive artificial intelligence, in which the game automatically adjusted the difficulty level according to the player's skill level, rate of fire, and the ship's current defensive status/capability. Earlier than this can be found in Midway's 1975 Gun Fight coin-op game. This head to head shoot-em-up would aid whichever player had just been shot, by placing a fresh additional object, such as a Cactus plant, on their half of the play-field making it easier for them to hide.