Rocket league is one of my favourite games, and I'm pretty decent at it (rank champion 1). I kinda felt like my controller was a bit broken when playing this, a lot of commands were just ignored, and forget doing stuff like speed flips. But I did feel like was controlling the car, and everything about the game looked very much like the real thing. Ball movement was on point, I didn't notice any weird bounces or anything.
The lack of opponents pulling triple flip resets and double-tapping musty's (musties?) was the most notable difference from the real thing
Side-effect of the data: clearly the model is better than I normally am at playing, as it spontaneously did several things I had not told it to do and wouldn't really know how to do (at least not with a keyboard).
Really remarkable, congrats!
I saw lots of awesome ablations in the paper (loved it!), but I'm curious if you analyzed the latents to get an intuition for what the model actually learned. Or, is it just that it learned the training data distribution really, really well?
You can read plenty of details in the blog post and tech report but the TLDR is that we trained a multiplayer world model on 10k hours of Rocket League data. We optimized it to be playable at 20fps on a single GPU.
So what you see in the demo is fully generated: there’s no graphics or physics engine. Instead it’s a 5b neural network that takes actions in and gives pixels out.
Having a direct transformation would enable some interesting experiments.
How is the latent state different when everything else stays the same, but you change one physics value, like player one velocity? Is there a cyclical pattern of activation that correlates strongly with the seconds digit of the clock? Can you decode the latent state, give players full boost, and then re-encode it for infinite boost, without losing continuity?
Edit: There sure are a lot of papers on interpretability.
What is the conversation like within Epic now? Is this still the view? What is the future for simulations like this?
I'd be interested in seeing if fine-tunes that include human gameplay data would be possible.
Mira was trained on 10k hours of Rocket League data. The model has 5B parameters and runs 4-player games at 20 fps on a single B200 GPU.
We've released a playable online demo, an in-depth technical report as well as a 1k hour dataset of 4-players gameplay:
Technical report: https://mira-wm.com/paper Repo: https://github.com/mira-wm/mira
It often feels like the model is ignoring my inputs and just doing what it would expect the bot to do (which is unsurprising if the model could predict what would happen next during training without paying attention to the inputs)