Подробный гайд по установке и настройке выделенного сервера Painkiller
Важно:
- Информация относится к оригинальному Painkiller (2004) и Painkiller: Black Edition. Для Painkiller: Hell & Damnation используются другие инструменты.
Системные требования сервера
| Компонент | Минимальные | Рекомендуемые |
|---|---|---|
| ОС | Windows 98/ME/2000/XP, Linux | Windows XP+, Linux (Debian 12/Ubuntu 22.04) |
| Процессор | 1.2 ГГц | 2.4 ГГц+ |
| ОЗУ | 384 МБ | 512 МБ+ |
| Место на диске | 2.6 ГБ | 3 ГБ+ |
| Сеть | Порты TCP/UDP 3455 | Стабильное соединение |
Установка на Windows
Шаг 1: Подготовка файлов
- Установите Painkiller: Black Edition (через Steam/GOG)
- Скопируйте папку игры в отдельную директорию для сервера, например:
C:\PainkillerServer\ - Убедитесь, что в папке
Bin\присутствует файлPainkiller.exe
Шаг 2: Настройка config.ini
Откройте файл Bin\config.ini и настройте базовые параметры:
; === Сетевые настройки ===
Cfg.ServerPort = 3455
Cfg.ServerPassword = "" ; Пароль для подключения (оставьте пустым для открытого сервера)
Cfg.RconPassword = "ваш_сложный_пароль" ; Пароль для администрирования через RCON
; === Игровые настройки ===
Cfg.MaxPlayers = 16 ; Максимум игроков
Cfg.FragLimit = 30 ; Лимит фрагов
Cfg.TimeLimit = 20 ; Лимит времени (минуты)
Cfg.GameMode = "ffa" ; ffa/tdm/ctf/lms/duel
; === Настройки карт ===
Cfg.ServerMaps = "DM_Sacred;DM_Temple;DM_Beach"
Cfg.ServerMapsFFA = "DM_Sacred;DM_Temple;DM_Beach"
Cfg.ServerMapsTDM = "TDM_Factory;TDM_Asylum"
; === Дополнительные параметры ===
Cfg.NoWarmup = false ; false = включить Warmup
Cfg.UserGameMode = true ; Разрешить игрокам голосовать за режим
Cfg.TeamDamage = false ; Урон по своим
Cfg.WeaponsStay = true ; Оружие остаётся после подбора
Cfg.Powerups = true ; Включить бонусы
Шаг 3: Запуск сервера
Создайте ярлык или BAT-файл со следующими параметрами запуска:
Painkiller.exe -dedicated +map DM_Sacred +port 3455 -cfg config.ini
Основные параметры командной строки:
| Параметр | Описание |
|---|---|
-dedicated |
Запуск в режиме выделенного сервера |
+map <name> |
Загрузить указанную карту при старте |
+port <number> |
Указать порт (по умолчанию 3455) |
-cfg <file> |
Использовать альтернативный конфиг |
-lscripts <file> |
Подключить модифицированный LScripts.pak (для PK++) |
Установка на Linux
Шаг 1: Подготовка окружения
# Для 64-битных систем включите поддержку 32-битных библиотек
sudo dpkg --add-architecture i386
sudo apt update
sudo apt install libstdc++5:i386 lib32z1
Шаг 2: Установка сервера
- Скачайте официальный Linux-сервер версии 1.64 с патчем OpenSpy
2. Распакуйте архив:
tar -xzf pkserver_linux_1.64_openspy_v1.2.tar.gz -C /opt/painkiller-server
cd /opt/painkiller-server
Шаг 3: Настройка и запуск
# Пример запуска с параметрами
./pkserver +interface 192.168.0.106 +private +port 3456 +map DM_Sacred -cfg conf12.ini -lscripts PKPlus12.pak
Совет:
- Для работы в сети после закрытия GameSpy сервер автоматически использует OpenSpy (встроен в бинарник).
Ключевые консольные команды администратора
Подключитесь к серверу и используйте консоль (~) или RCON:
Управление игроками
kick <имя> ; Кикнуть игрока
bankick <имя> ; Кикнуть + забанить
kickid <clientID> ; Кик по ID
addbot ; Добавить бота
kickallbots ; Убрать всех ботов
Управление матчем
gamemode <ffa/tdm/ctf/lms/duel> ; Сменить режим
map <название_карты> ; Сменить карту
reloadmap ; Перезагрузить текущую карту
restartmap ; Рестарт карты
fraglimit <число> ; Установить лимит фрагов
timelimit <минуты> ; Установить лимит времени
Голосования и настройки
/callvote gamemode lms ; Предложить голосование за режим
/callvote map dm_sacred ; Предложить карту
/callvote rocketfix 0 ; Отключить фикс ракетных прыжков (для трюков)
/callvote warmupdamage 0 ; Отключить урон в разминке
Отладка и мониторинг
players ; Список игроков с их clientID
serverinfo ; Информация о сервере
statsall ; Статистика по оружию всех игроков
showfps 1 ; Показать FPS на клиенте
speedmeter 1 ; Включить спидометр (полезно для трюковых карт)
Полный список команд доступен в гайде Steam Community.
Подключение клиентов и обход GameSpy
Поскольку сервисы GameSpy отключены, для отображения сервера в мастер-сервере:
Вариант 1: Патч OpenSpy (рекомендуется)
- Откройте
Bin\Engine.dllв HEX-редакторе (например, HxD) - Замените все вхождения
gamespy.comнаopenspy.net - Повторите для
Bin\Editor\Engine.dll
Вариант 2: Прямое подключение
Игроки могут подключиться напрямую через консоль:
connect 192.168.1.100:3455
Оптимизация и стабильность
Исправление для двухъядерных процессоров
На современных CPU игра может работать с переменной скоростью.
Решение:
- Используйте патч Randomguy7's Fix Compilation, который включает dual-core fix
- Или установите PK++ 1.3+, где проблема уже решена
Настройка для трюковых карт (trickjump)
Для карт типа DM_JumpMap_01:
Cfg.NoWarmup = false ; Включить Warmup (режим без лимита времени)
Cfg.UserGameMode = true ; Разрешить смену режима
Запускайте карты в режиме Last Man Standing с Warmup, так как он даёт всё оружие и не имеет таймера.
Улучшение производительности
; В config.ini
Cfg.ClipPlane = 999999 ; Увеличить дальность прорисовки
Cfg.Precache = 0 ; Отключить предзагрузку (экономит ОЗУ)
После изменения
config.iniустановите файлу атрибут Только для чтения, чтобы игра не перезаписала настройки.
Безопасность и администрирование
- Всегда устанавливайте сложный
RconPassword— через RCON можно выполнять любые команды - Ограничьте доступ к порту 3455 фаерволом, если сервер не публичный
- Используйте
impureclientwarning 1для отслеживания модифицированных клиентов - Регулярно делайте бэкапы
config.iniиLScripts.pak
Дополнительные модификации
| Мод | Описание | Ссылка |
|---|---|---|
| PK++ | Официальный турнирный мод с балансом, статистикой, античитом | pkzone.org |
| PK Extra Plus | Продолжение PK++ с новыми функциями и картами | ModDB - moddb.com/mods/painkiller-pk-archive/downloads/pk-extra-plus |
| PiTaBOT | Scorebot для логгирования матчей и статистики | SourceForge - pitabot.sourceforge.net |
Частые проблемы
| Проблема | Решение |
|---|---|
| Сервер не виден в списке | Примените патч OpenSpy к Engine.dll |
| Игра тормозит на двухъядерном CPU | Установите dual-core fix или PK++ |
| Не сохраняются настройки | Установите config.ini в режим «Только для чтения» |
| Ошибка «CD required» при запуске | Используйте No-CD патч или цифровую версию (GOG/Steam) |
| Невозможно подключиться | Проверьте, открыт ли порт 3455 (TCP/UDP) в фаерволе |
Совет:
- Для тестирования настроек сначала запустите сервер в локальной сети, подключитесь с клиента и проверьте все функции перед публикацией в интернет.
Если вы планируете поддерживать активное комьюнити, рассмотрите интеграцию с PK++ — это значительно улучшит баланс, добавит статистику и защитит от читеров.
Удачи в настройке, и пусть ваши сервера всегда будут полны игроков!