Automatic Mapping of NES Games with Mappy
This addresses the tedious and error-prone process of manual map creation for game players, agents, and procedural content generation, though it is incremental as it builds on existing automation efforts.
The authors tackled the problem of manually creating game maps by developing Mappy, a system that automatically generates linked room maps, tile grids, object positions, and room clusters from NES game programs and input sequences, producing a good approximation of game maps.
Game maps are useful for human players, general-game-playing agents, and data-driven procedural content generation. These maps are generally made by hand-assembling manually-created screenshots of game levels. Besides being tedious and error-prone, this approach requires additional effort for each new game and level to be mapped. The results can still be hard for humans or computational systems to make use of, privileging visual appearance over semantic information. We describe a software system, Mappy, that produces a good approximation of a linked map of rooms given a Nintendo Entertainment System game program and a sequence of button inputs exploring its world. In addition to visual maps, Mappy outputs grids of tiles (and how they change over time), positions of non-tile objects, clusters of similar rooms that might in fact be the same room, and a set of links between these rooms. We believe this is a necessary step towards developing larger corpora of high-quality semantically-annotated maps for PCG via machine learning and other applications.