Mordhau Guides 1.0.0 уже доступна — руководства стабильны, а исправления всегда приветствуются.

Skip to content

Руководство по хостингу выделенного сервера

Ниже вы узнаете, как разместить выделенный сервер Mordhau на Windows и Linux.

Во многом это предполагает, что вы размещаете сервер самостоятельно: либо на компьютере в вашей домашней сети, либо на VPS или выделенном сервере, который вы арендуете.Если вы не хотите управлять чем-либо из этого, есть список выделенные игровые серверы, который настроит его для вас и предоставит вместо этого панель управления.

Хотя это руководство пытается быть настолько полным, насколько это возможно, Discord владельца сервера Mordhau по-прежнему остается лучшим местом для получения помощи по решению проблемы, специфичной для вашей установки.

Прежде чем начать

Вам понадобится:

  • Машина, которая остается включенной.Сервер, который отключается при закрытии игры, никому не нужен.
  • SteamCMD, инструмент командной строки Valve для загрузки файлов с сервера.
  • Возможность переадресации портов на вашем роутере, если вы размещаете хостинг из дома.

Вам не обязательно иметь Mordhau в используемой вами учетной записи.Выделенный сервер можно загрузить отдельно и установить через анонимный логин Steam.

TIP

Бинарный файл сервера — приложение Steam 629800.Это отличается от самой игры, номер которой составляет 629760. Загрузка неправильной игры — самая распространенная ошибка, которую здесь допускают.

Установка SteamCMD

::: кодовая группа

powershell
# Download steamcmd.zip from
# https://steamcdn-a.akamaihd.net/client/installer/steamcmd.zip
# and extract it somewhere sensible, for example C:\steamcmd
bash
sudo apt update
sudo apt install lib32gcc-s1
mkdir -p ~/steamcmd && cd ~/steamcmd
curl -sqL "https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz" | tar zxvf -

:::

WARNING

SteamCMD — 32-битная программа.При установке 64-битной версии Linux она не запустится, пока не появятся 32-битные библиотеки поддержки, для чего и нужен lib32gcc-s1.В старых дистрибутивах этот пакет называется lib32gcc1.

Загрузка сервера

::: кодовая группа

powershell
.\steamcmd.exe +force_install_dir C:\mordhau-server +login anonymous +app_update 629800 validate +quit
bash
./steamcmd.sh +force_install_dir ~/mordhau-server +login anonymous +app_update 629800 validate +quit

:::

Это несколько гигабайт, так что дайте ему время.Запустите ту же самую команду еще раз, когда захотите обновить сервер после установки патча.

WARNING

Поместите +force_install_dir перед +login.SteamCMD обрабатывает аргументы по порядку, и если вход в систему идет первым, он игнорирует ваш каталог установки и вместо этого загружает в свою собственную папку.

Первый запуск

Запустите сервер один раз без аргументов.Играть пока не получится — суть в том, что он записывает свои конфиги, а потом вы его останавливаете.

::: кодовая группа

powershell
cd C:\mordhau-server
.\MordhauServer.exe
bash
cd ~/mordhau-server
./MordhauServer.sh

:::

Дайте ему завершить запуск, затем выключите его.

Конфигурация

Конфигурационные файлы теперь находятся по адресу:

ПлатформаПуть
WindowsMordhau\Saved\Config\WindowsServer\
LinuxMordhau/Saved/Config/LinuxServer/

Тот, кто вас волнует, — это Game.ini.

DANGER

Редактируйте эти файлы только при остановленном сервере.Mordhau хранит свою конфигурацию в памяти и записывает ее обратно при выключении, поэтому все, что вы меняете во время работы, перезаписывается в тот момент, когда вы его закрываете.

Game.ini

ini
[/Script/Mordhau.MordhauGameSession]
ServerName=My Mordhau Server
MaxSlots=32
ServerPassword=
AdminPassword=changethis
BannedPlayers=()

[/Script/Mordhau.MordhauGameMode]
PlayerRespawnTime=5.000000
BallistaRespawnTime=30.000000
CatapultRespawnTime=30.000000
HorseRespawnTime=30.000000
DamageFactor=1.000000
TeamDamageFactor=0.500000
MapRotation=FFA_ThePit
MapRotation=TDM_Camp
MapRotation=SKM_Grad

[/Script/Mordhau.MordhauGameSession]

КлючЧто он делает
ServerNameИмя, отображаемое во внутриигровом браузере
MaxSlotsВместимость игрока
ServerPasswordОставьте пустым для общедоступного сервера
AdminPasswordЧто администраторы вводят в консоли с помощью adminlogin
AdminsОдин идентификатор Playfab.Повторите строку один раз для администратора
BannedPlayersУправляется командой ban, вы редко редактируете это вручную

[/Script/Mordhau.MordhauGameMode]

Время возрождения указано в секундах.DamageFactor масштабирует весь урон, где 1.0 является нормальным, а 2.0 удваивает его.TeamDamageFactor масштабирует дружественный огонь отдельно, поэтому значение 0.5 по умолчанию означает, что товарищи по команде получают половину урона друг от друга.

Ротация карты

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

Имена карт представляют собой префикс режима плюс имя карты:

ПрефиксРежим
FFA_Бесплатно для всех
TDM_Командный смертельный бой
SKM_Стычка

Карты акций: ThePit, Camp, Grad, Contraband, Tourney, MountainPeak и Taiga, что дает вам такие имена, как FFA_Grad илиTDM_MountainPeak.

Engine.ini

Необязательный.Параметр, к которому в конечном итоге прибегают большинство владельцев, — это тикрейт:

ini
[/Script/OnlineSubsystemUtils.IpNetDriver]
NetServerMaxTickRate=60

Чем выше, тем плавнее и требует больше ресурсов процессора.Не повышайте его, если не уверены, что машина сможет справиться с этой задачей — сервер, который не может поддерживать свою скорость передачи, чувствует себя значительно хуже, чем более низкий, но стабильный.

Запускаем сервер правильно

Теперь начнем с карты и портов:

::: кодовая группа

powershell
.\MordhauServer.exe Mordhau FFA_ThePit -Port=7777 -BeaconPort=15000 -QueryPort=27015 -log
bash
./MordhauServer.sh Mordhau FFA_ThePit -Port=7777 -BeaconPort=15000 -QueryPort=27015 -log

:::

Поместите это в файл .bat на Windows или в сценарий оболочки на Linux, чтобы не вводить его каждый раз заново.

ПараметрЦель
-PortИгровой трафик
-BeaconPortКак браузер серверов достигает вашего сервера
-QueryPortSteam запрос, как браузер считывает количество игроков
-MultiHome
-RconPortПрослушиватель RCON, см. Руководство RCON
-logПечать на консоль, а не только в файл

На Linux запустите его под screen или tmux — или лучше, напишите модуль systemd — чтобы он выдержал закрытие сеанса SSH:

bash
screen -dmS mordhau ./MordhauServer.sh Mordhau FFA_ThePit -Port=7777 -BeaconPort=15000 -QueryPort=27015 -log

Порты

ПортПротоколЗачем
7777UDPИгра
15000UDPМаяк
27015UDPЗапрос Steam
ваш порт RCONTCPУдаленная консоль, только если вы ее включите

Все три порта UDP должны быть открыты и перенаправлены, а не только игровой порт.Если маяк или порт запроса заблокирован, ваш сервер работает отлично и просто никогда не отображается в браузере — это самая распространенная вещь, о которой спрашивают люди.

Запуск более одного сервера на одном компьютере?Дайте каждому свой набор, разнесенный друг от друга:

bash
-Port=7779 -BeaconPort=15002 -QueryPort=27018

Проверяю, сработало

Найдите имя своего сервера во внутриигровом браузере.Если его там нет, проработайте это по порядку:

В браузере вообще ничего. Почти всегда это маяк или порт запроса.Проверьте правила переадресации и проверьте брандмауэр на самом компьютере — Windows Брандмауэр блокирует сервер при первом запуске, и мимо приглашения легко пройти.

Виден, но никто не может подключиться. Игровой порт.Те же проверки, порт 7777.

В локальной сети все в порядке, невидимо снаружи. Ваш маршрутизатор не осуществляет переадресацию, или ваш интернет-провайдер установил вас за CGNAT — в этом случае вы вообще не можете размещать хостинг через это соединение и вам понадобится VPS.

Изменения конфигурации ни к чему не привели. Вы редактировали файл во время работы сервера.Останови это, отредактируй, начни.

Сервер запускается и сразу закрывается. Прочтите журнал в Mordhau/Saved/Logs/.Обычной причиной является уже используемый порт.

Следующие шаги

  • Настройте КОН, чтобы вы могли модерировать сервер, не находясь в игре.
  • Взгляните на Список поставщиков, если управление этим самостоятельно не для вас развлечение.