Выделенный сервер KF2 по шагам: SteamCMD, WebAdmin, порты
После отказа Killing Floor 2 от listen-серверов умение поднять выделенный сервер стало необходимым для всех, кто хочет хостить. Это руководство (оригинал на испанском) охватывает публичный или частный сервер от установки до проброса портов и добавляет набор консольных команд для тренировочного сервера.
Шапка оригинального руководства.
Шаг 1: установка SteamCMD
Скачайте steamcmd.zip у Valve и распакуйте в папку, например C:\SteamCMD\. Запустите steamcmd.exe, дождитесь загрузки файлов и закройте программу.
Шаг 2: установка сервера KF2
Чтобы держать SteamCMD и сервер в одной папке, снова запустите steamcmd, введите login anonymous, затем app_update 232130. Файлы сервера окажутся рядом со SteamCMD.
Вариант: отдельные папки
Создайте папку под сервер, например C:\KF2Server\. В steamcmd выполните login anonymous, затем force_install_dir C:\KF2Server\, затем app_update 232130. Загрузка займёт время; по завершении закройте программу.
Шаг 3: проверка сервера
Запустите сервер один раз, чтобы создались недостающие файлы. Откройте KF2Server.bat (удобно сделать ярлык). Карта грузится долго. Успех выглядит так:
Log: KF2 VERSION 10XXLog: Initializing game engine completedLog: STEAM GAME SERVER UID: XXXXXXXXX
Строка с UID означает, что связь со Steam работает. Если её нет, обновите сервер или проверьте открытость порта 20560. Затем запустите игру, найдите сервер на вкладке LAN и подключитесь. Важно: смените пароль по умолчанию (123) в KF2Server.bat.
WebAdmin
Иллюстрация из раздела WebAdmin оригинала.
- Узнайте IPv4 командой
ipconfigв cmd, например192.168.6.66. - В
...\KFGame\Config\KFWeb.iniзаменитеbEnabled=falseнаbEnabled=true. - Смените пароль администратора в
KF2Server.bat, чтобы никто не хулиганил на сервере. - При работающем сервере откройте в браузере
http://<ваш IPv4>:8080/илиlocalhost:8080и войдите (логинadmin, пароль из .bat-файла).
Ручная настройка
Закройте сервер и отредактируйте ...\KFGame\Config\PCServer-KFGame.ini:
GameDifficulty: 0 Normal, 1 Hard, 2 Suicidal, 3 Hell on Earth.GamePassword: пароль для ограничения доступа.GameLength: 0 короткая, 1 средняя, 2 длинная.
Полезные консольные команды для тренировочного сервера
Включите читы, вызовите оглушённого ZED (SpawnZED Clot) и оставьте его живым: тогда волна не закончится, и можно спокойно экспериментировать. Войти админом можно из консоли командой AdminLogin пароль.
| Команда | Действие |
|---|---|
| EnableCheats | Нужна для остальных команд |
| ImRich, DoshMe # | Деньги |
| OpenTrader, OpenTraderMenu | Использовать торговца и открыть его меню |
| SpawnZEDLods Clot | Несколько ZED сразу |
| SpawnZED Clot | Один безобидный оглушённый ZED |
| SpawnAI Clot | Обычный ZED с ИИ |
| SpawnZedGroup x y z | Тип ZED x, y волн, z ZED в каждой |
| HealMe [#], ArmorMe [#] | Здоровье и броня |
| SpawnHumanPawn 0 1 | Добавить оглушённого игрока |
| KillBots, KillZeds | Убрать созданных игроков или всех ZED |
| Ghost, Walk | Прохождение сквозь стены вкл и выкл |
| God, Demigod | Бессмертие или выживание с 1 HP |
| Fly | Полёт |
| AllAmmo | Полный боезапас |
| ResetDoors | Сброс всех дверей |
| PlayersOnly | Заморозка всего, кроме игроков |
| ToggleZedsIgnoreMe | ZED с ИИ вас игнорируют |
| ToggleHUD, ShowHUD | Показать или скрыть HUD |
Вместо Clot подставьте Crawler, Gorefast, Stalker, Bloat, Siren, Husk, Scrake, Fleshpound, Clota (Clot), Clotu (Cyst) или Clots (Slasher).
Обновление сервера
После каждого патча повторите шаг 2, добавив в последнюю команду validate: app_update 232130 validate. SteamCMD проверит файлы и скачает обновление.
Открытие портов
Если никто не может подключиться, сначала обновите сервер, затем убедитесь, что антивирус и брандмауэр не блокируют порты (UDP и TCP):
- Игровой порт 7777
- Query-порт 27015
- Веб-админка 8080
- Порт Steam 20560
Часто порты блокирует провайдер. Автор советует попросить у провайдера включить DMZ для записанного IPv4: тогда откроются все порты этого адреса. Динамический IP может смениться после перезагрузки модема, тогда просьбу придётся повторить.
См. также выделенный сервер KF2 через SteamCMD и порты и NAT.
Вопросы и ответы
- Какие порты нужны выделенному серверу KF2?
- В руководстве указаны игровой порт 7777, query-порт 27015, веб-админка 8080 и порт Steam 20560.
- Как обновить сервер KF2 после патча?
- Запустите steamcmd, войдите анонимно, при отдельной папке задайте force_install_dir и выполните app_update 232130 validate.
- Что значат значения GameLength?
- 0 - короткая игра (4 волны и босс), 1 - средняя (7 и босс), 2 - длинная (10 и босс); в оригинале это 5/4, 8/7 и 11/10 волн.