This guide was written for Ubuntu 14.04, using a fresh install; you may already have some of the dependencies and such already set up.
Special Thanks: Misfire.
Guide Status: Finished
1. Install Steam User and SteamCMD
Code:
sudo apt-get upgrade && sudo apt-get upgrade
sudo apt-get install lib32gcc1 libssl1.0.0 libssl1.0.0:i386 libcurl3:i386
sudo useradd -m steam
sudo su - steam
mkdir ~/steamcmd
cd ~/steamcmd
wget https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz
tar -xvzf steamcmd_linux.tar.gz
./steamcmd.sh
The previous set of commands will install lib32gcc1, a prerequisite to using steamcmd not typically included with linux.
You're also installing libssl1.0.0 and libssl1.0.0:i386 which you need for Sven Co-op to work.
You're then creating and switching to a dedicated steam user to both keep things sorted and prevent privilege escalation.
The wget and tar commands download and extract SteamCMD itself, which will manage all steam games on the server including Sven Co-op.
Lastly we're launching SteamCMD to actually get the server.
2. Installing Sven Co-op Dedicated Server
I personally prefer to login to Steam to guarantee downloads, but you can choose to do this using the anonymous login.
Code:
Steam>login USER
Logging in user 'USER' to Steam Public...
password: SUPERCOOLPASSWORD
Enter the current code from your Steam Guard Mobile Authenticator app
Two-factor code:CODE1
Logged in OK
Waiting for license info...OK
Steam> app_update 276060
app_update 276060 is the command that directly downloads Sven Co-op 5.0 dedicated server, you will use the same command to update the server.[/I]
3. Validating the Install
Like many steam pipe installs, the server may fail to install everything it needs. So after you see something like:
Code:
Update state (0x61) downloading, progress: 98.97 (1920381357 / 1940288513)
Update state (0x81) committing, progress: 43.04 (835182261 / 1940288513)
Success! App '276060' fully installed.
It's your cue to run app_update 276060 validate
4a. Customization
In either FTP or your favorite GUI based editor, you're going to need to edit some files to make your server actually work, and be unique.
Code:
cd ~/Steam/steamapps/common/Sven\ Co-op\ Dedicated\ Server/svencoop
nano server.cfg
The files you need to work with are all going to be in the svencoop/svencoop directory, since we installed it to the steam home we can replace most with "~"
server.cfg contains the information that makes your server unique, including the hostname, IPAND PORT, and importantly the rcon_password
4b. Install Metamod (optional)
If you're planning on installing metamod, you'll want to also edit your liblist.gam file.
Upload your metamod.so here:
Code:
/home/steam/Steam/steamapps/common/Sven\ Co-op\ Dedicated\ Server/svencoop
Change your Liblist.gam's contents from
Code:
gamedll_linux "dlls/server.so"
to
Code:
gamedll_linux "addons/metamod/dlls/metamod.so"
5. Launching Sven Co-op Server.
There are a variety of ways to run your Sven-Coop server, the most popular of which involves screen or techniques offered on this forum.
For the sake of writing speed, and because I'm unaware if they are needed any longer; no edits like the infamous numedicts are used.
Code:
screen -dmS svencoop ~/Steam/steamapps/common/Sven\ Co-op\ Dedicated\ Server/svends_run
Troubleshooting:
The following bugs exist and are fixed using the responded commands.
Instant Crash on Host (Linux)
Code:
cd /Steam/steamapps/common/Sven\ Coop\ Dedicated\ Server/svencoop/dlls/
ln -s server.so hl_i386.so
Potential Missing Dependencies
Code:
sudo apt-get install libcurl3:i386 -y
libssl.so failure
Code:
LoadLibrary failed on /home/steam/svencoop/./svencoop/dlls/server.so: libssl.so.1.0.0: cannot open shared object file: No such file or directory
Code:
sudo apt-get install libssl1.0.0:i386
No Donator Bonuses
Edit your /etc/hosts file to change
Code:
127.0.0.1 localhost
127.0.0.1 SERVER
to
Code:
127.0.0.1 localhost
EXTERNALIP SERVER
Then reboot the server machine.
COMMAND HISTORY LOG (Base Install to Ready)
Code:
sudo ufw enable
sudo ufw allow 22
sudo ufw allow 27015
sudo apt-get upgrade && sudo apt-get upgrade
sudo apt-get install lib32gcc1 libssl1.0.0 libssl1.0.0:i386 libcurl3:i386 -y
sudo su - steam
mkdir steamcmd
wget https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz
tar -xvzf steamcmd_linux.tar.gz
./steamcmd.sh
<STEAMCMD INSTALL>
cd /Steam/steamapps/common/Sven\ Coop\ Dedicated\ Server/svencoop/dlls/
ln -s server.so hl_i386.so