Перейти к содержимому

Аргументы запуска сервера Rust и ключи командной строки

Коротко: откройте вкладку Конфиг сервера, разверните Аргументы запуска (дополнительно) внизу, впишите свой аргумент отдельной строкой под разделителем (например -useNewNavmesh) и нажмите Сохранить. Он применится при следующем запуске сервера.

Некоторые опции сервера Rust вообще не консольные переменные. Это ключи командной строки, они читаются из строки, которой запускается сервер, и сколько ни правь server.cfg, включить такой ключ не получится. Редактор Аргументов запуска это место для них, и там же видно точную командную строку, которую Crucible Local Server использует для этого сервера.

Он находится внизу вкладки Конфиг, под Аргументы запуска (дополнительно), ниже редактора server.cfg. У каждого сервера он свой, так что один сервер может работать с ключом, а остальные нет.

Разницу стоит объяснить в двух предложениях, потому что именно ради неё этот редактор и существует.

  • Строка в server.cfg это консольная команда, которую игра выполняет при загрузке. Она может задать любой конвар и ничего больше. См. пример Rust server.cfg.
  • Командная строка умеет и то и другое. +some.convar value задаёт конвар до чтения cfg, а -someswitch задаёт флаг, который не конвар и аналога в cfg не имеет.

-useNewNavmesh это второй тип. Rust читает его прямо из командной строки, с которой запустился сервер, и его собственная консоль об этом говорит: выполните одну из команд rustnav без него, и сервер ответит “Restart the server with command line argument -useNewNavmesh”.

  1. Выберите сервер и нажмите Конфиг в ряду кнопок внизу простого вида.
  2. Разверните Аргументы запуска (дополнительно).
  3. Впишите свой аргумент отдельной строкой под разделителем, по одному аргументу на строку.
  4. Нажмите Сохранить или Ctrl+S.

Ключ это просто его имя, например -useNewNavmesh. У конвара после имени идёт значение, например +ai.move false. Если значение содержит пробел, возьмите его в двойные кавычки.

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

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

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

Единственная строка, которую можно задать самому, это +rcon.ip. RCON отвечает только на этом ПК; чтобы достучаться до него из инструмента RCON на другом ПК, добавьте +rcon.ip 0.0.0.0 под разделителем. См. инструменты RCON на другом ПК и никогда не пробрасывайте порт RCON.

Всё, что вы добавите под разделителем, ваше. Оно сохраняется ровно так, как вы набрали, с комментариями, и передаётся Rust после управляемых аргументов.

Редактор проверяет каждую строку по мере набора. Проблемы появляются под ним с номером строки, а кнопка Сохранить остаётся неактивной, пока ошибки не уйдут.

Сохранение блокируют:

  • Незакрытая кавычка.
  • Строка, которая не аргумент, то есть не начинается с - или +.
  • Конвар без значения, например +ai.move сам по себе.
  • Два аргумента в одной строке. Поставьте каждый на свою строку или возьмите в кавычки, если это часть значения.
  • Один и тот же аргумент дважды.
  • Строка, которая спорит с управляемым аргументом, и в этом случае называется настройка, которую нужно менять.

Ещё показывается предупреждение, которое сохранение не блокирует: конвар, заданный здесь, который задаёт и server.cfg. Командная строка побеждает, так что строка cfg игнорируется, и знание этого экономит вечер раздумий, почему настройка в форме ничего не делает.

Сохранённая неверная строка никогда не мешает серверу запуститься: приложение пропускает эту строку и запускает сервер с остальными.

Убрать свои аргументы очищает всё, что вы добавили, и не трогает управляемую командную строку. Кнопка серая, когда у сервера нет собственных аргументов.

Если вы раньше запускали сервер Rust вручную, у вас было две вещи: .bat файл, полный аргументов, и server.cfg, полный конваров. В Crucible Local Server есть и то и другое, в тех же двух формах. Этот редактор это строка из .bat, а редактор server.cfg прямо над ним это файл. Разница в том, что приложение само пишет управляемые части, так что смена порта остаётся сменой порта, а не правкой в двух местах, которые могут разойтись.