We recommend you follow this tutorial using a Cost-Optimized Instance.
Creating an ARK game server on Scaleway Instances
- ark-server
- video-games
- gaming
- ark
ARK: Survival Evolved is an action-adventure game released in 2017 by the game development company Studio Wildcard. The game is available for PC, Xbox One, Nintendo Switch, and PS4. Mobile versions of the game exist for Android and iOS.
In the game, you start as a man or woman stranded on the shores of a mysterious island called ARK, populated with roaming dinosaurs and other prehistoric animals. The player has to hunt, harvest resources, craft items, grow crops, research technologies, and build shelters to withstand the elements and survive. There are currently more than 150 creatures that populate the world of ARK, and one of the primary mechanics of the game is taming these creatures using projectiles like tranquilizing darts or weapons. During the game, the player can team up with, or prey upon, hundreds of other players on various ARK servers to survive, dominate - and finally escape from the island!
What is ARK: Survival Evolved?
ARK: Survival Evolved is a survival game, as the title indicates, where you are stranded in a hostile world with nothing. You have to hunt, harvest, craft, and gather your way toward bigger and better resources. The game concept is similar to other games like Minecraft, Dayz, and Rust. You can explore the island and its imposing environment, which is composed of many natural and unnatural structures, above-ground, below-ground, and underwater. While doing this, you discover the most exotic procedurally randomized creatures and rare blueprints, allowing you to build structures and level up your character. All your actions require resources, and you have to eat and drink to keep your character alive.
The game supports both single-player local games and massive multi-player games using more than 100 ARK servers. You can create a tribe on the server and invite your friends to join your tribe to be even stronger. In your tribe, all tamed dinosaurs and building structures are usually shared between tribe members, and you can delegate tasks to other members of your tribe.
Why should I start an ARK server?
When playing ARK: Survival Evolved on one of the existing public servers, you are limited to the constraints and resources available on this server. These predefined ARK maps and assets are an excellent start to get some initial inspiration. Still, they will not allow you to imagine and design your own unique ‘Procedurally Generated ARKs’ for infinite replayability and endless surprises.
By starting your own ARK: Survival Evolved server, you can design an ARK map precisely to your creativity and liking.
In this tutorial, you will learn how to create an ARK server on a Scaleway Instance to design your ARK and invite your friends to play with you on a server tailored to your needs.
How can I create an ARK server?
Before you start
To complete the actions presented below, you must have:
- A Scaleway account logged into the console
- Owner status or IAM permissions allowing you to perform actions in the intended Organization
- An SSH key
- An Instance running Ubuntu Bionic Beaver (18.04) or Ubuntu Focal Fossa (20.04)
- A valid API key
sudo
privileges or access to the root user- A copy of ARK: Survival Evolved for your local computer
Creating an ARK server can be done in a few steps on a Scaleway Instance. If you do not have an Instance yet, start by deploying your first Instance.
The ARK: Survival Evolved game server application requires at least 6 GB of RAM to start. Memory requirements increase as the number of connected players increases, as well depending on the activated mods. We recommend that you use at minimum a DEV1-L Instance for smooth gameplay.
-
Connect to your Instance using SSH.
-
Update the
apt
package cache and upgrade the software already installed on the Instance:apt update && apt upgrade -y -
Create a new
steam
user account:useradd -m steam -
The ARK server application requires SteamCMD, a command-line version of the Steam client. To install it, the
multiverse
repository and thei386
architecture are required. Configure these settings and update theapt
package manager before installing the SteamCMD client:add-apt-repository multiversedpkg --add-architecture i386apt updateapt install lib32gcc1 steamcmd -yDuring installation, you are requested to agree to Steam’s license agreement. Use the Tab key to move to OK, then press Enter to accept the terms:
-
Enter the
steam
user account and create a new directory for the ARK server.NoteMake sure to have at least 12 GB of free disk space available to be able to download and expand all ARK server files.
su steammkdir -p /home/steam/servers/ark -
Start the
steamcmd
client:steamcmdThe Steam console displays:
Steam Console Client (c) Valve Corporation-- type 'quit' to exit --Loading Steam API...OK.Steam> -
Log in as
anonymous
user to the steam service, set the directory for the ARK server files (/home/steam/servers/ark
), and download the application with the ID376030
for ARK: Survival Evolved. Then leave the Steam console using thequit
command:Steam> login anonymousSteam> force_install_dir /home/steam/servers/arkSteam> app_update 376030 validateSteam> quitNoteYou can also execute these steps directly from the console by running the following command:
steamcmd +login anonymous +force_install_dir /home/steam/servers/ark +app_update 376030 +quit -
Leave the
steam
user account:exit -
Create a symlink to the
steamcmd
application:ln -s /usr/games/steamcmd /home/steam/steamcmd -
Create a systemd script named
/etc/systemd/system/ark-server.service
with the following contents. Make sure to replace<server_name>
with the desired name for your ARK server:[Unit]Description=ARK Survival Evolved ServerWants=network-online.targetAfter=syslog.target network.target nss-lookup.target network-online.target[Service]Type=simpleRestart=on-failureRestartSec=5StartLimitInterval=60sStartLimitBurst=3User=steamGroup=steamExecStartPre=/home/steam/steamcmd +login anonymous +force_install_dir /home/steam/servers/ark +app_update 376030 +quitExecStart=/home/steam/servers/ark/ShooterGame/Binaries/Linux/ShooterGameServer TheIsland?listen?SessionName=<server_name> -server -logWorkingDirectory=/home/steam/servers/ark/ShooterGame/Binaries/LinuxLimitNOFILE=100000ExecReload=/bin/kill -s HUP $MAINPIDExecStop=/bin/kill -s INT $MAINPID[Install]WantedBy=multi-user.target -
Enable and start the newly created systemd server:
systemctl enable ark-server && systemctl start ark-serverNoteYou can verify if your ARK server is running by typing the following command:
systemctl status ark-server.service
. An output like the following example displays:● ark-server.service - ARK Survival Evolved ServerLoaded: loaded (/etc/systemd/system/ark-server.service; enabled; vendor preset: enabled)Active: active (running) since Thu 2020-11-12 16:30:05 UTC; 1min 55s agoProcess: 1791 ExecStartPre=/home/steam/steamcmd +login anonymous +force_install_dir /home/steam/servers/aMain PID: 1836 (ShooterGameServ)Tasks: 14 (limit: 4915)CGroup: /system.slice/ark-server.service└─1836 /home/steam/servers/ark/ShooterGame/Binaries/Linux/ShooterGameServer TheIsland?listen?Ses -
To customize your server, open the
GameUserSettings.ini
file in a text editor and edit the parameters to your requirements. You can also use a Configuration Generator to automatically generate the required settings from a visual interface.nano /home/steam/servers/ark/ShooterGame/Saved/Config/LinuxServer/GameUserSettings.ini -
Install a firewall on your Instance to protect it. We use UFW in this tutorial:
apt install ufw -
Create a script
configure_ufw.sh
and put the following content into it:#!/bin/shif [[ $EUID -ne 0 ]]; thenecho "This script must be run as root"exit 1fifor port in 7777 7778 27015; doufw allow $port/udpdoneufw allow 27020/tcpufw allow 22/tcpufw default denyufw default allow outgoingufw enableecho "Firewall rules configured and activated."
How can I connect to my ARK server?
After completing the installation of your ARK server, you can connect to it by following these three steps:
- Start the ARK: Survival Evolved client on your local computer and click Join ARK.
- Use the server name filter to find your server and select it.
- Enter the server password and click Accept to connect to it.
Conclusion
You now have created, started and configured an ARK: Survival Evolved server on a Scaleway Instance, installed basic protection through UFW and are ready to invite your friends to build your tribe on the server. For more information about customization and additional mods, refer to the official ARK Community platform.