The agent is always moving towards the right. Whenever the agent is stuck (horizontal speed is zero) or approaching a trap, the agent will jump (unless a block is right above the agent).
Run agent on 100 original SMB chunks: python test_loop.py org
Run agent on 100 VAE-generated SMB chunks: python test_loop.py org
Run agent on 100 (under-fitting) GMM-generated SMB chunks: python test_loop.py gmm-[components]
-
Components to choose from: [ 8, 28, 48, 68, 88, 108, 128]
-
E.g.,
python test_loop.py gmm-128
Run agent on 100 (best-fitting) GMM-generated SMB chunks: python test_loop.py gmm-optim
The playability proportion (the number of chunks passable / the total number of chunks) is printed at the end after the agent has tried traversing all 100 chunks.
My Python version is 3.6.9 and my Pygame vesion is 2.0.0.dev3.
You can update your Pygame to this version using: pip install pygame==2.0.0.dev3
See this post for discussion: pygame/pygame#555
Please cite this project if you use it in your research.
@misc{mario-playability-test,
author = {Zhihan Yang},
howpublished = {GitHub},
title = {{M}ario {P}layability {T}est},
URL = {https://github.com/zhihanyang2022/mario-playability-test},
year = {2020},
}