Example/template of a Rocket League bot implemented in C#
Make sure you've installed Python 3.7 64 bit or newer. During installation:
- Select "Add Python to PATH"
- Make sure pip is included in the installation
Set up RLBotGUI
- Follow instructions at https://youtu.be/oXkbizklI2U for instructions.
- Use Add -> Load folder in RLBotGUI on the current directory. This bot should appear in the list.
- Install Visual Studio 2015 or newer. It should come with .NET Framework 4.6.1 or newer.
- Open CSharpBot\Bot.sln in Visual Studio.
- In Visual Studio, click the "Start" button,
- In RLBotGUI, put the bot on a team and start the match.
- Install Rider. If you do not have Visual Studio installed alongside Rider, follow this article to set up Rider.
- Open CSharpBot\Bot.sln in Rider.
- In Rider, click the "Run Default" button, which should compile and run the bot. Leave it running.
- The first time you click it, you may be given a dialog to set up the configuration. Click the "Run" button in the dialog to continue.
- In RLBotGUI, put the bot on a team and start the match.
This project uses a package manager called NuGet to keep track of the RLBot framework. The framework will get updates periodically, and you'll probably want them, especially if you want to make sure your bot will work right in the next tournament!
- In Visual Studio, right click on the Bot C# project and choose "Manage NuGet Packages..."
- Click on the "Installed" tab. You should see a package called "RLBot.Framework".
- If an upgrade is available, it should say so and give you the option to upgrade.
- In Rider, right click on the Bot C# project and choose "Manage NuGet Packages".
- In the "Installed Packages" section, click on the package called "RLBot.Framework".
- If the "Version" dropdown contains a higher version than what your project currently has, you can select that version and click the Upgrade button next to the dropdown to upgrade.
- Bot behavior is controlled by
CSharpBot/Bot/Bot.cs
- Bot appearance is controlled by
PythonAgent/appearance.cfg
- See the wiki for tips to improve your programming experience.
- If you'd like to keep up with bot strategies and bot tournaments, join our Discord server. It's the heart of the RLBot community!
The C# bot executable is a server that listens for Python clients.
When PythonAgent/PythonAgent.py
is started by the RLBot framework, it connects to the C# bot server and tells it its info.
Then, the C# bot server controls the bot through the RLBot_Core_Interface
DLL.