RE:NODE

Руководства10 мин чтения

Сервер Conan Exiles: настройки, моды, purge

Настройка выделенного сервера Conan Exiles: ServerSettings.ini, Engine.ini и Game.ini, порты, админ и RCON, моды из Workshop через modlist.txt, purge и сохранения.

0 прочтений

Выделенный сервер Conan Exiles - это бесплатное приложение под Windows (приложение Steam 443030), настройки которого разнесены по трём файлам в ConanSandbox/Saved/Config/WindowsServer/: ServerSettings.ini для игрового процесса и администрирования, Engine.ini для имени сервера и пароля и Game.ini для лимита игроков и RCON. Сервер использует UDP 7777 и 7778 для игры и 27015 для Steam query, хранит весь мир в одном файле SQLite (game.db для Exiled Lands, dlc_siptah.db для Isle of Siptah) и загружает моды из Workshop в виде файлов .pak, перечисленных в ConanSandbox/Mods/modlist.txt. Права администратора дают AdminPassword и внутриигровая опция «make me admin». Для загруженного сервера рассчитывайте на 6-10 GB памяти. Остальная часть руководства - о каждом файле, о важных настройках, модах, purge и резервных копиях, которые сохраняют сервер живым.

Как работают серверы Conan Exiles#

В игру можно играть офлайн, в кооперативе, который хостит игрок, или на выделенном сервере. Выделенный сервер держит мир - постройки, трэллов, питомцев, кланы - запущенным, даже когда никого нет в сети, и именно это придаёт смысл разрушению построек, purge и рейдам. Факты, которые определяют настройку:

  • Исполняемый файл сервера есть только под Windows. Funcom поставляют ConanSandboxServer.exe. На Linux он работает под Wine или Proton; общий подход описан в статье Wine и Proton для серверов только под Windows.
  • Персонажи живут на сервере. Персонаж принадлежит базе данных сервера. Зайти на новый сервер - значит начать заново.
  • Мир - это один файл базы данных. game.db хранит всё: каждый элемент постройки, трэлла, предмет и персонажа. Поэтому его легко копировать, а повреждение катастрофично.
  • Две карты. Exiled Lands (основная игра) и Isle of Siptah (карта из DLC). Один сервер держит одну карту со своей базой данных.

Настройки можно править в файлах или изнутри игры через панель Server Settings администратора, которая записывает их обратно в ServerSettings.ini. Панель проще и избавляет от опечаток; к файлам обращаются, когда сервер не запускается или когда хочется увидеть все значения сразу.

Требования#

Память в Conan Exiles растёт с числом элементов построек и трэллов гораздо сильнее, чем с числом игроков. Сервер, где у каждого клана крепость и сотня трэллов, потребляет намного больше свежего сервера с тем же числом игроков.

СерверRAMCPUДиск
До 10 игроков, ванильный4-6 GB2 ядра40 GB
10-40 игроков, обжитой6-10 GB2-3 ядра50 GB
Тяжёлые моды (большие контентные паки)плюс 2-4 GB-плюс 10-20 GB

Тактовая частота важнее числа ядер: симуляцию ограничивает основной поток. Место на диске - это установка плюс моды плюс база данных и её копии; долгоживущий game.db может дорасти до сотен мегабайт. Прежде чем докупать что-либо, найдите ресурс, который упёрся в предел, - как это сделать, объясняется в статье CPU или RAM для игровых серверов.

Установка и первый запуск#

bash
$ steamcmd +@sSteamCmdForcePlatformType windows \    +force_install_dir /home/conan/server \    +login anonymous +app_update 443030 validate +quit

Запустите сервер один раз, чтобы он записал свои файлы конфигурации, дождитесь, пока он начнёт принимать игроков, затем штатно остановите. Типичная строка запуска:

code
ConanSandboxServer.exe -log -MaxPlayers=40 -Port=7777 -QueryPort=27015

Чтобы запустить Isle of Siptah вместо Exiled Lands, поставьте путь к карте первым в строке запуска:

code
ConanSandboxServer.exe /Game/DLC_EXT/DLC_Siptah/Maps/DLC_Isle_of_Siptah -log -MaxPlayers=40

Siptah использует собственный файл базы данных, так что переключение карт не затрагивает мир Exiled Lands. У хостера с панелью строка запуска собирается из полей на вкладке Startup; значения те же. Обновление и проверка установки разобраны в статье SteamCMD с объяснениями.

Три файла конфигурации#

Все три лежат в ConanSandbox/Saved/Config/WindowsServer/. Правьте их только при остановленном сервере: при выключении сервер может их перезаписать.

Engine.ini
[OnlineSubsystem]ServerName=Longship ExilesServerPassword=herring42[URL]Port=7777
Game.ini
[/Script/Engine.GameSession]MaxPlayers=40[RconPlugin]RconEnabled=1RconPassword=change-this-rcon-passRconPort=25575RconMaxKarma=60

ServerSettings.ini хранит почти всё остальное в одной секции:

ServerSettings.ini
[ServerSettings]AdminPassword=change-this-admin-passPVPEnabled=FalseIsBattlEyeEnabled=TrueMaxNudity=0ServerCommunity=0PlayerXPRateMultiplier=2.0HarvestAmountMultiplier=2.0ItemConvertionMultiplier=1.0ThrallConversionMultiplier=1.5ClanMaxSize=10DropEquipmentOnDeath=TrueEverybodyCanLootCorpse=FalseDisableBuildingAbandonment=False

Аргументы командной строки вроде -MaxPlayers переопределяют файлы. Если изменение не применяется, поищите в строке запуска аргумент, задающий то же значение.

ServerSettings.ini: важные настройки#

КлючЧто делает
AdminPasswordПароль для «make me admin» в игре
PVPEnabledВключает или выключает урон между игроками
CanDamagePlayerOwnedStructuresМогут ли игроки повреждать постройки
IsBattlEyeEnabledАнтичит; у клиентов должно совпадать
MaxNudity0 - нет, 1 - частичная, 2 - полная; потолок, который могут выбрать игроки
ServerCommunityМетка для браузера (purist, relaxed, hardcore, role-playing)
PlayerXPRateMultiplierПолучение опыта
HarvestAmountMultiplierРесурсы за удар
ItemConvertionMultiplierСкорость станков для крафта (меньше - быстрее)
ResourceRespawnSpeedMultiplierКак быстро восстанавливаются источники ресурсов
NPCRespawnMultiplierКак быстро возрождаются NPC
ThrallConversionMultiplierСкорость Wheel of Pain
PlayerDamageMultiplier, NPCDamageMultiplierНаносимый урон
PlayerHealthMultiplierЗдоровье игрока
DayCycleSpeedScaleСкорость цикла дня и ночи
DropEquipmentOnDeathВыпадает ли снаряжение
EverybodyCanLootCorpseМогут ли другие обыскать тело
ClanMaxSizeИгроков в клане
DisableBuildingAbandonmentTrue останавливает разрушение заброшенных построек

Обратите внимание на написание ItemConvertionMultiplier. В игре оно с ошибкой, и правильное английское написание ничего не делает. Это хорошо описывает, как Conan вообще относится к опечаткам: ключ с ошибкой игнорируется без предупреждения.

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

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

Окна PvP, рейды и purge#

На PvP-серверах RestrictPVPTime=True вместе с PVPTimeWeekdayStart, PVPTimeWeekdayEnd, PVPTimeWeekendStart и PVPTimeWeekendEnd ограничивает бои заданными часами. RestrictPVPBuildingDamageTime и соответствующие ключи начала и конца делают то же для рейдов на постройки. Время задаётся в четырёхзначном 24-часовом формате, например 1800 для шести вечера, и следует часам сервера - на хостинговых машинах это часто UTC, так что проверьте, прежде чем объявлять часы.

Окна рейдов - главный инструмент, который делает PvP терпимым для игроков с работой. Клан не может потерять базу, пока все его участники спят, а у сервера появляется предсказуемый пик вместо постоянного мелкого гриферства. DynamicBuildingDamage предлагает другой подход: урон по постройкам включается только на какое-то время после начала атаки; какие у него опции в вашей версии, смотрите во внутриигровой панели.

Purge отправляет волны NPC атаковать базу клана в зависимости от его активности. Им управляют ключи вроде EnablePurge, PurgeLevel (насколько сильны волны), PurgePeriodicity, MinPurgeOnlinePlayers (сколько участников клана должно быть в сети) и RestrictPurgeTime с окнами для будней и выходных. Систему purge с релиза переделывали не раз, и имена ключей и поведение менялись вместе с ней. По возможности настраивайте её через внутриигровую панель Server Settings, которая показывает только понятные вашей версии опции, а потом посмотрите, что она записала в ServerSettings.ini.

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

Порты и подключение#

ПортПротоколНазначение
7777UDPИгровой трафик
7778UDPВторой игровой порт (игровой порт + 1)
27015UDPSteam query, его использует браузер серверов
25575TCPRCON, если включён

Игра использует игровой порт и следующий за ним, так что откройте оба. Если сервер работает, но его нет в браузере, первый подозреваемый - query-порт; почему, объясняется в статье порты игровых серверов. Игроки также могут использовать Direct Connect с адресом и игровым портом - это быстрее браузера и показывает, действительно ли проблема со списком связана с сетью.

Администраторы и RCON#

Чтобы стать администратором в игре, откройте меню Settings, перейдите в Server Settings и воспользуйтесь опцией «make me admin» с AdminPassword; консольная команда MakeMeAdmin <password> делает то же самое. Администраторы могут открыть панель администратора, чтобы создавать предметы, телепортироваться, летать, смотреть владельцев построек и менять настройки сервера на лету. Всё это может делать каждый игрок, знающий пароль, так что делитесь им скупо и меняйте его, если кто-то уходит из команды администраторов.

RCON позволяет отправлять команды, не находясь в игре, - это полезно для объявлений по расписанию и для ботов администрирования. Включите его в Game.ini, как показано выше, открывайте порт RCON только для тех адресов, которым он нужен, и используйте надёжный пароль. Самые распространённые команды - listplayers и broadcast <message>; набор, поддерживаемый через RCON, меньше, чем у внутриигровой консоли. Как не дать ему стать самым простым путём на ваш сервер, объясняется в статье безопасный RCON.

Моды из Steam Workshop#

Моды Conan Exiles - это элементы Workshop, распространяемые как файлы .pak. Сервер загружает моды из ConanSandbox/Mods/ в порядке, заданном modlist.txt в той же папке, по одному имени файла на строку:

ConanSandbox/Mods/modlist.txt
Pippi.pakEEWA.pakExampleBuildingPack.pak

В ванильной конфигурации сервер сам не подписывается на элементы Workshop. Вы скачиваете каждый мод - через клиент Steam, в котором есть игра, или через SteamCMD с app id игры 440900 и workshop_download_item, - копируете .pak в ConanSandbox/Mods/ и добавляете его имя в modlist.txt. Шаг скачивания для игр с Workshop в целом разобран в статье моды из Steam Workshop на выделенных серверах.

bash
$ steamcmd +login your_steam_user \    +workshop_download_item 440900 880454836 +quit

Игрокам нужны те же моды тех же версий. Лаунчер игры при входе проверяет список модов сервера и предлагает подписаться на всё недостающее. Порядок важен: моды, меняющие одно и то же, переопределяют друг друга, и многие крупные моды указывают, где им место в списке, - обычно фреймворки и моды администрирования ближе к началу, контентные моды ниже. Общая идея разобрана в статье порядок загрузки модов.

Удаление мода с живого сервера удаляет всё, что он разместил, - элементы построек, предметы, трэллов - и может оставить дыры в базах. Сначала сделайте копию game.db и предупредите игроков. Каждое обновление игры может ломать моды, пока их авторы их не обновят, так что не позволяйте серверу с модами автоматически обновляться в день патча; порядок действий - в статье что делать, когда обновление мода всё сломало.

Сохранения и резервные копии#

Мир лежит в ConanSandbox/Saved/: game.db для Exiled Lands, dlc_siptah.db для Siptah. Сервер пишет в базу данных постоянно, по мере изменений, а не сбрасывает мир по таймеру, и при запуске держит рядом резервные копии базы.

  • Копируйте базу данных при остановленном сервере. Копирование базы SQLite во время записи может дать испорченную копию. Ночные остановка, копирование и запуск - надёжный порядок действий.
  • Храните копии в другом месте. Собственные копии игры лежат на том же диске. Почему это важно, объясняется в статье резервные копии, которые действительно восстанавливаются.
  • Делайте копию перед каждым обновлением и каждым изменением модов. Обновления уже меняли базу данных, а удаление мода без копии необратимо.
  • Восстанавливайте так: остановите сервер, замените game.db копией и запустите.
  • Вайпайте так: остановите сервер и уберите game.db в сторону. При следующем запуске сервер создаст свежий мир; персонажи, постройки и трэллы исчезнут.

В RE:NODE ConanSandbox/Saved доступна в файловом менеджере и по SFTP, слоты резервных копий есть в каждом игровом тарифе и восстанавливаются одной кнопкой, а вкладка Schedules может выполнять ночную последовательность «остановка - backup - запуск» как упорядоченные задачи. Отдельной строки в каталоге у Conan Exiles нет; что предлагается, смотрите в списке игровых серверов.

Если что-то не работает#

Настройки откатываются после перезапуска. Вы правили файлы при работающем сервере, или их переопределяет аргумент в строке запуска.

Настройка ни на что не влияет. Сверьте написание с тем, как его пишет сама игра, включая ItemConvertionMultiplier.

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

После обновления сервер падает при запуске. Мод, который не обновили. Убирайте моды из modlist.txt по одному, пока сервер не запустится.

Сервера нет в браузере серверов. Закрыт query-порт, или браузер медленный. Проверьте через Direct Connect.

Окна рейдов открываются не в то время. Часы сервера в UTC.

FAQ#

Сколько игроков вмещает сервер Conan Exiles?

Лимит задаёт MaxPlayers, на публичных серверах обычно 40. Больше возможно при соответствующих памяти и CPU, но справится ли сервер, решают число построек и трэллов.

Нужно ли игрокам скачивать моды вручную?

Обычно нет. Лаунчер при входе сравнивает списки модов и предлагает игрокам подписаться на недостающее. Им нужны те же версии, что на сервере.

Можно ли держать Isle of Siptah на выделенном сервере?

Да. Поставьте путь к карте Siptah первым в строке запуска. Siptah использует собственную базу данных, отдельную от Exiled Lands.

Как сделать вайп сервера Conan Exiles?

Остановите его и уберите game.db (или dlc_siptah.db) из ConanSandbox/Saved. Следующий запуск создаст свежий мир.

Можно ли перенести мир из одиночной игры на сервер?

Миры одиночной игры и кооператива используют тот же формат базы данных, так что game.db можно скопировать в ConanSandbox/Saved сервера. Персонажи внутри него переедут вместе с ним. Сначала сделайте копию собственной базы данных сервера.


Комментарии

Полностью анонимно: без аккаунта, без почты, без cookie. Мы храним имя, которое вы ввели, текст и время - больше ничего. Количество ссылок ограничено, разметка не отображается.

0/2000