Astroneer Dedicated Server
A game of aerospace industry and interplanetary exploration.
Startup
The Panel runs this command to start the server. It replaces each variable in the command with the value of that variable.
9 variables
Startup command
proton run ./Astro/Binaries/Win64/AstroServer-Win64-Shipping.exePublic IP to connect to the server.
PUBLIC_IPUsers can edit
required|stringA value is required.
Steam username of the server owner
OWNER_NAMEUsers can edit
required|stringA value is required.
Steam id of the server owner
OWNER_GUIDUsers can edit
required|stringA value is required.
If specified, players must provide this password to join the server.
SERVER_PWDUsers can edit
nullable|alpha_dash|between:1,100
Quickly checks for any server updates on startup, and updates if necessary. (1 Enable | 0 Disable)
AUTO_UPDATEUsers can edit
required|boolean
Windows Install
WINDOWS_INSTALLUsers can see
required|string|max:20
SRCDS_APPIDUsers cannot see
required|string|max:20
PROTON_LOGUsers cannot see
required|boolean
SERVER_NAMEUsers can edit
required|string|max:60
Wings
- Stop command
- ^C (SIGINT)
- Running when the console shows
- nable to use setpriority safely
Files Wings edits
Wings sets these values in these files before each start.
Astro/Saved/Config/WindowsServer/Engine.ini ini
- url.Port
- {{server.build.default.port}}
- [SystemSettings].net.AllowEncryption
- false
Astro/Saved/Config/WindowsServer/AstroServerSettings.ini ini
- [/Script/Astro.AstroServerSettings].PublicIP
- {{env.PUBLIC_IP}}
- [/Script/Astro.AstroServerSettings].OwnerName
- {{env.OWNER_NAME}}
- [/Script/Astro.AstroServerSettings].OwnerGuid
- {{env.OWNER_GUID}}
- [/Script/Astro.AstroServerSettings].PlayerProperties
- (PlayerFirstJoinName="{{env.OWNER_NAME}}",PlayerCategory=Admin,PlayerGuid="{{env.OWNER_GUID}}",PlayerRecentJoinName="")
- [/Script/Astro.AstroServerSettings].ServerPassword
- {{env.SERVER_PWD}}
- [/Script/Astro.AstroServerSettings].ServerName
- {{env.SERVER_NAME}}
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
Problem with this egg?
Open an issue on GitHub. Include your Panel and Wings versions.
Install script 49 lines bash in ghcr.io/ptero-eggs/installers:debian Show Hide
#!/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 "-----------------------------------------"