README.md
October 16, 2017 · View on GitHub
Playing Infinite Mario Bro.
The Infinite Mario Bro. is originally written by Minecraft creator MarKus "Notch" Persson, which is able to randomly generate levels. The original version does not exist anymore, so we use the archived one. We additionally add some functions to record the log of events occuring in gameplay for MarioQA dataset.
Setup instructions
- Install JDK, JRE in oracle.
How to run?
- Type and run following line to play Infinite Mario Bro.
$ bash run_mario.sh your_gameplay_id your_fps
There are two parameters: your_gameplay_id and your_fps.
your_gameplay_id: id (or name) of gameplay. The outputs are distinguished with this value.your_fps: controls the speed of gameplay. The default value ofyour_fpsis 45 resulting in 22 fps in our environment. If the speed of gamplay is too slow or fast, then adjust the fps.
Key mappings:
a: Running or holding a shell.s: Jumping.d: Shooting a fireball.
- Press F12 to finish the gamplay.
Then, two outputs are saved as follows:
- Frames:
gameplay/gameplay_id/gameplay_id_#frame.dat - Event log:
event_logs/gameplay_id.json
For example, if gameplay_id is play1, the outputs are gameplay/play1/play1_#frame.dat and event_logs/play1.json)
Event log
Event log contains 11 events (Kill, Die, Junp, Hit, Break, Appear, Shoot, Throw, Kick, Hold, Eat) and is saved as json file.
Each event include following information:
frame: the frame where event occurssceneState: the state of scene (cave|castle|field)marioState: the state of mario (tinyform|superform|fireform)spriteLocation: location of event's target when the event occursmarioLocation: location of mario when the event occursaction: the type of eventtarget: the target of eventmeans: the mean of event
Download the clips of MarioQA dataset
Please follow the instruction in project page
LICENSE
The software is composed with three resources: art resources, code for playing game and code for recording event logs. As Notch mentioned in LICENSE and README, the art resources of Infinite Mario Bro. (images and sounds) are owned by Nintendo and the source code by Notch is public domain. The codes for recording event logs, which are written by us, is being made available for individual research purpose only. Thus, we release the software with research purpose only as in Mario AI Championship (2009-2012) which uses Infinite Mario Bro. for research purpose.