Как развернуть выделенный сервер Palworld дома
Par Benjamin D. · PDG
· Mis à jour le 3 сентября 2026 г. · Lecture 8 min
Содержание
Выделенный сервер Palworld на домашнем ПК — это отдельный процесс PalServer, который живёт независимо от игрового клиента и держит мир онлайн даже когда вы вышли из игры. Ниже — рабочая последовательность: установка через SteamCMD на Windows и Linux, проброс UDP-портов, правка PalWorldSettings.ini, настройка RCON и резервных копий. Без воды, только то, что реально запускается.
Что нужно домашнему ПК под выделенный сервер Palworld
Palworld — прожорливая игра по памяти. Каждый подключённый игрок тянет за собой свою базу, своих палов, свои конструкции, и потребление RAM растёт линейно вместе с возрастом мира. Через месяц активной игры сохранение на 8 человек спокойно раздувается до нескольких сотен мегабайт, а процесс сервера — до 20–25 ГБ оперативной памяти.
| Компонент | Минимум (4–6 игроков) | Комфорт (10–16 игроков) |
|---|---|---|
| CPU | 4 ядра, высокая частота (Ryzen/Intel от 3.5 ГГц) | 6–8 ядер, 4.0+ ГГц |
| RAM | 16 ГБ (из них 10–12 под процесс) | 32 ГБ и выше |
| Диск | SSD NVMe, 20 ГБ свободно | NVMe + отдельный раздел под бэкапы |
| Канал | Upload от 10 Мбит/с, белый IP | Upload 50+ Мбит/с, стабильный пинг |
Palworld почти не параллелится: производительность симуляции упирается в однопоточную мощность процессора, а не в количество ядер. Поэтому старый 12-ядерный сервер часто проигрывает свежему 6-ядерному Ryzen с высокой частотой. Если домашний канал сидит за CGNAT, белого IP нет и проброс портов физически невозможен, логичной альтернативой становится хостинг Palworld на инфраструктуре с Ryzen, NVMe и защитой от DDoS — там внешний адрес и открытые порты идут по умолчанию. Остальные тайтлы каталога собраны на странице Все наши игровые серверы.
Что важно проверить до старта
- Белый IPv4. Зайдите в веб-интерфейс роутера и сравните WAN-адрес с тем, что показывает любой сервис «мой IP». Совпадают — всё хорошо. Разные (WAN вида 100.64.x.x) — вы за CGNAT.
- Файл подкачки. На Windows оставьте автоматический размер минимум 16 ГБ: пики памяти при загрузке мира бывают резкими.
- Питание и сон. Отключите переход в сон и гибернацию, иначе ночью мир просто выключится.
- Отдельная учётная запись. Не запускайте сервер из-под администратора домашней машины.
Установка через SteamCMD: Windows и Linux
Официальный дистрибутив сервера — приложение Steam с App ID 2394010. Клиент игры для его загрузки не нужен, аккаунт тоже: скачивается анонимно.
Установка на Windows
Скачайте SteamCMD с сайта Valve, распакуйте в C:\steamcmd и выполните в PowerShell:
cd C:\steamcmd
.\steamcmd.exe +force_install_dir C:\palserver +login anonymous +app_update 2394010 validate +quit
После загрузки (около 8 ГБ) создайте файл start.bat в C:\palserver:
@echo off
cd /d C:\palserver
PalServer.exe -port=8211 -queryport=27015 -players=16 -useperfthreads -NoAsyncLoadingThread -UseMultithreadForDS -RconEnabled=True -RconPort=25575
pause
Первый запуск нужен именно для того, чтобы движок сгенерировал структуру папок Pal\Saved\. Дайте серверу выйти в состояние «Running», затем закройте окно.
Установка на Linux (Debian/Ubuntu)
Здесь чуть больше подготовки: PalServer — 64-битный бинарник, но SteamCMD тянет 32-битные библиотеки.
sudo dpkg --add-architecture i386
sudo apt update && sudo apt install -y steamcmd lib32gcc-s1 xdg-user-dirs
sudo useradd -m -s /bin/bash palserver
sudo su - palserver
steamcmd +force_install_dir /home/palserver/palworld +login anonymous +app_update 2394010 validate +quit
Palworld требует SteamSDK рядом с бинарником — без этого шага сервер падает при старте:
mkdir -p ~/.steam/sdk64
cp ~/.local/share/Steam/steamcmd/linux64/steamclient.so ~/.steam/sdk64/
Запуск вручную для проверки:
cd ~/palworld
./PalServer.sh -port=8211 -queryport=27015 -players=16 -useperfthreads -NoAsyncLoadingThread -UseMultithreadForDS
Автозапуск через systemd
Чтобы процесс поднимался после перезагрузки и сам возвращался после краша, создайте юнит /etc/systemd/system/palworld.service:
[Unit]
Description=Palworld Dedicated Server
After=network.target
[Service]
Type=simple
User=palserver
WorkingDirectory=/home/palserver/palworld
ExecStartPre=/usr/games/steamcmd +force_install_dir /home/palserver/palworld +login anonymous +app_update 2394010 validate +quit
ExecStart=/home/palserver/palworld/PalServer.sh -port=8211 -queryport=27015 -players=16 -useperfthreads -NoAsyncLoadingThread -UseMultithreadForDS
Restart=always
RestartSec=15
[Install]
WantedBy=multi-user.target
sudo systemctl daemon-reload
sudo systemctl enable --now palworld
sudo journalctl -u palworld -f
Строка ExecStartPre обновляет билд при каждом рестарте — удобно после патчей, но помните: клиент и сервер обязаны быть одной версии, иначе игроки получат ошибку подключения.
Проброс портов, файрвол и подключение игроков
Palworld использует UDP. Это первое, обо что спотыкаются: люди пробрасывают TCP и потом удивляются, почему друзья не видят мир.
| Порт | Протокол | Назначение |
|---|---|---|
| 8211 | UDP | Основной игровой трафик |
| 27015 | UDP | Query-порт, отображение в списке сообщества |
| 25575 | TCP | RCON, только для администратора |
Настройка роутера
- Закрепите за домашним ПК статический локальный адрес (DHCP reservation по MAC).
- В разделе Port Forwarding / Virtual Server создайте правило: внешний порт 8211 UDP → внутренний 8211 UDP на локальный IP машины.
- Повторите для 27015 UDP.
- Порт RCON наружу не пробрасывайте. Управляйте им из локальной сети или через SSH-туннель.
Файрвол на самой машине
Windows:
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
Linux с ufw:
sudo ufw allow 8211/udp
sudo ufw allow 27015/udp
sudo ufw allow from 192.168.1.0/24 to any port 25575 proto tcp
sudo ufw enable
Как подключаются игроки
В игре: Join Multiplayer Game → внизу поле для адреса → ВАШ_IP:8211. Локальные игроки заходят по внутреннему адресу вида 192.168.1.50:8211. Если сервер не отвечает извне, диагностируйте по шагам:
- Процесс слушает порт? На Linux —
ss -lunp | grep 8211, на Windows —netstat -an -p UDP | findstr 8211. - Провайдер не блокирует UDP на нестандартных портах? Смените
-port=на 8222 и продублируйте правило. - Двойной NAT (модем + роутер)? Проброс нужен на обоих устройствах.
- Динамический IP меняется — привяжите DDNS-имя.
Про безопасность. Домашний адрес, выставленный в интернет, ловит сканеры в первые же часы. Обязательный минимум: длинный AdminPassword, закрытый снаружи RCON, свежие обновления ОС, а на Linux — fail2ban и вход по SSH-ключам вместо пароля. От волюметрических атак домашний канал не защищён в принципе — это тот случай, когда размещение на инфраструктуре с встроенным анти-DDoS решает проблему на уровне сети, а не хоста.
Разбор PalWorldSettings.ini: где лежит и что крутить
Главная ловушка новичков: правят DefaultPalWorldSettings.ini в корне и не понимают, почему ничего не меняется. Этот файл — только шаблон. Рабочий конфиг находится здесь:
- Windows:
C:\palserver\Pal\Saved\Config\WindowsServer\PalWorldSettings.ini - Linux:
~/palworld/Pal/Saved/Config/LinuxServer/PalWorldSettings.ini
Если после первого запуска он пуст, скопируйте туда содержимое шаблона:
cp ~/palworld/DefaultPalWorldSettings.ini ~/palworld/Pal/Saved/Config/LinuxServer/PalWorldSettings.ini
Структура файла
Весь конфиг — это одна строка внутри OptionSettings=(...). Никаких переносов, никаких пробелов после запятых, значения True/False с большой буквы, строки в двойных кавычках. Один лишний перенос строки — и сервер молча загрузит дефолты.
[/Script/Pal.PalGameWorldSettings]
OptionSettings=(Difficulty=None,DayTimeSpeedRate=1.000000,NightTimeSpeedRate=1.500000,ExpRate=2.000000,PalCaptureRate=1.500000,PalSpawnNumRate=1.200000,PalDamageRateAttack=1.000000,PalDamageRateDefense=1.000000,PlayerDamageRateAttack=1.000000,PlayerStomachDecreaceRate=0.700000,CollectionDropRate=2.000000,EnemyDropItemRate=1.500000,DeathPenalty=Item,bEnablePlayerToPlayerDamage=False,bEnableFriendlyFire=False,bEnableInvaderEnemy=True,bIsPvP=False,GuildPlayerMaxNum=8,BaseCampMaxNumInGuild=4,PalEggDefaultHatchingTime=24.000000,ServerPlayerMaxNum=16,ServerName="Nasha Baza",ServerDescription="Coop PvE",AdminPassword="SmeniMenyaSrochno",ServerPassword="",PublicPort=8211,PublicIP="",RCONEnabled=True,RCONPort=25575,bUseAuth=True,bIsUseBackupSaveData=True,AutoSaveSpan=180.000000)
Параметры, которые реально влияют на игру
| Параметр | Что делает | Практика |
|---|---|---|
| ExpRate | Множитель опыта | 2.0–3.0 для взрослой группы с ограниченным временем |
| PalCaptureRate | Шанс поимки пала | 1.5 снимает фрустрацию, не ломая прогресс |
| DeathPenalty | None / Item / ItemAndEquipment / All | Item — золотая середина для кооператива |
| PalSpawnNumRate | Плотность спавна палов | Выше 1.5 бьёт по FPS и по CPU сервера |
| ServerPlayerMaxNum | Слоты | Держите в согласии с реальным объёмом RAM |
| AutoSaveSpan | Интервал автосейва, сек | 180 — разумно; 30 вызовет микрофризы у всех |
| bIsUseBackupSaveData | Внутренние резервные копии | Всегда True |
RCON для администрирования
С включённым RCON можно управлять миром без входа в игру. Любой RCON-клиент, порт 25575, пароль — ваш AdminPassword. Полезные команды:
ShowPlayers
Info
Save
Broadcast Rebut_cherez_5_minut
KickPlayer <SteamID>
BanPlayer <SteamID>
Shutdown 60 Planovyi_restart
Broadcast не понимает пробелы и кириллицу — используйте подчёркивания и латиницу. Перед любым рестартом выполняйте Save, затем Shutdown с отсчётом: жёсткое убийство процесса — прямой путь к повреждённому сохранению. Актуальный список параметров и команд держат в официальной технической документации проекта — Source.
Производительность, резервные копии и типовые ошибки
Куда уходит память и как с этим жить
Основные пожиратели ресурсов — количество построек в базах гильдий и число активных палов на рабочих местах. Практические меры:
- Ограничьте
BaseCampMaxNumInGuildдо 3–4 иGuildPlayerMaxNumдо 8. - Планируйте ежедневный рестарт: процесс освобождает накопленную память, и первые часы после перезапуска мир заметно отзывчивее.
- Держите сохранения на NVMe: автосейв — это дисковая операция, на HDD она превращается в общий лаг-спайк.
- Флаги
-useperfthreads -NoAsyncLoadingThread -UseMultithreadForDSоставляйте всегда, они распределяют нагрузку заметно ровнее.
Резервные копии
Весь мир лежит в Pal/Saved/SaveGames/0/<ID_мира>/. Копировать нужно всю папку целиком, включая Level.sav, LevelMeta.sav и каталог Players. Простой скрипт с ротацией за 7 дней:
#!/bin/bash
SRC="/home/palserver/palworld/Pal/Saved/SaveGames"
DST="/home/palserver/backups"
mkdir -p "$DST"
tar -czf "$DST/pal_$(date +%F_%H%M).tar.gz" -C "$SRC" .
find "$DST" -name "pal_*.tar.gz" -mtime +7 -delete
chmod +x /home/palserver/backup.sh
crontab -e
0 */6 * * * /home/palserver/backup.sh
Копию делайте после команды Save или на остановленном процессе — снимок «на лету» иногда ловит наполовину записанный Level.sav. И храните хотя бы один архив вне домашней машины: диск умирает без предупреждения.
Частые ошибки и их причины
- «Не удалось подключиться к серверу». В 90% случаев — рассинхрон версий клиента и сборки, либо UDP-порт не проброшен.
- Настройки не применяются. Правили шаблон вместо файла в
Saved/Config/, либо разорвали строкуOptionSettings. - Сервер стартует и сразу завершается на Linux. Не скопирован
steamclient.soв~/.steam/sdk64. - Игроки теряют персонажей. Восстанавливаются из
Players/*.sav, если бэкапы велись. Без бэкапа — никак. - Пинг скачет вечером. Домашний upload делится с торрентами, стримами и облачным бэкапом. Приоритизируйте трафик через QoS.
Тот же подход к конфигам, портам и бэкапам работает и в соседних выживалках: логика проброса UDP и правки ini-файлов почти идентична для Сервер Valheim и Сервер Enshrouded. Больше разборов по администрированию — в разделе Блог Fly-Serv.
Итог
Домашняя машина отлично тянет мир на небольшую компанию: SteamCMD ставит билд за десять минут, UDP 8211 и 27015 открывают вход, а одна строка OptionSettings задаёт весь баланс. Дальше решают дисциплина рестартов, регулярные копии сохранений и честная оценка канала. Настройте это один раз — и мир проживёт месяцы без сюрпризов.
FAQ
Почему после правки PalWorldSettings.ini настройки не применяются?Проверьте, что вы редактируете файл в Pal/Saved/Config/WindowsServer/ или LinuxServer/, а не шаблон DefaultPalWorldSettings.ini в корне. Вся секция OptionSettings=(...) должна быть одной строкой без переносов и лишних пробелов, значения True/False — с заглавной буквы. После правки полностью остановите и запустите процесс заново.
Закладывайте минимум 16 ГБ, реально комфортно с 24–32 ГБ. Потребление растёт вместе с возрастом мира: чем больше построек и палов на базах, тем выше расход. Ограничение BaseCampMaxNumInGuild=3 и ежедневный плановый рестарт заметно сдерживают рост памяти.
Прямой проброс портов за CGNAT невозможен. Варианты: запросить у провайдера публичный IPv4 (часто платная опция), поднять VPN-сеть между участниками либо разместить мир на внешней машине с собственным адресом, где 8211/UDP открыт по умолчанию.