Basic rigid body physics for accurate predictions of the ball’s trajectory.
Basic rigid body physics for accurate predictions of the ball’s trajectory.
Improve ball simulation by using the collision meshes in Rocket League.
A predictive model for the ball's response when hit by a car.
How to simulate the car's response to user inputs while in the air.
How to figure out the user's inputs from a car's aerial trajectory.
How to simulate the car's response to user inputs while on the ground.
How to analyze paths to determine shortest arrival time, possible arrival speeds, and boost usage.
How to make your Rocket League bot reliably hit aerials.
Just for fun, here's an example of my bot combining the ideas described in the documents above to perform a ceiling shot:
When the screen reads "PLAYER", that indicates which part was under my control. So, I made the initial touches to set the ball rolling toward the wall, and then turned control over to the bot to execute the ceiling shot maneuver.
This required:
accurate ball simulation to find a suitable contact point on the wall
map-aware path planning to route the car to that contact point
reliable throttle/steering control to ensure the car arrives at the desired contact point, at the right time
map-aware route planning along the wall/ceiling to make the approach for the aerial
more ball prediction to identify a new aerial contact hit
reliable aerial orientation / speed control to execute the planned aerial hit
It was always fun to watch the bot aerial, because it looks so unnatural. Human players are constantly adjusting their orientation in the air and updating their approach, but the bot can predict the outcome of the aerial from the very first frame. So, it just aligns itself to the appropriate direction and doesn't deviate until the maneuver is complete!