What Bugbear documents
Bugbear's setup instructions are a single post by a developer, pinned in the Wreckfest discussions on Steam. It covers the anonymous SteamCMD download, the two config files, the launch switches, the ports, the chat and console commands, event rotation and a note on performance. It gives no CPU or memory figures and no Linux procedure. Steam's record for app 361580 lists Windows as its only platform and launches start_server.bat from the install folder.
Wreckfest 2 is a different program. Steam lists its server as a separate tool, Wreckfest 2 Dedicated Server (app 3519390), which launches start_community_server.bat. Bugbear's post covers the original game only, and so does this page.
Install with SteamCMD
Valve's SteamCMD documentation gives the Windows download and recommends setting the install directory before logging in, so the block below uses that order; Bugbear's post lists the same three commands with the login first. Run it in an elevated PowerShell. It stops at the first error and is safe to paste again, which is also how you recover from a half-finished run.
& {
$ErrorActionPreference = 'Stop'
[Net.ServicePointManager]::SecurityProtocol = [Net.ServicePointManager]::SecurityProtocol -bor [Net.SecurityProtocolType]::Tls12
New-Item -ItemType Directory -Force -Path C:\steamcmd | Out-Null
Invoke-WebRequest -UseBasicParsing https://client-update.steamstatic.com/installer/steamcmd.zip -OutFile C:\steamcmd\steamcmd.zip
Expand-Archive -Force C:\steamcmd\steamcmd.zip -DestinationPath C:\steamcmd
C:\steamcmd\steamcmd.exe +force_install_dir C:\Wreckfest +login anonymous +app_update 361580 validate +quit
if ($LASTEXITCODE -ne 0) { throw "STOP - SteamCMD exit code $LASTEXITCODE; paste this block again" }
if (-not (Test-Path C:\Wreckfest\start_server.bat)) { throw 'STOP - start_server.bat not found; paste this block again' }
'install ok'
}
Bugbear notes that Steam itself does not have to be running for the server to work. The same app_update 361580 line, without validate if you prefer, fetches later updates.
The two config files
initial_server_config.cfg in the install folder is the base configuration: server name, description, event rules and an optional event rotation. Bugbear advises keeping a copy before you change it. On first start, start_server.bat copies it to server_config.cfg, and after that the server reads only the copy. Make later changes there; delete it and the server copies the initial file over again.
rem Command Prompt: keep the shipped file once
cd /d C:\Wreckfest && if not exist initial_server_config.orig.cfg copy initial_server_config.cfg initial_server_config.orig.cfg
rem Lines to set (example values) before the first start,
rem or in server_config.cfg afterwards:
rem server_name=Friday Night Derby
rem admin_steam_ids=76561190000000000
| Setting or switch | Effect, per Bugbear's post |
|---|---|
| admin_steam_ids= | Your SteamID64; you get admin privileges automatically when you join |
| el_add=trackname | Starts one event in a rotation list; /eventloop turns rotation on and off |
| -s server_config= | Names the config file when you start server\Wreckfest.exe yourself |
| -server_set | Overrides any setting from the command line, e.g. server_name |
| Server update frequency | Low sends fewer packets, clients predict more; high sends more, clients predict less |
The end of the initial file carries a sample rotation that you enable by removing the first # on each line. Each event can override any global setting; anything an event leaves out falls back to the global value, not to the previous event's.
Firewall and first start
Bugbear's port list is UDP 27015, UDP 27016, UDP 33540 and TCP 27015, and its first answer to a server nobody can join is a router or firewall that blocks them. A rented machine has no home router in front of it, so the Windows firewall on the server is the only rule set to change. Each rule is created only if it is not there yet, so pasting the block again adds just a missing one.
& {
$ErrorActionPreference = 'Stop'
if (-not (Get-NetFirewallRule -DisplayName 'Wreckfest UDP' -ErrorAction SilentlyContinue)) {
New-NetFirewallRule -DisplayName 'Wreckfest UDP' -Direction Inbound -Protocol UDP -LocalPort 27015,27016,33540 -Action Allow | Out-Null }
if (-not (Get-NetFirewallRule -DisplayName 'Wreckfest TCP' -ErrorAction SilentlyContinue)) {
New-NetFirewallRule -DisplayName 'Wreckfest TCP' -Direction Inbound -Protocol TCP -LocalPort 27015 -Action Allow | Out-Null }
Get-NetFirewallRule -DisplayName 'Wreckfest *' | Format-Table DisplayName, Enabled, Direction
}
If you have set the server's outbound policy to block, add matching outbound rules too: the post asks for the server executable to be allowed both ways. Then run start_server.bat from C:\Wreckfest. A console window opens and reports when the server is connected to Steam. When you leave, disconnect Remote Desktop instead of signing out: Microsoft's documentation says a disconnected session keeps its programs running, whereas a sign-out closes them, game server and all. Limit Remote Desktop to your own address rather than the whole internet.
Running races from the console
help in the server console lists every command. Some run only there: list for players, bans, admins, tracks, gamemodes, cars, weathers, ? for the current server and event settings, and exit to close the server. Others run from the in-game chat once you have admin rights: /kick, /ban and /bansteamid, /adminsteamid and /opsteamid, /password, /servername, /welcome, /bot, /restart and /eventloop. Settings changed in the console are not written back to the config file, so put anything you want to keep into server_config.cfg.
Updates and copies of the config
- Type
exitin the server console and wait for the window to close. - Copy
server_config.cfgand your saved original off the server to your own machine. - Paste the install block again: it runs the same update and stops with STOP if SteamCMD reports an error.
- Start
start_server.batagain and confirm the Steam connection message.
Our advice, not Bugbear's: keep your settings in server_config.cfg, which the tool creates and does not ship, so a validate that re-checks the shipped files cannot touch them. With this setup nothing starts the game again after a reboot, a Windows update reboot included; plan updates and reboots around race nights.
Sizing and the machine
Bugbear ties the number of clients a host can carry to two things: upstream bandwidth and the host's specifications. Its example is an 8/1 Mb/s ADSL line, where it suggests starting at about 8 clients and raising the count until the link runs out. On a server whose port is unmetered, we expect upstream bandwidth to stop being the ceiling; that is our reading, so raise the player count in steps and watch CPU and memory in Task Manager. Bugbear publishes no processor or memory figures.
- The game server line lists only processors at 2,000 or more on PassMark's single-thread test, the bar the Satisfactory dedicated server documentation sets.
- Windows Server, up to 2025 on the widest lines, installs from the order page for games whose server runs only on Windows. The licence is per core and billed every month, with no prepay discount. No ARM line runs Windows.
- Five cities on AS19624: the data center page gives a test IP per city for your drivers to ping before you choose.
- An out-of-band console (HPE iLO, Dell iDRAC or a Supermicro BMC) on each rack server and each blade, plus the m510 and m710x cartridges; the remaining cartridge models stop at power control. It is the way in when Remote Desktop stops answering.
- A ready server takes about 30 minutes to go live once payment is approved, and it can be rented by the hour for a race weekend; a build to order takes 4 to 24 hours.
For other racing servers on the same machines, see Assetto Corsa and the BeamMP multiplayer server.
Questions
Do I need to own Wreckfest to run the server?
No. Bugbear's post says SteamCMD downloads the dedicated server tool anonymously, so no Steam account with the game on it is involved. Players still need the game to join.
Is there a Linux build of the Wreckfest server?
Not an official one. Steam lists app 361580 for Windows only, and Bugbear's post gives Windows commands alone. Wine or container setups exist in the community, but they are outside what the developer documents, so plan on Windows Server.
Why does nobody see or join my server?
Bugbear's first suspect is a firewall or router that blocks the ports. Check that inbound rules allow UDP 27015, 27016 and 33540 and TCP 27015, that the server console reports it is connected to Steam, and that you started the server with the config you edited.
How do I make myself admin?
Put your SteamID64 in admin_steam_ids in server_config.cfg and restart the server; Bugbear says you then get admin privileges on joining. While it runs, an admin can grant others with /adminsteamid or moderator rights with /opsteamid.
Does this setup work for Wreckfest 2?
No. Wreckfest 2 has its own server tool on Steam, app 3519390, launched by start_community_server.bat, and Bugbear's post for the original does not describe it. Follow the files that tool ships with.
How many players can one server carry?
Bugbear gives no fixed number: it depends on upstream bandwidth and the host's hardware, and its advice is to start low and raise the client count step by step. Do that on your own machine while watching CPU, memory and the race itself.