Egg Repository

Pterodactyl Community Egg Repository

Unturned

Vanilla Unturned with the included RockerMod.

Read Me

Unturned

Steam Description You're one of the few not yet turned zombie. Keeping it that way will be a challenge.

  • Go in guns blazing and attract the attention of everything, living and dead.
  • Take a subtle approach sneaking around and making use of distractions.
  • Confront and learn to counter special abilities ranging from invisibility to fire breathing to lightning attacks.

GSLT

You can manually create GSLTs while logged in with your Steam account here: https://steamcommunity.com/dev/managegameservers

Use Unturned's app ID 304930, and a memo to remind you which server the token is for.

Server Ports

Unturned requires 2 ports to run properly.

Portdefault
Game27015
Game +127016
Yolks
NameTag
ghcr.io/ptero-eggs/steamcmd:debianghcr.io/ptero-eggs/steamcmd:debian
Variables and Startup

Startup Command

./Unturned_Headless.x86_64 -batchmode -nographics -bind 0.0.0.0 -port {{SERVER_PORT}} -GSLT {{GSLT}} -Name "{{SRV_NAME}}" -Password {{SRV_PW}} +InternetServer/{{SRV_ID}}

Variables

Server Name

Environment Variable: SRV_NAME
Default Value: Pterodactyl hosted Server
User Viewable:
User Editable:
Server Password

Environment Variable: SRV_PW
Default Value:
User Viewable:
User Editable:
GSLT

Environment Variable: GSLT
Default Value:
User Viewable:
User Editable:
Server ID

ID of the server for savegames

Environment Variable: SRV_ID
Default Value: PterodactylUnturned
User Viewable:
User Editable:
Auto update

Auto update on restart

Environment Variable: AUTO_UPDATE
Default Value: 1
User Viewable:
User Editable:
Steam App ID

Steam App ID require for install and startup update

Environment Variable: SRCDS_APPID
Default Value: 1110390
User Viewable:
User Editable:
ld lib path

This is needed to load specific libraries

Environment Variable: LD_LIBRARY_PATH
Default Value: ./Unturned_Headless_Data/Plugins/x86_64/
User Viewable:
User Editable:
Install Script
#!/bin/bash
# steamcmd Base Installation Script
#
# Server Files: /mnt/server
# Image to install with is 'ghcr.io/ptero-eggs/installers:debian'


## 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

## 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

## add below your custom commands if needed

## Specific to Unturned
cd /mnt/server/
ln -s ../../../steamcmd/linux64/steamclient.so Unturned_Headless_Data/Plugins/x86_64/steamclient.so
ln -s ../Extras/Rocket.Unturned/ Modules/

## install end
echo "-----------------------------------------"
echo "Installation completed..."
echo "-----------------------------------------"
Installation Imageghcr.io/ptero-eggs/installers:debianInstallation Entrypointbash