To create a custom race on a stock Assetto Corsa dedicated server, edit two files: cfg/server_cfg.ini defines the practice, qualifying and race sessions, while cfg/entry_list.ini defines the cars that can occupy the grid. Set either a lap count or a timed race in the [RACE] block, choose how late drivers may join with IS_OPEN, and add one CAR_N entry for every available grid slot. The exact option names can differ between server builds, so compare your installed configuration with the Kunos FAQ and the comments in your build before going live.
Godlike.Host offers hosted Assetto Corsa servers with its own game panel, SFTP access and free DDoS protection, if you would rather not host it yourself.
How the dedicated-server race configuration is organised
Assetto Corsa separates the event definition from the starting grid:
| # | Preview | Product | Price | |
|---|---|---|---|---|
| 1 |
|
Assetto Corsa Ultimate Edition (PS4) | $24.75 | Buy on Amazon |
| 2 |
|
Assetto Corsa Competizione - PlayStation 5 | $28.00 | Buy on Amazon |
| 3 |
|
Assetto Corsa Competizione | $22.99 | Buy on Amazon |
| 4 |
|
Assetto Corsa Competizione Racing Simulator, Standard Edition, PlayStation 5 [video game] | $24.99 | Buy on Amazon |
As an Amazon Associate I earn from qualifying purchases.
Recommended Free Tools
cfg/server_cfg.inicontains the session blocks and race rules.cfg/entry_list.inicontains the grid slots, car models, skins and any driver restrictions.
The server reads the session sequence from server_cfg.ini. A normal weekend uses [PRACTICE], [QUALIFY] and [RACE]. A [BOOK] section applies only when booking mode is enabled. The number of CAR_N sections in entry_list.ini limits the number of drivers who can be on the server at once, regardless of how many people are waiting to join.
Prepare the server before editing
Make a backup of both configuration files and keep a copy of the original files supplied with your server build. The Kunos FAQ documents the core keys, but it is an older reference and community configurations often contain additional options. Treat the names in your installed server_cfg.ini as authoritative for that build.
#1 Best Overall
- Assetto Corsa Base Game
- Prestige Pack
- 3x Porsche Packs
- Red Pack
- ReadyToRace Pack
- Confirm that you are editing the instance’s active
cfgdirectory, not a template or a different server profile. - Identify the exact car model and skin folder names installed on the server and on every client.
- Decide whether the event is lap-based or time-based before setting the
[RACE]values. - Create enough
CAR_Nentries for the largest grid you want to permit. - Keep a plain-text copy of the working configuration so you can restore it after a failed edit.
Live-reload behaviour is not established consistently across server versions. The safest operating procedure is to make changes while the instance is stopped, save the files, then start the instance and check its console or log for parsing errors.
Configure the sessions in server_cfg.ini
Each session is a bracketed section. The settings below are the core options documented for dedicated-server races.
Practice
Practice uses TIME in minutes. Set IS_OPEN to determine whether drivers may join after the session begins:
[PRACTICE]
TIME=30
IS_OPEN=1
A value of 1 permits free joining during the session. A value of 0 prevents joining, and 2 permits joining until 20 seconds before the green light. Use the value that matches your event format; an open practice session is useful for public servers, while a closed session avoids late arrivals in a league timetable.
Qualifying
Qualifying also uses a duration in minutes and the same three-value IS_OPEN rule:
[QUALIFY]
TIME=15
IS_OPEN=1
QUALIFY_MAX_WAIT_PERC=120
The Kunos FAQ’s example sets QUALIFY_MAX_WAIT_PERC=120. This expresses the cutoff as 120 percent of the fastest lap. Because this option is documented in an FAQ that predates some current server packages, check that your installed build accepts it and preserves the same meaning.
Free tools Windows power users keep installed
One-click scans. No signup required.
Race
The race block determines distance, start countdown and joining policy:
Rank #2
- Assetto Corsa Competizione allows you to feel the real atmosphere of the GT3 championship
- Compete against official drivers,teams, cars circuits reproduced in game with the highest level of accuracy ever achieved on console
- Sprint, Endurance, and Spa 24 Hours races come to life with an incredible level of realism, in both single and multiplayer modes
[RACE]
LAPS=12
TIME=0
WAIT_TIME=60
IS_OPEN=2
WAIT_TIME is the countdown, in seconds, before the start. IS_OPEN=2 allows joining until 20 seconds before the green light; IS_OPEN=1 leaves joining open; and IS_OPEN=0 disallows joining.
For a lap race, set a positive LAPS value. For a timed race, set LAPS=0 and put the desired duration, in minutes, in TIME:
[RACE]
LAPS=0
TIME=25
WAIT_TIME=60
IS_OPEN=2
LAPS takes priority over TIME. If LAPS is greater than zero, the server runs the lap race and ignores the timed distance. TIME is used only when LAPS is zero. Setting both to non-zero values is a common source of confusion because the race will still be lap-based.
Quick wins for a faster PC:
Clear out junk files and repair common Windows errorsFree Scan →Fix the driver behind crashes, sound loss and screen glitchesFind Drivers →Repair Windows errors before they cause bigger problemsFix Now →Core race keys at a glance
| File and key | Purpose | Important qualification |
|---|---|---|
server_cfg.ini → [RACE] LAPS |
Sets race distance in laps | When greater than zero, it takes precedence over TIME |
server_cfg.ini → [RACE] TIME |
Sets race duration in minutes | Used only when LAPS=0 |
server_cfg.ini → [RACE] WAIT_TIME |
Sets the pre-start countdown in seconds | Applies to the race start countdown |
IS_OPEN |
Controls when a driver may join | 0 never, 1 freely, 2 until 20 seconds before green |
QUALIFY_MAX_WAIT_PERC |
Sets the qualifying cutoff relative to the fastest lap | The documented example uses 120 percent; verify support in your build |
RESULT_SCREEN_TIME |
Controls how long results remain visible | Available in the FAQ’s session extras; verify the spelling in your build |
RACE_OVER_TIME |
Sets the finish window for a timed race | Available in the FAQ’s session extras; verify the spelling in your build |
Build the grid in entry_list.ini
Create one numbered car section for each grid slot. The documented structure uses MODEL, SKIN and an optional DRIVER_GUID:
[CAR_0]
MODEL=ks_ferrari_488
SKIN=00_red
[CAR_1]
MODEL=ks_ferrari_488
SKIN=01_blue
[CAR_2]
MODEL=ks_ferrari_488
SKIN=02_black
DRIVER_GUID=0123456789abcdef0123456789abcdef
The model and skin values in this example are illustrative identifiers. Replace them with the exact folder names present in your server’s content installation; the spelling and capitalization must match what the server expects. A DRIVER_GUID binds a slot to a particular driver. Leaving it out creates an unassigned slot that another eligible driver may use.
The grid capacity is the number of entries you create. Three CAR_N sections mean three available slots; changing a track’s maximum capacity does not create additional server entries. Number the blocks consistently and avoid duplicate section names, because an overwritten or malformed block can silently reduce the usable grid.
Restrict which cars may be selected
Many dedicated-server configurations also contain a CARS line in server_cfg.ini with permitted model identifiers separated by semicolons:
Outdated Drivers Are Slowing You Down
One free scan finds every outdated or missing driver and matches the right update for your exact hardware.Free scan · exact hardware matchWindows Errors? Fix Them Before They Spread
Repair common Windows errors and clear accumulated junk for a smoother, more stable PC - no reinstall needed.Free scan · no reinstallRank #3
- Realistic simulation. Performance and driving behaviour
- Graphics and effects of the latest generation
- All racetracks are reproduced using laser scan
CARS=ks_ferrari_488;ks_bmw_m3_e30
This semicolon-list format is reported by third-party hosting guides rather than confirmed in the Kunos FAQ. Use it only if the comments or sample configuration in your installed server build show the same key. The identifiers must correspond to the models used in entry_list.ini; otherwise, drivers may see no selectable car or the server may reject an entry. If your build uses a different allow-list key, follow that build’s template instead of copying this line.
Choose laps or time for the race format
| Format | Required setting | When it is useful | What to avoid |
|---|---|---|---|
| Lap race | LAPS greater than zero; set TIME=0 for clarity |
Predictable distance and a fixed number of completed laps | Do not expect TIME to shorten the event while LAPS is active |
| Timed race | LAPS=0 and TIME set in minutes |
Endurance-style events or schedules where every race occupies a fixed time slot | Do not leave a positive lap count in place |
For a first test, use a short practice and a two-lap race. Once the server advances through the sessions correctly, change only the distance or duration required for the real event. This isolates syntax errors from track, car or network problems.
Control late joining with IS_OPEN
IS_OPEN is available in the normal session blocks and has three documented values:
0— closed: no new driver may join that session.1— open: drivers may join freely while the session is running.2— closing window: joining remains possible until 20 seconds before the green light.
For public practice, 1 is usually the least surprising choice. For a league race, 2 gives drivers a final connection window without allowing a last-second grid entry. Use 0 when the participant list must be fixed before the session starts. The setting controls joining, not the number of available slots; the latter still comes from entry_list.ini.
Use session extras carefully
RESULT_SCREEN_TIME controls the time spent on the results screen, while RACE_OVER_TIME provides the finish window associated with a timed race. Both appear among the FAQ’s session extras, but option availability and exact spelling should be checked against the configuration shipped with your server version. Do not copy unrelated community keys merely because they appear in another host’s configuration: names such as flag or network-buffer options may be build-specific and are outside the core race setup.
End-to-end setup procedure
- Stop or otherwise isolate the active instance. Because automatic reload behaviour is not uniform between builds, edit the files before starting the server rather than relying on a live reload.
- Open
cfg/server_cfg.ini. Confirm that the session sections are named[PRACTICE],[QUALIFY]and[RACE]. Keep[BOOK]only when your server uses booking mode. - Set practice and qualifying durations. Enter
TIMEin minutes and chooseIS_OPENfor each session. If you use the documented qualifying cutoff, addQUALIFY_MAX_WAIT_PERC=120and verify that your build recognises it. - Choose the race distance. Enter a positive
LAPSfor a lap race, or setLAPS=0and enter the duration inTIMEfor a timed race. - Set the start and joining rules. Add
WAIT_TIMEin seconds and setIS_OPENto0,1or2as required. - Review the car allow-list. If your build documents
CARS, list permitted models with semicolons and make sure every listed identifier is installed. - Open
cfg/entry_list.ini. Add oneCAR_Nblock per grid slot, with a validMODELandSKIN. AddDRIVER_GUIDonly for slots that must be assigned to named drivers. - Match the grid to the event. Count the
CAR_Nblocks and confirm that this is the intended maximum number of drivers. - Start a short test session. Watch the server log for malformed sections, unknown keys or missing content, then connect with a test client and verify that the expected cars appear.
- Test the transitions. Let practice end, enter qualifying, check the late-join cutoff, and confirm that the race starts with the intended countdown and distance.
- Save the tested files as a named event profile. Keep the backup and record which server build accepted the keys, since a later update may change available options.
Troubleshoot the common failure modes
The race ends at the wrong time
Check whether LAPS is still greater than zero. A positive lap count overrides TIME. For a timed race, set LAPS=0, enter the duration in minutes, and restart the instance so it reads the changed file.
Drivers cannot join
Check all three layers: the session’s IS_OPEN, the number of CAR_N entries, and any model allow-list. IS_OPEN=0 blocks joining even when free grid slots exist. A full entry list blocks additional drivers even when joining is open. A mismatched CARS identifier can remove the cars the client is trying to select.
Rank #4
- Experience true next-generation gaming with increased visual fidelity through 4K graphics, and 60FPS for a faster and smoother race experience
- 2021 Liveries: Updated liveries from the 2021 season
- Fully Immersive Simulation: Race like a real GT World Challenge driver, with options to configure tyres, chassis, engine set up, and more
- New-Generation Graphics & Visual Effects: Photorealistic weather conditions and multi-channel audio sampling to create that authentic GT racing experience
- Advanced Multiplayer Functionality: Includes a new fair-play ranking system (rewarding virtuous players), solid matchmaking, regular challenges, and a real-time online leader-board
The grid is smaller than expected
Count the numbered sections in entry_list.ini. The server can use only the entries that are present and valid. Look for duplicate section names, misspelled keys, invalid model or skin identifiers, and numbering mistakes. Add a separate block for every slot rather than assuming the track’s physical grid automatically expands the server list.
A driver receives the wrong car or skin
Compare the MODEL and SKIN strings with the actual installed content and ensure the same content is installed on the client. If a slot contains a DRIVER_GUID, confirm that the GUID belongs to the intended account and that the driver is using that account when connecting.
A documented key is rejected
Verify the spelling and section in the configuration shipped with your server. The Kunos FAQ is a long-standing reference, and some options are marked under update notes. Community files also contain extra keys that are not guaranteed to exist in every build. Remove an unrecognised option, restore the last known-good file, and add settings back one at a time.
Complete example: 12-lap league race
The following illustrates the relationship between the two files. Replace the model and skin identifiers with content installed on your server.
; cfg/server_cfg.ini
[PRACTICE]
TIME=30
IS_OPEN=1
[QUALIFY]
TIME=15
IS_OPEN=2
QUALIFY_MAX_WAIT_PERC=120
[RACE]
LAPS=12
TIME=0
WAIT_TIME=60
IS_OPEN=2
RESULT_SCREEN_TIME=60
; cfg/entry_list.ini
[CAR_0]
MODEL=ks_ferrari_488
SKIN=00_red
[CAR_1]
MODEL=ks_ferrari_488
SKIN=01_blue
[CAR_2]
MODEL=ks_ferrari_488
SKIN=02_black
[CAR_3]
MODEL=ks_ferrari_488
SKIN=03_white
This configuration offers four grid slots, a 30-minute practice, a 15-minute qualifying session and a 12-lap race. Qualifying closes to new drivers 20 seconds before the green light because it uses IS_OPEN=2; the race uses the same joining policy.
What’s actually slowing this PC down?
Pick the symptom - the matching free tool is one click away.
Complete example: 25-minute timed race
[RACE]
LAPS=0
TIME=25
WAIT_TIME=90
IS_OPEN=2
RACE_OVER_TIME=180
Here the race distance is time-based because LAPS is zero. TIME=25 specifies 25 minutes, while RACE_OVER_TIME is included only if the installed build documents that option and you want its timed-race finish window. Confirm accepted values in your local configuration before relying on it for a scheduled event.
Version and feature boundaries
The core layout—session blocks in server_cfg.ini, grid blocks in entry_list.ini, lap-versus-time precedence, the three IS_OPEN values and the qualifying percentage example—is documented by Kunos. The CAR_N format and semicolon-separated CARS list are also widely described by hosting guides, but they are not confirmed in the Kunos FAQ summary. Check your installed build’s sample files before treating either as universal.
Do not assume that a league-grid lock, reversed-grid rule or a Content Manager preset is supported by the dedicated server merely because a community guide mentions it. The names and behaviour of reversed-grid settings conflict across guides, and no authoritative confirmation establishes one key. Build your event around the documented session and entry-list features unless your own server package explicitly exposes an additional option.
Operational checklist before opening the server
- Both files are in the active
cfgdirectory and have been backed up. - Every session section uses keys accepted by this server build.
- Exactly one race mode is selected: positive
LAPS, orLAPS=0with a positiveTIME. WAIT_TIMEis long enough for the intended countdown.IS_OPENmatches the event’s joining policy.- The number of valid
CAR_Nentries equals the planned maximum grid. - Each model and skin is installed and spelled exactly as the server expects.
- Any
DRIVER_GUIDrestriction has been checked against the correct driver. - A short test has confirmed practice, qualifying, race start and finish behaviour.
Once those checks pass, the custom race is defined entirely by the two configuration files: the session blocks determine how the event runs, and the entry list determines who and what can occupy its grid.
Quick Recap
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.




