I've been in the #pal-server-help channel for a while now, and these same things keep coming up. So here's a one stop list of items people keep asking for.
- 4x CPU cores @3.8Ghz+
- 30GB Storage
- 8GB RAM Base + 2GB RAM per player (If using scheduled restarts)
-- OR --
- 32GB RAM + 48 Hour Restarts (Or crashes if you so dare)
Unless you specify an alternative port with the Commandline or Config file then the ports you need to enable are:
Game: 8211/UDP
Query: 27015/UDP
Checkout this handy link on how to do this: https://portforward.com/
If you don't know your IP, you can get it from this site: https://icanhazip.com/
NOTE: if your IP starts with 192.168.x.x, 172.10.x.x OR 10.0.0.x you are likely behind a CGNAT which will make hosting a server nearly impossible.
Need to know if your port forwarding is working? Use this UDP site: https://check-host.net/check-udp Just put in your IP:Port, IE: 127.0.0.1:8211
The save data for Palworld is found here: /Pal/Saved/SaveGames/0
You are able to view current settings in the Worldoptions.sav file by using this website: https://palworld.tf/
You should be backing up your server on a regular basis, if you don't want to lose progress.
Below is a sample BASH script (Linux) which can get you started.
#!/bin/bash
# Define source directory and backup directory
SOURCE_DIR="/opt/game/Pal/Saved/SaveGames/0"
BACKUP_DIR="/path/to/your/backup/directory"
DATE=$(date +%Y%m%d_%H%M%S)
# Create a gzip compressed tarball
tar -czf "${BACKUP_DIR}/backup_${DATE}.tar.gz" -C "${SOURCE_DIR}" .
echo "Backup of ${SOURCE_DIR} completed at ${BACKUP_DIR}/backup_${DATE}.tar.gz"
And a Batch script for backups on Windows. It assumes you have 7zip installed.
@echo off
set SOURCE_DIR="C:\opt\game\Pal\Saved\SaveGames\0"
set BACKUP_DIR="C:\path\to\your\backup\directory"
set DATE=%date:~-4,4%%date:~-10,2%%date:~-7,2%_%time:~0,2%%time:~3,2%%time:~6,2%
"C:\Program Files\7-Zip\7z.exe" a -tzip "%BACKUP_DIR%\backup_%DATE%.zip" %SOURCE_DIR%
echo Backup of %SOURCE_DIR% completed at %BACKUP_DIR%\backup_%DATE%.zip
Or just someone to do all the hard work for you?
First up heres a cool config Generator: https://pal-conf.bluefissure.com/
If you installed your server using STEAMCMD, just re-run the same installation script. It will download the update for you.
- Turn off your server
- Update your server
The base command for SteamCMD is below.
steamcmd +login anonymous +app_update 2394010 validate +quit
If you are using a custom installation directory, you will need to modify this.
steamcmd +force_install_dir "/PATH/TO/DIRECTORY" +login anonymous +app_update 2394010 validate +quit
- Turn on your server, when the download is completed.
Note, Each game server provider is different, we have no way to really tell you the correct actions to take here.
- Restart your server through the panel
- Ask their Support to update it for you.
DISCLAIMER: I am not endorsing any Providers by listing them, simply making you aware they exist and may be able to provide you what you're looking for.
Always check review sites like Google, Trustpilot etc, before purchasing services from new companies.
- https://lilypad.gg/palworld #joshmiles on Discord!
- https://low.ms/game-servers/palworld-server-hosting
- https://physgun.com
Check out this documented installation script! https://github.com/mdrain18/InstallPalworld
To setup GSM For Linux:
To Setup GSM for Windows:
There's even a subbranch specifically for Palworld now!
There are a couple of known Docker images:
- https://github.com/thijsvanloef/palworld-server-docker
- https://hub.docker.com/r/jammsen/palworld-dedicated-server
- https://hub.docker.com/r/yutsuku/palworld
- https://github.com/hmes98318/palworld-docker
For a slightly more advanced docker version, you can check here:
ARM64 Variant for Oracle Free Tier.
There is an Egg being made for Pal currently: pelican-eggs/eggs#2669
Use these to override the behaviour of your server, from the start.
- -port=xxxx
- -publicport=xxxx
Set both of these to the same number, which is what your gameserver will be connectable on. IE 8211.
- -queryport=xxx
This is the Default query port for Steam, if you get bind conflicts with 27015, set this
- -RCONEnabled=true
Do you want to enable RCON? (This is a remote server admin tool, you don't need it)
- -RCONPort=29027
What port do you want RCON set to? This will also need to be PortForwarded if you intend to remotely manage the server.
- -useperfthreads -NoAsyncLoadingThread -UseMultithreadForDS
These are the optional performance parameters the developers provided.
- -players=16
Override the Player Limit
- -serverpassword=""
Override the connection Password
- -adminpassword=""
Override the Default Admin Password
- EpicApp=PalServer
Enable Display in the Public Server list.
- -servername=""
Override the default ServerName.
No, there is currenlty no Cross play. Apparently PocketPair are working to address this.
No, currently only dedicated servers through Steam can host multiple players. Same as above, it is being worked on.
There are a few events which occur in the game, which are believed to cause memory leaks.
There are currently two ways to combat this.
- Set
bEnableInvaderEnemy=False
in yourPalWorldSettings.ini
- Setup automated restarts for your server. SomeCurrent recommendations below, you will need to figure out what works best for you:
- 16GB RAM, 8 Users every 8 Hours.
- 32GB RAM, 16 Users Every 12 Hours
- 32GB RAM, 8 Users Every 24 Hours
Events believed to cause an issue:
- Joining Dungeons repeatedly
- Raid events
- Party Pals working on the base, they have been seen to "Move" items around but go out of bounds and then drop them repeaetedly. This leads to a large pile of resource in the Pals pathing.
Things to try,
- Reconnect after restarting your game.
- Try direct connections
If you're stuck on loading screen after this, your player profile is likely corrupt.
This is caused by joining/leaving guilds while other members are offline.
If you're on official, there's no solution other than joining another server.
One of two things has happened, and noone can really help you with them.
- You've joined a different server
- The Server data has been wiped
The servers are not, down, the Server Manager which shows the servers is broken.
- Find the IP of your server here: https://www.battlemetrics.com/servers/palworld?sort=score&status=online
- Then use the Direct Connection option.
There is a workaround, as currently the Direct Connection does not prompt you for a password. (Mlem Mlem) posted this in Discord.
- Open Community Servers list.
- Click on any Passworded Server
- Enter the password for "your" server
- Click Ok, then Click No
- Use Direct Connect with your IP:Port to your server
- Turn off your server
- Modify Configs
- Save Configs
- Start Server
To delete your current progress on a server, go to the save location mentioned above and delete the contents.
There is a way to modify your save data, which involves converting it from the .sav to .json format. Make then changes and then convert it back.
The current way is to utilise this python script: https://gist.github.com/cheahjs/300239464dd84fe6902893b6b9250fd0#file-convert-to-json-py
No, you can not play on different servers with the same profile, each profile is unique to that server.
Technically yes, however some considerations.
- From a Public server to a private server : NO
There is no way to get the data from the public servers
- From a Local Save converted to Dedicated : Yes
There is a modding tool being worked on to allow you to do just that, checkout #palworld-modding on the official Discord. https://github.com/xNul/palworld-host-save-fix
- From Dedicated to Dedicated Yes, steps are below to achieve this.
WARNING This is a one time transfer, and some data loss may occur (players character is reset). Results have been wildly different so far between server types.
1) Create new server, run it one time and stop.
2) Get SaveGames folder from Old Server
3) Modify new servers DedicatedServerName = Old DedicatedServerName
Found in Pal/Saved/Config/LinuxServerGameUserSettings.ini
4) Copy SaveGames folder from Old to New
5) Start New Server
First, check you can connect to your server through the local IP, ie 192.168.x.x or 10.0.x.x.
- If you are not able to, and the port is corrct there is likely a firewall on the Server you need to allow connections through.
If you can connect locally, next you need to try your public IP.
- Use something like https://www.showmyip.com/ to gather your public IP.
- Try to connect to your Public IP.
If you are not able to connect, however your friends are, you may be experiencing NAT Hairpining, which redirects your request locally. You should have an option in your Router settings to enable handle NAT Hairpin.
If you are not able to connect to your Public IP, your Router or ISP may have firewall rules in place to prevent that traffic. You can check your router first, by simply searching for a manual on how to Port Forward with your ISP Router.
Its a sample script, it's not going to just work without setting it up yourself, if you're using it as is, you'll need to install 7Zip and setup the directories properly