Ever wonder what it would be like for a bot to learn how to play Super Mario Kart? YouTuber and programmer SethBling’s newest creation MariFlow uses machine learning to create a bot that can zip through Donut Plains 1 just like a human.
SethBling’s done some pretty impressive stuff before now. He’s put a working Atari 2600 emulator into Minecraft, injected code into Super Mario World to allow modding, and was the first person to perform, by hand, a Super Mario World glitch previously thought to only be achievable by a computer.
This isn’t even the first time that SethBling has created a neural network that plays a Mario game. In 2015, he created Mar/IO, which used machine learning to teach itself how to play Super Mario World. The difference with MariFlow is that it learned to play Mario Kart by analysing SethBling’s own gameplay. Using fifteen hours of capture footage, MariFlow learned Seth’s play style.
As he explains it, MariFlow is a “feedforward neural network.” The bot first analyses controller inputs fifteen times a second. It is able to remember information from each previous computation, discarding potential decisions that don’t match up with the button presses analysed from Seth’s fifteen hours of gameplay. In this way, it learned how to play like he did. Eventually, it was able to use that data to complete races and even take first place in the 50cc Mushroom and Flower Cups.
SethBling has released the MariFlow code and all of his recorded inputs so that other players can train it to play even better. Don’t worry. It probably won’t learn to conquer the world. Just Rainbow Road.