Recommended Server Specs
- Ubuntu Server 24.04.1 LTS
- 4 vcpu
- 100GB disk
- 24GB RAM
These are the recommended based on my own experience. I originally started with 16GB of RAM but that seemed to be too little as the OS was experiencing a ton of memory swap. So, I personally increased mine to 32GB. But based on current usage of my server I think 24GB is probably fine.
Configure Server and Install SteamCMD
# sudo su
# apt update && apt upgrade
# add-apt-repository multiverse
# dpkg --add-architecture i386
# apt update
# apt install steamcmd
# vi /etc/sysctl.conf
fs.file-max=100000
# sysctl -p /etc/sysctl.conf
# vi /etc/security/limits.conf
* soft nofile 100000
* hard nofile 100000
# ulimit -n 100000
Create steam User and Install
# useradd --create-home --shell /bin/bash --password sism1234 steam
# su - steam
# ln -s /usr/games/steamcmd steamcmd
# steamcmd +force_install_dir /home/steam/arkserver +login anonymous +app_update 2430930 validate +quit
# exit
Install GE Proton and Configure Steam
# wget https://github.com/GloriousEggroll/proton-ge-custom/releases/download/GE-Proton9-22/GE-Proton9-22.tar.gz
# mkdir -p /opt/proton
# tar -xzvf GE-Proton9-22.tar.gz -C /opt/proton
# mkdir -p /home/steam/.local/share/Steam
# mkdir -p /home/steam/arkserver/prefixes
# cp -r /opt/proton/GE-Proton9-22/files/share/default_pfx/* /home/steam/arkserver/prefixes/
# chown -R steam:steam /home/steam/
Configure ARK Server Ascended Service
# vi /etc/systemd/system/ark.service
[Unit]
Description=ARK Survival Ascended
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 +force_install_dir /home/steam/arkserver +login anonymous +app_update 2430930 +quit
ExecStart=/opt/proton/GE-Proton9-22/proton run ArkAscendedServer.exe TheCenter_WP?listen?SessionName=StopItSomeMore -servergamelog
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s INT $MAINPID
WorkingDirectory=/home/steam/arkserver/ShooterGame/Binaries/Win64
LimitNOFILE=100000
Environment="STEAM_COMPAT_CLIENT_INSTALL_PATH=/home/steam/.local/share/Steam"
Environment="STEAM_COMPAT_DATA_PATH=/home/steam/arkserver/prefixes"
[Install]
WantedBy=multi-user.target
Start Game Server
# systemctl daemon-reload
# systemctl start ark
# systemctl status ark.service
Edit Game Configurations
# vi /home/steam/arkserver/ShooterGame/Saved/Config/WindowsServer/GameUserSettings.ini
ServerPassword=onceuponatime
ServerAdminPassword=onceuponatimeadm
SupplyCrateLootQualityMultiplier=5.0
PlayerCharacterWaterDrainMultiplier=0.2
PlayerCharacterFoodDrainMultiplier=0.2
HarvestAmountMultiplier=4.0
TamingSpeedMultiplier=8.0
# vi /home/steam/arkserver/ShooterGame/Saved/Config/WindowsServer/Game.ini
[/script/shootergame.shootergamemode]
NPCReplacements=(FromClassName="MegaRaptor_Character_BP_C",ToClassName="")
NPCReplacements=(FromClassName="MegaCarno_Character_BP_C",ToClassName="")
NPCReplacements=(FromClassName="MegaRex_Character_BP_C",ToClassName="")
FallDamageMultiplier=0.4
bDisableStructurePlacementCollision=True
bAllowSpeedLeveling=True
bAllowFlyerSpeedLeveling=True
Network Information
--- NAT Portforward
7777, 27015