Super Mario Bros. is Harder/Easier Than We Thought


Mario is back! In this sequel, we prove that solving a generalized level of Super Mario Bros. is PSPACE-complete, strengthening the previous NP-hardness result (FUN 2014). Both our PSPACE-hardness and the previous NP-hardness use levels of arbitrary dimensions and require either arbitrarily large screens or a game engine that remembers the state of off-screen sprites. We also analyze the complexity of the less general case where the screen size is constant, the number of on-screen sprites is constant, and the game engine forgets the state of everything substantially off-screen, as in most, if not all, Super Mario Bros. video games. In this case we prove that the game is solvable in polynomial time, assuming levels are explicitly encoded; on the other hand, if levels can be represented using run-length encoding, then the problem is weakly NP-hard (even if levels have only constant height, as in the video games). All of our hardness proofs are also resilient to known glitches in Super Mario Bros., unlike the previous NP-hardness proof. 1998 ACM Subject Classification F.1.3 Complexity Measures and Classes

DOI: 10.4230/LIPIcs.FUN.2016.13

Extracted Key Phrases

8 Figures and Tables

Cite this paper

@inproceedings{Demaine2016SuperMB, title={Super Mario Bros. is Harder/Easier Than We Thought}, author={Erik D. Demaine and Giovanni Viglietta and Aaron Williams}, booktitle={FUN}, year={2016} }