Barotrauma

Barotrauma

View Stats:
Linux Dedicated Servers
Will the game have support for private linux dedicated server hosting? If so is there a published guide or documentation on how to do so?
< >
Showing 1-15 of 15 comments
Jun 5, 2019 @ 3:28am 
Hi! Here's a detailed post about hosting servers: https://steamcommunity.com/app/602960/discussions/0/1653297026039038242/ – hope this answers your question! :) Your OS shouldn't make a difference in hosting.
Originally posted by 1dynamoon:
Hi! Here's a detailed post about hosting servers: https://steamcommunity.com/app/602960/discussions/0/1653297026039038242/ – hope this answers your question! :) Your OS shouldn't make a difference in hosting.
The guide seems to only cover Windows by clicking the dedicated server which is an exe. I've the same question, and I wonder if Barotrauma has a Linux binary that can natively be used, if not I suppose you need to use mono-library?

In case of mono, do I just copy the dedicated.exe and serversettings.xml, or are there other dependencies? I did not find these questions answered anywhere :) Thanks!
Jun 7, 2019 @ 8:51am 
The process is essentially the same on Linux, there's a shell script called "DedicatedServer" inside the game folder that launches the server when executed.
Originally posted by Regalis:
The process is essentially the same on Linux, there's a shell script called "DedicatedServer" inside the game folder that launches the server when executed.
Thanks for quick reply, but where do I find this shell script? I don't seem to find it on my (client) installation on Windows, and SteamCMD did not find gameid 602960.

I only have DedicatedServer.exe and DedicatedServer.pdb. Worth mentioning when I say Linux I mean a command-line only Linux version where I can't download Steam client to get these files, if they're under the Linux-client game version.
I found out. This should be informed a lot clearer in your guides: You need to login on SteamCMD. Most games don't require this step, hence the confusion :)
Hello, when I went to try to run the Dedicated Server shell on my machine I get a "initializing steam server failed" message. What should I do to get around this?
Jun 13, 2019 @ 12:53am 
Originally posted by Scavver:
Hello, when I went to try to run the Dedicated Server shell on my machine I get a "initializing steam server failed" message. What should I do to get around this?
Are you logged into Steam?
I'm having the same issue.

On ubuntu 18.04 LTS, using steamcmd.

I was able to install barotrauma through steamcmd once authenticated. Running DedicatedServer started up a server, with a lot of messages all reading:
Can't find custom attr constructor image:
/home/steamcmd/Steam/Games/barotrauma/NLog.dll mtoken: 0x0a0003fa due to: Could not load file or assembly 'System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' or one of its dependencies.

Once this has spammed the whole terminal, the server begins with the following output:
Selected sub: Dugong Selected shuttle: Bunyip Starting the server... dlopen failed trying to load: Initializing Steam server failed. Server started 2019-06-15 22:08:59.6732|WARN|GameAnalyticsSDK.Net.Logging.GALogger|Warning/GameAnalytics: Could not add design event: Datastore not initialized 2019-06-15 22:08:59.7006|WARN|GameAnalyticsSDK.Net.Logging.GALogger|Warning/GameAnalytics: Could not add design event: Datastore not initialized 2019-06-15 22:08:59.7030|WARN|GameAnalyticsSDK.Net.Logging.GALogger|Warning/GameAnalytics: Could not add design event: Datastore not initializedbly 'System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' overboselogging Enabled verbose logging. Refreshing server info on the server list failed. HandleOwnership (<Redacted>) REQUEST_STEAMAUTH Received a Steam auth request Steam ID: 76561198064911984 Auth ticket length: 234 o Auth ticket data: 14000000CF59E... Disconnected unauthenticated client (Steam ID: 76561198064911984). Steam authentication failed. Refreshing server info on the server list failed.
When trying to connect through the domain name, I get steam authentication failed, with the above detail when verbose logging is enabled. This happens both when steamcmd is closed and when I have steamcmd logged in on a separate screen instance.
I'm not sure that's the best way, but it worked for me: create a symlink to your steamclient.so in the lib64 folder.

In my example:
- user is baro
- homedir /home/baro
- steam in /home/back/Steam
- gamefiles in /home/baro/serverfiles

This fixed it for me:
ln -s /home/baro/Steam/linux64/steamclient.so /home/baro/serverfiles/lib64/steamclient.so
Originally posted by Yanny:
I'm not sure that's the best way, but it worked for me: create a symlink to your steamclient.so in the lib64 folder.

In my example:
- user is baro
- homedir /home/baro
- steam in /home/back/Steam
- gamefiles in /home/baro/serverfiles

This fixed it for me:
ln -s /home/baro/Steam/linux64/steamclient.so /home/baro/serverfiles/lib64/steamclient.so
Thank. But for me work full file copy ("cp").
no problem.

I've submitted a PR for LGSM support, that'll make things much easier once tested and merged: https://github.com/GameServerManagers/LinuxGSM/pull/2396
Originally posted by Yanny:
I'm not sure that's the best way, but it worked for me: create a symlink to your steamclient.so in the lib64 folder.

In my example:
- user is baro
- homedir /home/baro
- steam in /home/back/Steam
- gamefiles in /home/baro/serverfiles

This fixed it for me:
ln -s /home/baro/Steam/linux64/steamclient.so /home/baro/serverfiles/lib64/steamclient.so

Thank you kind stranger. steamclient.so being in lib64 in the Barotrauma game files allowed the game to handle steam auth requests from clients.

Originally posted by MORTY MORT:
Thank. But for me work full file copy ("cp").

You should use symbolic link (ln -s (also known as soft link)) in cases where you need the same file in two places as it is a direct pointer to the file. If the file being linked to is updated so will the link because it is only pointing to it. It also uses less space.
Note that after some testing, campaign mode doesn't seem to work under linux. Seems somewhat related to https://github.com/Regalis11/Barotrauma/issues/1564, so keep an eye out.
Originally posted by Yanny:
I'm not sure that's the best way, but it worked for me: create a symlink to your steamclient.so in the lib64 folder.

In my example:
- user is baro
- homedir /home/baro
- steam in /home/back/Steam
- gamefiles in /home/baro/serverfiles

This fixed it for me:
ln -s /home/baro/Steam/linux64/steamclient.so /home/baro/serverfiles/lib64/steamclient.so

5 HOURS OF TRYING TO FIGURE THIS OUT AND THIS FINALLY WORKED, THANK YOU.
Though it really didn't help that I'm doing this inside a docker container.
When i run ./DedicatedServer > server.log

i will get this:

Can't find custom attr constructor image: /home/steam/barotrauma/NLog.dll mtoken: 0x0a0003fa due to: Could not load file or assembly 'System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' or one of its dependencies.
Selected sub: Berilia
Selected shuttle: Bunyip
Starting the server...
Using Lidgren networking
Initializing Steam server failed.
Server started
2019-09-03 13:56:48.8583|WARN|GameAnalyticsSDK.Net.Logging.GALogger|Warning/GameAnalytics: Could not add design event: Datastore not initialized
2019-09-03 13:56:48.8825|WARN|GameAnalyticsSDK.Net.Logging.GALogger|Warning/GameAnalytics: Could not add design event: Datastore not initialized
2019-09-03 13:56:48.8825|WARN|GameAnalyticsSDK.Net.Logging.GALogger|Warning/GameAnalytics: Could not add design event: Datastore not initialized





***edit also with this:
~/barotrauma/lib64$ ls -la
total 280
drwxrwxr-x 2 steam steam 4096 Sep 3 14:11 .
drwxrwxr-x 12 steam steam 4096 Sep 3 14:05 ..
-rwxrwxr-x 1 steam steam 274328 Sep 3 14:04 libMonoPosixHelper.so
lrwxrwxrwx 1 steam steam 62 Sep 3 14:11 steamclient.so -> /home/steam/.steam/steam/steam/steamcmd/linux64/steamclient.so
< >
Showing 1-15 of 15 comments
Per page: 1530 50

Date Posted: Jun 4, 2019 @ 9:27pm
Posts: 15