Hosting a Linux Dedicated Server for “The Ship”

hostingthe-ship

I cannot get a dedicated server for The Ship (AppID 2403) to run on a linux box using steamcmd. I have followed this guide. The steps listed complete successfully. Then, I run

./srcds_run -game ship

After the server is done starting, I enter:

map batavier

The map appears to load fine, but then the server freezes. I can interrupt the server using ^C, but it takes no input and does not go any further. Output to the console:

Auto detecting CPU
Using SSE2 Optimised binary.
Auto-restarting the server on crash

Console initialized.
Attempted to create unknown entity type event_queue_saveload_proxy!
Game.dll loaded for "The Ship"
CSoundEmitterSystem::AddSoundsFromFile:  No such file scripts/game_sounds_single_player.txt
CSoundEmitterSystem::AddSoundsFromFile:  No such file scripts/game_sounds_vo_tutorial.txt
maxplayers set to 1
maxplayers set to 32
Unknown command "startupmenu"
Network: IP 162.243.196.241, mode MP, dedicated Yes, ports 27016 SV / 27005 CL
map batavier
SOLID_VPHYSICS static prop with no vphysics model! (models/env/misc/large_winframe
     *Many, many more SOLID_VPHYSICS warnings follow... *
Executing dedicated server config file
Cannot open Needs Extreme Times file <<scripts/needs/need_extreme_times>>. Defaults set.
Dynamic prop prop_dynamic: no sequence named:360
Dynamic prop cab8ceilingfan: no sequence named:360
Dynamic prop prop_dynamic: no sequence named:fan_on
Dynamic prop prop_dynamic: no sequence named:wave
Summary:  1278 resources total 48.51 Mb, 72.29 % of capacity
The nav mesh needs a full nav_analyze
     * hang *

Apparently, the problem has something to do with contacting the master servers. If I enter setmaster commands into the autoexec.cfg file, the server freezes immediately after executing one of them (instead of when the map is loaded). I also confirmed this through a little program-debugging magic (gcore and gdb – one of the program threads is blocking trying to connect to a master server).

Unfortunately, the original studio that owned the game is completely defunct. With the company went the game's website and forums. Somebody had a fix, as evinced by these two forum threads, but it's gone now. Does someone have those fixed binaries, or an alternate solution to the problem?

Best Answer

Well, from the log you have a bad navigation mesh on the map.

Try a different map.

As of how to kill a running server, just open another console to your Linux server and kill the program from there. I recommend always keeping an HTOP monitor to a Linux computer open, because it can be invaluable for doing these things as well as detecting out of control processes.

As of how to kill the server properly run the following kill signals 30 seconds apart (using killall or any system utility capable of sending a kill signal) SIGTERM, SIGKILL. This will give the server a chance to shut down if it can.

HTOP is usually not installed by default on most servers, but you can easily install it with the package manager. It works nicely when interfaced to a terminal emulator like PuTTY or just SSH in a Linux or Mac Terminal window.