ARK: Survival Evolved is an adventurous action genre video game. It is one of the most played games worldwide. To play the game, the player can navigate on foot or use animal. The island is full of dinosaurs, natural hazards, prehistoric animals and hostile human-players. A player can choose weapons and firearms to protect and defend himself from animals and human players. You can play as a single player or your friends can join your server in multiplayer mode.
To setup your own ARK: Survival Evolved server on Ubuntu, follow the tutorial below.
Note: I have used Alibaba Cloud server and Ubuntu 16.04 LTS for this tutorial.
- You must have Alibaba Cloud Elastic Compute Service (ECS). To get free $300 credits in your Alibaba Cloud account “Click Here”.
- You must have a copy of game client from https://www.playark.com to use your ARK: Survival Evolved server.
- You should setup your server’s hostname.
- Follow the general instructions to secure your serverg. activating firewalls.
Minimum Requirements for these settings:
- Ubuntu 16.04 (64 bit) installed on your Alibaba Cloud ECS
- 6 GB RAM required (8 GB Recommended)
- Fast Internet (Provided with every ECS on Alibaba Cloud)
Before you begin:
Before you begin installation of ARK: Survival Evolved on your server, you will have to follow steps below:
- Login to your Alibaba Cloud account – Click here to login
- Click “Console” to open your dashboard.
- Now click ☰ ( menu expansion button ) to expand your menu as shown in image below:
- Now click settings icon as shown in image below:
- Now click “+ icon button” to add Elastic Compute Service in your sidebar menu.
- Now click Tick button to save your settings.
- Now click “Base Services”, sidebar sub-menu will expand. Then click “Elastic Compute Service”.
8. Now click “Instances” option in your second sidebar.
- Click “Create Instance” button as shown in image below:
- Now choose your preferred Billing Method.
- Subscription: ECS is subscribed for at least 1 month.
- Pay-As-You-Go: You pay charges for what you use. No matter an hour or months or years. It’s completely up to you.
- Now select any one from the given instance’s locations list of your choice. In my case, I have chosen US ؑ East 1 (Virginia).
Note: You can choose any instance location of your choice. I recommend to use Alibaba Cloud services for stable and best performance.
- Now select your desired hardware architecture for server instance.
Note: While choosing specifications for system, please keep an eye on minimum system requirements required for ARK: Survival Evolved.
- Now choose Public Image, select Ubuntu and version 04 64 bit to install on your ECS instance.
- Choose Storage as per your choice. I will recommend to use SSD Cloud Disk.
- Click “Next Networking” button to proceed towards bandwidth settings.
- Now choose desired network connection speed for your server.
- Now click Next: System Configurations button to configure root user credentials.
- Now choose “Password” option, set your login password and repeat same password. This password will be used to access server via SSH client or VNC console.
- Now click Next: Grouping button for next step.
- Click Next: Preview
- Now carefully review your settings and click Create Instance.
- Login as root user with your root username & password via SSH client (e.g. Putty – You can get Putty from https://www.putty.org ) or VNC console available in your AliBaba Cloud account dashboard.
- You will have to update & upgrade your Ubuntu to latest packages using the following commands:
# sudo apt-get update && sudo apt-get upgrade
When you see the following message, type ‘Y’ and press Enter key.
Select “install the package maintainer’s version” option and then select OK.
- Now you have to setup SteamCMD. This is steam command line interface.
To install SteamCMD in Ubuntu, follow the steps below:
- You will have to open the list in nano editor using the following command:
# sudo nano
- Write the following lines in opened list file as shown below:
|deb http://archive.ubuntu.com/ubuntu xenial main universe multiverse|
|deb http://archive.ubuntu.com/ubuntu xenial-updates main universe multiverse|
|deb http://archive.ubuntu.com/ubuntu xenial-security main universe multiverse|
- After you have done writing, press Ctrl + X, write ‘Y’ and press Enter key.
- Now, type the following command in your terminal:
# sudo dpkg --add-architecture i386
- Now you will need to update your package again using the following command:
# sudo apt-get update
- Now type the following command to proceed towards installation of SteamCMD:
# sudo apt-get install steamcmd
If above command gives any error, then you may use the following command:
# sudo apt-get -f install steamcmd
- After execution of above command, you will see the following screen. Type ‘Y’ and press Enter key.
- During installation of SteamCMD, a screen will appear to ask regarding terms and agreement. Select OK option and then select I AGREE to accept these terms and agreement and select
- To avoid any security issues, you will have to add another user.
How to add new user in Ubuntu?
- To add user, use the following command:
Note: ark can be any username of your choice.
- Select your password of your choice:
- Enter your information like Full Name, Phone Number, etc.
- Confirm your information is correct by typing ‘Y’ and press Enter.
- To assign admin rights to user, use the following command:
Now proceed towards making some settings in your system to open files limit:
- Use the following command for to open /etc/sysctl.conf file
# sudo nano
- Add the following line
Press Ctrl + X, write ‘Y’ and press Enter.
# sysctl -p /etc/sysctl.conf
- Use the following command for to open /etc/security/limits.conf file
# sudo nano
- Update the following lines to the lines below in opened file and use Ctrl + X, then type ‘Y’ and press Enter to save the settings:
* soft nofile 1000000
* hard nofile 1000000
- Use the following command for to open /etc/pam.d/common-session file
# sudo nano
- Add the following line in opened file as shown in screenshot below and use Ctrl + X, then type ‘Y’ and press Enter to save the settings:
# session required pam_limits.so
The above changes are necessary for tuning otherwise, consumption of system resources would be higher.
Let’s install ARK server now:
- Now let’s proceed towards installation of ARK server. First of all, you will have to create a server directory that you contain the files of your ARK server. To create directory, execute the following commands in your terminal:
Where server is name of directory.
- Now let’s create symlink from the location /usr/games/steamcmd to steamcmd in your user’s directory. In my case, username is ark so mine would be ark user’s directory. To do this, use the following command:
# ln -s /usr/games/steamcmd steamcmd
- Use the following command to run streamcmd for installation of ARK server.
# steamcmd +login anonymous +force_install_dir /home/ark/server +app_update 376030 +quit
Now you can see that your app has been successfully installed.
Let’s create a systemd Unit for ARK Server now:
- When system is restarted or rebooted, to automatically start the ARK server, we will create a systemd unit file. For this purpose, we will log in again from our root account or we can simply switch user to root by using the following command:
Command to switch user to root:
# su -
- Now to create a new systemd file, execute the following command:
- Type the following lines in opened file in nano editor. Use Ctrl + X, type ‘Y’ and press Enter key to save the file.
Description=ARK Survival Evolved
ExecStartPre=/home/ark/steamcmd +login anonymous +force_install_dir /home/ark/server +app_update 376030 +quit
ExecStart=/home/ark/server/ShooterGame/Binaries/Linux/ShooterGameServer TheIsland?listen?SessionName=example -server -log
ExecStop=killall -TERM srcds_linux
- Execute the following command to apply your updated changes.
# systemctl daemon-reload
- Execute the following commands to enable systemd unit and run/start your ARK server.
# systemctl enable ark.service
# systemctl start ark
Now, after successful execution of the commands above, you will need to configure your server by editing settings in GameUserSettings.ini file. You can setup password for the users and admin in this file. You can also leave user’s password blank when you want your users to connect with your server without any password. Admin password is required while issuing game commands. To do this, you can follow the commands below:
- Open the GameUserSettings.ini file.
# nano /home/ark/server/ShooterGame/Saved/Config/LinuxServer/GameUserSettings.ini
- Now add the following lines given below in opened nano editor and use Ctrl + X, type ‘Y’ and press Enter to save the settings.
Let’s setup firewalls for ARK Survival:
- If you have activated firewalls, you will have to define a rule in Alibaba Cloud security group for your cloud server to add exception for port 27015, 7777, 7778 and 27020. By default, these ports are blocked by the firewalls.
To do this follow the given instructions in snapshots:
Go to your Elastic Compute Service section:
Click on more button for ECS you are making ready for Minecraft Server:
Click on Configure Rules:
Click on Quickly Create Rules:
Add the configurations for port UDP 27015 as shown in screenshot below & click OK.
Now, add the configurations for port UDP 7777 as shown in screenshot below & click OK.
Now, add the configurations for port UDP 7778 as shown in screenshot below & click OK.
Now, add the configurations for port TCP 27020 as shown in screenshot below & click OK.
Now Connect to your ARK Survival Server:
- Now open your ARK Survival client and click Join ARK.
- Use Server Name Filter and select your server.
- Enter password and click Accept.