Run Unturned Dedicated Server as a Windows Service with FireDaemon Pro


Unturned Logo and Screenshot


TABLE OF CONTENTS


Introduction

Unturned is a zombie survival game where you are a survivor in the zombie-infested ruins of society, and must work with your friends and forge alliances to remain among the living.  You can set up and run the Unturned Dedicated Server component as a Windows service with FireDaemon Pro. You can also use FireDaemon Pro to schedule updates to the dedicated server.


Download, Install, and Update SteamCMD

Download SteamCMD. Unpack the contents of the ZIP file into C:\SteamCMD. Then open an elevated Command Prompt (WIN+X and choose Command Prompt (Admin) or Terminal (Admin)), then copy/paste:


cd /D C:\SteamCMD
:: This updates SteamCMD
.\steamcmd +quit

Download and Install Unturned Dedicated Server

At the same Command Prompt, copy/paste the following to download and install Eco Dedicated Server. The dedicated server is installed into C:\SteamCMD\steamapps\common\U3DS:


:: This command downloads the Unturned Dedicated Server component from Steam
.\steamcmd +login anonymous +app_update 1110390 validate +quit

Download and Install DirectX

Download and install DirectX End-User Runtime from Microsoft.


Download, Install, and Run FireDaemon Pro

Download and install FireDaemon Pro. Once the installation has been completed, double-click the FireDaemon Pro icon on your desktop to launch the FireDaemon Pro GUI.


Game Server Login Token

For your server to be visible on the in-game Internet server list you will need to obtain and configure a Game Server Server Login Token (GSLT). Otherwise, you can obtain the Server Code from the log file (see below) then your friends can enter this code in the game client Connect Directly menu. This avoids having to set up port forwarding for your server.


Game Server Log File

The dedicated server writes a log file. The log file contains the Server Code. The location of the log file is:

C:\SteamCMD\steamapps\common\U3DS\Logs\Server_<Server_Name>.log

<Server Name> is the name of your server. As specified via the Parameters field (see below).


Game Server Configuration

The dedicated server's configuration files are found in the following location:

C:\SteamCMD\steamapps\common\U3DS\Servers\<Server Name>

Setup the Unturned Dedicated Server FireDaemon Pro Windows Service

In the FireDaemon Pro GUI type Ctrl+N to create a new FireDaemon Pro service per the screenshot below via the Program Tab.


FireDaemon Pro Program Tab showing Unturned Dedicated Server settings


FieldValue
Service NameUnturned Dedicated Server
Display NameUnturned Dedicated Server
Startup TypeAutomatic (Delayed Start)
ProgramC:\SteamCMD\steamapps\common\U3DS\Unturned.exe
Working DirectoryC:\SteamCMD\steamapps\common\U3DS
Parameters
Use these parameters to enable a secure Internet server with BattEye. Requires a GSLT
-batchmode -nographics +InternetServer/<Server Name>

Use these parameters to enable a local LAN server
-batchmode -nographics +LANServer/<Server Name>

Replace <Server Name> with your preferred server name (e.g. My Server)
TypeAlways Running Program


In the Settings Tab uncheck Interact with Desktop as it's unnecessary as the server is running in headless mode.


FireDaemon Pro Settings Tab showing Unturned Dedicated Server settings


The Unturned Dedicated Server needs to be sent a Ctrl+C to shut down gracefully. Configure that via the Lifecycle tab. Once that is done, click the "tick" button to run the Unturned Dedicated Server. 


FireDaemon Pro Lifecycle Tab showing Unturned Dedicated Server settings


FieldValue
Console ProgramChecked
Shutdown By
Ctrl+C


Setup a Scheduled FireDaemon Pro Service to Update Unturned Dedicated Server

This step is entirely optional. Create a batch file called UpdateU3DS.cmd in the folder C:\SteamCMD\steamapps\common\U3DS containing the following lines:


:: Script to stop, update, and start the dedicated server
:: Adjust paths and service names as required
@echo off

set FDCLI="C:\Program Files\FireDaemon Pro\firedaemoncli"
set FDSVC="Unturned Dedicated Server"
set FDSTOP=control stop
set FDSTART=control start

:: Stop the FireDaemon Pro service
%FDCLI% %FDSTOP% %FDSVC%

:: Change directory to SteamCMD
cd /D C:\SteamCMD

:: Update the dedicated server
.\steamcmd +login anonymous +app_update 1110390 validate +quit

:: Start the FireDaemon Pro service
%FDCLI% %FDSTART% %FDSVC%

Open the FireDaemon Pro GUI. Type Ctrl+N to create a new service as follows:


FireDaemon Pro Program Tab showing the Update Unturned script


FieldValue
Service NameUpdate Unturned Dedicated Server
Display NameUpdate Unturned Dedicated Server
Startup TypeAutomatic (Delayed Start)
ProgramC:\SteamCMD\steamapps\common\U3DS\UpdateU3DS.cmd
Working DirectoryC:\SteamCMD\steamapps\common\U3DS
TypeSelf Completing Task


Then create a schedule via the FireDaemon Pro Scheduling tab per the screenshot below to update the Unturned Dedicated Server daily. Click the "+" button to create a new schedule. Note that your dedicated server will be shut down for the duration of the update. Change the Start Time of the schedule to a time that suits you. You can also create multiple schedules.


FireDaemon Pro Scheduling tab showing the Update Dedicated Server schedule


And that's it! You should now have two FireDaemon Pro services set up and running. One runs the Unturned Dedicated Server, the second runs the update script periodically. Your FireDaemon Pro GUI should look similar to the following once both services are installed and running.


FireDaemon Pro GUI showing the Eco Dedicated Server service, Update Echo Dedicated Server service and Resource Monitor