Overview
Instructions on how to setup and configure a Subsistence dedicated server.
Dedicated Server Setup
You can either manually host your own server on your own hardware, or rent a server.
Renting a Server
The are many services that are setup to host Subsistence servers. I would recommend Nitrado[nitra.do], as I have worked closely with their team to integrate the various game settings into their dashboard. If you rent a server, you do not need to download the server files, and you can use their online UI to configure and manage your server.
Downloading the Server Files
The Subsistence server files are currently freely available via SteamCMD. From the SteamCMD command line, login as an anonymous account:
Run the following command to download the server files:
Alternatively, you can also access the files under the tools section in the standard Steam client (in the Library section).
Configuring the Server
Once downloaded, the app needs to be run once to generate the UDK*.ini files used to configure the server. You can do by running ../Subsistence Dedicated Server/Binaries/Win32/run_dedicated_server.bat (once started then manually close the app).
To configure the server, most game settings are all in ../Subsistence Dedicated Server/UDKGame/Config/UDKDedServerSettings.ini:
//Values: Jan=0/Feb=1/March=2/April=3/May=4/Jun=5/Jul=6/Aug=7/Sep=8/Oct=9/Nov=10/Dec=11 MonthOverride=-1 //Password that players must use to join the server. Leave blank to allow anyone to join. Password=testme //Password that admins should use to login to the server. AdminPassword=someAdminPasswword //The name that will show in the in-game server list. Please replace with your own server name. Maximum of 64 characters allowed. ServerName=My Server Name //An optional short description of the server, which will show when a player clicks on the server in server list. Max length of 256 characters. ServerDescription=Some description //The name that will show in the in-game server list for who is hosting this server. Maximum of 64 characters allowed. HostedByName=Nitrado //The maximum player slots on the server (can be 1 to 32). MaxPlayers=32 //Number of real-world hours that a player (and their team-mates) are offline from the server before their base starts to decay. Use this setting to keep servers clean of old abandoned bases. Set to 0 for no base decay. It is recommended to set this value for public servers (example: 4 days would be 96). NumPlayerOfflineHoursBeforeBaseDecay=0 //If true, players can damage other players. PvPDamage=true //If true, players can damage player-placed buildables. PlayersCanDamagePlayerBases=true //If true, players can access enemy player base items (such as storage chests, refineries, etc). Does not affect doors/windows/hatches. PlayersCanAccessEnemyPlayerBaseItems=true
To set the server port (if running multiple servers on a single machine) update “Port=7777” in UDKEngine.ini.
To update the Steam port (so your server can be seen in the in-game server list), update “QueryPort=27015” in UDKEngine.ini.
If you use multiple ips on the same machine, you can use the launch param: -multihome=<INTERNAL IP>
Starting the Server
Start the server by running ../Subsistence Dedicated Server/Binaries/Win32/run_dedicated_server.bat (or view the command that is running inside the .bat and run that yourself).
Running the server should make it show up in the in-game server list.
Troubleshooting
To view the logs, the log file is located at: ../Subsistence Dedicated Server/UDKGame/Logs/Launch.log
If you want to debug connection issues and enable additional network logging (so many more network related logs show in the Launch.log file), you can unsuppress the following two lines in UDKEngine.ini (by adding a semicolon at the start of each line):
However you should disable this after testing, otherwise your log file will be getting heavily spammed.
This error means some other application is already binding to the port you are using for QueryPort in UDKEngine.ini. Set the QueryPort to some other port (like 27025, or any port you like) and run the server again.
First check that your server is correctly being assigned a unique Steam id. You should see a line like this in your log when starting the server up:
This means your server is reachable for connecting clients.
You can test this by connecting via the in-game console (press “=” to bring up the console) and use this command:
If you have a Steam id for your server, but are not seeing it in the server list, this likely means your QueryPort (set in UDKEngine.ini) is not correctly open or forwarded to your server machine. This port is what allows your server to be queried for the current game status and settings by the server list. Please view this forum thread for further troubleshooting steps on forwarding ports.
If your server is failing to run due to missing library files, please try running Binaries/Redist/UE3Redist.exe? That should install the required missing libraries.
Logging in as an Admin
If you are hosting a password protected server, you can login to your server from the normal server list, just use your AdminPassword (that you set in your UDKDedServerSettings.ini config).
If you are running an open server (no password) then the password field will not show in the join window. Instead open the the console from the main menu (press “=” key) and login using either of the two following commands:
The server Steam id can be seen in the command line (stdout) once the server initializes.
Kicking/Banning Players
While logged in as an admin, open the “Server Stats” panel, using the button (under your player’s clothing panel). When clicking on the individual players on your server, a Kick and Ban button will display on the right:
You can view a list of banned players by clicking the “Banned” tab above the player list. From here you can choose to unban them.
Banning a player will ban them from all 5 profiles you may host on your server.
Removing buildables from your server
You may want to remove unwanted buildables placed by players, either due to exploiting or for general cleanup. There is a bindable key in the control menu for “Delete Buildable”.
Look at the buildable and press this key to delete it. This will only work while logged in as an admin. It will not work on hunter-placed buildables.
Deleting an entire base
As an admin, open the console and type the following to list all bases on your server:
Find the id of the base you wish to delete in the list. The run the following command:
So the command would look like:
Freecam mode
While logged in as an admin. Enter the following command to enter into freecam mode:
This will put you in a detached state and allow you to freely fly around your server to monitor activities.
- You can modify the speed of the camera by using the mouse wheel.
- Press escape to exit the mode.
- You can use the “DeleteBuildable” admin key while in this mode for clearing unwanted buildables.
Teleport to player
To teleport directly to a player on your server, open the “Server Stats” menu while logged in as an admin (the button under your character clothing profile).
Click on the player you wish to teleport to. A “teleport to player” button will appear on the right side of the menu.
- This will teleport you in freecam mode
- Other players will be unaware of your camera viewing them
Admin Console Commands
There are only a few available commands, since I migrated several over to the Server Stats UI rather than command line, but you can type “help” in the console to view the available commands. I plan to add much more Admin capabilities in the future, so thanks for your patience 🙂
Resetting/Clearing Profiles
To reset all profiles, stop the server and delete the following file:
Then restart the server.
Transferring co-op profiles to a dedicated server:
To do this, you just need to transfer your saveFilesList.sav and all serverSaveGame*.sav files (there should be 30 of them), from your Subsistence/Binaries/Win32 folder to the corresponding folder on your server. Ensure the server is not running while copying these files.
If renting a Nitrado server, you can use their “File Browser” link on the server dashboard to do this.
Updating the Server
After new updates are released, run the following command in SteamCMD to update to the latest version:
Save file structure
At times you may wish to migrate your server profile saves to another machine/service. Below are the files/directories that you will need to move.