Перейти к основному содержанию
Конфигурационные файлы используют TOML, относительно современный и простой формат конфигов. По умолчанию сервер загружает конфигурационный файл из server_config.toml рядом с исполняемым файлом. Клиент загружает его из GameControllerOptions.ConfigFileName (по умолчанию client_config.toml) в User Data Directory. Конфигурационные файлы хранят «CVars», что является сокращением от «console variable» (консольная переменная), но также может означать «config variable» (переменная конфигурации) в зависимости от того, насколько вам важно быть точным по отношению к Quake или чему-то подобному. Это не имеет большого значения. В любом случае, это кратко для написания.

Краткий курс TOML

TOML — это, по сути, просто INI, но несколько лучше специфицированный и более хипстерский. Вы помещаете заголовки в квадратные скобки и ключи под ними. Мы не используем более продвинутые функции TOML, чем показано здесь (потому что они отстой):
[net]
port = 12345

[game]
hostname = "honkhonk"
maxplayers = 64

[log]
enabled = true
Когда на CVar ссылаются как net.port, это означает, что нужно поместить port = foo под заголовок [net]. В случаях, когда вы напрямую ссылаетесь на cvar полностью (например, команда cvar), вы пишете полное имя (например, cvar net.port).

Справочник CVar

Если вы хотите найти справочник всех CVar, доступных в игре/движке, лучше всего проверить код игры и движка: CCVars.<category>.cs for Space Station 14, CVars.cs for Robust. Читать их довольно легко.

Способы указания CVars

  • Вы можете поместить их в конфигурационный файл сервера или клиента, и они будут загружены автоматически.
  • Вы можете использовать команду cvar для просмотра и установки CVar во время выполнения. Обратите внимание, что не все CVar поддерживают изменение «на лету»: эффекты могут варьироваться от нормальной работы до взрыва сервера или отсутствия эффекта.
  • Вы можете передать --cvar foo.bar=123 как аргумент командной строки клиенту или серверу, чтобы переопределить CVar при запуске. Это также переопределяет любые значения, установленные в конфигурационных файлах.
  • Вы можете использовать переменную окружения ROBUST_CVARS, которая использует точку с запятой в качестве разделителя: ROBUST_CVARS=foo.bar=1234;foo.baz=hello there. Вероятно, вы не хотите принимать небезопасный ввод в это, так как это довольно примитивно и не может быть правильно экранировано.
  • Вы можете указать CVars через несколько переменных окружения с префиксом ROBUST_CVAR_ (обратите внимание на отсутствие множественного числа). Например, ROBUST_CVAR_game__hostname=foobar. Двойное подчёркивание (__) заменяется на ..
Последнее изменение 21 июня 2026 г.