Page Actions
Wiki Actions
User Actions
Submit This Story
Writing /alumni/bweber/.html/dokuwiki/data/cache/a/afedd9ca276cdcfba37727e4d9c786a1.i failed
Unable to save cache file. Hint: disk full; file permissions; safe_mode setting.
Writing /alumni/bweber/.html/dokuwiki/data/cache/a/afedd9ca276cdcfba37727e4d9c786a1.xhtml failed

Differences

This shows you the differences between the selected revision and the current version of the page.

infinite_adaptive_mario 2010/09/05 00:12 infinite_adaptive_mario 2010/09/05 00:41 current
Line 1: Line 1:
==== Infinite Adaptive Mario ===== ==== Infinite Adaptive Mario =====
 +**Download:** [[http://users.soe.ucsc.edu/~bweber/mario/AdaptiveMario.jar|here]]
 +\\
 +**Requires:** Java 1.6
 +\\
 +**Controls:** arrows to move, 's' to jump, 'a' to run
 +\\
 +\\
Recently, there has been increased interest in building games that dynamically adapt to players. One of the common approaches to building adaptive games is dynamic difficulty adjustment. However, most of these approaches are limited to parameter tweaking such as adjusting weapon strength or reducing spawning times, and do not modify levels in response to difficulty adjustment. My system attempts to overcome this limitation by incorporating parameter tweaking into procedural content generation. The system creates new levels on the fly in response to the current performance of the player. Recently, there has been increased interest in building games that dynamically adapt to players. One of the common approaches to building adaptive games is dynamic difficulty adjustment. However, most of these approaches are limited to parameter tweaking such as adjusting weapon strength or reducing spawning times, and do not modify levels in response to difficulty adjustment. My system attempts to overcome this limitation by incorporating parameter tweaking into procedural content generation. The system creates new levels on the fly in response to the current performance of the player.
-Infinite Adaptive Mario expands on Markus Persson's Infinite Mario by adapting to the skill of the player. A description of the level generator used by the system is provided here. One of the inputs to the system is a set of parameters which specify probabilities for specific events to occur, such as placing a gap. By modifying these probabilities, the system can create a large space of levels with varying difficulty. Infinite Adaptive Mario scales up difficulty by increasing the frequently of gaps, average size of gaps, variation of ground height, and number of enemies. Scaling up the difficulty also tends to result in a larger number of possible paths through a level.+//Infinite Adaptive Mario// expands on Markus Persson's //Infinite Mario// by adapting to the skill of the player. A description of the level generator used by the system is provided [[http://eis-blog.ucsc.edu/2010/09/a-probabilistic-multi-pass-level-generator|here]]. One of the inputs to the system is a set of parameters which specify probabilities for specific events to occur, such as placing a gap. By modifying these probabilities, the system can create a large space of levels with varying difficulty. Infinite Adaptive Mario scales up difficulty by increasing the frequently of gaps, average size of gaps, variation of ground height, and number of enemies. Scaling up the difficulty also tends to result in a larger number of possible paths through a level.
-A level generated at the easiest difficulty setting:+The player begins at level 50, which produces levels with a moderate degree of challenge. Upon successful completion of a level, the challenge is increased. Faster completion times result in larger increases in difficulty. Upon death, the difficulty is decreased based on the amount of progress made by the player. If the player is close to the goal upon death, then the difficulty is decreased only a small amount. A new level is generated when the player either completes a level or fails to complete a level after three deaths.
-{{mario0.png }} +The best way to get a feel for how dynamic difficulty works in Infinite Adaptive Mario is to try it out for yourself. It is available as an executable [[http://users.soe.ucsc.edu/~bweber/mario/AdaptiveMario.jar|JAR]] file (with source), which requires Java 1.6. Use the arrow keeps to move, 'a' to run, and 's' to jump.
-\\+
-And a level generated at the most challenging difficulty setting:+Levels generated at the easiest and most challenging difficulty settings:
-{{mario100.png }} +| {{mario0.png }} {{mario100.png }} |
-\\ +
- +
-The player begins at level 50, which produces levels with a moderate degree of challenge. Upon successful completion of a level, the challenge is increased. Faster completion times result in larger increases in difficulty. Upon death, the difficulty is decreased based on the amount of progress made by the player. If the player is close to the goal upon death, then the difficulty is decreased only a small amount. A new level is generated when the player either completes a level or fails to complete a level after three deaths.+
-The best way to get a feel for how dynamic difficulty works in Infinite Adaptive Mario is to try it out for yourself. It is available as an executable JAR file (with source), which requires Java 1.6. Use the arrow keeps to move, 'a' to run, and 's' to jump. 
 
infinite_adaptive_mario.1283645579.txt.gz · Last modified: 2010/09/05 00:12 by bweber     Back to top