← Blog

Palworld Dedicated Server selbst einrichten: die Schritte im Detail

Par Benjamin D. · PDG

· Mis à jour le 1. September 2026 · Lecture 7 min

Inhaltsverzeichnis

Ein Palworld Dedicated Server ist eine eigenständige Anwendung, die unabhängig vom Spielclient läuft und deiner Gruppe eine dauerhaft erreichbare Welt liefert. Diese Anleitung zeigt Schritt für Schritt, wie du die Serversoftware unter Windows und Linux per SteamCMD installierst, welche Startparameter tatsächlich etwas bewirken und wie du die Datei PalWorldSettings.ini sauber anpasst, ohne dich beim ersten Neustart wieder auszusperren.



Was ein Palworld Dedicated Server technisch verlangt

Die Serversoftware von Palworld basiert auf der Unreal Engine 5 und verhält sich entsprechend: Sie ist stark von der Single-Thread-Leistung der CPU abhängig und belegt mit wachsender Welt spürbar mehr Arbeitsspeicher. Bevor du SteamCMD anwirfst, solltest du deine Hardware und dein Netzwerk realistisch einschätzen.

KomponenteMinimumEmpfehlung für 8–32 Spieler
CPU4 ThreadsModerne Ryzen-Kerne mit hoher Taktfrequenz
RAM8 GB16–32 GB (die Belegung steigt über Laufzeit)
Speicher20 GB freiNVMe-SSD wegen häufiger Weltspeicherung
NetzwerkUDP erreichbarStabiler Upload, niedrige Latenz zur Spielergruppe

Wichtig sind die Ports: Palworld kommuniziert über UDP 8211 (Spielverkehr), optional UDP 27015 als Steam-Query-Port und TCP 25575 für RCON. Alles läuft über UDP – wer nur TCP freigibt, sieht später eine leere Serverliste und wundert sich.

Wenn du die Maschine nicht selbst pflegen willst und lieber eine fertige Instanz mit Pterodactyl-Panel, automatischen Backups und Anti-DDoS nutzt, kannst du direkt einen Palworld Server mieten und die folgenden Konfigurationsschritte trotzdem eins zu eins anwenden – die Dateien sind identisch.



Installation unter Windows mit SteamCMD

SteamCMD holen und entpacken

Lade das SteamCMD-Archiv von Valve herunter und entpacke es nach C:\steamcmd. Vermeide Ordner mit Leerzeichen oder Umlauten im Pfad – SteamCMD und Unreal-Server reagieren darauf gelegentlich unangenehm. Anschließend öffnest du eine Eingabeaufforderung als Administrator:

cd C:\steamcmd
steamcmd.exe +login anonymous +force_install_dir C:\palserver +app_update 2394010 validate +quit

Die App-ID 2394010 ist die dedizierte Serversoftware, nicht das Spiel selbst. Der anonyme Login reicht aus, du brauchst kein Steam-Konto mit Palworld-Lizenz. Nach dem Download findest du unter C:\palserver die Datei PalServer.exe.

Erster Start und Ordnerstruktur

Starte den Server einmal, damit er seine Konfigurationsstruktur erzeugt:

C:\palserver\PalServer.exe

Warte, bis in der Konsole Setting breakpad minidump AppID und die Weltinitialisierung erscheinen, dann beende den Prozess mit Strg+C. Jetzt existiert:

C:\palserver\Pal\Saved\Config\WindowsServer\PalWorldSettings.ini
C:\palserver\Pal\Saved\SaveGames\0\<WeltID>\
C:\palserver\DefaultPalWorldSettings.ini

Die frisch erzeugte PalWorldSettings.ini ist praktisch leer. Kopiere den kompletten Inhalt aus DefaultPalWorldSettings.ini hinein und bearbeite erst danach die Werte. Wer direkt einzelne Zeilen einfügt, verliert alle nicht gesetzten Optionen auf Standard.

Firewall-Regel per PowerShell

New-NetFirewallRule -DisplayName "Palworld Game" -Direction Inbound -Protocol UDP -LocalPort 8211 -Action Allow
New-NetFirewallRule -DisplayName "Palworld Query" -Direction Inbound -Protocol UDP -LocalPort 27015 -Action Allow

Läuft die Maschine hinter einem Heimrouter, brauchst du zusätzlich eine Portweiterleitung auf die interne IPv4 des Rechners. Ohne öffentliche IPv4 (DS-Lite) wird ein lokaler Betrieb für Freunde von außen praktisch unmöglich – das ist der häufigste Grund, warum Leute später auf gemietete Infrastruktur wechseln.



Installation unter Linux mit SteamCMD und systemd

Abhängigkeiten und Benutzer

Auf Ubuntu 22.04 oder Debian 12 legst du zuerst einen unprivilegierten Benutzer an. Die Serversoftware braucht keine Root-Rechte, und du willst sie auch nicht als root laufen lassen.

sudo dpkg --add-architecture i386
sudo apt update && sudo apt install -y software-properties-common lib32gcc-s1 curl xdg-user-dirs
sudo adduser --disabled-password --gecos "" palworld
sudo su - palworld
mkdir -p ~/steamcmd && cd ~/steamcmd
curl -sqL "https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz" | tar zxvf -

Serverdateien herunterladen

~/steamcmd/steamcmd.sh +login anonymous +force_install_dir /home/palworld/palserver +app_update 2394010 validate +quit

Danach einmal starten, damit die Konfiguration erzeugt wird:

cd /home/palworld/palserver
./PalServer.sh

Erscheint ein Fehler zu steamclient.so, hilft der klassische Symlink:

mkdir -p ~/.steam/sdk64
ln -sf ~/steamcmd/linux64/steamclient.so ~/.steam/sdk64/steamclient.so

Die Konfigurationsdatei liegt unter Linux in einem anderen Verzeichnis als unter Windows:

/home/palworld/palserver/Pal/Saved/Config/LinuxServer/PalWorldSettings.ini
cp /home/palworld/palserver/DefaultPalWorldSettings.ini \
   /home/palworld/palserver/Pal/Saved/Config/LinuxServer/PalWorldSettings.ini

systemd-Unit für sauberen Autostart

Ein screen-Fenster reicht zum Testen, für den Dauerbetrieb nimmst du systemd. Achte auf LimitNOFILE: Palworld öffnet viele Dateideskriptoren und stürzt sonst bei mehreren Spielern reproduzierbar ab.

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

[Service]
Type=simple
User=palworld
Group=palworld
WorkingDirectory=/home/palworld/palserver
ExecStartPre=/home/palworld/steamcmd/steamcmd.sh +login anonymous +force_install_dir /home/palworld/palserver +app_update 2394010 validate +quit
ExecStart=/home/palworld/palserver/PalServer.sh -useperfthreads -NoAsyncLoadingThread -UseMultithreadForDS -port=8211 -players=32
Restart=on-failure
RestartSec=15
LimitNOFILE=100000

[Install]
WantedBy=multi-user.target
sudo systemctl daemon-reload
sudo systemctl enable --now palworld
sudo systemctl status palworld
journalctl -u palworld -f

Firewall mit ufw

sudo ufw allow 8211/udp
sudo ufw allow 27015/udp
sudo ufw allow from DEINE.IP.HIER to any port 25575 proto tcp
sudo ufw enable

RCON gibst du niemals offen ins Internet frei – beschränke den Port auf deine Admin-IP oder tunnle ihn über SSH. Ergänze auf der Maschine außerdem SSH-Schlüssel statt Passwort-Login und fail2ban; volumetrische Angriffe fängt bei Fly-Serv bereits der standardmäßig aktive Anti-DDoS-Schutz ab.



Startparameter und PalWorldSettings.ini verstehen

Die relevanten Kommandozeilen-Argumente

ParameterWirkung
-port=8211Interner Spielport, muss zur Portweiterleitung passen
-publicport=8211Nach außen sichtbarer Port, relevant bei NAT-Abweichung
-publicip=1.2.3.4Erzwingt die IP-Anzeige in der Community-Liste
-players=32Slot-Limit; über 32 wird es instabil
-useperfthreadsAktiviert zusätzliche Worker-Threads der Engine
-NoAsyncLoadingThreadVerlagert Ladevorgänge, reduziert Ruckler beim Streaming
-UseMultithreadForDSVerteilt Serverlogik besser auf mehrere Kerne
-logAusführliche Konsolenausgabe für die Fehlersuche

Das Trio -useperfthreads -NoAsyncLoadingThread -UseMultithreadForDS ist der Standardsatz für spürbar bessere Performance bei mehreren Spielern. Es ersetzt keine schnelle CPU, glättet aber Tickrate-Einbrüche, wenn viele Pals gleichzeitig an Basen arbeiten.

Die OptionSettings-Zeile richtig bearbeiten

Der gesamte Konfigurationsblock steht in einer einzigen Zeile. Wenn du sie im Editor umbrichst, ignoriert der Server die Datei komplett und fährt mit Standardwerten hoch – das ist der mit Abstand häufigste Konfigurationsfehler.

[/Script/Pal.PalGameWorldSettings]
OptionSettings=(Difficulty=None,DayTimeSpeedRate=1.000000,ExpRate=1.500000,PalCaptureRate=1.200000,PalSpawnNumRate=1.000000,DeathPenalty=Item,bEnablePlayerToPlayerDamage=False,bEnableFriendlyFire=False,bEnableInvaderEnemy=True,GuildPlayerMaxNum=20,BaseCampMaxNumInGuild=4,ServerPlayerMaxNum=32,ServerName="Unsere Palwelt",ServerDescription="Community Server",AdminPassword="langesAdminPasswort",ServerPassword="",PublicPort=8211,PublicIP="",RCONEnabled=True,RCONPort=25575,bUseAuth=True,bShowPlayerList=False,AllowConnectPlatform=Steam,bIsUseBackupSaveData=True,LogFormatType=Text)

Werte, die den Spielfluss am stärksten verändern

  • ExpRate: 1.5 bis 2.0 nimmt Gruppen mit wenig Spielzeit den Grind, ohne das Balancing zu zerstören.
  • PalCaptureRate: leicht erhöhen, wenn Spieler über verschwendete Kugeln klagen.
  • DeathPenalty: None, Item, ItemAndEquipment oder All – auf PvE-Servern ist Item ein guter Kompromiss.
  • bEnablePlayerToPlayerDamage: nur auf True, wenn du wirklich PvP moderieren willst.
  • BaseCampMaxNumInGuild: jede zusätzliche Basis kostet dauerhaft CPU-Zeit und RAM.
  • bIsUseBackupSaveData: unbedingt auf True lassen.

Nach jeder Änderung muss der Server neu starten. Ein systemctl restart palworld oder ein Klick auf „Restart“ in der Panel-Konsole genügt; im laufenden Betrieb liest Palworld die Datei nicht neu ein. Die vollständige Parameterliste pflegt Pocketpair in der offiziellen Serverdokumentation.



Betrieb, Backups und typische Fehlerbilder

Speicherstände sichern

Alles Wichtige liegt in Pal/Saved/SaveGames/0/. Ein einfaches Cron-Backup auf einer Linux-Maschine sieht so aus:

crontab -e
0 */6 * * * tar -czf /home/palworld/backups/pal-$(date +\%Y\%m\%d-\%H\%M).tar.gz -C /home/palworld/palserver/Pal/Saved SaveGames
30 4 * * * find /home/palworld/backups -type f -mtime +7 -delete

Sichere idealerweise mit gestopptem Prozess oder direkt nach einem geplanten Neustart – ein Archiv mitten im Schreibvorgang kann eine beschädigte Welt enthalten. Auf einer Panel-Instanz übernehmen das die automatischen Sicherungen, du solltest sie trotzdem regelmäßig testweise zurückspielen.

Geplante Neustarts gegen steigenden RAM-Verbrauch

Palworld gibt Arbeitsspeicher nur zögerlich frei. Ein Neustart alle sechs bis zwölf Stunden hält die Tickrate stabil. Mit RCON kündigst du ihn sauber an:

Broadcast Neustart_in_5_Minuten
Save
Shutdown 300 Wartungsneustart

Der Befehl Shutdown erwartet die Sekunden als erstes Argument. Save vorher abzusetzen kostet nichts und erspart im Zweifel eine Stunde verlorenen Fortschritt. Weitere Verwaltungsbefehle wie ShowPlayers, KickPlayer und BanPlayer laufen über denselben RCON-Kanal.

Häufige Probleme im Schnelldurchlauf

  • Server taucht nicht in der Community-Liste auf: UDP 8211 prüfen, PublicIP und PublicPort korrekt setzen, Community-Liste ist zudem oft überfüllt – nutze die direkte IP-Verbindung.
  • „Verbindung fehlgeschlagen“ trotz offener Ports: Client- und Serverversion stimmen nicht überein. Nach jedem Patch app_update 2394010 validate erneut ausführen.
  • Konfiguration wird ignoriert: falsches Verzeichnis (WindowsServer vs. LinuxServer) oder Zeilenumbruch in OptionSettings.
  • Absturz bei 8+ Spielern: fehlendes LimitNOFILE oder zu wenig RAM.
  • Welt zurückgesetzt: geänderte Welt-ID im Ordner SaveGames/0/; die alte ID in GameUserSettings.ini wiederherstellen.

Wer parallel weitere Survival-Welten betreut, findet dieselben Prinzipien bei Valheim Server und Enshrouded Server wieder: SteamCMD, eine zentrale Konfigurationsdatei, geplante Neustarts. Eine Übersicht aller unterstützten Titel gibt es unter Alle unsere Gameserver, weitere Anleitungen im Fly-Serv Blog.



Fazit

Die Installation über SteamCMD ist auf beiden Plattformen in wenigen Minuten erledigt – die eigentliche Arbeit steckt in der OptionSettings-Zeile, den Startparametern und einer verlässlichen Backup-Routine. Wer Ports korrekt öffnet, RCON absichert und regelmäßige Neustarts einplant, hat eine Welt, die auch nach Wochen noch flüssig läuft und keine Fortschritte verschluckt.



FAQ

Warum werden meine Änderungen in PalWorldSettings.ini nicht übernommen?

Zwei Ursachen dominieren: Du hast die Datei im falschen Ordner bearbeitet (Config/WindowsServer unter Windows, Config/LinuxServer unter Linux) oder die Zeile OptionSettings=(...) enthält einen Zeilenumbruch. Der gesamte Block muss in einer einzigen Zeile stehen. Prüfe außerdem, ob du den Inhalt aus DefaultPalWorldSettings.ini vollständig kopiert hast, und starte den Prozess danach neu.

Wie aktualisiere ich den Palworld Dedicated Server nach einem Patch?

Stoppe den Prozess, führe steamcmd +login anonymous +force_install_dir /pfad +app_update 2394010 validate +quit aus und starte anschließend neu. Konfiguration und Speicherstände bleiben erhalten, da sie unter Pal/Saved liegen. Ein ExecStartPre in der systemd-Unit erledigt das Update automatisch bei jedem Start. Lege vorher trotzdem ein Backup des SaveGames-Ordners an.

Wie viele Spieler verkraftet eine Instanz realistisch?

Technisch sind 32 Slots vorgesehen, praktisch entscheidet die Single-Thread-Leistung der CPU und die Anzahl aktiver Basen. Bis etwa 8–16 Spieler bleibt die Tickrate mit modernen Ryzen-Kernen und 16–32 GB RAM stabil. Begrenze BaseCampMaxNumInGuild, setze die Startparameter für Multithreading und plane Neustarts alle sechs bis zwölf Stunden ein.