Skip to content

Instantly share code, notes, and snippets.

@OnkelDom
Last active November 16, 2021 21:29
Show Gist options
  • Save OnkelDom/fe6770f3eeb3bfbf6f508652a39c2033 to your computer and use it in GitHub Desktop.
Save OnkelDom/fe6770f3eeb3bfbf6f508652a39c2033 to your computer and use it in GitHub Desktop.
Satisfactory Dedicated Server (v0.5.0) on Ubuntu 20.04

Run Satisfactory Dedicated Server on Ubuntu 20.04.

Define variables

SteamUser="steam"
GameDirectory="satisfactory_dedicated_server"

Sources

Generate User and create Game directory

sudo useradd -m $SteamUser
cd /home/$SteamUser
sudo apt install -y steamcmd
sudo -u $SteamUser /usr/bin/mkdir -p /home/$SteamUser/$GameDirectory

Configure UFW Firewall

cat <<EOF | sudo tee /etc/ufw/applications.d/satisfactory
[Satisfactory]
title=Satisfactory
description=An extremely satisfying experience
ports=15777,15000,7777/udp
EOF

sudo ufw app update Satisfactory
sudo ufw allow Satisfactory
sudo ufw reload

Install SystemD service, enable and start it

cat <<EOF | sudo tee /etc/systemd/system/satisfactory.service
[Unit]
Description=Satisfactory dedicated server
Wants=network-online.target
After=syslog.target network.target nss-lookup.target network-online.target

[Service]
Environment="LD_LIBRARY_PATH=./linux64"
ExecStartPre=/usr/games/steamcmd +login anonymous +force_install_dir "/home/$SteamUser/$GameDirectory" +app_update 1690800 validate +quit
ExecStart=/home/$SteamUser/$GameDirectory/FactoryServer.sh
User=$SteamUser
Group=$SteamUser
StandardOutput=journal
Restart=on-failure
KillSignal=SIGINT
WorkingDirectory=/home/$SteamUser/$GameDirectory
SyslogIdentifier=satisfactory

[Install]
WantedBy=multi-user.target
EOF

Enable the game and show logs

sudo systemctl enable --now satisfactory
sudo journalctl -feu satisfactory

Set Path for User - Optional

sudo -u steam /bin/bash
PATH=$PATH:/usr/games/
export PATH

Update steamcmd and install Satisfactory Dedicated Server - Optional

steamcmd
quit
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment