📚 Quick Navigation
Wurm Unlimited Server Hosting Guide
Overview
Wurm Unlimited is a multiplayer game server that can be hosted on a VPS or dedicated server. This comprehensive guide covers everything you need to know about hosting a Wurm Unlimited server for your community.
Quick Info
- Default Port:
Varies (see configuration) - Protocol: TCP/UDP
- Minimum RAM: 1GB
- Engine: Various
- Steam App ID:
402370 - Recommended OS: Linux (Ubuntu/Debian) or Windows Server
🔌 Network Ports
Required Ports
The Wurm Unlimited server typically uses a configurable port. Check your server configuration files for the specific port settings.
Firewall Configuration
Allow server ports through your firewall:
# UFW (Ubuntu/Debian)
sudo ufw allow [PORT]/tcp
sudo ufw allow [PORT]/udp
sudo ufw reload
# FirewallD (CentOS/RHEL)
sudo firewall-cmd --permanent --add-port=[PORT]/tcp
sudo firewall-cmd --permanent --add-port=[PORT]/udp
sudo firewall-cmd --reload
# Windows Firewall
netsh advfirewall firewall add rule name="Wurm Unlimited Server" dir=in action=allow protocol=TCP localport=[PORT]
netsh advfirewall firewall add rule name="Wurm Unlimited Server" dir=in action=allow protocol=UDP localport=[PORT]
⚠️ Port Security Notes
- Only open ports that are necessary for the game server to function
- Consider using non-standard ports to reduce automated attacks
- If using cloud hosting, configure security groups properly
- Monitor connection attempts and unusual traffic patterns
Installation & Setup
System Requirements
- OS: Linux (Ubuntu 20.04+ or Debian 11+ recommended) or Windows Server 2019+
- CPU: 2+ cores recommended (single-threaded performance important for most game servers)
- RAM: 1GB minimum (more for larger player counts)
- Storage: 5GB+ for server files (SSD recommended for better performance)
- Network: Stable internet connection with low latency
Installation Steps
Linux (Ubuntu/Debian)
# Update system packages
sudo apt update && sudo apt upgrade -y
# Create server directory
mkdir -p ~/gameserver
cd ~/gameserver
# Download server files (method varies by game)
# Check official documentation for download links
Windows Server
Download the server files from the official game website or through Steam (if applicable). Extract to a dedicated folder and run the server executable.
Using SteamCMD - RECOMMENDED METHOD
This game can be installed via SteamCMD using App ID: 402370
Install SteamCMD (Ubuntu/Debian)
# Update package list
sudo apt update
# Enable 32-bit architecture
sudo dpkg --add-architecture i386
sudo apt update
# Install SteamCMD
sudo apt install -y lib32gcc-s1 steamcmd
Download Server Files
# Create directory for game server
mkdir -p ~/gameservers/wurmu
# Run SteamCMD and download
steamcmd +login anonymous \
+force_install_dir ~/gameservers/wurmu \
+app_update 402370 validate \
+quit
# Server files are now in ~/gameservers/wurmu/
cd ~/gameservers/wurmu
ls -la
Windows Installation with SteamCMD
- Download SteamCMD from: https://steamcdn-a.akamaihd.net/client/installer/steamcmd.zip
- Extract to
C:\steamcmd\ - Open Command Prompt and run:
cd C:\steamcmd
steamcmd.exe +login anonymous ^
+force_install_dir C:\gameservers\wurmu ^
+app_update 402370 validate ^
+quit
Server Configuration
After installation, you'll need to configure your server. Here's where to find the configuration files and what settings you can change.
Essential Settings
- Server Name: Set a descriptive name for your server
- Max Players: Configure based on your server's resources
- Password: Optional password protection for private servers
- Admin/RCON Password: Set a strong password for remote administration
- Game Mode: Configure game-specific modes and settings
Server Commands
Common administrative commands (access via console or RCON):
# Kick player
kick [player_name]
# Ban player
ban [player_name]
# Change map/level (syntax varies by game)
changelevel [map_name]
# Set admin password (if supported)
setadminpassword [password]
⚙️ Startup Parameters
Command Line Template
The server uses the following command line template:
%IP% %PORT% %QUERY_PORT% %PLAYERS% %SERVERNAME% %SERVERPASS% %ADMINPASS% %EPIC% %HOME% %HOMEKING% %LOGIN% %PVP% %RMI% %RMIREG% %START%
Available Startup Parameters
The following parameters can be configured when starting the server:
servername=
- servername=
The name of the server that will be visible in server browsers.
serverpassword=
- serverpassword=
Sets the password that is used when trying to connect to the server.
adminpwd=
- adminpwd=
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.
epicsettings=
- epicsettings=
If enabled, the server will follow the rules from the Epic servers in Wurm Online. For instance it will use the skill curve.
Options:
true- Enabledfalse- Disabled
Default: false
homeserver=
- homeserver=
If the server is a home server (belongs to a single kingdom).
Options:
true- Enabledfalse- Disabled
Default: true
homekingdom=
- homekingdom=
The kingdom the server belongs to.
Options:
0- No Kingdom1- Jenn-Kellon2- Mol-Rehan3- Horde of the Summoned4- Freedom
Default: 4
loginserver=
- loginserver=
Should only be set to disabled if the server is intended to be connected with another server that is going to act as a login server.
Options:
true- Enabledfalse- Disabled
Default: true
pvp=
- pvp=
Toggles PvP on or off on the server.
Options:
true- Enabledfalse- Disabled
Default: false
start=
- start=
Starts the server with the configuration and world data from the subdirectory specified. We have Adventure and Creative by default
Default: Adventure
Creating a Start Script
Linux (start.sh):
#!/bin/bash
cd /path/to/server
./server_executable [parameters] 2>&1 | tee server.log
chmod +x start.sh
./start.sh
Windows (start.bat):
@echo off
cd /d "%~dp0"
server_executable.exe [parameters]
pause
Running as a Service
Linux (systemd):
# Create service file: /etc/systemd/system/gameserver.service
[Unit]
Description=Wurm Unlimited Server
After=network.target
[Service]
Type=simple
User=gameserver
WorkingDirectory=/home/gameserver/server
ExecStart=/home/gameserver/server/start.sh
Restart=on-failure
RestartSec=10
[Install]
WantedBy=multi-user.target
# Enable and start service
sudo systemctl daemon-reload
sudo systemctl enable gameserver
sudo systemctl start gameserver
sudo systemctl status gameserver
🔧 Troubleshooting
Server Won't Start
Check Server Logs
# View recent log entries
tail -f server.log
# Or check system logs
journalctl -u gameserver -f
Port Already in Use
# Find what's using the port
sudo lsof -i :[PORT]
sudo netstat -tulpn | grep [PORT]
# Kill the process or change server port
Missing Dependencies
Ensure all required dependencies are installed. Check the error messages for missing libraries or packages.
Connection Issues
Can't Connect to Server
- Verify server is running:
ps aux | grep server - Check port is listening:
netstat -an | grep [PORT] - Verify firewall rules (see Ports section above)
- Check server IP: Use external IP, not localhost
- Router/NAT: Ensure port forwarding is configured
High Latency/Lag
- Check server resource usage (CPU, RAM, disk I/O)
- Verify network bandwidth is adequate
- Consider server location relative to players
- Check for background processes consuming resources
Performance Issues
Server Lag
- Monitor resources: Use
htoportop - Check disk I/O: Use
iotop - Review server logs for errors or warnings
- Reduce player count or increase server resources
- Optimize configuration based on server capacity
Memory Leaks
# Monitor memory usage
free -h
top -p $(pgrep -f server)
# Restart server regularly via cron if needed
0 4 * * * /home/gameserver/restart.sh
Performance Optimization
Server Tuning
- CPU: Ensure adequate CPU allocation; most game servers are single-threaded
- RAM: Allocate sufficient memory; monitor usage and adjust as needed
- Disk: Use SSD storage for better I/O performance
- Network: Ensure stable, low-latency connection
Operating System Optimization
# Increase file descriptor limits
echo "* soft nofile 65536" >> /etc/security/limits.conf
echo "* hard nofile 65536" >> /etc/security/limits.conf
# Network tuning
sysctl -w net.core.rmem_max=16777216
sysctl -w net.core.wmem_max=16777216
sysctl -w net.ipv4.tcp_rmem="4096 87380 16777216"
sysctl -w net.ipv4.tcp_wmem="4096 87380 16777216"
Monitoring
Set up monitoring to track server health:
- CPU and memory usage
- Network traffic and latency
- Player count and activity
- Error rates and crash logs
Backup Strategy
#!/bin/bash
# backup.sh - Run via cron
DATE=$(date +%Y%m%d_%H%M%S)
BACKUP_DIR="/backups/gameserver"
SERVER_DIR="/home/gameserver/server"
# Create backup
tar -czf $BACKUP_DIR/backup_$DATE.tar.gz -C $SERVER_DIR .
# Keep only last 7 days
find $BACKUP_DIR -name "backup_*.tar.gz" -mtime +7 -delete
Security Best Practices
Firewall Configuration
# Minimal firewall - only allow necessary ports
sudo ufw default deny incoming
sudo ufw default allow outgoing
sudo ufw allow [SERVER_PORT]/tcp
sudo ufw allow [SERVER_PORT]/udp
sudo ufw allow 22/tcp # SSH
sudo ufw enable
Strong Passwords
- Use strong, unique passwords for admin/RCON access
- Never use default passwords
- Change passwords regularly
- Don't share admin credentials unnecessarily
Regular Updates
- Keep server software updated to the latest stable version
- Update operating system and dependencies regularly
- Subscribe to security advisories for your game
- Test updates on a staging server before production deployment
Access Control
- Limit SSH access to specific IPs if possible
- Use SSH keys instead of passwords
- Disable root login via SSH
- Implement fail2ban or similar intrusion prevention
DDoS Protection
- Consider DDoS protection services (Cloudflare, OVH, etc.)
- Implement rate limiting where supported
- Monitor for unusual traffic patterns
- Have an incident response plan
Additional Resources
- Official Wurm Unlimited documentation and forums
- Community wikis and guides
- Game-specific Discord or Reddit communities
- Server hosting provider documentation
Important Notes
- Always make backups before making configuration changes
- Keep your server and dependencies updated
- Monitor server resources and player activity
- Follow the game's End User License Agreement (EULA) and Terms of Service
- Join community forums for support and best practices
Last updated: November 2025 | For Wurm Unlimited server hosting