Q2PRO-X 1.5 — Переменные и обозреватель переменных Q2PRO-X 1.5
Полная локальная HTML-версия принятого документа. Оригинал DOCX доступен в карточке документации.
Q2PRO-X 1.5
Переменные и обозреватель переменных Q2PRO-X 1.5
Как устроены переменные, где они сохраняются и как работать с обозревателем
Русская редакция • Q2PRO-X 1.5 • 25 августа 2026 года
Содержание
Пункты кликабельны: щелчок переходит к разделу.
Переменные, конфиги и справочник переменных
2. Четыре места, куда сохраняются настройки
2.2. Локальные настройки базовой игры
2.3. Настройки, зависящие от мода
3. Почему выпуск не поставляет готовый пользовательский конфиг
5. Команды сохранения и сброса
5.2. Полное сохранение конфигурации
5.3. Почему не стоит чистить конфиги вручную
6.1. Настройки самого справочника
7. Язык и оформление справочника
Понять, почему значение не сохраняется
Переменные, конфиги и справочник переменных
Этот документ объясняет, как в Q2PRO-X устроены переменные, области их действия, сохранение настроек и встроенный справочник переменных.
1. Что такое переменная
Переменная (cvar) — именованная настройка движка, которую можно:
Примеры: sensitivity, vid_driver, cl_vis_enable, cl_avfx, cl_it.
Большинство пользовательских переменных Q2PRO-X имеет понятную область действия, чтобы настройка сохранялась туда, куда нужно.
2. Четыре места, куда сохраняются настройки
2.1. Глобальные настройки
baseq2\q2pro-x\q2pro-x.cfg
Это то, что обычно одинаково везде:
В меню такие строки помечены меткой (G).
2.2. Локальные настройки базовой игры
baseq2\q2pro-x\q2pro-x.local.cfg
Сюда попадают локальные настройки клиента, когда активна базовая игра: визуальный слой, подсветки, цвета, значительная часть профиля отрисовки и локальные привязки.
2.3. Настройки, зависящие от мода
<папка мода>\q2pro-x\q2pro-x.cfg
Те же локальные настройки, когда активен мод. Так один и тот же визуальный профиль может отличаться в разных модах. В меню такие строки помечены меткой (M).
2.4. Визуальный профиль демок
baseq2\q2pro-x\demo_visual\q2pro-x.demo.cfg
Во время просмотра записей .dm2 и .mvd2 локальные визуальные настройки пишутся не в папку мода, а в единый профиль. Это нужно, чтобы записи из разных модов выглядели одинаково.
| Простое правило. Мышь, звук, голос, сеть и интерфейс — глобальные. Визуал мода, подсветки и внешний вид — локальные. Те же визуальные настройки во время просмотра записи — профиль демок. |
|---|
3. Почему выпуск не поставляет готовый пользовательский конфиг
Пакет выпуска не кладёт пользовательский q2pro-x.cfg в baseq2. Это сделано намеренно:
Если файла нет, Q2PRO-X стартует со встроенными значениями по умолчанию и создаёт свои файлы при сохранении настроек.
4. Миграция схемы
Внутренний маркер cl_q2prox_cfg_version отмечает, какая схема настроек уже применена к вашему профилю.
| Переменная | Допустимые значения | Описание |
|---|---|---|
| cl_q2prox_cfg_version | внутренний маркер схемы (0=до 1.2 / 1.2=onboarding / 1.5=стартовое меню / 1.51=дефолт exact fullscreen / 1.52=безопасная GLOBAL-миграция / 1.53=полное GL-покрытие) | Внутренний маркер схемы ГЛОБАЛЬНОГО конфига Q2PRO-X. Читается из физического файла baseq2/q2pro-x/q2pro-x.cfg, а не из живого cvar, чтобы старый конфиг не мог подделать завершённость. Отслеживает однократное применение version-gated миграций. Отсутствие/0 запускает onboarding 1.2; 1.5 включает главное меню при обычном старте; 1.51 переводит старый сериализованный автоматический отступ desktop fullscreen на новый дефолт точного размера; 1.52 завершает безопасную add-only миграцию GLOBAL-настроек; 1.53 расширяет проверенное покрытие GL ранее пропущенными пользовательскими настройками, включая gl_bloom_sigma. Существующие записи всегда имеют приоритет. Маркер повышается только после успешной проверенной записи GLOBAL-файла, а более новый маркер из будущей сборки никогда не понижается. Не пользовательская настройка и в меню не выводится. |
Если маркер отсутствует или старше текущего, движок применяет только безопасные рекомендованные настройки и записывает новый маркер. На следующем запуске миграция не повторяется.
| Это не полный сброс. Ваши чувствительность, звук, голос, мышь, зум и остальные настройки не сбрасываются. |
|---|
Миграция из старых конфигов работает только на добавление: она добавляет отсутствующие поддерживаемые значения и никогда не затирает уже сохранённые настройки и привязки. Стандартные конфиги игры остаются неизменяемыми входными источниками.
5. Команды сохранения и сброса
| Команда | Что делает |
|---|---|
| q2prox_cfg_save | Сохранить глобальный и локальный профили |
| q2prox_cfg_save_global | Сохранить только глобальный профиль |
| q2prox_cfg_save_local | Сохранить локальный профиль, а во время просмотра записи — профиль демок |
| q2prox_cfg_save_demo_visual | Явно сохранить профиль демок |
| q2prox_cfg_defaults | Сбросить все настройки Q2PRO-X |
| q2prox_cfg_defaults_global | Сбросить только глобальную область |
| q2prox_cfg_defaults_local | Сбросить локальную область; во время записи — только визуальные переменные демок, привязки сохраняются |
| q2prox_cfg_defaults_demo_visual | Сбросить только визуальные переменные демок |
5.1. Автосохранение
| Переменная | Допустимые значения | Описание |
|---|---|---|
| cl_q2prox_cfg_autosave | 0=без автосохранения / 1=автосохранение при каждом изменении (по умолчанию) | Автосохранение конфига Q2PRO-X при изменениях в меню / консоли. Когда включено, любое изменение cvar с флагом CVAR_Q2PROXCFG_GLOBAL или CVAR_Q2PROXCFG_LOCAL пишется с debounce 500 мс в правильную цель. Разделение таргетов 2026-04-25: GLOBAL cvars идут в baseq2/q2pro-x/q2pro-x.cfg (теперь только GLOBAL); LOCAL cvars идут в <gamedir>/q2pro-x/q2pro-x.cfg при активном моде, в baseq2/q2pro-x/q2pro-x.local.cfg при пустом fs_game, или в baseq2/q2pro-x/demo_visual/q2pro-x.demo.cfg во время проигрывания .dm2/.mvd2. Каждое сохранение идёт через атомарный pipeline: запись в .tmp, валидация, ротация бэкапов в backups/ (.bak/.bak.2/.bak.3), замена. Автоматические записи дополнительно отбрасывают кандидатов, похожих на массовый сброс / потерю биндов (отклонённые кандидаты сохраняются в rejected/ как *.rejected-<ts> для диагностики); явные команды q2prox_cfg_defaults_* обходят эту защиту. |
5.2. Полное сохранение конфигурации
| Переменная | Допустимые значения | Описание |
|---|---|---|
| cl_writeconfig_full | 0=привязки + архивируемые переменные (по умолчанию) / 1=как -b -m -a (привязки + алиасы + все изменённые переменные) | Управляет тем, что записывает writeconfig <имя> без флагов содержимого. 0 (по умолчанию) сохраняет прежнее поведение: привязки клавиш и архивируемые переменные. 1 — форма без флагов сохраняет то же, что и явная -b -m -a: все привязки клавиш, все ваши алиасы команд и каждую подходящую переменную, чьё текущее (или отложенное) значение отличается от значения по умолчанию, включая глобальные (G) и мод-локальные (M) настройки Q2PRO-X. Явные флаги не затрагиваются: если вы сами написали -a, -b, -c или -m, записывается ровно этот выбор, а настройка игнорируется; -h по-прежнему только печатает справку. Файл по-прежнему создаётся в configs/<имя>.cfg, барьер «конфиг только для чтения» по-прежнему срабатывает раньше. Учтите: это ручной экспорт в старом стиле CFG, а НЕ замена сохранения глобальных/локальных пресетов Q2PRO-X, у которых своё хранилище. Сохраняется в глобальный конфиг Q2PRO-X, общий для всех модов. |
Явно заданные флаги команды записи конфигурации всегда имеют приоритет над этой настройкой.
5.3. Почему не стоит чистить конфиги вручную
Q2PRO-X не перезаписывает чужие значения полным сбросом при обычном старте. Если что-то выглядит странно, сначала:
1. откройте соответствующую страницу меню;
2. проверьте значение в справочнике переменных;
3. используйте сброс конкретной области, а не удаляйте весь каталог.
Полное удаление конфигов оправдано только тогда, когда вы действительно хотите начать с чистого профиля.
6. Справочник переменных
Справочник переменных — это встроенное окно поиска, описания и редактирования настроек.
Открыть его можно тремя способами:
6.1. Настройки самого справочника
Путь по меню: [[GEN:menu_path:q2prox_cvarbrowser]]
Справочник переменных
| Тип | Раздел | Пункт | Переменная или переход | Что делает |
|---|---|---|---|---|
| Ползунок | Прозрачность | cl_cvar_browser_alpha | Прозрачность фона оверлея справочника переменных. Применяется сразу. | |
| Ползунок | Масштаб текста | cl_cvar_browser_scale | Масштаб шрифта / интерфейса справочника переменных; 1.0 по умолчанию. Применяется сразу. | |
| Переключатель | Запоминать вкладку | cl_cvar_browser_remember_tab | Восстанавливает последнюю открытую вкладку справочника в следующей сессии. Применяется сразу. [Нет / Да] | |
| Переход | Открыть справочник переменных... | cvar_help | Открывает современный оверлей справочника переменных. | |
| Клавиша | Клавиша переключения | cvar_browser_toggle | Назначает клавишу открытия/закрытия оверлея справочника переменных. |
6.2. Вкладки
| Вкладка | Что показывает |
|---|---|
| Все | Все переменные |
| Избранное | Ваш личный список часто используемых |
| Команды | Зарегистрированные консольные команды |
| Демо | Всё, что относится к записям |
| Графика | Видео, рендер, эффекты |
| Звук | Звуковая подсистема и громкости |
| Ввод | Мышь, клавиатура, зум |
| Сеть | Сетевые настройки и инструменты |
| Игра | Игровые настройки |
| HUD/UI | Интерфейс и экранные элементы |
| Сервер | Серверные настройки |
| Система | Системные настройки |
| Отладка | Диагностические переменные, отделённые от пользовательских |
Вкладка «Отладка» существует именно для того, чтобы диагностика не смешивалась с обычными настройками и не попадала в конфиги случайно.
6.3. Что умеет окно
6.4. Избранное
Избранное — локальный список часто используемых переменных. Его состояние хранится отдельным файлом:
baseq2\q2pro-x\cvar_browser_state.txt
Полезные кандидаты в избранное: vid_driver, sensitivity, cl_zoom_fov, cl_vis_enable, cl_avfx, cl_it, cl_network_god_mode.
6.5. Вкладка команд
Вкладка команд позволяет быстро найти и выполнить нужное действие: открыть страницу меню, выполнить команду, открыть оверлей или запустить вспомогательную команду. Когда команда требует ввода, окно открывает консоль поверх себя и затем возвращается в прежнее состояние.
6.6. Поиск
Поиск работает не только по имени. Он ищет также по описаниям, категориям и метаданным команд, и поддерживает кириллический ввод в русском интерфейсе.
Практические примеры запросов:
| Запрос | Что найдёт |
|---|---|
| demo или демо | Всё про записи |
| voice или голос | Голосовой чат |
| mouse, zoom, мышь | Управление |
| avfx | Визуальный слой |
| таймер | Таймеры предметов |
| порт | Сетевые инструменты |
7. Язык и оформление справочника
Справочник следует общему режиму русской локализации интерфейса. Старая отдельная переменная языка справочника сохранена только для совместимости и больше ни на что не влияет:
| Переменная | Допустимые значения | Описание |
|---|---|---|
| cl_cvar_browser_lang | (legacy, без эффекта; см. cl_console_utf8_ru) | LEGACY. Cvar browser теперь следует единому режиму русской отрисовочной локализации (cl_console_utf8_ru), чтобы русский режим -> русский UI / английский режим -> английский UI согласованно через консоль, подсказки меню, voice picker и browser. Cvar зарегистрирован чтобы старые user-конфиги не ломались, но значение больше не читается. Используй cl_console_utf8_ru. |
Связанные настройки оформления:
| Переменная | Допустимые значения | Описание |
|---|---|---|
| cl_browser_font_mode | 0=легаси / 1=Iskra Cyrillic (по умолчанию) | Типографика browsers / UI chrome Q2PRO-X. 0 = легаси 8x8 conchars + q2prox_cvar_font (cvar browser). 1 = Iskra Cyrillic Regular fixed-cell (по умолчанию). Подключённые поверхности: chrome server browser'а, cell draw cvar browser'а (12x16), cell draw demo browser'а (8x8 base × user zoom), кнопки / popup / timeline labels интерфейса проигрывателя демо, локальный UI modhelp (заголовок, search prompt, badges, scroll-стрелки, Cancel / Execute / Confirm). Шаг ячейки сохраняется для каждой поверхности, поэтому selection / copy / column math / hitbox'ы не меняются. Недоверенные / сырые байтовые потоки остаются на байт-в-байт легаси-пути на каждой поверхности: имена серверов, имена demo-файлов, имена игроков из demo-записи, configstring-чат и т.п. намеренно НЕ идут через Iskra. Если Iskra-атлас не зарегистрировался — все подключённые поверхности откатываются на легаси-отрисовку; failure логируется один раз. |
| cl_cvar_browser_alpha | 0..1 (по умолчанию 0.92) | Прозрачность фона in-game Cvar Reference-оверлея. Не зависит от scr_alpha: браузер использует собственную политику прозрачности фона. Если включён OLED UI breathing, итоговая прозрачность дополнительно модулируется только через SCR_OledGetUiAlpha(). |
| cl_cvar_browser_scale | 0.1..4.0 (по умолчанию 1.0) | Множитель масштаба текста и text-driven chrome для in-game Cvar Reference-оверлея. Управляет читаемостью браузера независимо от scr_scale: большие значения увеличивают шрифт браузера, высоту строк, header/search bar и кнопочный chrome, не масштабируя всё окно как единый виджет. |
| cl_cvar_browser_remember_tab | 0=всегда стартовать на All / 1=восстанавливать последнюю вкладку (по умолчанию) | Восстанавливать последнюю открытую вкладку cvar browser (All / Favorites / Demo / Visual / Audio / Input / Network / Gameplay / HUD/UI / Server / System) при следующем запуске. Когда выключено — browser всегда стартует на All. Текущая вкладка пишется в cl_cvar_browser_last_tab при каждом переключении вкладок. |
| cl_cvar_browser_last_tab | all / favorites / demo / visual / audio / input / network / gameplay / ui / server / system (по умолчанию "all") | Внутренний archived cvar — хранит последнюю открытую вкладку cvar browser как стабильное строковое имя ("all", "favorites", "demo", "visual", "audio", "input", "network", "gameplay", "ui", "server", "system"). Читается при открытии browser'а когда cl_cvar_browser_remember_tab включён, пишется при каждом переключении. Неизвестные значения считаются "all". |
8. Мини-рецепты
Сохранить всё перед выходом
q2prox_cfg_save
Сбросить только визуал демок
q2prox_cfg_defaults_demo_visual
q2prox_cfg_save_demo_visual
Найти все переменные записей
Откройте справочник и перейдите на вкладку «Демо», либо введите demo в поиск.
Понять, почему значение не сохраняется
1. Убедитесь, что автосохранение включено.
2. Проверьте, что вы меняете не диагностическую переменную: они действуют только в текущем сеансе и в конфиг не пишутся.
3. Проверьте область действия: глобальная, локальная или профиль демок.
4. Выполните явное сохранение нужной области.
9. Печатный справочник
Полный печатный список всех переменных с описаниями и допустимыми значениями находится в отдельном документе — справочнике переменных и команд. Он построен из тех же таблиц описаний, что и окно в игре, поэтому расхождений между ними быть не может.