Palworld Server Configuration Guide

Palworld Server Settings: PalWorldSettings.ini Explained

Published 2026-10-05 12 min read Palworld dedicated server v1.0.5

A Palworld dedicated server keeps almost all of its settings in one file, PalWorldSettings.ini, and almost all of them sit on one very long line called OptionSettings. This guide explains where that file lives, why you start from DefaultPalWorldSettings.ini, what the rates people search for actually do, how to set the name, passwords, ports and the REST API, where the world is saved, how to move a co-op world onto a dedicated server, and the mistakes that quietly undo your changes.

Which version this covers. We installed the dedicated server with SteamCMD (app 2394010, anonymous login) on Linux. It reported itself as v1.0.5.102999. Every default below is copied from the DefaultPalWorldSettings.ini that build shipped, and where we write "in our test" we started that server and checked what it did, mostly through its REST API. Descriptions come from Pocketpair's official server documentation. Palworld changes its settings between updates, and several defaults changed with 1.0, so an older guide may show different values.

Where PalWorldSettings.ini Lives

The file is under the server's install folder, in a folder named after the operating system:

ServerFile
WindowsPal\Saved\Config\WindowsServer\PalWorldSettings.ini
LinuxPal/Saved/Config/LinuxServer/PalWorldSettings.ini

These folders don't exist until the server has started once. In our test the first start created PalWorldSettings.ini as an empty file (one blank line) and ran on built-in defaults. Editing the wrong folder is a classic mistake: a Windows server never reads the LinuxServer file, and the other way round.

Why you copy DefaultPalWorldSettings.ini

The install folder also contains DefaultPalWorldSettings.ini, which lists every setting with its default value. Its own first lines say "Changes to this file will NOT be reflected on the server". The official instructions are to start the server once, stop it, copy that file over the empty PalWorldSettings.ini and edit the copy:

Windows: copy DefaultPalWorldSettings.ini Pal\Saved\Config\WindowsServer\PalWorldSettings.ini Linux: cp DefaultPalWorldSettings.ini Pal/Saved/Config/LinuxServer/PalWorldSettings.ini

You don't strictly need the full list. In our test a file with only four settings in its OptionSettings line worked, and everything it left out kept its default. Copying the default file is still the easier route, because it gives you every key name, spelled the way the server expects (including oddities like PlayerStomachDecreaceRate).

How the File Works

The file has a section header and then one line:

[/Script/Pal.PalGameWorldSettings] OptionSettings=(Difficulty=None,DayTimeSpeedRate=1.000000,ExpRate=1.000000,...,ServerName="Default Palworld Server",...)

Everything goes inside the brackets as Key=Value pairs separated by commas. Text values are in double quotes. True/false values are written True and False. We tried the usual hand-editing mistakes on the 1.0.5 server to see what happens:

None of these produced an error. The server simply started with different settings from the ones you wrote, so check the result after a restart (the REST API below is a quick way).

Stop the server before you edit
The server reads the file only when it starts. In our test we changed ExpRate while it was running: the running server ignored it, and when we stopped the server normally (SIGINT and SIGTERM both), it wrote the settings it had loaded back into the file. Our edit was gone. Stop the server, edit, then start it.

The Rates People Search For

All rates are multipliers where 1.000000 is the default. The descriptions are the official ones.

SettingDefaultWhat it does
ExpRate1.0EXP gain multiplier.
PalCaptureRate1.0Capture rate multiplier. Higher means easier catches.
PalSpawnNumRate1.0How many Pals spawn. The official docs warn that it affects performance.
WorkSpeedRate1.0Work speed multiplier.
DayTimeSpeedRate / NightTimeSpeedRate1.0How fast day and night pass. A lower night value makes nights last longer.
PalEggDefaultHatchingTime1.0Hours to hatch a Huge Egg; smaller eggs take less. The default is 1 hour in 1.0.5. Older guides say 72.
PlayerDamageRateAttack / PlayerDamageRateDefense1.0Damage players deal / damage players take.
PalDamageRateAttack / PalDamageRateDefense1.0Damage Pals deal / damage Pals take.
PlayerStomachDecreaceRate, PalStomachDecreaceRate1.0How fast players and Pals get hungry.
PlayerStaminaDecreaceRate, PalStaminaDecreaceRate1.0How fast stamina drains.
CollectionDropRate1.0How much you get from gathering.
CollectionObjectRespawnSpeedRate1.0Respawn interval of trees, rocks and other gatherables.
EnemyDropItemRate1.0Dropped item quantity multiplier.
ItemWeightRate1.0Item weight multiplier.
EquipmentDurabilityDamageRate1.0How fast equipment wears out.
BuildObjectDeteriorationDamageRate1.0Building decay speed.

Death penalty

DeathPenalty decides what a player drops on death. The default in 1.0.5 is Item. Many older guides say All.

ValueWhat is dropped
NoneNothing.
ItemAll items except equipment.
ItemAndEquipmentAll items, equipment included.
AllAll items and all Pals in the team.

bCanPickupOtherGuildDeathPenaltyDrop (default False) decides whether other guilds can pick that drop up. For harder modes there is also bHardcore (no respawn after death) and bPalLost (Pals are lost for good on death), both False by default.

Difficulty

Difficulty=None is in the default file, but the official configuration page doesn't list it. In our test, Difficulty=Hard left every rate the server reported at 1.0, so set the rates you want directly instead of counting on it.

Bases, Guilds and PvP

SettingDefaultWhat it does
BaseCampMaxNum128Total number of bases on the whole server.
BaseCampMaxNumInGuild4Bases per guild (official maximum 10). More bases mean more server load.
BaseCampWorkerMaxNum15Pals working at one base (official maximum 50). Also raises load.
MaxBuildingLimitNum0Structures per player; 0 means no limit.
GuildPlayerMaxNum20Players per guild.
bAutoResetGuildNoOnlinePlayersFalseIf no member of a guild logs in for AutoResetGuildTimeNoOnlinePlayers hours (default 72), the guild's structures and base Pals are deleted.
GuildRejoinCooldownMinutes0How long a player waits before rejoining a guild.
bEnableInvaderEnemyTrueRaids on bases.
bEnableFastTravelTrueFast travel; bEnableFastTravelOnlyBaseCamp limits it to travel between bases.
bIsUseBackupSaveDataTrueKeeps rolling world backups in a backup folder next to the save. It adds disk load.

PvP takes three settings, all False by default: bIsPvP, bEnablePlayerToPlayerDamage and bEnableDefenseOtherGuildPlayer. Pocketpair calls PvP a trial feature, and its PvP page suggests pairing it with stricter rules: bAllowEnhanceStat_Health=False and bAllowEnhanceStat_Attack=False to stop stat stacking, DenyTechnologyList to disable specific technologies, base-only fast travel, and bExistPlayerAfterLogout=True so logging out doesn't get anyone out of a fight.

Name, Passwords, Players and the Server List

Community server (public listing). A dedicated server is joined by IP address and port. Start it with the -publiclobby launch option and it also shows up in the in-game Community Server list. Pocketpair's docs say Xbox and PS5 players can only join a community server. If the server picks the wrong address for the list, set -publicip= and -publicport= (or PublicIP/PublicPort in the file); these change what the list shows, not the port the server listens on. If your router lacks hairpin NAT, players on the same network may not be able to join through the list.

Ports, RCON and the REST API

PortProtocolUsed for
8211UDPThe game. Change it with -port=. This is the port to forward.
27015UDPThe server opened this too in our test. Players joining by IP only need 8211.
8212TCPREST API, only when RESTAPIEnabled=True (RESTAPIPort).
25575TCPRCON, only when RCONEnabled=True (RCONPort).

Both APIs are off by default and need AdminPassword. The REST API uses HTTP Basic authentication; in our test curl -u admin:<AdminPassword> http://127.0.0.1:8212/v1/api/settings returned every active setting as JSON, and a wrong password got a 401. That makes it the easiest way to check that your ini edits really applied. /v1/api/info and /v1/api/metrics report the version, world ID, player count and server FPS.

The official docs mark RCON as deprecated and say it will stop working in an upcoming update; they recommend the REST API. RCON still answered on 1.0.5 in our test. Both listened on all network interfaces, and Pocketpair advises against exposing either to the internet, so don't forward 8212 or 25575.

Where the World Is Saved

The world lives in Pal/Saved/SaveGames/0/<world ID>/: Level.sav, LevelMeta.sav, a Players folder and, with backups on, a backup folder. Which world folder the server loads is set by DedicatedServerName in GameUserSettings.ini; on Linux that file sits next to PalWorldSettings.ini in Pal/Saved/Config/LinuxServer/. In our test a fresh server named its world folder with a 32-character ID and wrote the same ID into DedicatedServerName.

Moving a co-op world to a dedicated server

  1. On the PC that hosted the co-op game, open %LOCALAPPDATA%\Pal\Saved\SaveGames\. Steam's cloud settings for Palworld put saves in a folder named after your 64-bit Steam ID; your worlds are the folders inside it that contain a Level.sav.
  2. Start the dedicated server once so it creates its folders, then stop it.
  3. Copy the whole world folder into the server's Pal/Saved/SaveGames/0/.
  4. Set DedicatedServerName= in the server's GameUserSettings.ini to that folder's name, and start the server.

We checked step 4 on 1.0.5: after renaming a world folder and pointing DedicatedServerName at the new name, the server loaded that folder (the REST API reported it as the world ID) and didn't create a new one. We could not test a real co-op save on this machine, so keep an untouched copy of the original until everyone has logged in and checked their character.

Mods

Pocketpair's docs say server-side mods currently work only on the Windows dedicated server, and only mods built to run on servers. A mod goes into Mods\Workshop\<any folder>\ with its Info.json directly inside. It is switched on in Mods\PalModSettings.ini with bGlobalEnableMod=true and one ActiveModList=<PackageName> line per mod (the PackageName from Info.json, not the folder name). It is deployed on the next restart. A mod whose Info.json install rules don't include "IsServer": true isn't meant for servers. Mods can crash the server or damage saves, so back up first.

Common Pitfalls

1. Editing while the server runs

Changes are read only at start, and in our test a normal shutdown wrote the loaded settings back over the file. Stop, edit, start.

2. Editing DefaultPalWorldSettings.ini

The server never reads it. Copy it to PalWorldSettings.ini in the WindowsServer or LinuxServer folder and edit the copy.

3. Splitting OptionSettings over several lines

Only the first line was read in our test. Keep it on one line, quote text values, and keep the [/Script/Pal.PalGameWorldSettings] header.

4. Setting max players in the file and on the command line

-players= overrode ServerPlayerMaxNum in our test. If your limit doesn't change, check the launch options.

5. Trusting an old guide's defaults

In 1.0.5 a Huge Egg hatches in 1 hour, the death penalty is Item, and players don't choose their start location (bIsStartLocationSelectByMap=False). Check against your own DefaultPalWorldSettings.ini.

6. Forwarding the admin ports

Forward UDP 8211 for players. Keep the REST API (8212) and RCON (25575) on your own network.

7. Expecting mods to load on Linux

Server-side mods are Windows-only for now, according to Pocketpair.

Skip the Hand-Editing

NodeMesh runs your Palworld server on your own PC or server. Its Config tab shows the main PalWorldSettings.ini settings as form fields grouped by topic (server, rates, world and time, players, Pals, structures and bases, PvP, guilds) and writes the single OptionSettings line for you, in the right WindowsServer or LinuxServer folder.

On a Windows host, the Mods tab takes a .zip of a server-side mod, refuses packages that don't declare "IsServer": true, unpacks it into Mods/Workshop and keeps the ActiveModList lines in PalModSettings.ini in step with the mods you enable. With RCON turned on, the panel's console has buttons for Info, Show Players, Save, Broadcast, Kick and Ban.

Run your Palworld server without editing the ini by hand

Host Palworld on your own hardware. NodeMesh's Config tab edits PalWorldSettings.ini, and on Windows its Mods tab installs server-side mods.

Start hosting with NodeMesh