Palworld ofrece un servidor dedicado gratuito para Linux que se descarga de forma anónima con SteamCMD. Con un servidor propio el mundo sigue activo aunque el anfitrión se desconecte, admite más jugadores que una partida cooperativa y puedes ajustar libremente las reglas del juego. En este tutorial instalarás el servidor de Palworld en Ubuntu 24.04, lo configurarás con PalWorldSettings.ini, lo ejecutarás como servicio systemd y programarás copias de la partida.

Requisitos previos

Para seguir esta guía necesitas:

  • Un servidor con Ubuntu 24.04 LTS (x86_64), por ejemplo un VPS de CubePath. Palworld consume mucha memoria: calcula 4 núcleos de CPU y 16 GB de RAM para un grupo de hasta 32 jugadores; con 8 GB funciona para grupos pequeños, pero el uso de memoria crece con el tiempo.
  • Unos 15 GB libres en disco.
  • Un usuario no root con privilegios sudo.
  • Una copia de Palworld en Steam en el ordenador desde el que vas a jugar.

Paso 1: Instalar SteamCMD

SteamCMD está en el repositorio multiverse de Ubuntu y necesita bibliotecas de 32 bits, así que activa ambos primero:

sudo add-apt-repository multiverse
sudo dpkg --add-architecture i386
sudo apt update

Instala el paquete y acepta la licencia de Steam seleccionando I AGREE cuando se te pida:

sudo apt install steamcmd

Comprueba que el binario existe:

ls -l /usr/games/steamcmd

Paso 2: Crear un usuario dedicado

El servidor debe ejecutarse con un usuario sin privilegios. Crea el usuario steam y cambia a él:

sudo useradd -m -s /bin/bash steam
sudo -iu steam

Paso 3: Descargar el servidor de Palworld

El servidor dedicado de Palworld es la aplicación de Steam 2394010. Recuerda que +force_install_dir debe ir antes de +login:

/usr/games/steamcmd +force_install_dir /home/steam/palworld +login anonymous +app_update 2394010 validate +quit
Success! App '2394010' fully installed.

El servidor busca la biblioteca de Steam en ~/.steam/sdk64/steamclient.so y, si no está, no se registra en Steam. Instala el paquete Steamworks SDK Redist (aplicación 1007) y enlaza su biblioteca:

/usr/games/steamcmd +force_install_dir /home/steam/steamworks-sdk +login anonymous +app_update 1007 +quit
mkdir -p ~/.steam/sdk64
ln -sf /home/steam/steamworks-sdk/linux64/steamclient.so ~/.steam/sdk64/steamclient.so

Comprueba que tanto el script de arranque como el enlace existen:

ls -l /home/steam/palworld/PalServer.sh ~/.steam/sdk64/steamclient.so

Paso 4: Generar los archivos de configuración

El directorio de configuración no existe hasta que el servidor arranca por primera vez. Arráncalo a mano, espera unos 30 segundos a que termine de iniciar y detenlo con CTRL+C:

/home/steam/palworld/PalServer.sh

Comprueba que se ha creado el directorio de configuración:

ls /home/steam/palworld/Pal/Saved/Config/LinuxServer/
Engine.ini  Game.ini  GameUserSettings.ini  PalWorldSettings.ini

En una instalación nueva, PalWorldSettings.ini está vacío. Copia la plantilla con todos los valores por defecto sobre él:

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

Paso 5: Configurar PalWorldSettings.ini

Todos los ajustes están en una única línea OptionSettings=(...), con pares Clave=Valor separados por comas. Abre el archivo:

nano /home/steam/palworld/Pal/Saved/Config/LinuxServer/PalWorldSettings.ini

Busca y cambia estos valores dentro de la línea, sin romper los paréntesis ni las comas:

ServerName="CubePath Palworld",ServerDescription="Servidor de mi grupo",AdminPassword="tu_contraseña_admin",ServerPassword="tu_contraseña_servidor",ServerPlayerMaxNum=16,PublicPort=8211,RCONEnabled=False

Qué hace cada ajuste:

  • ServerName y ServerDescription: el nombre y la descripción que ven los jugadores.
  • AdminPassword: la contraseña para obtener permisos de administrador desde el chat del juego. Usa una contraseña larga.
  • ServerPassword: la contraseña para entrar. Déjala vacía ("") para un servidor abierto.
  • ServerPlayerMaxNum: el número máximo de jugadores, hasta 32.
  • PublicPort: el puerto del juego, 8211 por defecto.

En la misma línea están los ajustes de juego, como ExpRate, PalCaptureRate, DayTimeSpeedRate o DeathPenalty. Cambia solo los que necesites; los valores por defecto corresponden a la dificultad normal.

Vuelve a tu usuario con sudo:

exit

Paso 6: Crear el servicio systemd

Crea la unidad para que el servidor arranque con el sistema, se reinicie si falla y se actualice antes de cada arranque:

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

[Service]
Type=simple
User=steam
Group=steam
WorkingDirectory=/home/steam/palworld
ExecStartPre=-/usr/games/steamcmd +force_install_dir /home/steam/palworld +login anonymous +app_update 2394010 +quit
ExecStart=/home/steam/palworld/PalServer.sh -port=8211 -players=16 -useperfthreads -NoAsyncLoadingThread -UseMultithreadForDS
TimeoutStartSec=900
Restart=on-failure
RestartSec=15

[Install]
WantedBy=multi-user.target
  • -port y -players deben coincidir con PublicPort y ServerPlayerMaxNum.
  • -useperfthreads -NoAsyncLoadingThread -UseMultithreadForDS son las opciones que recomienda la documentación oficial para aprovechar varios núcleos.
  • Para que el servidor aparezca en la lista de servidores de la comunidad, añade -publiclobby al final de ExecStart. Sin él, los jugadores se conectan por IP.

Recarga systemd y arranca el servidor:

sudo systemctl daemon-reload
sudo systemctl enable --now palworld

Paso 7: Comprobar el servidor y abrir el cortafuegos

Sigue el log hasta que el servidor termine de iniciar:

sudo journalctl -u palworld -f

Pulsa CTRL+C para salir y comprueba que escucha en el puerto 8211 UDP:

sudo ss -ulpn | grep 8211
UNCONN 0 0 0.0.0.0:8211 0.0.0.0:* users:(("PalServer-Linux",pid=7342,fd=...))

Palworld solo necesita el puerto 8211 UDP para el juego. Si tienes UFW activado, ábrelo:

sudo ufw allow 8211/udp
sudo ufw status

Si más adelante activas -publiclobby, abre también el puerto de consultas de Steam, 27015/udp. No abras los puertos de RCON (25575) ni de la API REST (8212) a Internet si llegas a activarlos.

Para conectarte, abre Palworld, elige Unirse a partida multijugador (servidor dedicado), escribe ip_de_tu_servidor:8211 en el campo inferior y pulsa Conectar.

Paso 8: Administrar el servidor desde el juego

Una vez dentro, obtén permisos de administrador escribiendo en el chat (tecla Intro):

/AdminPassword tu_contraseña_admin

A partir de ahí puedes usar estos comandos:

  • /ShowPlayers: lista los jugadores conectados con su ID.
  • /KickPlayer <SteamID> y /BanPlayer <SteamID>: expulsa o banea a un jugador.
  • /Save: guarda el mundo inmediatamente.
  • /Broadcast <mensaje>: envía un aviso a todos los jugadores.
  • /Shutdown <segundos> <mensaje>: apaga el servidor tras una cuenta atrás. Con Restart=on-failure, un apagado limpio no vuelve a arrancarlo; usa sudo systemctl restart palworld para reiniciarlo.

Paso 9: Hacer copias de seguridad

La partida está en /home/steam/palworld/Pal/Saved/SaveGames/. Crea un directorio de copias y una tarea cron para el usuario steam que archive las partidas cada noche y borre las de más de 14 días:

sudo -u steam mkdir -p /home/steam/backups
sudo -u steam crontab -e
0 5 * * * tar -czf /home/steam/backups/palworld-$(date +\%F).tar.gz -C /home/steam/palworld/Pal/Saved SaveGames Config && find /home/steam/backups -name 'palworld-*.tar.gz' -mtime +14 -delete

Los % van escapados porque cron interpreta un % sin escapar como salto de línea. Ejecuta el tar una vez a mano para comprobar que funciona y copia las copias fuera del servidor con regularidad.

Para restaurar, detén el servidor, extrae la copia y arráncalo:

sudo systemctl stop palworld
sudo -u steam tar -xzf /home/steam/backups/palworld-2026-09-25.tar.gz -C /home/steam/palworld/Pal/Saved
sudo systemctl start palworld

Solución de problemas

  • Los cambios de PalWorldSettings.ini no se aplican. Asegúrate de editar el archivo en Config/LinuxServer/ con el servidor detenido. Si migraste una partida desde un cliente, borra WorldOption.sav dentro del directorio de la partida en SaveGames/0/, porque tiene prioridad sobre el archivo .ini.
  • La memoria no deja de crecer. Es un comportamiento conocido del servidor en partidas largas. Programa un reinicio diario, por ejemplo con sudo crontab -e y la línea 0 6 * * * systemctl restart palworld, avisando antes a los jugadores con /Broadcast.
  • Nadie puede conectarse. Comprueba que el puerto 8211/udp está abierto en UFW y en cualquier cortafuegos externo, y que -port coincide con PublicPort.
  • Los jugadores ven un error de versión. El servidor no está actualizado. Ejecuta sudo systemctl restart palworld; la línea ExecStartPre descarga la actualización.

Conclusión

Tu servidor dedicado de Palworld ya funciona en Ubuntu 24.04 con systemd, se actualiza en cada reinicio y guarda copias nocturnas de la partida. Como siguientes pasos puedes ajustar las tasas de experiencia y captura en PalWorldSettings.ini, publicar el servidor en la lista de la comunidad con -publiclobby o activar la API REST en local para automatizar avisos y guardados.