Assessing fun in platform games - Diogo Ferreira Pinela (2015)
Platform games are one of the oldest video game genres, and they have recently gained in popularity due to their simple mechanics. However, they can become repetitive once beaten, and thus stand to benefit greatly from procedural content generation, extending their length without boring the player. There are several methods to procedurally generate levels; some assemble low-level components directly, whereas others base their constructions on more abstract representations of the level's structure. In this dissertation, we have developed a three-phase level generation method for Sonic levels, of the latter kind, using a graph to represent the possible paths through the level. These paths are then allocated space on the map by transposing the graph onto a grid, keeping its topology. Once this is done, the rectangular zone of the level corresponding to each occupied block in the grid is constructed independently from the others. In addition, to add a new element of fun and variety, the developed level generator also includes a boss generator, which allows each level to feature a unique challenge at the end, like the classic Sonic games did. The generator's output can be controlled by a set of parameters, which control the probabilities of various elements appearing. In order to adjust the generated levels to the player's preferences, a method of inferring and parameterising these preferences from gameplay data has been developed, as well as a way of calculating appropriate parameters for the generator from the preference parameters. The developed game was then subject to a test, where several people were asked to play a set of consecutive levels in a session to assess the effectiveness of the adaptation mechanism. The results indicate that the approach followed shows promise, although there is yet much to improve.