Wurm Unlimited
gamesWurm 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.
README
Wurm Unlimited
Steam
Documentation
Install notes
On first install the backup command will error as nothing was created yet. This can safly be ignored
Installation/System Requirements
| 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 | ** |
Server Ports
Ports required to run the server in a table format.
| Port | default |
|---|---|
| Game | 3724 TCP |
| Query | 27016-27030 UDP |
Docker Images (1)
| Name | Image |
|---|---|
ghcr.io/ptero-eggs/steamcmd:debian | ghcr.io/ptero-eggs/steamcmd:debian |
Startup Command
./WurmServerLauncher ip=0.0.0.0 externalport={{SERVER_PORT}} start={{SERVER_WORLD}} maxplayers={{MAX_PLAYERS}} servername="{{SERVERNAME}}" adminpwd={{ADMINPWD}} serverpassword={{SERVERPWD}} epicsettings={{EPIC}} queryport={{QUERY_PORT}} pvp={{PVP}} Variables (12)
App ID
- Environment:
SRCDS_APPID- Default:
402370- User Viewable:
- ❌
- User Editable:
- ❌
- Rules:
required|string|in:402370
Auto update
Auto update on restart
- Environment:
AUTO_UPDATE- Default:
1- User Viewable:
- ❌
- User Editable:
- ❌
- Rules:
required|boolean
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.
- Environment:
ADMINPWD- Default:
None- User Viewable:
- ❌
- User Editable:
- ❌
- Rules:
nullable|string|max:20
Query Port
Used to set the steam query port (27016-27030 UDP)
- Environment:
QUERY_PORT- Default:
None- User Viewable:
- ❌
- User Editable:
- ❌
- Rules:
required|int
Server Name
The name of the server that will be visible in server browsers.
- Environment:
SERVERNAME- Default:
None- User Viewable:
- ❌
- User Editable:
- ❌
- Rules:
required|string|max:64
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.
- Environment:
MAX_PLAYERS- Default:
25- User Viewable:
- ❌
- User Editable:
- ❌
- Rules:
required|int
Enable PVP
- Environment:
PVP- Default:
true- User Viewable:
- ❌
- User Editable:
- ❌
- Rules:
required|string|in:true,false
Server Password
Sets the password that is used when trying to connect to the server.
- Environment:
SERVERPWD- Default:
None- User Viewable:
- ❌
- User Editable:
- ❌
- Rules:
nullable|string|max:64
Epic
If true the server will follow the rules from the Epic servers in Wurm Online. For instance it will use the skill curve.
- Environment:
EPIC- Default:
false- User Viewable:
- ❌
- User Editable:
- ❌
- Rules:
required|string|in:true,false
Clean Logs on Start
Clear the logfile on server start
- Environment:
SERVER_CLEAN_LOGS_ON_START- Default:
true- User Viewable:
- ❌
- User Editable:
- ❌
- Rules:
required|string|in:true,false
World
World to use when launching Wurm. The defaults provided are Creative and Adventure (case sensitive)
- Environment:
SERVER_WORLD- Default:
dist/Adventure- User Viewable:
- ❌
- User Editable:
- ❌
- Rules:
required|string|max:128
Beta
Leave empty for the public branch and beta for the beta branch
- Environment:
SRCDS_BETAID- Default:
None- User Viewable:
- ❌
- User Editable:
- ❌
- Rules:
nullable|string|in:,beta
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
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 "-----------------------------------------"