Space Engineers
GamesSpace Engineers is a voxel-based sandbox game set in space and on planets.
README
Space Engineers
Author & Contributers
| Name | Github Profile |
|---|---|
| gOOvER | https://github.com/gOOvER |
Description
Space Engineers is a voxel-based sandbox game set in space and on planets.
NOTE Because of the winetricks installation, the install process could take some time. Likewise, the first start of the server takes its time.
SPECIAL NOTE When installed, the Server loads a base World and config from this repo. ONLY THIS WORLD IS SUPPORTED. Everything which is not defined in a variable could be edited directy in the config file /config/SpaceEngineers-Dedicated.cfg and config/Saves/World/Sandbox.sbc
Server Ports
Default server ports are listed below, but the Main, STEAM and API port can be any port.
| Port | default |
|---|---|
| Game | 27016 |
| Steam | 8766 |
| API | 8081 |
Minumum server settings
RAM
This server requires about 6GB.
Based on the information provided by the developer: See here
Disk
This server uses about 7GB of diskspace.
Docker Images (1)
| Name | Image |
|---|---|
ghcr.io/ptero-eggs/yolks:wine_latest | ghcr.io/ptero-eggs/yolks:wine_latest |
Startup Command
export WINEDLLOVERRIDES="mscoree=n,b;mshtml=n,b"; wine /home/container/DedicatedServer64/SpaceEngineersDedicated.exe -path Z:\\home\\container\\config -console -ignorelastsession Variables (19)
APP ID
The ID corresponding to the game to download.
- Environment:
SRCDS_APPID- Default:
298740- User Viewable:
- ❌
- User Editable:
- ❌
- Rules:
required|numeric|in:298740
Server Name
Name of the server, appears in Steam browser.
- Environment:
SERVER_NAME- Default:
A Pterodactyl hosted Space Engineer Server- User Viewable:
- ❌
- User Editable:
- ❌
- Rules:
required|string|max:64
World Name
Name of your world (and of your save folder) !!!!! DO NOT EDIT OR SERVER WILL NOT START !!!!!
- Environment:
WORLD_NAME- Default:
World- User Viewable:
- ❌
- User Editable:
- ❌
- Rules:
required|string|max:20
Server Description
Description of the game
- Environment:
SERVER_DESC- Default:
A Pterodactyl hosted Space Engineer Server- User Viewable:
- ❌
- User Editable:
- ❌
- Rules:
required|string|max:200
Game Mode
Game Mode setting: Survival, Creative
- Environment:
SERVER_MODE- Default:
Survival- User Viewable:
- ❌
- User Editable:
- ❌
- Rules:
required|string|in:Survival,Creative
Maximum Players
- Environment:
MAX_PLAYERS- Default:
4- User Viewable:
- ❌
- User Editable:
- ❌
- Rules:
required|numeric|digits_between:1,16
Enable Saving
- Environment:
SAVE_ENABLED- Default:
true- User Viewable:
- ❌
- User Editable:
- ❌
- Rules:
required|string|in:true,false
Auto Save Interval
Time between auto saves specified in minutes
- Environment:
SAVE_INTERVAL- Default:
5- User Viewable:
- ❌
- User Editable:
- ❌
- Rules:
required|numeric|digits_between:1,3
Steam Port
Steam Port
- Environment:
STEAM_PORT- Default:
8766- User Viewable:
- ❌
- User Editable:
- ❌
- Rules:
required|numeric|max:65535
Enable Remote API
Enable Remote API
- Environment:
REMOTEAPI_ENABLE- Default:
false- User Viewable:
- ❌
- User Editable:
- ❌
- Rules:
required|string|in:true,false
Remote API Port
Remote API Port
- Environment:
REMOTEAPI_PORT- Default:
8081- User Viewable:
- ❌
- User Editable:
- ❌
- Rules:
required|numeric|max:65535
Auto Update
- Environment:
AUTO_UPDATE- Default:
1- User Viewable:
- ❌
- User Editable:
- ❌
- Rules:
required|boolean
Enable Experimental Mode
Enable Experimental Mode. Must be 'true' when using mods
- Environment:
EXPERIMENTAL_ENABLED- Default:
false- User Viewable:
- ❌
- User Editable:
- ❌
- Rules:
required|string|in:true,false
Enable In-Game Scripts
Allow players to run In-Game Scripts
- Environment:
INGAMESCRIPTS_ENABLED- Default:
false- User Viewable:
- ❌
- User Editable:
- ❌
- Rules:
required|string|in:true,false
WINEDEBUG
WINEDEBUG: Debug Level of wine
- Environment:
WINEDEBUG- Default:
-all- User Viewable:
- ❌
- User Editable:
- ❌
- Rules:
nullable|string|max:20
Windows Install
Required for auto-update
- Environment:
WINDOWS_INSTALL- Default:
1- User Viewable:
- ❌
- User Editable:
- ❌
- Rules:
required|string|in:1
WINETRICKS_RUN
- Environment:
WINETRICKS_RUN- Default:
win11 vcrun2022 mono corefonts- User Viewable:
- ❌
- User Editable:
- ❌
- Rules:
required|string
WINEARCH
- Environment:
WINEARCH- Default:
win64- User Viewable:
- ❌
- User Editable:
- ❌
- Rules:
required|string|max:20
WINEPATH
- Environment:
WINEPATH- Default:
/home/container- User Viewable:
- ❌
- User Editable:
- ❌
- Rules:
required|string|max:20
Installation Script
ghcr.io/ptero-eggs/installers:debianbash#!/bin/bash
# Installation Script
#
## Define variables
dlurl="https://raw.githubusercontent.com/ptero-eggs/game-eggs/main/space_engineers/default"
# 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
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
./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
## Create world and config
mkdir -p $HOME/config/Saves
if [ ! -d $HOME/config/Saves/World ]
then
curl $dlurl/World.zip -o World.zip
unzip -o World.zip -d $HOME/config/Saves/
fi
if [ ! -f $HOME/config/SpaceEngineers-Dedicated.cfg ]; then curl $dlurl/SpaceEngineers-Dedicated.cfg -o $HOME/config/SpaceEngineers-Dedicated.cfg; fi
rm -fR $HOME/World.zip
# copy libs for mod support
cp -v $HOME/steamclient.dll ../DedicatedServer64/
cp -v $HOME/steamclient64.dll ../DedicatedServer64/
cp -v $HOME/tier0_s.dll ../DedicatedServer64/
cp -v $HOME/tier0_s64.dll ../DedicatedServer64/
cp -v $HOME/vstdlib_s.dll ../DedicatedServer64/
cp -v $HOME/vstdlib_s64.dll ../DedicatedServer64/
## install end
echo "-----------------------------------------"
echo "Installation completed..."
echo "-----------------------------------------"