Instant Deploy
DDoS Protected
7 Global Regions
Connect Hosting logo
BeamMPBlogHelpSupport
Sign inGet Started
Games
BeamMPMinecraftRustPalworld
BeamMP
Blog
Help
Support
Sign inGet Started
99.9% Uptime
Instant Deploy
DDoS Protected
Global Network
Connect Hosting logo

Connect Hosting offers reliable hosting at low prices while making sure our customers come first. We focus on customer service and customer satisfaction.

Product

  • Game Servers
  • BeamMP
  • London, UK
  • Ashburn, US East
  • Frankfurt, EU

Support

  • Help Center
  • Blog
  • Contact Us
  • Status

Legal

  • Terms of Service
  • Privacy Policy
  • Cookie Policy

© 2026 Connect Hosting. All rights reserved.

Powered by
Stripe·Pterodactyl·AWS
BlogTutorialsAssetto Corsa server_cfg.ini Explained (Every Setting, Line by Line)
Cockpit view of an Assetto Corsa car dashboard and steering wheel
Tutorials

Assetto Corsa server_cfg.ini Explained (Every Setting, Line by Line)

A complete, annotated reference for the Assetto Corsa server_cfg.ini file — every [SERVER], session, weather and assist setting explained, with the common myths corrected.

recals
July 17, 20269 min read
Share:
Share

On This Page

server_cfg.ini is the main configuration file for an Assetto Corsa racing server — the stock Kunos dedicated server. It controls the track, the sessions, the grid size, the assists, the race rules and the weather. Most guides tell you to paste in a template and change the name. This one explains every setting, what it actually does, and which values make sense — plus it corrects a few keys that half the internet gets wrong.

One thing to get straight before we start: this file belongs to the Kunos racing server. A freeroam server (AssettoServer) uses server_cfg.ini too, but adds a third file, extra_cfg.yml, for AI traffic and plugins. If you're setting up traffic and cruising, none of the race-rules settings below apply to you — read which Assetto Corsa server you actually need first. Everything here is the racing path.

server_cfg.ini lives in the server's cfg/ folder alongside entry_list.ini (the grid). Let's go through it section by section.

The [SERVER] section

This is the big one — server identity, network, grid size and race rules all live here.

; ---- cfg/server_cfg.ini → [SERVER] ---- [SERVER] NAME=My League — Round 3 GT3 @ Spa ; name shown in the server browser CARS=ks_ferrari_488_gt3;ks_mclaren_650_gt3 ; ';'-separated allowed car folders TRACK=spa ; track folder name CONFIG_TRACK= ; track layout subfolder ("" if none) MAX_CLIENTS=24 ; max drivers — MUST be <= track pit boxes PASSWORD= ; join password ("" = open) ADMIN_PASSWORD=change-this ; enables in-chat admin via /admin <password> UDP_PORT=9600 TCP_PORT=9600 HTTP_PORT=8081 ; lobby/HTTP port — must be reachable REGISTER_TO_LOBBY=1 ; 1 = list on the public lobby; 0 = private PICKUP_MODE_ENABLED=1 ; 1 = pickup (pick a car, join anytime) LOCKED_ENTRY_LIST=0 ; 1 = only GUIDs in entry_list.ini may join LOOP_MODE=1 ; 1 = loop the weekend forever

Key notes:

  • CARS is a whitelist, not the grid. The actual grid is defined in entry_list.ini. Every MODEL in the entry list must also appear in CARS.
  • MAX_CLIENTS must be less than or equal to the track's number of pit boxes. Most Kunos tracks have 24 pit boxes, so ~24 is the practical cap. Setting it higher than the track supports gives you ghost cars that never spawn — this is an engine limit, not a hosting one, and it's the reason racing grids are small.
  • ADMIN_PASSWORD is what you type in chat as /admin <password> to get admin powers. Keep it private and different from the join password.
  • PICKUP_MODE_ENABLED and LOCKED_ENTRY_LIST together decide how leagues lock a grid — see the Booking vs pickup section below.

Race framing and results

RACE_OVER_TIME=180 ; seconds after the LEADER finishes before the race force-ends RESULT_SCREEN_TIME=60 ; seconds of results screen between sessions START_RULE=1 ; 0 = locked to grid, 1 = teleport jump-start fix, 2 = drive-through REVERSED_GRID_RACE_POSITIONS=0 ; 0 = no 2nd race; N = reverse top N; -1 = reverse all RACE_EXTRA_LAP=0 ; timed races: force one extra lap after the leader crosses
  • RACE_OVER_TIME is how long backmarkers get to complete their lap after the leader takes the flag before the race is force-ended.
  • START_RULE controls the start procedure: 0 locks cars to the grid until green, 1 teleports a jumped-start driver back, 2 gives a drive-through penalty for a jump start (on very short races this reverts to a teleport).
  • REVERSED_GRID_RACE_POSITIONS runs an optional second race with a reversed grid from race one's finishing order. This is the correct key — you may see RACE_GAP_ADDITIONAL_LAPS quoted elsewhere for grid reversal; that key does not exist in the Kunos server. Ignore it.

Physics and difficulty (server-enforced)

These apply to every client, regardless of their own settings — that's the point of a server.

FUEL_RATE=100 ; 0..infinity; 100 = realistic fuel burn DAMAGE_MULTIPLIER=100 ; 0 (none) .. 100 (full) TYRE_WEAR_RATE=100 ; 0..infinity; 100 = realistic wear MAX_BALLAST_KG=100 ; ceiling for per-car BALLAST set in entry_list.ini LEGAL_TYRES=SM;S;M;H ; ';'-separated allowed tyre short codes

LEGAL_TYRES is server-wide (in [SERVER]), not per-car. Per-car ballast and restrictor go in entry_list.ini — covered in running a league race weekend.

Driver assists — a three-state setting, not a checkbox

This is the one people misread. ABS_ALLOWED and TC_ALLOWED are tri-state:

ABS_ALLOWED=1 ; 0 = nobody, 1 = only factory-equipped cars, 2 = everyone TC_ALLOWED=1 ; same 0 / 1 / 2 scale STABILITY_ALLOWED=0 ; 0 = off, 1 = on AUTOCLUTCH_ALLOWED=1 ; 0 = off, 1 = on TYRE_BLANKETS_ALLOWED=1 ; 1 = tyres start at optimal temperature

ABS_ALLOWED=1 doesn't mean "on" — it means "only cars that had ABS in real life may use it". Set 2 if you want everyone to have it, 0 to ban it entirely. TC_ALLOWED works the same way. The others are plain on/off.

Penalties and cut detection — read this carefully

Here's the correction that separates a real guide from a copy-paste one: there is no PENALTIES=1 master switch in the Kunos server. That's a Content Manager UI toggle, not a real config key. The actual cut and penalty controls in [SERVER] are:

RACE_GAS_PENALTY_DISABLED=0 ; 0 = cutting triggers the "lift the gas" penalty; 1 = only logged ALLOWED_TYRES_OUT=2 ; wheels allowed off-track before it's a cut; -1 disables cut detection MAX_CONTACTS_PER_KM=-1 ; -1 = off; N = auto-kick after N contacts per km KICK_QUORUM=85 ; % of players needed to pass a kick vote VOTING_QUORUM=80 ; % needed to pass a session-restart vote BLACKLIST_MODE=1 ; how bans are handled after a kick

You will also not find keys like PENALTIES, JUMP_START_PENALTY, ANTI_CUTTING_ENABLED or MANDATORY_PIT in the Kunos file — they don't exist. Serious league penalty enforcement (track-limit strikes, stop-and-go, minimum pit time, driver swaps) is done with a plugin — KissMyRank or Real Penalty — not server_cfg.ini. Our racing servers ship KissMyRank built in for exactly this reason.

Mandatory pit stop

RACE_PIT_WINDOW_START=25 ; window opens (lap number for lap races, minute for timed) RACE_PIT_WINDOW_END=35 ; window closes

A stop only counts if the driver pits and stops in their box inside this window. Base Assetto Corsa enforces "must pit in the window" but not what the stop does (tyre change, minimum time) — that's plugin territory again.

The session sections: [PRACTICE], [QUALIFY], [RACE]

The server runs sessions in order — practice, then qualifying, then race — and only the sections that exist are run. A race-only server can omit practice and qualifying.

[PRACTICE] NAME=Practice TIME=30 ; session length in MINUTES IS_OPEN=1 ; 0 = no join, 1 = free join, 2 = join until 20s before green [QUALIFY] NAME=Qualify TIME=15 IS_OPEN=1 [RACE] NAME=Race LAPS=20 ; race distance by laps TIME=0 ; if > 0, race is TIMED (minutes) instead of lap-counted WAIT_TIME=60 ; seconds on the grid before the green light IS_OPEN=2

Two things to remember:

  • TIME is always minutes. Practice and qualifying are always time-based.
  • In [RACE], use LAPS or TIME, not both. Set LAPS=20, TIME=0 for a 20-lap race, or LAPS=0, TIME=30 for a 30-minute timed race.
  • IS_OPEN=2 lets latecomers join up to ~20 seconds before the start. Leagues often set 1 or 0 on the race so nobody parachutes into a formation.

Dynamic track and weather

[DYNAMIC_TRACK] SESSION_START=95 ; track grip % at the start of the first session RANDOMNESS=2 ; random grip variation LAP_GAIN=30 ; laps needed to rubber-in the track to 100% SESSION_TRANSFER=80 ; % of built-up grip carried to the next session [WEATHER_0] ; add [WEATHER_1], [WEATHER_2]... and the server randomises between them GRAPHICS=3_clear ; weather graphics preset (or a Sol/CSP preset name) BASE_TEMPERATURE_AMBIENT=18 VARIATION_AMBIENT=2 BASE_TEMPERATURE_ROAD=6 ; road temp is an OFFSET added to ambient, not an absolute VARIATION_ROAD=1 WIND_BASE_SPEED_MIN=3 WIND_BASE_SPEED_MAX=15 WIND_BASE_DIRECTION=30 WIND_VARIATION_DIRECTION=15

BASE_TEMPERATURE_ROAD is added on top of ambient — so ambient 18 with a road offset of 6 gives roughly a 24°C track. Define multiple [WEATHER_n] blocks and the server picks between them each session.

Booking vs pickup mode

PICKUP_MODE_ENABLED decides the whole join model:

  • Pickup mode (=1) — the modern default. Drivers connect any time, pick an available car, and spawn. Public servers use this.
  • Booking mode (=0) — requires a [BOOK] session where drivers reserve a slot before the weekend starts. Kunos's own help text literally says "do not use it" — it's clunky and largely deprecated.

For a league you almost never want true booking mode. The modern recipe is pickup mode on plus LOCKED_ENTRY_LIST=1, which restricts joining to Steam GUIDs already listed in entry_list.ini. That gives you a fixed, known grid without the booking-session hassle. The full league setup — locked entry list, GUID-pinned drivers, ballast and restrictors — is its own guide: running an Assetto Corsa league race weekend.

Frequently Asked Questions

Where is the PENALTIES setting in server_cfg.ini?

There isn't one. PENALTIES=1 is a Content Manager interface toggle, not a real Kunos config key. The genuine controls are RACE_GAS_PENALTY_DISABLED (the cut penalty), ALLOWED_TYRES_OUT (cut tolerance), START_RULE (jump-start), and MAX_CONTACTS_PER_KM (contact kicks). For proper track-limit and collision penalties you need a plugin like KissMyRank or Real Penalty.

Why can't I get more than about 24 players?

MAX_CLIENTS is capped by the number of pit boxes on the track, and most Kunos tracks have 24. Set it higher and the extra cars simply never spawn. This is an engine limit of the racing server — if you want large populations you want a freeroam server, which runs different software and isn't pit-box bound.

What's the difference between LAPS and TIME in the race section?

LAPS sets a lap-counted race; TIME (in minutes) sets a timed race. Use one or the other in [RACE] — set the one you want and leave the other at 0. Practice and qualifying are always timed.

Do assists like ABS_ALLOWED just turn ABS on or off?

No — they're three-state. 0 bans the assist, 1 allows it only on cars that had it from the factory, and 2 allows it for everyone. This catches a lot of people out: ABS_ALLOWED=1 is not "ABS on for all".


Want the racing server without hand-editing any of this? Our Assetto Corsa racing servers give you a dashboard editor for assists, fuel, damage and tyre wear, an entry-list editor with per-car ballast and restrictor, and KissMyRank built in for penalties — so you can run a clean grid without living in a text editor.

Skip the setup headache

Get a server running in under 60 seconds.

Configure Server

Ready to get started?

Deploy your game server in under 60 seconds. No technical knowledge required.

Browse Game Servers
#Server Setup#Configuration#Assetto Corsa#Racing#League

Related Help Articles

Need step-by-step instructions? Check out these guides in our Help Center.

  • Connect to Your Server
  • BeamMP Server Configuration
  • Server Templates
  • Getting Started with BeamMP

On this page

Related Articles

An orange McLaren MP4-12C on a race circuit in Assetto Corsa
Comparisons

Assetto Corsa Server Hosting: Freeroam vs Racing (Which Server Do You Actually Need?)

An Assetto Corsa server is really two different products — a freeroam/AI-traffic server and a Kunos racing server. Here is how they differ and how to pick.

Jul 20, 202612 min read
Two GT race cars battling side by side during a race in Assetto Corsa
Tutorials

Running an Assetto Corsa League Race Weekend: Sessions, BoP, Entry Lists & Penalties

How to run an Assetto Corsa league race weekend: session flow, a locked GUID entry list, ballast/restrictor BoP, mandatory pit stops, and real penalty enforcement.

Jul 17, 20267 min read
A silver Maserati Alfieri on a race circuit in Assetto Corsa
Comparisons

Assetto Corsa vs ACC vs AC EVO Servers: Which One Are You Actually Trying to Host?

Assetto Corsa, Assetto Corsa Competizione and AC EVO are three different games with three different dedicated servers. Here is which one you actually need to host.

Jul 16, 20266 min read
Back to Blog