satisfactory-server-ubuntu

  _______  _______  _______  __  ___  __    __   _______     ___       _______
 /  _____||   ____||   ____||  |/  / |  |  |  | |   ____|   /   \     |       \
|  |  __  |  |__   |  |__   |  '  /  |  |__|  | |  |__     /  ^  \    |  .--.  |
|  | |_ | |   __|  |   __|  |    <   |   __   | |   __|   /  /_\  \   |  |  |  |
|  |__| | |  |____ |  |____ |  .  \  |  |  |  | |  |____ /  _____  \  |  '--'  |
 \______| |_______||_______||__|\__\ |__|  |__| |_______/__/     \__\ |_______/

# sudo -s
# apt update && apt upgrade

# add-apt-repository multiverse && apt update
# dpkg --add-architecture i386

# apt update

# apt install lib32gcc-s1
# 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

# useradd --create-home --shell /bin/bash --password sism1234 steam

# su - steam

# ln -s /usr/games/steamcmd steamcmd

# steamcmd +login anonymous +force_install_dir /home/steam/satisfactory +app_update 1690800 -beta public validate +quit

# exit

# vi /etc/systemd/system/satisfactory.service
[Unit]
Description=SatisfactoryServer
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/satisfactory +app_update 1690800 -beta public validate +quit
ExecStart=/home/steam/satisfactory/Engine/Binaries/Linux/UE4Server-Linux-Shipping FactoryGame -log -unattended
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s INT $MAINPID
WorkingDirectory=/home/steam/satisfactory/Engine/Binaries/Linux
LimitNOFILE=100000

[Install]
WantedBy=multi-user.target

# systemctl daemon-reload
# systemctl start satisfactory
# systemctl status satisfactory.service

--- NAT Portforward
15777, 15000, 7777