Enables custom cars in Rocket League, for free!
Video showcase: https://www.youtube.com/watch?v=Ipqlp0zsMZc
- Use custom 3D models for car bodies and toppers
- Spawn and use any car in the game
- In freeplay: Hitboxes will be accurate
- Perfect for test-driving cars before purchasing in RL item shop 👍
In online games: All spawned cars will have Octane hitboxThis is due to the game's online protections: If you don't own your car, you're forced to use a stock Octane (server-side)
- In freeplay: Hitboxes will be accurate
Note
BakkesMod is no longer enabled in online games due to the addition of EAC on April 28, 2026
Follow the install steps in the latest release
- Download (or create) a custom car. You can find some here
- Extract the
.zipfile. Somewhere inside will be a.jsonfile and a.upkfile - Click the
Open CustomCars folderbutton in the plugin, and put the.jsonfile in that folder - Open the
CookedPCConsolefolder of your RL installation, and put the.upkfile there- An example
MyCustomCar.upkinstalled on Epic (the path will be different for Steam users):C:\Program Files\Epic Games\rocketleague\TAGame\CookedPCConsole\mods\CustomCars\MyCustomCar.upk - You can create subfolders to organize your
.upkfiles if you want. As long as the.upkfiles are somewhere inside theCookedPCConsolefolder
- An example
Here's a video tutorial: https://youtu.be/OlwnVdYyhbk
- Make sure to put the
.jsonfiles inbakkesmod\data\CustomCar\CustomCarsinstead of theacpluginfolder shown in the video
Build with CMake using a compatible toolchain for your platform:
- Windows: MSVC (via Visual Studio or the Build Tools)
- Linux: clang-cl + lld-link
- Cross-compiles against a local MSVC/Windows SDK install (obtained via msvc-wine)
Note
Before building with CMake on Windows, the MSVC environment must be initialized. This is normally handled automatically by IDEs or certain editor extensions like CMake Tools, but if you're building from the command line, do one of the following:
- Use an appropriate Windows terminal profile:
Developer PowerShell for VS 2022Developer Command Prompt for VS 2022
- Or run this script once per shell session:
C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Auxiliary\Build\vcvars64.bat
| Windows | Linux |
|---|---|
./scripts/init-submodules.bat |
./scripts/init-submodules.sh |
Why a script instead of git submodule update --init --recursive ?
- Avoids downloading 200MB of history for the nlohmann/json library
- Ensures Git can detect updates for the other submodules
- On Linux, applies additional submodule fixes to account for a case-sensitive filesystem and MSVC vs Clang compilation compatibility
Make sure to have CMake and Ninja installed
- For custom builds (e.g. a different generator than Ninja), create a
CMakeUserPresets.jsonand specify it there. more info
| Step | Windows | Linux |
|---|---|---|
| 1. Configure | cmake --preset ninja-release |
cmake --preset linux-clang-cl |
| 2. Build | cmake --build --preset Ninja-Release |
cmake --build --preset Ninja-Release-Clang |
- Other presets available in
CMakePresets.json - Output binaries will be in
./plugins
