Astroneer Dedicated Server
GamesA game of aerospace industry and interplanetary exploration.
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
ghcr.io/ptero-eggs/installers:debianbash#!/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 "-----------------------------------------"