# How To Install Custom Cars & Tracks on Your Assetto Corsa Server (/docs/assetto-corsa/install-mods)



import { Step, Steps } from 'fumadocs-ui/components/steps';

Assetto Corsa has thousands of community-made cars and tracks. Here's how to install them on your server.

> 📝 **Note:** There is no Steam Workshop for Assetto Corsa servers. All custom content is installed manually. Popular sources include [Overtake.gg](https://www.overtake.gg) (formerly RaceDepartment), [AssettoCorsaMods.net](https://assettocorsamods.net), and various Discord communities.

What the Server Needs vs What Clients Need [#what-the-server-needs-vs-what-clients-need]

The server only needs **minimal files** for each mod:

| Content      | Server needs                  | Clients need         |
| ------------ | ----------------------------- | -------------------- |
| Custom car   | `data/data.acd` file only     | Full mod (all files) |
| Custom track | `data/surfaces.ini` file only | Full mod (all files) |

> ⚠️ **Warning:** All players connecting must have the same custom content installed locally. Players without the required mods cannot join.

***

Installing a Custom Car [#installing-a-custom-car]

<div className="fd-steps">
  <div className="fd-step">
    Download the Car Mod [#1-download-the-car-mod]

    Download the car from a trusted mod site. It will typically be a ZIP containing a folder like `custom_car_name/`.
  </div>

  <div className="fd-step">
    Stop Your Server [#2-stop-your-server]

    Log in to the [XGamingServer Panel](https://panel.xgamingserver.com) and stop your server.
  </div>

  <div className="fd-step">
    Upload the Car Files [#3-upload-the-car-files]

    Click **Files** and navigate to `content/cars/`. Upload and extract the car mod folder here.

    The minimum required structure:

    ```
    content/cars/custom_car_name/
      data/
        data.acd
    ```
  </div>

  <div className="fd-step">
    Add the Car to server_cfg.ini [#4-add-the-car-to-server_cfgini]

    Open `cfg/server_cfg.ini` and add the car's folder name to the `CARS=` line (semicolon-separated):

    ```ini
    CARS=ks_ferrari_488_gt3;custom_car_name
    ```
  </div>

  <div className="fd-step">
    Add a Car Entry in entry_list.ini [#5-add-a-car-entry-in-entry_listini]

    Open `cfg/entry_list.ini` and add a new slot:

    ```ini
    [CAR_2]
    MODEL=custom_car_name
    SKIN=default
    SPECTATOR_MODE=0
    DRIVERNAME=
    TEAM=
    GUID=
    BALLAST=0
    RESTRICTOR=0
    ```

    The `MODEL` value must exactly match the folder name in `content/cars/`.
  </div>

  <div className="fd-step">
    Start Your Server [#6-start-your-server]

    Start the server and check the console for any errors.

    ***
  </div>
</div>

Installing a Custom Track [#installing-a-custom-track]

<div className="fd-steps">
  <div className="fd-step">
    Download the Track Mod [#1-download-the-track-mod]

    Download the track. It will be a ZIP containing a folder like `custom_track_name/`.
  </div>

  <div className="fd-step">
    Stop and Upload [#2-stop-and-upload]

    Stop your server. Click **Files**, navigate to `content/tracks/`, and upload/extract the track folder.

    The minimum required structure:

    ```
    content/tracks/custom_track_name/
      data/
        surfaces.ini
    ```
  </div>

  <div className="fd-step">
    Set the Track in Configuration [#3-set-the-track-in-configuration]

    Open `cfg/server_cfg.ini` and set:

    ```ini
    TRACK=custom_track_name
    CONFIG_TRACK=
    ```

    If the track has multiple layouts, set `CONFIG_TRACK` to the layout folder name (check inside the track's folder for subfolders).
  </div>

  <div className="fd-step">
    Start Your Server [#4-start-your-server]

    Start the server and verify the track loads.

    ***
  </div>
</div>

Finding Available Skins [#finding-available-skins]

To list available skins for a car:

1. In **Files**, navigate to `content/cars/[car_name]/skins/`
2. Each subfolder is a skin name
3. Use that folder name as the `SKIN=` value in `entry_list.ini`

***

Using Content Manager (Client-Side Tool) [#using-content-manager-client-side-tool]

[Content Manager](https://assettocorsa.club/content-manager.html) is a popular community launcher that includes a server setup GUI. It can:

* Visually select cars and tracks
* Auto-generate `server_cfg.ini` and `entry_list.ini`
* Pack and deploy server content

While it runs on the client side, it's a useful tool for building your config before uploading to the panel.

***

Troubleshooting [#troubleshooting]

**"No available slots" error:**

* `MAX_CLIENTS` is higher than the number of `[CAR_N]` entries, or the car model name doesn't match

**Custom car not loading:**

* Verify `data/data.acd` exists in the car folder on the server
* Check that the folder name in `content/cars/` matches `MODEL=` in `entry_list.ini` exactly

**Custom track not loading:**

* Verify `data/surfaces.ini` exists in the track folder
* Check `CONFIG_TRACK` value matches a valid layout subfolder, or leave it empty for the default

**Players can't join (mod mismatch):**

* All clients must have the exact same mod content installed. Share download links with your players.

> 💡 **Tip:** Need help? Join our [Discord](https://discord.xgamingserver.com) for support.
