Make sure you have a backup of all your save games. This method of running Subsistence is known and confirmed to have issues ranging from "fishing not working" and up to entire save game files being wiped out.
Subsistence is a game created by ColdGames and based on the Unreal Engine. The game is still in active development and published on Steam. Currently, there is no official way to create a dedicated server and the developer has promised that a dedicated server mode will be available.
However, due to the Unreal Engine, a dedicated server can indeed be created with some little changes. Furthermore, if so desired, an existing save file can be used.
Preferably, one would install a Subsistence server on a dedicated machine separate from others.
The contents of the steam folder are extracted and placed in the folder with the path C:\Subsistence\Subsistence 20190329
. In other words, the UDK.exe
binary should be found at C:\Subsistence\Subsistence 20190329\Binaries\Win32\UDK.exe
.
The following is an incomplete representation of what the filesystem should look like:
+ C: + | +------+ Subsistence + | | +---------+ Subsistence 20190329 + | | +--------+ Binaries | + | | | +-------+ Win32 | | + | | | | | +----------+ UDK.exe | | | | + Redist + | | . | + InstallData . | | . | . | . | . | + Engine | + Redist | + UDKGame | . . .
Open a command prompt with Administrator privileges (type cmd
and right-click on the cmd.exe
or Command Prompt
to select Run as Administrator…
). And then type the following command to change directory into the C:\Subsistence\Subsistence 20190329\Binaries\Win32
folder:
cd C:\Subsistence\Subsistence 20190329\Binaries\Win32
Now, to check that the dedicated server starts up properly, UDK.exe
will be ran from the command line in server mode with a bunch of parameters. Type in the same command prompt:
UDK.exe server "ColdMap1?Name=Host?Team=255?listen?bIsLanMatch=true?NumPublicConnections=4?NumPrivateConnections=0?NumOpenPublicConnections=4?NumOpenPrivateConnections=0?bShouldAdvertise=True?bUsesStats=True?bAllowJoinInProgress=True?bAllowInvites=True?bUsesPresence=True?bAllowJoinViaPresence=True?bAllowJoinViaPresenceFriendsOnly=False?bUsesArbitration=False?bAntiCheatProtected=False?bIsDedicated=True?OwningPlayerName=Cricket?PingInMs=0?MatchQuality=0.000000?GameState=OGS_Pending?GamePassword=?MaxPlayers=4?ProfileId=2?HuntersDisabled=False?Difficulty=normal?HunterAttacks=0?ColdServerName=Host<gs>1,1,0?"
The command prompt should return control after a minute and it may seem that nothing happened but after a few minutes a new console should appear saying that the server and game has been created.
Launch Subsistence from a different computer and try to connect to your server IP address from the Co op
menu in Subsistence, and, if all goes well, you should appear in the Subsistence world. Congratulations!
In order to make Subistence restart after an eventual power outage or in case the server is restarted, NSSM can be used to create a background service that blends with the operating system. From the download section of the NSSM website a zip file can be downloaded that contains a file nssm.exe
which can be placed in C:\Windows\System32\
in order to make it available from the command line.
Assuming that nssm.exe
has been copied to C:\Windows\System32\
, open an elevated command prompt and issue the command:
nssm install Subsistence
which should start a GUI to configure a service named Subsistence
.
The following configuration has to be made using the GUI for the various tables of the GUI.
On the Application
tab - this tab is where you get to tell NSSM which program to start and with what parameters:
C:\Subsistence\Subsistence 20190329\Binaries\Win32\UDK.exe
C:\Subsistence\Subsistence 20190329\Binaries\Win32
server "ColdMap1?Name=Host?Team=255?listen?bIsLanMatch=true?NumPublicConnections=4?NumPrivateConnections=0?NumOpenPublicConnections=4?NumOpenPrivateConnections=0?bShouldAdvertise=True?bUsesStats=True?bAllowJoinInProgress=True?bAllowInvites=True?bUsesPresence=True?bAllowJoinViaPresence=True?bAllowJoinViaPresenceFriendsOnly=False?bUsesArbitration=False?bAntiCheatProtected=False?bIsDedicated=True?OwningPlayerName=Cricket?PingInMs=0?MatchQuality=0.000000?GameState=OGS_Pending?GamePassword=?MaxPlayers=4?ProfileId=2?HuntersDisabled=False?Difficulty=normal?HunterAttacks=0?ColdServerName=Host<gs>1,1,0?"
On the Details
tab:
Subsistence
Automatic
(such that the server will start on boot)Subsistence
On the Exit actions
tab:
1500ms
Restart application
,250ms
Once done, press the Install service
button to install the service.
To test whether everything is working alright, start services.msc
(type services.msc
in the start menu search bar) and locate the newly created service by name Subsistence
. You can now click Start
, followed by Stop
to check that the server starts and stops properly.
The service is configured to start when Windows boots and, furthermore, in case the server happens to crash, Windows will restart it.
Now that you have your Subsistence dedicated server running, several tools can help monitor and manage the service. First, a program such as WinTail can be used to display the server log file in real time. The most recent server log file will be located at C:\Subsistence\Subsistence 20190329\UDKGame\Logs\Launch.exe
.
All the Subsistence server save games can be found at C:\Subsistence\Subsistence 20190329\Binaries\Win32
and prefixed with serverSaveGame
. If so desired, the files can be replaced with some save game files that you already have. In any case, it is ideal for your connecting clients and the server to delete the save files and start afresh.
At the current time of writing there are major issues with running a Subsistence dedicated server, notably: