NavigationContentFooter
Jump toSuggest an edit

Creating an ARK game server on Scaleway Instances

Reviewed on 16 September 2024Published on 10 November 2020
  • 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
Tip

We recommend you follow this tutorial using a Cost-Optimized Instance.

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.

Note

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.

  1. Connect to your Instance using SSH.

  2. Update the apt package cache and upgrade the software already installed on the Instance:

    apt update && apt upgrade -y
  3. Create a new steam user account:

    useradd -m steam
  4. The ARK server application requires SteamCMD, a command-line version of the Steam client. To install it, the multiverse repository and the i386 architecture are required. Configure these settings and update the apt package manager before installing the SteamCMD client:

    add-apt-repository multiverse
    dpkg --add-architecture i386
    apt update
    apt install lib32gcc1 steamcmd -y

    During 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:

  5. Enter the steam user account and create a new directory for the ARK server.

    Note

    Make sure to have at least 12 GB of free disk space available to be able to download and expand all ARK server files.

    su steam
    mkdir -p /home/steam/servers/ark
  6. Start the steamcmd client:

    steamcmd

    The Steam console displays:

    Steam Console Client (c) Valve Corporation
    -- type 'quit' to exit --
    Loading Steam API...OK.
    Steam>
  7. 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 ID 376030 for ARK: Survival Evolved. Then leave the Steam console using the quit command:

    Steam> login anonymous
    Steam> force_install_dir /home/steam/servers/ark
    Steam> app_update 376030 validate
    Steam> quit
    Note

    You 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
  8. Leave the steam user account:

    exit
  9. Create a symlink to the steamcmd application:

    ln -s /usr/games/steamcmd /home/steam/steamcmd
  10. 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 Server
    Wants=network-online.target
    After=syslog.target network.target nss-lookup.target network-online.target
    [Service]
    Type=simple
    Restart=on-failure
    RestartSec=5
    StartLimitInterval=60s
    StartLimitBurst=3
    User=steam
    Group=steam
    ExecStartPre=/home/steam/steamcmd +login anonymous +force_install_dir /home/steam/servers/ark +app_update 376030 +quit
    ExecStart=/home/steam/servers/ark/ShooterGame/Binaries/Linux/ShooterGameServer TheIsland?listen?SessionName=<server_name> -server -log
    WorkingDirectory=/home/steam/servers/ark/ShooterGame/Binaries/Linux
    LimitNOFILE=100000
    ExecReload=/bin/kill -s HUP $MAINPID
    ExecStop=/bin/kill -s INT $MAINPID
    [Install]
    WantedBy=multi-user.target
  11. Enable and start the newly created systemd server:

    systemctl enable ark-server && systemctl start ark-server
    Note

    You 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 Server
    Loaded: 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 ago
    Process: 1791 ExecStartPre=/home/steam/steamcmd +login anonymous +force_install_dir /home/steam/servers/a
    Main 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
  12. 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
  13. Install a firewall on your Instance to protect it. We use UFW in this tutorial:

    apt install ufw
  14. Create a script configure_ufw.sh and put the following content into it:

    #!/bin/sh
    if [[ $EUID -ne 0 ]]; then
    echo "This script must be run as root"
    exit 1
    fi
    for port in 7777 7778 27015; do
    ufw allow $port/udp
    done
    ufw allow 27020/tcp
    ufw allow 22/tcp
    ufw default deny
    ufw default allow outgoing
    ufw enable
    echo "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:

  1. Start the ARK: Survival Evolved client on your local computer and click Join ARK.
  2. Use the server name filter to find your server and select it.
  3. 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.

Docs APIScaleway consoleDedibox consoleScaleway LearningScaleway.comPricingBlogCarreer
© 2023-2024 – Scaleway