AssettoServer is a custom game server for Assetto Corsa developed with freeroam in mind. It greatly improves upon the default game server by fixing various security issues and providing new features like AI traffic and dynamic weather.
Race/Quali sessions and lap times are not supported yet. Only use this if you want to run a practice-only freeroam server.
This is a fork of https://github.com/Niewiarowski/AssettoServer.
Install the ASP.NET 6 Runtime (select "Hosting Bundle")
assetto-server-win-x64.zipfrom the latest stable release and extract it wherever you want.DO NOT EXTRACT TO YOUR ASSETTO CORSA FOLDER!
AC and AssettoServer use different versions of the Steam SDK that will conflict with each other. If you still feel the need to extract to your AC folder delete the steam_api64.dll from the server first, but this will cause Steam Auth to be broken.
- Follow the ASP.NET 6 Runtime installation instructions for your distro
assetto-server-linux-x64.tar.gzfrom the latest stable release and extract it wherever you want.
Through Content Manager (full)
- Open your AC server folder in Explorer, e.g.
C:\Program Files (x86)\Steam\steamapps\common\assettocorsa\server
acServer.exeto something else
assetto-server-win-x64.zipinto this directory
Now you can run servers through CM just like you would with the original server. Keep in mind that not all features of the original server are supported yet, so some of the server settings in CM will either have no effect or the features will just not work.
The easiest way to get started is creating your server configuration with Content Manager.
After that just click "Pack" to create an archive with all required configs and data files. Extract this archive into the server root folder.
Most features can be controlled via
extra_cfg.yml. If this file does not exist it will be created at first server startup.
The default server implementation of Assetto Corsa does not use the Steam API to determine whether a connected player is actually the account they claim to be. This opens the door for SteamID spoofing, which means someone can impersonate another player.
In this server the Steam Auth API is utilized, which makes SteamID spoofing impossible.
Since the player needs to get a Steam session ticket before joining, a CSP (Custom Shaders Patch) version of 0.1.75 or higher and Content Manager v0.8.2297.38573 or higher is required.
This feature must be enabled in
Logging in as administrator via SteamID
To automatically login as admin enter your SteamID in
admins.txt in the server folder.
Do not use this feature with Steam Auth disabled! Someone might be able to gain admin rights with SteamID spoofing.
It is possible to load one or more AI splines to provide AI traffic. Place
fast_lane.aip) in the maps
ai/ folder and set
The default AI settings have been tuned for Shutoko Revival Project, other maps may require different settings.
To allow AI to take a car slot you have to add a new parameter to the
entry_list.ini, for example:
Possible values for the
AI parameter are
auto- AI will take the slot when it is empty
fixed- AI will always take the car slot. It won't be possible for players to join in this slot
none- AI will never take the slot (default)
AI=auto slots it is highly recommended to specify a
extra_cfg.yml to make sure there is always a minimum amount of AI cars available.
Admins can always join on AI slots.
The server supports CSPs WeatherFX v1 which allows dynamic weather, smooth weather transitions and RainFX. CSP 0.1.76+ is required for this feature.
Three plugins are included that utilize dynamic weather:
- LiveWeatherPlugin for getting realtime weather from openweathermap.org
- RandomWeatherPlugin for random weather
- VotingWeatherPlugin for letting players vote for weather changes
There is an experimental plugin interface for adding functionality to the server. Take a look at the sample plugin to get started with developing your own plugin.
The API is still under development and might change in the future.
If you have trouble setting up a server feel free to visit the #server-troubleshooting channel on our Discord (read #welcome if you can't see that channel). Alternatively you can ask questions here.
Please don't use the GitHub Issue tracker for installation help or configuration questions. Also make sure to read this page first before asking questions that are already answered here!
AssettoServer is licensed under the GNU Affero General Public License v3.0, see LICENSE for more info.
Additionally, you must preserve the legal notices and author attributions present in the server.
Copyright (C) 2022 Niewiarowski, compujuckel
This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details.
You should have received a copy of the GNU Affero General Public License along with this program. If not, see https://www.gnu.org/licenses/.
Additional permission under GNU AGPL version 3 section 7
If you modify this Program, or any covered work, by linking or combining it with the Steamworks SDK by Valve Corporation, containing parts covered by the terms of the Steamworks SDK License, the licensors of this Program grant you additional permission to convey the resulting work.
Additional permission under GNU AGPL version 3 section 7
If you modify this Program, or any covered work, by linking or combining it with plugins published on https://www.patreon.com/assettoserver, the licensors of this Program grant you additional permission to convey the resulting work.