Q2PRO-X

Q2PRO-X 1.5 — Голосовой чат Q2PRO-X 1.5

Полная локальная HTML-версия принятого документа. Оригинал DOCX доступен в карточке документации.

Q2PRO-X document image

Q2PRO-X 1.5

Голосовой чат Q2PRO-X 1.5

Микрофон, каналы, громкости и совместимость с сервером

Русская редакция • Q2PRO-X 1.5 • 25 августа 2026 года


Содержание

Пункты кликабельны: щелчок переходит к разделу.

Голосовой чат Q2PRO-X

1. Что делает голосовой чат

2. Где находится меню

3. Требования

4. Основные cvar

5. Команды

6. Room mode

Server mode

Manual mode

7. Push-to-talk и VAD

8. Gain и volume

9. Микрофон

10. Hosted control server

11. Автовход

12. Troubleshooting

В меню всё включено, но voice не работает

Никто меня не слышит

Я никого не слышу

Voice мешает игре

13. Хороший baseline

14. Полный список настроек

15. Корректный выход из комнаты

16. Файлы времени выполнения


Голосовой чат Q2PRO-X

Q2PRO-X содержит встроенный голосовой чат. Это отдельный голосовой канал поверх игрового клиента: он не меняет игровые протоколы Quake II и не заменяет обычный текстовый чат.


1. Что делает голосовой чат

Voice chat позволяет игрокам подключаться к голосовой комнате и говорить

через микрофон прямо из клиента.

Главная пользовательская модель:

если vc_enable 1, функция включена;
если vc_autojoin 1, клиент сам заходит в голосовую комнату при входе на

игровой сервер;

если vc_room_mode server, имя комнаты строится от текущего игрового

сервера;

если vc_room_mode manual, используется vc_room_name;
vc_server указывает на control-plane service, который готовит

подключение к голосовой комнате.

Default hosted control server:

https://voice-api.q2pro-x.com


2. Где находится меню

Путь по меню: [[GEN:menu_path:q2prox_voice]]

Страница целиком:

Q2PRO-X / Голосовой чат

ТипРазделПунктПеременная или переходЧто делает
РазделКомнатаКомната
ПереключательКомнатаГолосовой чат включёнvc_enableГлавный выключатель голосового чата (нужен OpenAL для передачи и приёма). Применяется сразу. [Нет / Да]
ПереключательКомнатаАвтовход при подключенииvc_autojoinАвтовход в голосовую комнату при подключении к игровому серверу. Применяется сразу. [Нет / Да]
СписокКомнатаРежим комнатыvc_room_modeВыбор комнаты: своя на каждый игровой сервер или ручная по имени. Применяется сразу. [Сервер / Ручной]
ПолеКомнатаИмя ручной комнатыvc_room_nameИмя комнаты для ручного режима.
ПолеКомнатаСервер управленияvc_serverURL сервера управления голосовой связью.
РазделМикрофон и звукМикрофон и звук
ПереключательМикрофон и звукМикрофон включёнvc_mic_enableРазрешить захват микрофона (нужен звуковой движок OpenAL). Применяется сразу. [Нет / Да]
ПереходМикрофон и звукМикрофон...q2prox_voice_mic_pickВыбрать устройство захвата; «(default)» следует за микрофоном Windows по умолчанию.
СписокМикрофон и звукРежим передачиvc_ptt_modeРежим передачи: активация голосом (VAD) или кнопка разговора. Применяется сразу. [Активация голосом / Кнопка разговора]
ПолзунокМикрофон и звукПорог VADvc_vad_thresholdПорог активации голосом (VAD); ниже — чувствительнее. Применяется сразу.
ПолзунокМикрофон и звукУсиление микрофонаvc_input_gainУсиление микрофона; 1.0 — без изменения, до 10x. Применяется сразу.
ПолзунокМикрофон и звукГромкость приёмаvc_receive_volumeГромкость входящего голоса, отдельно от s_volume; до 10x (нужен OpenAL). Применяется сразу.
ПереключательМикрофон и звукЗаглушить входящиеvc_deafenЗаглушить весь входящий голос; передавать по-прежнему можно. Применяется сразу. [Нет / Да]
РазделВход и клавишиВход и клавиши
ПолеВход и клавишиОтображаемое имяvc_display_nameВаше имя в голосовой комнате; пусто — брать имя игрока.
ПереходВход и клавишиВойти в комнатуvoice_joinВойти в голосовую комнату текущего сервера (или ручную).
ПереходВход и клавишиПокинуть комнатуvoice_leaveПокинуть текущую голосовую комнату.
КлавишаВход и клавишиКлавиша PTT+voicepttБинд: кнопка разговора — удерживать для передачи голоса.
КлавишаВход и клавишиКлавиша микрофонаvoice_mic_toggleБинд: включить или выключить микрофон.
РазделСервисСервис
ПереходСервисВосстановить голосовые настройкиvoice_defaultsСбросить только голосовые настройки к базовым (vc_relay не трогается).


3. Требования

Текущая фаза voice chat требует OpenAL для передачи и приёма.

Проверьте:

s_enable 2 или пункт меню Sound engine = OpenAL;
soft_oal.dll присутствует в релизном каталоге;
livekit_ffi.dll присутствует в релизном каталоге;
Windows разрешает приложению доступ к микрофону.

Если звук в игре работает через software DMA, voice chat может быть

недоступен даже при включённом vc_enable.


4. Основные cvar

vc_enable - master switch voice chat;
vc_autojoin - автоматически входить в комнату при подключении к серверу;
vc_server - URL control-plane service;
vc_room_mode - server или manual;
vc_room_name - имя комнаты в manual mode;
vc_mic_enable - разрешить захват микрофона;
vc_mic_device - выбранный микрофон, "(default)" следует системному

default;

vc_ptt_mode - 1 push-to-talk, 0 voice activation;
vc_vad_threshold - порог VAD;
vc_input_gain - усиление микрофона;
vc_receive_volume - громкость входящего голоса;
vc_deafen - заглушить входящий голос, не выключая свой микрофон;
vc_display_name - имя в voice room, пусто = использовать player name.

Большинство vc_* сохраняется в global Q2PRO-X cfg.


5. Команды

voice_join - войти в текущую voice room;
voice_leave - выйти из комнаты;
+voiceptt / -voiceptt - push-to-talk;
voice_mic_toggle - включить/выключить микрофон;
voice_mic_list - вывести список микрофонов;
voice_mic_pick <index> - выбрать микрофон по индексу;
voice_defaults - вернуть voice settings к рекомендуемому baseline.

Если voice_mic_pick вызвать без аргумента, он ведёт себя как

voice_mic_list.


6. Room mode

Server mode

vc_room_mode server - рекомендуемый режим. Комната строится от текущего

game server, поэтому игроки на одном сервере попадают в один voice room без

ручного ввода.

Это хорошо для обычной игры:

включить vc_enable;
включить vc_autojoin;
оставить vc_room_mode server;
подключиться к серверу.

Manual mode

vc_room_mode manual использует vc_room_name.

Это удобно, если:

вы тестируете voice без игрового сервера;
хотите отдельную комнату для группы;
нужно не привязываться к текущему адресу сервера.


7. Push-to-talk и VAD

vc_ptt_mode 1 - push-to-talk. Это рекомендуемый режим для игры:

назначьте PTT key;
удерживайте клавишу для передачи.

vc_ptt_mode 0 - VAD, voice activity detection:

микрофон открывается по уровню сигнала;
vc_vad_threshold ниже = чувствительнее;
слишком низкое значение может ловить клавиатуру и шум комнаты;
слишком высокое значение может отрезать начало фраз.

Практический старт:

PTT: vc_ptt_mode 1;
VAD: vc_vad_threshold 0.02, затем двигать вниз к 0.005, если микрофон

тихий.


8. Gain и volume

vc_input_gain усиливает микрофон до передачи. 1.0 - unity. Значения выше

3-4 могут клиппировать громкую речь, но полезны для тихих микрофонов.

vc_receive_volume управляет входящим голосом независимо от общей громкости

игры. 1.0 - unity, до 10.0 - сильное усиление.

Если собеседники слышат перегруз:

1. уменьшите vc_input_gain;

1. проверьте Windows input level;

1. используйте PTT, чтобы не передавать постоянный шум.


9. Микрофон

Меню Mic device... показывает устройства, которые OpenAL видит как capture

devices.

Команды:

voice_mic_list

покажет:

текущий выбор;
Windows default device;
список устройств с индексами.

vc_mic_device "(default)" означает "следовать системному default".

Если устройство переименовано или исчезло, выберите его заново через меню.


10. Hosted control server

vc_server по умолчанию:

https://voice-api.q2pro-x.com

Клиент обращается к control-plane для подготовки подключения. Сам voice

traffic после входа идёт через голосовую инфраструктуру, а не через игровой

Quake II сервер.

Если вы используете локальный dev setup, vc_server может указывать на

локальный service. Но для обычного пользователя менять default не нужно.


11. Автовход

Чтобы voice включался сам:

1. vc_enable 1;

1. vc_autojoin 1;

1. vc_room_mode server;

1. подключиться к игровому серверу.

Если вы вручную вышли через voice_leave, повторный вход можно сделать

через voice_join.


12. Troubleshooting

В меню всё включено, но voice не работает

Проверьте:

sound engine = OpenAL;
vc_enable 1;
vc_mic_enable 1;
Windows microphone permission;
выбранный vc_mic_device;
доступность vc_server;
firewall/antivirus.

Никто меня не слышит

Проверьте:

PTT key назначен и удерживается;
в VAD режиме vc_vad_threshold не слишком высок;
vc_input_gain не равен 0;
выбран правильный микрофон.

Я никого не слышу

Проверьте:

vc_deafen 0;
vc_receive_volume не равен 0;
OpenAL backend активен;
вы действительно в одной комнате.

Voice мешает игре

Используйте:

PTT вместо VAD;
vc_deafen 1 для временного mute incoming;
отдельную PTT key;
уменьшение vc_receive_volume.


13. Хороший baseline

Для большинства игроков:

vc_enable 1;
vc_autojoin 1;
vc_room_mode server;
vc_server https://voice-api.q2pro-x.com;
vc_mic_device "(default)";
vc_mic_enable 1;
vc_ptt_mode 1;
vc_input_gain 1.0;
vc_receive_volume 1.0;
vc_deafen 0.

Дальше настройте только микрофон, клавишу разговора и громкость приёма.


14. Полный список настроек

ПеременнаяДопустимые значенияОписание
vc_enable0=выключено (по умолчанию) / 1=включеноГлавный переключатель голосового чата Q2PRO-X. 0 (по умолчанию) = фича полностью выключена — нет захвата, нет подключения, нет побочных эффектов cvar. Установите 1, чтобы активировать голосовую систему. И передача, и приём голоса требуют OpenAL sound backend.
vc_autojoin0=только ручное подключение (по умолчанию) / 1=автоподключение при входе на серверАвтоматически подключаться к voice room при входе на игровой сервер. Требует vc_enable 1 и vc_room_mode "server". Срабатывает при CL_Connected. При дисконнекте комната покидается автоматически.
vc_serverURL строка (по умолчанию "https://voice-api.q2pro-x.com")URL control-plane сервиса голосового чата Q2PRO-X. На этот endpoint отправляется HTTP POST /voice/prepare для получения LiveKit-токена. По умолчанию: официальный hosted control-plane Q2PRO-X. Можно переопределить для self-hosted деплоя.
vc_relayURL строка (по умолчанию пусто = использовать ответ control-plane)Переопределение URL relay-сервера (LiveKit). Если не пустой, клиент использует этот URL вместо relay_url из ответа /voice/prepare. Полезно для локального тестирования или self-hosted LiveKit.
vc_room_mode"server"=комната по игровому серверу (по умолчанию) / "manual"=комната из vc_room_nameОпределяет, как вычисляется имя voice room. "server" (по умолчанию): комната привязана к текущему игровому серверу (хэш host:port). Требует активного подключения к игровому серверу. "manual": имя комнаты берётся из vc_room_name — позволяет подключиться к любой именованной комнате независимо от игрового сервера.
vc_room_nameстрока (по умолчанию пусто)Имя voice room при vc_room_mode = "manual". Не влияет в режиме "server". Должно быть непустым при использовании manual-режима.
vc_mic_enable0=микрофон выключен (по умолчанию) / 1=микрофон включёнРазрешить захват микрофона. 0 (по умолчанию) = аудио не захватывается и не передаётся даже при подключении. 1 = захват открывается при входе в комнату. Требует OpenAL sound backend (s_enable openal) и рабочее capture device. При невыполнении условий статус-строка явно показывает причину — silent degradation отсутствует.
vc_mic_deviceстрока, "(default)" или точное имя устройстваУстройство захвата (микрофон). Значение "(default)" (по умолчанию) следует текущему выбранному микрофону в Windows. Задайте точное имя устройства из /voice_mic_list чтобы привязаться к конкретному физическому микрофону. Сохраняется глобально, применяется при следующем vc_mic_enable 1 / voice_join.
vc_ptt_mode0=VAD (голосовая активность) / 1=push-to-talk (по умолчанию)Режим гейтирования передачи. 1 (по умолчанию) = push-to-talk: аудио отправляется только пока удерживается бинд +voiceptt. 0 = voice activity detection (VAD): аудио отправляется автоматически при превышении RMS-уровня порога vc_vad_threshold. PTT рекомендуется во избежание утечки фонового шума.
vc_vad_threshold0.0..1.0 float (по умолчанию 0.02)Порог обнаружения голосовой активности. Активен только при vc_ptt_mode 0. Если RMS-амплитуда захваченного фрейма ниже этого значения, фрейм не передаётся. Меньше = чувствительнее (улавливает тихие звуки); больше = менее чувствительно (требует более громкой речи).
vc_input_gain0.0..10.0 float (по умолчанию 1.0)Множитель усиления входного сигнала микрофона, применяемый перед передачей. 1.0 = единичное усиление (по умолчанию), до 10.0 = 10x усиление. Значения выше 1.0 усиливают захваченный сигнал; ниже 1.0 — ослабляют. Выходной сигнал ограничивается диапазоном [-1.0, 1.0] после применения усиления; выше 3-4x ожидайте слышимое клиппирование на громких звуках.
vc_receive_volume0.0..10.0 float (по умолчанию 1.0)Множитель громкости входящего голоса от других участников. Не зависит от s_volume и s_voice_volume. 0.0 = тишина, 1.0 = единичная (по умолчанию), 10.0 = 10x усиление. Применяется к каждому участнику при воспроизведении. Воспроизведение участников тоже требует OpenAL backend. Для одновременного заглушения всех участников используйте vc_deafen.
vc_deafen0=обычный режим (по умолчанию) / 1=заглушить весь входящий голосЗаглушить весь входящий голос участников. При 1 аудиофреймы от всех участников комнаты отбрасываются при воспроизведении — полезно для концентрации или стриминга. Захват и передача микрофона продолжаются в обычном режиме при deafen, то есть другие участники по-прежнему слышат вас.
vc_display_nameстрока (по умолчанию пусто = использовать ник игрока)Отображаемое имя в voice room, которое видят другие участники. Если пустое (по умолчанию), используется игровой ник (cvar "name"). Позволяет задать другое имя в voice room без изменения игрового ника.


15. Корректный выход из комнаты

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


16. Файлы времени выполнения

Голосовая подсистема использует две библиотеки, которые входят в поставку выпуска:

ФайлЗачем нужен
soft_oal.dllЗвуковой движок OpenAL, обязателен для передачи и приёма
livekit_ffi.dllГолосовой транспорт

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