The Fragsurf dedicated server build is currently Windows x64 only. Linux is ideal for running servers, so support for that will come later on. The dedicated server appid is
1035540 and is available via the anonymous package, so you don't need to log in to install or update it.
You can use this batch script to easily install both SteamCMD and the Fragsurf dedicated server. Paste it in a .bat file in a folder somewhere and double click it.
@ECHO OFF set steamcmd_path=%~dp0steamcmd\steamcmd.exe set install_directory=%~dp0build set appid=1035540 set login=anonymous FOR /F "delims=" %%i IN ("%install_directory%") DO ( set filedrive=%%~di set filepath=%%~pi set filename=%%~ni set fileextension=%%~xi ) if exist "%filedrive%%filepath%%filename%" ( echo file path exist >nul ) else ( echo create install_directory since it does not exist mkdir "%filedrive%%filepath%%filename%" ) FOR /F "delims=" %%i IN ("%steamcmd_path%") DO ( set filedrive=%%~di set filepath=%%~pi set filename=%%~ni set fileextension=%%~xi ) set downloadurl=http://media.steampowered.com/installer/steamcmd.zip set downloadpath=%filedrive%%filepath%steamcmd.zip if exist "%filedrive%%filepath%%filename%%fileextension%" ( echo file path exist >nul ) else ( echo create steamcmd_path since it does not exist mkdir "%filedrive%%filepath%" ( echo Dim oXMLHTTP echo Dim oStream echo Set oXMLHTTP = CreateObject^("MSXML2.XMLHTTP.3.0"^) echo oXMLHTTP.Open "GET", "%downloadurl%", False echo oXMLHTTP.Send echo If oXMLHTTP.Status = 200 Then echo Set oStream = CreateObject^("ADODB.Stream"^) echo oStream.Open echo oStream.Type = 1 echo oStream.Write oXMLHTTP.responseBody echo oStream.SaveToFile "%downloadpath%" echo oStream.Close echo End If echo ZipFile="%downloadpath%" echo ExtractTo="%filedrive%%filepath%" echo Set fso = CreateObject^("Scripting.FileSystemObject"^) echo If NOT fso.FolderExists^(ExtractTo^) Then echo fso.CreateFolder^(ExtractTo^) echo End If echo set objShell = CreateObject^("Shell.Application"^) echo set FilesInZip=objShell.NameSpace^(ZipFile^).items echo objShell.NameSpace^(ExtractTo^).CopyHere^(FilesInZip^) echo Set fso = Nothing echo Set objShell = Nothing )>>"%~n0-temp.vbs" cscript //nologo %~n0-temp.vbs & del %~n0-temp.vbs ) "%steamcmd_path%" +login %login% +force_install_dir "%install_directory%" +app_update 1007 validate +app_update %appid% validate +quit
Running the script again will validate the server files and update if there is one available.
The next step is to include a configuration files so the server knows how to act when it starts up. To create one, navigate to
Fragsurf_Data/StreamingAssets/Configs and create a
default.ini, it should look something like this:
[Server] server.name="24/7 Ski2 Deathmatch" game.mode="Deathmatch" map.default="surf_fst_ski2" mv.falldamage=false
You can place any console command into this config file to be executed when the game loads, in example
mv.falldamage=false. Here's some useful ones:
The default game port is 42020, the default Steam ports are 43025 and 43026 - make sure all of these ports are open on your machine so it can communicate with Steam and be connected to. If you are running multiple servers you will have to set unique ports for each server, i.e.:
To run your server, simply double click
Fragsurf.exe. If everything is working properly it should show up in the Steam master server list as well as the in-game server browser.