Wurm Unlimited is the standalone version of the fantasy sandbox world Wurm Online, the MMORPG where the players are in charge! A pioneer in the ideas of player influence, crafting and adventure, it is now one of the most deep and feature packed true sandbox experiences available.
On first install the backup command will error as nothing was created yet. This can safly be ignored
Bare Minimum | Recommended | |
---|---|---|
Processor | Any AMD64 will work | ** |
RAM | 2 GiB | 4 GiB |
Storage | 2 GiB | 3 GiB |
Network | Anything will work | ** |
Game Ownership | not needed | ** |
Ports required to run the server in a table format.
Port | default |
---|---|
Game | 3724 TCP |
Query | 27016-27030 UDP |
Name | Tag |
---|---|
ghcr.io/ptero-eggs/steamcmd:debian | ghcr.io/ptero-eggs/steamcmd:debian |
Name | Description | Environment Variable | Default Value | User Viewable | User Editable |
---|---|---|---|---|---|
App ID | SRCDS_APPID | 402370 | No | No | |
Auto update | Auto update on restart | AUTO_UPDATE | 1 | Yes | Yes |
Admin Passwod | Unlocks the admin commands from within the game, that can be used to change the gameplay settings of the server, such as skill gain rate and field growth time. | ADMINPWD | Yes | Yes | |
Query Port | Used to set the steam query port (27016-27030 UDP) | QUERY_PORT | Yes | No | |
Server Name | The name of the server that will be visible in server browsers. | SERVERNAME | Yes | Yes | |
Max Players | Sets the max number of players allowed on the server, if this is set through this command line option then the internal game commands to change the player limit will not work. | MAX_PLAYERS | 25 | Yes | No |
Enable PVP | PVP | true | Yes | Yes | |
Server Password | Sets the password that is used when trying to connect to the server. | SERVERPWD | Yes | Yes | |
Epic | If true the server will follow the rules from the Epic servers in Wurm Online. For instance it will use the skill curve. | EPIC | false | Yes | Yes |
Clean Logs on Start | Clear the logfile on server start | SERVER_CLEAN_LOGS_ON_START | true | Yes | Yes |
World | World to use when launching Wurm. The defaults provided are Creative and Adventure (case sensitive) | SERVER_WORLD | dist/Adventure | Yes | Yes |
Beta | Leave empty for the public branch and beta for the beta branch | SRCDS_BETAID | Yes | Yes |
#!/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
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
## add below your custom commands if needed
# Copying steamclient.so as per https://www.wurmpedia.com/index.php/Server_administration_(Wurm_Unlimited)#Headless
mkdir -p /mnt/server/nativelibs
cp -v linux64/steamclient.so /mnt/server/nativelibs
mkdir -p ./backup
cp ./WurmServerLauncher ./backup/
cp -r ./dist/Adventure ./backup/
cp -r ./dist/Creative ./backup/
## install end
echo "-----------------------------------------"
echo "Installation completed..."
echo "-----------------------------------------"