Use case · Game server

A Palworld dedicated server on bare metal

A Palworld dedicated server wants four or more CPU cores, 16 GB of RAM (Pocketpair recommends 32 GB or more) and an SSD, according to Pocketpair's own documentation, which warns that 8 GB boots but makes out-of-memory crashes more likely and that slow storage can corrupt the save. It listens on UDP 8211, installs through SteamCMD as app 2394010, and runs on 64-bit Linux or Windows.

See game servers

Pocketpair's requirements

ResourceOfficial guidance
CPU4 cores or more, recommended
Memory16 GB; 32 GB or more recommended for stable running. 8 GB boots but raises the chance of out-of-memory crashes
StorageFast SSD recommended; low-performance storage may corrupt saved data
NetworkUDP 8211 by default, changeable with -port
Operating systemWindows 64-bit, or 64-bit Linux such as Ubuntu or AlmaLinux

Memory is the figure to respect. The requirements page ties low memory directly to crashes and recommends 32 GB or more for stable running, twice the listed 16 GB. Size for the busiest evening of the world's life, not the first one.

Dedicated, community and who can join

A dedicated server runs without a game client; players join by typing the IP address and port under the in-game server list. A community server is the same binary started with -publiclobby, which lists it in that server list.

Crossplay covers Steam, Xbox Series and Microsoft Store on Windows, macOS and PS5 by default, controlled by CrossplayPlatforms in the settings file. Xbox and PS5 players can only reach a community server, so a console group needs -publiclobby and a strong ServerPassword.

Installing on Ubuntu with SteamCMD

  1. Create an unprivileged steam user; the server never needs root.
  2. Enable multiverse and the i386 architecture, then install the steamcmd package; the installer asks you to accept Steam's licence.
  3. As steam, download the server with app ID 2394010. +force_install_dir (placed before +login) puts it at a path you choose.
  4. Open UDP 8211 after SSH, and start PalServer.sh once so it writes its config folders.
sudo useradd -m -s /bin/bash steam
sudo add-apt-repository multiverse
sudo dpkg --add-architecture i386
sudo apt update
sudo apt install -y steamcmd

sudo -u steam /usr/games/steamcmd +force_install_dir /home/steam/palworld +login anonymous +app_update 2394010 validate +quit

sudo ufw allow 22/tcp
sudo ufw allow 8211/udp
sudo ufw enable

Run the same app_update line after every game patch, so the server stays on the version your players' clients run. Stopping the service, updating and starting it again is worth scripting.

PalWorldSettings.ini and launch options

The server reads Pal/Saved/Config/LinuxServer/PalWorldSettings.ini inside the install directory. Copy DefaultPalWorldSettings.ini there and edit the copy; edits to the default file do nothing. Edit it with the server stopped, then start it again.

  • ServerPlayerMaxNum, ServerPassword and AdminPassword: the cap, the join password and the admin password.
  • RCONEnabled / RCONPort and RESTAPIEnabled / RESTAPIPort: remote administration. Keep those ports closed in the firewall and reach them over SSH.
  • bIsUseBackupSaveData: rotating world backups in a backup folder beside the save, at the cost of more disk writes.
  • -port= and -players= on the command line set the listen port and the player limit.

The documentation says that from v1.0, leaving -useperfthreads -NoAsyncLoadingThread -UseMultithreadForDS unset may improve performance. Older guides that add them by habit predate that advice.

Running it under systemd

A unit file starts the world at boot and brings it back after a crash. Point it at the script as the steam user:

[Unit]
Description=Palworld dedicated server
After=network-online.target

[Service]
User=steam
WorkingDirectory=/home/steam/palworld
ExecStart=/home/steam/palworld/PalServer.sh -port=8211 -players=16
Restart=on-failure

[Install]
WantedBy=multi-user.target

Save it as /etc/systemd/system/palworld.service, reload systemd, and enable the unit with --now so it also starts immediately. Copy the save folder off the machine on a schedule as well: bIsUseBackupSaveData protects against a bad save, not against a lost disk.

Why a whole machine

Our bare metal game servers give the world every core and all the memory of a physical machine, with no hypervisor taking its share and no neighbour's load on the same CPU. You choose the configuration and the operating system, and the machines are HPE enterprise hardware.

Players feel latency, so put the world near them: New York, Miami, San Francisco, Amsterdam or Bucharest. A machine already racked is live about 30 minutes after the order is approved; a build to order takes 4-24 hours. Nothing counts the traffic, and support is staffed 24/7. For the full catalogue, see dedicated servers or the Linux servers page.

When a dedicated box is too much

Four friends playing on weekends can host from the game client and skip all of this. A dedicated server earns its keep when the world must stay up while the host is offline, when the group is large, or when console players need a community server to join.

Questions

How much RAM does a Palworld server need?

Pocketpair lists 16 GB and recommends 32 GB or more for stable running. The server starts on 8 GB, but the documentation warns that out-of-memory crashes become more likely.

Which port does Palworld use?

UDP 8211 by default. Change it with -port= on the command line and open the same UDP port in the firewall. RCON and the REST API use their own ports, which should stay closed to the internet.

Can Xbox and PS5 players join?

Yes, but only a community server: one started with -publiclobby, which appears in the in-game list. Crossplay with Steam, Xbox, Microsoft Store, macOS and PS5 is on by default.

Why do my settings not apply?

Edits must go into PalWorldSettings.ini under Pal/Saved/Config/LinuxServer (or WindowsServer), copied from DefaultPalWorldSettings.ini. Changing the default file has no effect.

How do I back up the world?

Turn on bIsUseBackupSaveData for rotating in-place backups, and copy the save directory to another machine on a schedule, ideally with the server stopped or right after a save.

Does Palworld run on Linux?

Yes. Pocketpair supports 64-bit Linux such as Ubuntu and AlmaLinux as well as 64-bit Windows; on Linux the server starts with PalServer.sh.

Put the world on its own machine

Bare metal in five cities, any configuration, any operating system, nothing counting the traffic.

See game servers

Related on Server Room

Other use cases