Killing Floor 2

Killing Floor 2

444 arvostelua
Создание и настройка сервера
Tekijältä Indigo
Создание и настройка собственного сервера
   
Palkinto
Lisää suosikkeihin
Lisätty suosikkeihin
Poista suosikeista
Скачивание дистрибутива
SteamCMD Update Tool Позволит скачивать и обновлять файлы необходымые для работы сервера.
  1. Скачать SteamCMD Update Tool .
  2. Извлечь файл из архива.
    Примечание: Извлекать файл необходимо в отдельную папку не содержащую клиент Steam'а или HLDSUpdateTool
  3. Запустить SteamCmd. Программа автоматически скачает файли необходимые ей для работы.
  4. Войдите в сеть введя:
    login anonymous
    Примечание: Входите только под anonymous, и никогда не пытайтесь входить под своим логином

Скачивание Killing Floor 2 Server
Данный шаг необходимо повторять каждый раз, когда игра получает обновление.
  1. Запустить SteamCmd и войти в сеть.
  2. Задайте папку в которую будет установлен сервер:
    • Полный путь:
      force_install_dir c:\KF2Server\
    • На одну папку "выше" SteamCmd:
      force_install_dir ..\KF2Server\
    • В папку с SteamCmd(лучший вариант):
      force_install_dir .\KF2Server\
  3. Установка/обновление сервера:
    • Установка сервера с "0":
      app_update 232130 validate
    • Проверка обновлений:
      app_update 232130
    • Обновление до бета версии:
      app_update 232130 -beta "branch name"
      Где "branch name" название текущего бета патча.
  4. Для выхода наберите:
    exit

Автоматизация процесса
Есть 2 способа автоматизировать процесс:
  1. Запустить SteamCmd с параметрами:
    SteamCmd +login anonymous +force_install_dir ./KF2Server +app_update 232130 +exit
  2. Написать скрипт и подключить его в качестве параметра запуска, для этого надо:
    • В папке с SteamCmd создать текстовый документ с названием KF2Server.txt.
    • Записать в файл следующие:
      login anonymous force_install_dir ./KF2Server app_update 232130 exit
    • Запустить SteamCmd с параметром:
      SteamCmd +runscript KF2Server.txt
Linux
  1. Установить steamcmd используя команду:
    sudo apt install steamcmd
  2. Создать скрипт со следующим содержанием:
    login anonymous force_install_dir /ПУТЬ/ДО/СЕРВЕРА app_update 232130 validate quit
  3. Запустиь скрипт следующей командой:
    steamcmd +runscript /ПУТЬ/ДО/СКРИПТА.txt

Запуск сервера производится следующей командой:
./Binaries/Win64/KFGameSteamServer.bin.x86_64 kf-bioticslab

Все последующие настройки, не зависимы от ОС.
Требования для запуска
UE3Redist.exe
У сервера есть необходимое ПО для запуска и корректной работы, если есть проблемы с корректной работой, прежде всего стоит переустановить его, лежит оно в .\Binaries\Redist

Порты
Для работы необходимо открыть следующие порты в вашем роутере/брэндмауере

Порт
№ порта
Протокол
Что выполняет
Игровой порт
7777
UDP
Главный порт игры, все соединение отправляются на него
Порт запросов
27015
UDP
Порт используется для связи с Steam Master Server
Web Admin
8080
TCP
Порт для использования Web Admin
Steam порт
20560
UDP
NTP
123
UDP
Только для определения режима Weekly Outbreak

Так-же если вы используете роутер, вам может потребоваться активировать функции DMZ для вашего ПК, чтобы не только пользователи из локальной сети могли к вам подключится.
Инструкцию по открытию DMZ для вашего роутера ищите в интернете(роутеров много, и почти у каждого свой интерфейс).
Для того, чтобы узнать IP на который открывать DMZ откройте командную строку(Win+R -> CMD), в открывшемся окне введите:
ipconfig
В строчке IPv4-адрес содержится ваш IP-адресс на который необходимо открыть DMZ.
Запуск и параметры
Запуск сервера
Для запуска сервера используйте файл KF2Server.bat, который скачался вместе с сервером, или напишите собстевный скрипт для запуска сервера, пример:
start .\Binaries\win64\kfserver kf-bioticslab

Параметры запуска
Для запуска можно задать параметры, примеры использования:
start .\Binaries\win64\kfserver kf-MapExmp?optionhere=x?option2here=x
Или
start .\Binaries\win64\kfserver kf-MapExmp?-switchhere -switch2here

Параметры
  • Карты:
    • kf-BioticsLab
    • kf-BurningParis
    • kf-Catacombs
    • kf-EvacuationPoint
    • kf-Manor
    • kf-Outpost
  • Режимы:
    • Game=KFGameContent.KFGameInfo_Survival
    • Game=KFGameContent.KFGameInfo_VersusSurvival

Опции
Опции
Что выполняет
AdminName=
Имя администратора
AdminPassword=
Пароль для входа администратора
MaxPlayers=
Максимум игроков
Difficulty=
Сложность, 0 = Normal, 1 = Hard, 2 = Suicidal, 3 = Hell on Earth

Switches
Что выполняет
Port=
Задает игровой порт.
QueryPort=
Задает порт для запросов для связи со Steam'ом
WebAdminPort=
Задает порт для web администрирования
Multihome=
Если машина может именть несколько IP-адресов, эта команда привязывает сервер к одному конкретному
PREFERREDPROCESSOR=
Привязывает сервер к одному потоку/ядру
ConfigSubDir=
Создает и читает настройки сервера из указаного файла
Игровые Режимы
По дефолту, игра в режиме кооператива на 6 человек.

PvP
Пример запуска режима PvP на 12 человек:
..\Binaries\Win64\KFGame.exe Server KF-BurningParis?Game=KFGameContent.KFGameInfo_VersusSurvival?maxplayers=12
Для смены режима игры через WA необхожимо выбрать "VersusSurvival" в "Change Map" вкладке.

PvP возможен на следующих картах:
  • BurningParis
  • BioticsLab
  • Prison
  • VoltorManor
  • Farmhouse

Weekly Outbreaks
Пример запуска Weekly Outbreaks:
..\Binaries\Win64\KFGame.exe Server KF-BurningParis?Game=KFGameContent.KFGameInfo_WeeklySurvival
Для смены режима игры через WA необхожимо выбрать "Weekly" во вкладке "Change Map".
Настройка
Подробные настройки сервера
Файлы для настройки сервера лежат \KFGame\Config\

PCServer-KFGame.ini
[Engine.GameInfo]
bAdminCanPause
Возможность ставить паузу админист ратором
MaxPlayers
Максимаольное кол-во игроков
GameDifficulty
Сложность, 0=Normal, 1=Hard, 2=Suicidal, 3=HoE

[Engine.AccessControl]
AdminPassword
Пароль для входа админимстратора
GamePassword
Пароль для входа в игру

[Engine.GameReplicationInfo]
ServerName
Имя сервера
AdminContact
Способ связи с администрацией

[KFGame.KFGameInfo]
GameLength
Длина игры, 0 = 4 раунда, 1 = 7 раундов, 2 = 10 раундов
MinNetPlayers
Минимальное кол-во игроков для начала
GameMapCycles
Список карт в очереди
MapVoteDuration
Время голосования за карту

KFWeb.ini
[IpDrv.WebServer]
ListenPort
Порт для доступа администратора
bEnabled
Включить или отлючить доступ к Web-администрированию

Для доступа потребует ввести в любом браузере IP-адресс вашего сервера вместе с портом который вы задали для доступа, пример:
192.168.10.2:8080
На открывшейся страничке вам будет необходимо ввести имя и пароль админимстратора, и вы получитье все необходимые инструменты для управления сервером
Web Admin
Экран входа
Для корректного входа, необходимо ввесте заранее заданые имя и пароль администратора.






Управление сервером

В правом верхнем углу предсавлены данные на текущий момент игры. Внизу Chat Console, при ее помощи можно отслеживать чат в игре

  • Server info - Данные сервера, представленны на скриншоте выше.
  • Change Map - смена карты и режима игры, добавление мутаторов и возможность смены порта для доступа к web admin.
  • Players - Информация по всем подключившемся к вашему серверу игрокам с возможностью производить на ними действия:
    • Kick - Выкинуть игрока.
    • Session ban - Забанить на время работы сервера.
    • Ban IP - Забанить игрока по IP-адрессу.
    • Ban Unique ID - Забанить игрока по уникальному ID.
    • Mute Voce - Заглушить игрока.
    • Unmute Voce - Снять заглушку с игрока.
  • Password - Смена пароля доуступа к сервера, и достуа к администрированию сервера.
  • Session bans - Список банов на время жизни сервера.
  • Banned IDS - Забаненые ID.
  • IP Masks - Действия над IP-маской:
    • Allow- Разрешить входить на сервер только данной IP-маске.
    • Deny - Запретить входить на сервер только данной IP-маске.
  • General -Различная информация сервера:
    • Server information - Имя сервера.
    • Connection - Максимально кол-во игроков и впемя АФК.
    • Cheat Detection - Защита от читов.
    • Game - Сложность и длинна игры.
    • Administration - Обьявлять когда админ заходит, возможность ставить игру на паузу.
    • Map voting - Голосование за карту.
    • Kick Voting - Голосование за изганание игрока.
    • Chat - Возможность использования чата игроками.
  • Gametypes - Режим игры, настройки различного времени ожидания.
  • Map Cycles - Цикл карт, выбор и задания цикла карт
  • Server Actors - Список мутаторов сервера.
  • Welcome Screen - Окно приветсвия сервера, с сообщением, изображением и ссылкой сервера.
  • Managment Console - Консоль.
  • Webadmin Settings - Настройки Web admin
  • Log Out - Выход

Несколько администраторов
В файле .\KFGame\Config\KFWebAdmin.ini под категорией [WebAdmin.WebAdmin] добавить:
AuthenticationClass=WebAdmin.MultiWebAdminAuth
Теперь необходимо запустить сервер, для генерации MultiAdmin.ini, после этого станет возможно добовлять администраторов через Web admin, и вречную добовляя необходимую информацию в файл под категорию [Admin MultiAdminData]:
DisplayName= "Имя админа" Password= "123" Order= "DenyAllow" bEnabled= "True"
Добавление сторонних карт
Готовые кастомные карты можно найти на офф.форуме[forums.tripwireinteractive.com] или на GameBanana[kf2.gamebanana.com], после скачивания карты нужно закинуть в .\KFGame\BrewedPC\Maps.
Следующим шагом добавляем перенаправления для скачивания карт клиентов сервера, для этого в файле .\KFGame\ConfigPCServer-KFEngine.ini под категорию [IpDrv.HTTPDownload] допишим следующее:
RedirectToURL = http://kf2.tripwirecdn.com/
Где RedirectToURL принимает значения сервера, хранящего файлы, в примере выше сервер TWI который хранит большенство готовых кастомных карт.
Список нескольких серверов:

Отображение карт в Web admin
Для отображения карт в Web admin необходимо в файл добавить .\KFGame\Config\PCServer-KFGame.ini следующие:
[KF-Exmpl KFMapSummary] MapName = KF-Exmpl ScreenshotPathName = UI_MapPreview_TEX.UI_MapPreview_Placeholder
Где KF-Exmpl название карты.

Отображение карт при голосовании в конце раунда
Для отображения карт необходимо в файле .\KFGame\Config\PCServer-KFGame.ini под категорией [KFGame.KFGameInfo] найти строчку:
GameMapCycles=(Maps=("KF-BurningParis","KF-Bioticslab","KF-Outpost","KF-VolterManor","KF-Catacombs","KF-EvacuationPoint"))
И после последней карты дописать нужное вам название.
Настройка Steam Workshop для сервера
Настройка сервера для скачивания файлов через Steam Workshop.
  1. Убедитесь что сервер не запущен. В противном случае настройка Workshop будет переписана при перезапуске сервера.
  2. В файле PCServer-KFEngine.ini в разделе [IpDrv.TcpNetDriver] добавить строчку
    DownloadManagers=OnlineSubsystemSteamworks.SteamWorkshopDownload
  3. В файл PCServer-KFEngine.ini добавте новый раздел
    [OnlineSubsystemSteamworks.KFWorkshopSteamworks]
  4. Для каждого предмета который должен быть скачан через Workshop вы должны добавть строчку:
    ServerSubscribedWorkshopItems=<number>
Пример записи карт из конкурса Grindhouse Contest Maps
[OnlineSubsystemSteamworks.KFWorkshopSteamworks] ServerSubscribedWorkshopItems=605633924 ServerSubscribedWorkshopItems=605551918 ServerSubscribedWorkshopItems=605549089 ServerSubscribedWorkshopItems=605532351
Настройка приветственного экрана
  1. Убедитесь что сервер не запущен.
  2. В файле PCServer-KFGame.ini найдите:
    • BannerLink - изображение должно быть в формате PNG >8bit
    • ServerMOTD - Сообщение отображаемое под изображением, используйте "\n" для разрыва строки.
    • WebsiteLink - Ссылка на ваш сайт
  3. Сохраните изминения и запустите сервер
Добавление мутаторов
Мутатор — модификация игры, которая лишь частично изменяет игру. Согласно одному из подходов, «полноценные» моды нельзя совмещать (в игре одновременно может быть активно не более одного мода), в то время как в одной игре может быть одновременно включено несколько мутаторов.

Для установки и работы мутаторов небходимо:
  1. Полложить файл с расширением *.u в папку .\KFGame\BrewedPC
  2. Положить файл с расширением *.ini в папку где хранятся ваши настройки сервера(по умолчанию .\KFGame\Config)
  3. Добавить название мутатора в Server Actors, в WebAdmine
    • Либо добавить название мутатора в командную строку запуска

Найти и скачать мутаторы можно с офф.форума(темы с префиксом [Mutator]):
Server Takeover
Что это?
Это функция позволяющая задать настойки игры такие как: карта, длительность, режим, приватность и сложность и подстроить под эти настройки ближайший не занятый к вам сервер. Важно заметить, что сменятся только параметры игры, все пароли админов и прочее останутся не затронутыми.

Как это выключить
Для деактивции этой функции поменяйте параметр в файле KFEngine.ini:
[Engine.GameEngine] bUsedForTakeover=FALSE
Консольные команды
Список команд позволяющих управлять сервером, непосредственно, через консоль, во время игры:
adminlogin password - Войти как администратор, используя пароль. adminlogout - Выйти как администратор. open KF-mapname.rom - Изменить текущую карту на KF-mapname.rom pause - Поставить игру на паузу. Kick - Выгнать игрока из игры. KickBan - Выгнать и забанить игрока.

Список команд которые работали ранее, но сейчас игра их не распознает:
admin adminsay message - Отобразить сообщение в центре экрана каждого игрока. admin map KF-mapname.rom - Изменить текущую карту на KF-mapname.rom admin Switch KF-mapname.rom - Изменить текущую карту на KF-mapname.rom admin RestartMap - Перезапустить текущую карту. admin NextMap - Перейти к следующей карте. admin PlayerList - Сохранить текущих игроков в KillingFloor.log.
Linux Server Manager
Написаное ниже, кастомная настройка и установка для UNIX систем с сайта: https://gameservermanagers.com/lgsm/kf2server/
Приведенное ниже запускать на свой страх и риск.

Рекомендуемый дистрибутивы и необходимые пакеты:
  • Ubuntu 14.04+
    mailutils postfix curl wget file bzip2 gzip unzip bsdmainutils python util-linux ca-certificates binutils bc tmux lib32gcc1 libstdc++6 libstdc++6:i386
  • Debian 8+
    mailutils postfix curl wget file bzip2 gzip unzip bsdmainutils python util-linux ca-certificates binutils bc tmux lib32gcc1 libstdc++6 libstdc++6:i386
  • Fedora 19+
    mailx postfix curl wget file bzip2 gzip unzip python binutils bc tmux glibc.i686 libstdc++ libstdc++.i686
  • CentOS 7+
    mailx postfix curl wget bzip2 gzip unzip python binutils bc tmux glibc.i686 libstdc++ libstdc++.i686

Установка
  1. Создать пользователя и залогиниться за него
    # adduser kf2server # passwd kf2server # su - kf2server
  2. Скачать и запустить скрипт
    # wget -N --no-check-certificate https://gameservermanagers.com/dl/linuxgsm.sh && chmod +x linuxgsm.sh && bash linuxgsm.sh kf2server
  3. Запустить установку
    # ./kf2server install

Список команд
Список команд можно просмотреть через:
# ./kf2server
    Работа сервера
  • Запуск сервера:
    # ./kf2server start
  • Остановка сервера:
    # ./kf2server stop
  • Перезапуск сервера:
    # ./kf2server restart
  • Консоль
    Позволяет войти в консоль и вводить команды:
    # ./kf2server console
    Для выхода нажмите “CTRL+b”.
    Нажатие “CTRL+c” "убьет" сервер.
Обновление сервера
  • Обновить и автоматически перезапустить сервер:
    # ./kf2server update
  • Обновить SteamCMD update:
    ./kf2server force-update
  • Проверка кэша:
    # ./kf2server validate
Дебаг
  • Вытащить пароли, порты и прочие настройки:
    # ./kf2server details
  • Дебаг, поможет в траблшуте при любых проблемах:
    # ./kf2server debug
  • Расположение логов
    /home/kf2server/logs
  • Создать бекап
    # ./kf2server backup
  • Монитор за сервером, проверяет работу сервера и при необходимости шлет алерты:
    # ./kf2server monitor
ServerApp
Приложение:
Позволяет провести простую установку, настройку сервера, а так же позволяет запускать и останваливать работу сервера на ОС семейства Windows.
Сканирование приложение VirusTotal [www.virustotal.com]

Приложение не обновлялось пару лет и писалось на колене для личных нужд, поэтому возможны баги и прочее.

Запускать приложение необходимо из директории с SteamCMD.exe


Параметры запуска:
"-console" - запустить приложение с консолью "-start" - автоматический старт сервера "-firststart" - установка сервера при запуске

Консольные команды:
Server.Start - старт сервера Server.Stop - остановка ервера Server.Update - обновление сервера Server.Install - установка сервера Server.FirstLaunch - Эмитировать первый запуск сервера Update.Info - Загрузить информацию из .ini файлов Save.Info - Сохранить информацию All.Active - Задать все кнопки в активное положение All.Inactive - Задать все кнопки в неактивное положение DownloadSteamCMD- Скачать SteamCMD.exe не работает Exit - Выход

Установка
  • Первый способ:
    Скачать приложение и SteamCMD.exe, и поместить их в одну директорию, запустить приложение, перейти во вкладку "Install/Update" выбрать "Validate" в чекбоксе и нажать кнопку Update, после чего ждать пока все скачатся и установится само.
  • Второй способ:
    Скачать приложение и SteamCMD.exe, и поместить их в одну директорию, запустить приложение с параметром -firststart, после чего ждать
  • Третий способ:
    Скачать приложение и SteamCMD.exe, и поместить их в одну директорию, запустить приложение с параметром -console, после чего, во вкладке "Install/Update" вбивтаь команды по очереди:
    Server.Install Server.FirstLaunch
Примечания
Для входа на сервер можно использовать игровой сервер браузер, ваш сервер находится во вкладке LAN.
Либо можно использовать консоль и ввести в ней:
open 127.0.0.1



Видео гайд по созданию сервера: http://steamcommunity.com/sharedfiles/filedetails/?id=631876358
305 kommenttia
Vasiliy_ZEN 22.5. klo 15.55 
У меня тоже не хочет делать сервер глобальным, но это все из-за роутера, так как в него не войти.
Но можно играть с друзьями и через локальный сервер, по Hamachi, только сегодня пробовал - всё работает.
Fishka 19.5. klo 9.45 
Помогите пожалуйста. Я не могу сделать сервер глобальным, только локальным. Открыл порты и в роутере и в брандмауэре, все равно не хочет
винни потух 18.5. klo 13.27 
А локально можно как то создать?
Ha4inka 12.10.2023 klo 5.04 
Ребзя,ищу темейтов для этой прекрасной игры,кому интересно добавляйтесь поиграем вместе
EssentukiTLT 3.10.2023 klo 7.57 
Здравствуйте. Создать сервер исключительно для еженедельных вспышек.Каким образом это настроить? На данный момент при смене карты меняется и режимы, выживание, бесконечный режим.
Anton_Eew 11.6.2023 klo 17.46 
Илюха Шпатель, можно через параметры DCHP в роутере закрепить определённый локальный IP за любым узлом сети =)
И во времени аренды поставить что-то типа "вечно".
Spike Rus 28.4.2023 klo 16.16 
Приветствую. Может кто подскажет как запустить на сервере режим задача.
Proximo 8.1.2022 klo 3.52 
А не проще прописать статический адрес на самом хосте, где располагается сервер KF2...?
Мистер Зойдберг 7.1.2022 klo 0.33 
Короч опять столкнулся с проблемой того, что сервер видно только в LAN. У меня проблема в том, что IPv4 постоянно меняется (видимо, из-за количества ранее подключенных адресов и из-за времени аренды адреса). Ранее порты в роутере были проброшены на один адрес (192.168.0.3), а щас он изменился (стал 192.168.0.7). В роутере откорректировал адрес на портах и всё пошло. (оставил себе напоминалку, т.к. постоянно забываю в чём беда).
Mr.Daren 8.7.2021 klo 11.50 
Всё работает, всё отлично, большое спасибо, но только карты с мастерской...как бы добавились, но лишь 3, как это исправить? В консоли пишет именно на те, что не видит: Checking item, а потом Item state is 4.