Technology Encyclopedia Home >How to Set Up a Palworld Server on a VPS — Private Dedicated Server for You and Your Friends

How to Set Up a Palworld Server on a VPS — Private Dedicated Server for You and Your Friends

Palworld launched and immediately everyone I knew was playing it. The base-building, the Pals, the cooperative multiplayer — the game is genuinely fun. But the official servers are crowded and the multiplayer is laggy when your friends are in different countries.

Running a dedicated server on a VPS gives you a private world that stays online 24/7, with settings you control, in a server region that works well for your group. The server side is lighter than you might expect — the client is the demanding part.

The world generation during the first startup does spike memory higher than the steady-state, which I'll call out explicitly with the right server sizing for your player count.

This guide sets up a Palworld dedicated server on Ubuntu 22.04 using SteamCMD.

I run game servers on Tencent Cloud Lighthouse. For Palworld, pick a region close to your players for the best latency — the game is sensitive to ping, especially in combat. Lighthouse has data centers in North America, Europe, Singapore, Tokyo, and more, so you can usually find a region within low latency of your player group. The spec upgrade path is also useful: start with a baseline plan and upgrade if you find the world needs more RAM as it grows, without re-provisioning the server.


Table of Contents

  1. Server Requirements
  2. Prerequisites
  3. Part 1 — Provision the Server
  4. Part 2 — Install SteamCMD and Palworld Server
  5. Part 3 — Configure the Server
  6. Part 4 — Start the Server with systemd
  7. Part 5 — Open Firewall Ports
  8. Part 6 — Connect from the Game Client
  9. Part 7 — Backups
  10. Part 8 — Performance Tuning
  11. The Gotcha: Server Memory Spikes During World Generation
  12. Admin Commands

  • Key Takeaways
  • Use the appropriate Lighthouse application image to skip manual installation steps where available
  • Lighthouse snapshots provide one-click full-server backup before major changes
  • OrcaTerm browser terminal lets you manage the server from any device
  • CBS cloud disk expansion handles growing storage needs without server migration
  • Console-level firewall + UFW = two independent protection layers

Server Requirements {#requirements}

Players Minimum RAM Recommended RAM Notes
1–4 8 GB 12 GB Small world, light exploration
4–16 12 GB 16 GB Active base building, raids
16–32 16 GB 32 GB Large servers with multiple bases

CPU: Palworld is CPU-intensive during base raids and Pal activities. 4+ vCPU cores recommended for smooth gameplay.

Disk: ~10 GB for the game server files + world data.


Prerequisites {#prerequisites}

Requirement Notes
Cloud server Tencent Cloud Lighthouse Ubuntu 22.04
8+ GB RAM Minimum for a functional server
Region close to players Choose US East/West, EU, or Asia-Pacific
Steam account Required for SteamCMD (anonymous download works)

Cost: The Standard plan (4 vCPU / 8 GB RAM) starts at ~$12/month for a small group. Check current promotions for new user discounts.


Part 1 — Provision the Server {#part-1}

ssh ubuntu@YOUR_SERVER_IP
sudo apt update && sudo apt upgrade -y

Add swap if your RAM is close to the minimum:

sudo fallocate -l 8G /swapfile
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile
echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab

Part 2 — Install SteamCMD and Palworld Server {#part-2}

# Enable 32-bit architecture (required by SteamCMD)
sudo dpkg --add-architecture i386
sudo apt update

# Install dependencies
sudo apt install -y lib32gcc-s1 steamcmd

# Create a dedicated user for the game server
sudo adduser --disabled-password --gecos "" palworld
sudo su - palworld

Install the Palworld dedicated server via SteamCMD:

# Still as palworld user
/usr/games/steamcmd +login anonymous \
  +force_install_dir ~/palworld-server \
  +app_update 2394010 validate \
  +quit

App ID 2394010 is the Palworld Dedicated Server.

This downloads ~8 GB and takes 5-15 minutes. When done:

ls ~/palworld-server/
# Should show Pal/, PalServer.sh, PalServer-Linux-Test, etc.

exit  # Back to ubuntu user

Part 3 — Configure the Server {#part-3}

The server creates default config files on first run. Run it once briefly:

sudo su - palworld
cd ~/palworld-server
./PalServer.sh &
sleep 30
kill %1   # Stop after config files are created
exit

Now edit the configuration:

sudo nano /home/palworld/palworld-server/Pal/Saved/Config/LinuxServer/PalWorldSettings.ini

Key settings to configure:

[/Script/Pal.PalGameWorldSettings]
OptionSettings=(
  ServerPlayerMaxNum=16,
  ServerName="My Palworld Server",
  ServerDescription="Private server for friends",
  AdminPassword="your_admin_password",
  ServerPassword="",  ; Leave empty for public, or set to require password
  bUseAuth=True,
  RCONEnabled=True,
  RCONPort=25575,
  Region="",
  bBanListEnabled=True,
  
  ; Gameplay settings
  DayTimeSpeedRate=1.000000,
  NightTimeSpeedRate=1.000000,
  ExpRate=1.000000,           ; Increase for faster leveling (e.g., 2.0)
  PalCaptureRate=1.000000,
  PalSpawnNumRate=1.000000,
  PalDamageRateAttack=1.000000,
  PalDamageRateDefense=1.000000,
  PlayerDamageRateAttack=1.000000,
  PlayerDamageRateDefense=1.000000,
  
  ; Difficulty
  bEnablePlayerToPlayerDamage=False,  ; PvP
  bEnableFriendlyFire=False,
  bEnableInvaderEnemy=True,
  DeathPenalty=All,
)

Part 4 — Start the Server with systemd {#part-4}

Create a systemd service file:

sudo nano /etc/systemd/system/palworld.service
[Unit]
Description=Palworld Dedicated Server
After=network.target

[Service]
Type=simple
User=palworld
WorkingDirectory=/home/palworld/palworld-server
ExecStart=/home/palworld/palworld-server/PalServer.sh \
  -port=8211 \
  -players=16 \
  -useperfthreads \
  -NoAsyncLoadingThread \
  -UseMultithreadForDS
Restart=on-failure
RestartSec=30s

[Install]
WantedBy=multi-user.target
sudo systemctl daemon-reload
sudo systemctl enable palworld
sudo systemctl start palworld

# Monitor startup (takes 2-5 minutes on first run)
sudo journalctl -u palworld -f
# Wait for: Running...

Part 5 — Open Firewall Ports {#part-5}

Palworld uses UDP ports. In the Lighthouse console firewall and UFW:

sudo ufw allow 8211/udp    # Game port (default)
sudo ufw allow 27015/udp   # Steam query port
sudo ufw allow 25575/tcp   # RCON (optional, admin remote console)

Also open these in the Lighthouse console firewall tab.


Part 6 — Connect from the Game Client {#part-6}

  1. Open Palworld
  2. Click Multiplayer
  3. Click Join with IP address
  4. Enter: YOUR_SERVER_IP:8211
  5. If you set a server password, enter it
  6. Connect!

Part 7 — Backups {#part-7}

World files are in /home/palworld/palworld-server/Pal/Saved/.

nano ~/backup_palworld.sh
#!/bin/bash
BACKUP_DIR=/home/ubuntu/backups/palworld
DATE=$(date +%Y%m%d_%H%M%S)
mkdir -p $BACKUP_DIR

# Stop server briefly for consistent backup
sudo systemctl stop palworld
sleep 5

tar czf $BACKUP_DIR/palworld_world_$DATE.tar.gz \
  /home/palworld/palworld-server/Pal/Saved/

sudo systemctl start palworld

find $BACKUP_DIR -mtime +7 -delete
echo "Palworld backup complete: $DATE"
chmod +x ~/backup_palworld.sh
(crontab -l; echo "0 4 * * * ~/backup_palworld.sh") | crontab -

Part 8 — Performance Tuning {#part-8}

Launch parameters for better performance

The flags in the systemd ExecStart line:

-useperfthreads        = Use performance threads for optimization
-NoAsyncLoadingThread  = Reduces stuttering during loading
-UseMultithreadForDS   = Enable multi-threading for dedicated server

Monitor resource usage

# Real-time CPU and RAM usage
htop

# Palworld process specifically
ps aux | grep PalServer

Reduce lag with lower NPC count

If you're experiencing lag, reduce the Pal spawn rate in settings:

PalSpawnNumRate=0.7   ; 70% of default spawn rate

The Gotcha: Server Memory Spikes During World Generation {#gotcha}

Palworld generates new world chunks as players explore. This causes temporary RAM spikes — sometimes well above the normal steady-state memory usage.

If the server crashes immediately after new areas are explored:

  1. Add more swap (at least 8 GB)
  2. Upgrade to the next server plan
  3. Reduce world size in settings

Monitor RAM during a session:

watch -n 5 free -h

The server's normal RAM usage is 2-4 GB. During world generation, it can spike to 6-8 GB. Plan your server RAM accordingly.


Admin Commands {#commands}

Connect via RCON (if enabled) or use these commands in the server console:

# Shutdown server gracefully
Shutdown 60   # Shutdown in 60 seconds with warning

# Kick a player (by Steam ID)
KickPlayer 12345678

# Ban a player
BanPlayer 12345678

# Teleport a player to coordinates
TeleportToPlayer 12345678 0 0 0

# Save the world immediately
Save

Troubleshooting {#troubleshooting}

Issue Likely Cause Fix
Connection refused Service not running or wrong port Check systemctl status SERVICE and verify firewall rules
Permission denied Wrong file ownership or permissions Check file ownership with ls -la and use chown/chmod to fix
502 Bad Gateway Backend service not running Restart the backend service; check logs with journalctl -u SERVICE
SSL certificate error Certificate expired or domain mismatch Run sudo certbot renew and verify domain DNS points to server IP
Service not starting Config error or missing dependency Check logs with journalctl -u SERVICE -n 50 for specific error
Out of disk space Logs or data accumulation Run df -h to identify usage; clean logs or attach CBS storage
High memory usage Too many processes or memory leak Check with htop; consider upgrading instance plan if consistently high
Firewall blocking traffic Port not open in UFW or Lighthouse console Open port in Lighthouse console firewall AND sudo ufw allow PORT

Frequently Asked Questions {#faq}

What server size do I need for a Palworld server?
Check the requirements section in this guide. Generally: more RAM = more players. Start with the recommended specs and monitor actual usage with htop before scaling up.

How do I keep the Palworld server running when I close my SSH session?
Use screen, tmux, or systemd to run the server as a background process. The guide covers setting up a systemd service for automatic startup and crash recovery.

How do I update the Palworld server software?
Stop the server, download the new version, replace the old binary or files, and restart. Always back up your world/save data first. Check the game's official documentation for version-specific migration notes.

How do I protect my server from unwanted players?
Use password protection and/or whitelist mode (if supported). Restrict the server port in UFW to known IP addresses if it's a private server for a small group.

What region should I choose for the server?
Choose the Lighthouse data center closest to where most of your players are located. Latency is directly tied to geographic distance from the server.

Start your Palworld server today:
👉 Tencent Cloud Lighthouse — High-performance VPS for game servers
👉 View current pricing and promotions
👉 Explore all active deals and offers