The survival game "ARK" has been given for free by Epic Games in June 2020. We started playing it - both local and on servers operated by friends of us. After two weeks of vacation without the possibility to play we where rather disappointed that a lot of things got lost during that time. We continued playing localy then - in this case the game stops as soon as the player exits. But that's not comparable to the multi player game.
So we decided to bring up an ARK server locally on our home server. This ARK server, so the intention, shall be started when we want to play and stopped when the last of us stops playing. We don't want to have it public in the internet, a local server is fine for us.
So this page shows how to set up the ARK server on an Ubuntu based machine. To have the administration easy I am using the ark manager.
documentation of ark manager
Before doing the game server installation there are some preconditions to fulfill.
First thing is setting upe the regular Ubuntu installation as you want to get it.
After that the system requires some additional packages, all coming out of the official Ubuntu resources:
sudo apt install curl libc6-i386 lib32gcc1 libsdl2-2.0-0:i386 steamcmd
Next thing to do is the cration of the user which shall run the
ARK server. I call it steam
. My decission is to give this
user the uid 10000. The following commands have to be executed with an
acoount having sudo rights.
sudo adduser --uid 10000 steamAnswer the questions of this command to give all details you want to provide.
This new user requires sudo abilities
sudo usermod -aG sudo steam
Now the steam client has to be installed. This is also included in the standard Ubuntu resources.
sudo apt install steamcmdThe steam license has to be agreed during this installation.
This is the last thing to do with the regular account. The following part
has to be done with the user steam
, so either log off and
log in as steam or do su steam
and cd ~
.
First we do an update of the steam client and check if it works fine.
steamcmd <wait for the prompt "Steam>"> login anonymous <there should be no error and no warning> quit
Now we do the installation of ARK manager. I want to start the game server manually, so I use
curl -sL https://git.io/arkmanager | sudo bash -s steamIf the game server shall be started together with the machine you have to use
curl -sL https://git.io/arkmanager | sudo bash -s steam --install-service
The ARK manager requires some settings to be able to run on
an Ubuntu system. Edit the file /etc/arkmanager/arkmanager.cfg
and change the tag as explained here:
steamcmdroot="/usr/games"
steamcmdexec="steamcmd"
steamcmd_appinfocache="/home/steam/.steam/appcache/appinfo.vdf"
steamcmd_workshoplog="/home/steam/.steam/logs/workshop_log.txt"
arkflag_crossplay=true
arkflag_NoBattlEye=true
Now the game server requires your local configuration.
Edit the file /etc/arkmanager/instances/main.cfg
and adapt these tags to your wishes.
ark_SessionName
serverMap
ark_ServerPassword
ark_ServerAdminPassword
ark_MaxPlayers
Now we're ready for the game server installation.
Be patient! This may take LONG!
arkmanager install
We prefer playing the server in a way that no player can harm another player. Therefore we want to configure the server to PvE and disable "friendly fire".
To configure the server to PvE edit the file
ARK/ShooterGame/Saved/Config/LinuxServer/GameUserSettings.ini
and add serverPVE=True
to the section
[ServerSettings]
.
With this you can't harm players of different teams. But you can still harm players of your own team.
If you don't want that edit the file
ARK/ShooterGame/Saved/Config/LinuxServer/Game.ini
.
Add the config tag
bPvEDisableFriendlyFire=True
to the section
[/script/shootergame.shootergamemode]
.
In the default installation this file is empty. So in that case
you have to write the following lines into the file:
[/script/shootergame.shootergamemode] bPvEDisableFriendlyFire=True
Other configuration possibilites can be found in various pages in the internet :-)
After having the game server installed there are some commands to supervise the game. Here I show the most important once.
Use this command to start the server.
The server is not directly usable!
It takes several minutes until the server can be used.
If it is accessable can be detected with arkmanager status
.
This command shows the status of the ark server. As long as the server is not accessable it will print
Running command 'status' for instance 'main' Server running: Yes Server PID: 99315 Server listening: No Server build ID: 6011539 Server version: 320.38The values vary dependent on your system - even with each start
This is an example when the server is accessable:
Running command 'status' for instance 'main' Server running: Yes Server PID: 99315 Server listening: Yes Server Name: XxXxXxX - (v320.38) Steam Players: 0 / 70 Active Steam Players: 0 Server online: Yes ARKServers link: http://arkservers.net/server/111.222.33.44:27015 Steam connect link: steam://connect/111.222.33.44:27015 Active Players: 0 Server build ID: 6011539 Server version: 320.38The IP addresses are the addresses of the server as they are seen from the internet.
Use this command to stop the server. The server saves the actual game during shutdown.
Next goal for my personal ARK server is to add it to the automatic shut down mechanism. That means that the automatic shut down - or better - suspend shall only be done if there's no player connected to the server.