Astroneer Dedicated Server

Games
Report Issue

A game of aerospace industry and interplanetary exploration.

Contributors:
README

Astroneer

Steam description : Explore and reshape distant worlds! Astroneer is set during the gold rush of the 25th century: players must explore the farthest reaches of space, risking their lives and resources in a hostile environment for a chance to become a millionaire.

Install notes

The following variables are required to prevent the server to crash on startup :

  • Public IP : Used to register the server. Must be the IP used to join the server.
  • Server Owner Name : Steam username of the server owner. It also set the given user as owner and administrator of the server.
  • Server Owner Guid : Steam id of the server owner. It also set the given user as owner and administrator of the server. ((Steam FAQ)[https://help.steampowered.com/en/faqs/view/2816-BE67-5B69-0FEC])

Minimum RAM warning

Astroneer required at least 700MiB to run. If more than one player will connect, 1GiB seems to be a minimum.

Minimum Storage warning

Astroneer required at least 3GiB. The size may increase with larger save file.

Server Ports

Astroneer requires a single port to run.

Port default
Game 27000

Notes

27000 is the default port, but any port can be used.

Client Configuration

To be able to connect to the server you need to edit Engine.ini (located at %LocalAppData%\Astro\Saved\Config\WindowsNoEditor\Engine.ini) on every player's computer by adding the following :

[SystemSettings]
net.AllowEncryption=False
Docker Images (1)
Name Image
ghcr.io/ptero-eggs/steamcmd:proton ghcr.io/ptero-eggs/steamcmd:proton
Startup Command
proton run ./Astro/Binaries/Win64/AstroServer-Win64-Shipping.exe
Variables (9)

Public IP

Public IP to connect to the server.

Environment:
PUBLIC_IP
Default:
None
User Viewable:
User Editable:
Rules:
required|string

Server Owner Name

Steam username of the server owner

Environment:
OWNER_NAME
Default:
None
User Viewable:
User Editable:
Rules:
required|string

Server Owner Guid

Steam id of the server owner

Environment:
OWNER_GUID
Default:
None
User Viewable:
User Editable:
Rules:
required|string

Server Password

If specified, players must provide this password to join the server.

Environment:
SERVER_PWD
Default:
None
User Viewable:
User Editable:
Rules:
nullable|alpha_dash|between:1,100

Automatic Updates

Quickly checks for any server updates on startup, and updates if necessary. (1 Enable | 0 Disable)

Environment:
AUTO_UPDATE
Default:
1
User Viewable:
User Editable:
Rules:
required|boolean

[Advanced] Windows Install

Windows Install

Environment:
WINDOWS_INSTALL
Default:
1
User Viewable:
User Editable:
Rules:
required|string|max:20

[Advanced] Steam App ID

Environment:
SRCDS_APPID
Default:
728470
User Viewable:
User Editable:
Rules:
required|string|max:20

PROTON_LOG

Environment:
PROTON_LOG
Default:
1
User Viewable:
User Editable:
Rules:
required|boolean

Server Name

Environment:
SERVER_NAME
Default:
Pterodactyl hosted Server
User Viewable:
User Editable:
Rules:
required|string|max:60
Installation Script
Container: ghcr.io/ptero-eggs/installers:debian
Entrypoint: bash
#!/bin/bash
# steamcmd Base Installation Script
#
# Server Files: /mnt/server
# Image to install with is 'ghcr.io/ptero-eggs/installers:debian'
# Install packages. Default packages below are not required if using our existing install image thus speeding up the install process.
#apt -y update
#apt -y --no-install-recommends install curl lib32gcc-s1 ca-certificates
## just in case someone removed the defaults.
if [[ "${STEAM_USER}" == "" ]] || [[ "${STEAM_PASS}" == "" ]]; then
echo -e "steam user is not set.\n"
echo -e "Using anonymous user.\n"
STEAM_USER=anonymous
STEAM_PASS=""
STEAM_AUTH=""
else
echo -e "user set to ${STEAM_USER}"
fi
## download and install steamcmd
## install end
echo "-----------------------------------------"
echo "Install steamcmd"
echo "-----------------------------------------"
cd /tmp
mkdir -p /mnt/server/steamcmd
curl -sSL -o steamcmd.tar.gz https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz
tar -xzvf steamcmd.tar.gz -C /mnt/server/steamcmd
mkdir -p /mnt/server/steamapps # Fix steamcmd disk write error when this folder is missing
cd /mnt/server/steamcmd
# SteamCMD fails otherwise for some reason, even running as root.
# This is changed at the end of the install process anyways.
chown -R root:root /mnt
export HOME=/mnt/server
## install game using steamcmd
## install end
echo "-----------------------------------------"
echo "Install game"
echo "-----------------------------------------"
./steamcmd.sh +force_install_dir /mnt/server +login ${STEAM_USER} ${STEAM_PASS} ${STEAM_AUTH} $( [[ "${WINDOWS_INSTALL}" == "1" ]] && printf %s '+@sSteamCmdForcePlatformType windows' ) +app_update ${SRCDS_APPID} $( [[ -z ${SRCDS_BETAID} ]] || printf %s "-beta ${SRCDS_BETAID}" ) $( [[ -z ${SRCDS_BETAPASS} ]] || printf %s "-betapassword ${SRCDS_BETAPASS}" ) ${INSTALL_FLAGS} validate +quit ## other flags may be needed depending on install. looking at you cs 1.6
## set up 32 bit libraries
mkdir -p /mnt/server/.steam/sdk32
cp -v linux32/steamclient.so ../.steam/sdk32/steamclient.so
## set up 64 bit libraries
mkdir -p /mnt/server/.steam/sdk64
cp -v linux64/steamclient.so ../.steam/sdk64/steamclient.so
## install end
echo "-----------------------------------------"
echo "Installation completed..."
echo "-----------------------------------------"