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.
| Komponente | Minimum | Empfehlung für 8–32 Spieler |
|---|---|---|
| CPU | 4 Threads | Moderne Ryzen-Kerne mit hoher Taktfrequenz |
| RAM | 8 GB | 16–32 GB (die Belegung steigt über Laufzeit) |
| Speicher | 20 GB frei | NVMe-SSD wegen häufiger Weltspeicherung |
| Netzwerk | UDP erreichbar | Stabiler 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
| Parameter | Wirkung |
|---|---|
-port=8211 | Interner Spielport, muss zur Portweiterleitung passen |
-publicport=8211 | Nach außen sichtbarer Port, relevant bei NAT-Abweichung |
-publicip=1.2.3.4 | Erzwingt die IP-Anzeige in der Community-Liste |
-players=32 | Slot-Limit; über 32 wird es instabil |
-useperfthreads | Aktiviert zusätzliche Worker-Threads der Engine |
-NoAsyncLoadingThread | Verlagert Ladevorgänge, reduziert Ruckler beim Streaming |
-UseMultithreadForDS | Verteilt Serverlogik besser auf mehrere Kerne |
-log | Ausfü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,ItemAndEquipmentoderAll– auf PvE-Servern istItemein 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
Truelassen.
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,
PublicIPundPublicPortkorrekt 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 validateerneut ausführen. - Konfiguration wird ignoriert: falsches Verzeichnis (WindowsServer vs. LinuxServer) oder Zeilenumbruch in
OptionSettings. - Absturz bei 8+ Spielern: fehlendes
LimitNOFILEoder zu wenig RAM. - Welt zurückgesetzt: geänderte Welt-ID im Ordner
SaveGames/0/; die alte ID inGameUserSettings.iniwiederherstellen.
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.
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.
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.