Q2PRO-X 1.6 Final by ly
Голосовой чат
Автор проекта: ly
Выбор микрофона, комнаты и способа передачи голоса.
Русская редакция • Q2PRO-X 1.6 Final by ly • 7 ноября 2026 года
Содержание
Пункты кликабельны: щелчок переходит к разделу.
7. Передача по клавише и по голосу
8. Усиление микрофона и громкость
12. Если голосовой чат не работает
Чат включён, но соединения нет
15. Корректный выход из комнаты
Голосовой чат Q2PRO-X
Q2PRO-X содержит встроенный голосовой чат. Это отдельный голосовой канал поверх игрового клиента: он не меняет игровые протоколы Quake II и не заменяет обычный текстовый чат.
1. Как подключаются участники
Голосовой чат работает прямо в клиенте через микрофон. При включённых vc_enable 1 и vc_autojoin 1 ты входишь в голосовую комнату вместе с подключением к игровому серверу.
В режиме vc_room_mode server комната выбирается по адресу сервера, поэтому его игроки попадают в одну комнату. В режиме vc_room_mode manual используется имя из vc_room_name: так можно разговаривать своей группой независимо от игрового сервера.
Подключение подготавливает сервис, указанный в vc_server. По умолчанию это https://voice-api.q2pro-x.com.
2. Где находится меню
Путь по меню: Главное меню → Быстрая настройка → Q2PRO-X / Голосовой чат
Страница целиком:
Q2PRO-X / Голосовой чат
| Тип | Раздел | Пункт | Переменная или переход | Что делает |
|---|---|---|---|---|
| Раздел | Комната | Комната | ||
| Переключатель | Комната | Голосовой чат включён | vc_enable | Главный выключатель голосового чата (нужен OpenAL для передачи и приёма). Применяется сразу. [Нет / Да] |
| Переключатель | Комната | Автовход при подключении | vc_autojoin | Автовход в голосовую комнату при подключении к игровому серверу. Применяется сразу. [Нет / Да] |
| Список | Комната | Режим комнаты | vc_room_mode | Выбор комнаты: своя на каждый игровой сервер или ручная по имени. Применяется сразу. [Сервер / Ручной] |
| Поле | Комната | Имя ручной комнаты | vc_room_name | Имя комнаты для ручного режима. |
| Поле | Комната | Сервер управления | vc_server | URL сервера управления голосовой связью. |
| Раздел | Микрофон и звук | Микрофон и звук | ||
| Переключатель | Микрофон и звук | Микрофон включён | vc_mic_enable | Разрешить захват микрофона (нужен звуковой движок OpenAL). Применяется сразу. [Нет / Да] |
| Переход | Микрофон и звук | Микрофон... | q2prox_voice_mic_pick | Выбрать устройство захвата; «(default)» следует за микрофоном Windows по умолчанию. |
| Список | Микрофон и звук | Режим передачи | vc_ptt_mode | Режим передачи: активация голосом (VAD) или кнопка разговора. Применяется сразу. [Активация голосом / Кнопка разговора] |
| Ползунок | Микрофон и звук | Порог VAD | vc_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. Что нужно для работы
Для приёма и передачи голоса нужен OpenAL. Выбери его как звуковой движок (s_enable 2), проверь наличие soft_oal.dll и livekit_ffi.dll в папке игры и разреши доступ к микрофону в настройках Windows. При программном звуке software DMA голосовой чат может быть недоступен, даже если vc_enable включён.
4. Основные переменные
Большинство параметров vc_* сохраняется в общем конфиге Q2PRO-X.
5. Команды
Если вызвать voice_mic_pick без номера, команда выведет список микрофонов, как voice_mic_list.
6. Выбор комнаты
Комната игрового сервера
Для обычной игры оставь vc_room_mode server, включи vc_enable и vc_autojoin, затем подключись к серверу. Комната выбирается автоматически по его адресу.
Своя комната
Установи vc_room_mode manual и задай имя в vc_room_name, если нужна отдельная комната для группы или разговор без подключения к игровому серверу.
7. Передача по клавише и по голосу
Для передачи по клавише выбери vc_ptt_mode 1, назначь клавишу PTT и удерживай её во время речи. Этот режим не передаёт шум клавиатуры и комнаты между репликами.
При vc_ptt_mode 0 передача открывается по уровню сигнала микрофона. Чем ниже vc_vad_threshold, тем выше чувствительность: слишком низкий порог реагирует на фоновые шумы, а слишком высокий может обрезать начало фразы. Начни с 0.02; для тихого микрофона попробуй уменьшать значение вплоть до 0.005.
8. Усиление микрофона и громкость
vc_input_gain меняет громкость микрофона перед отправкой. Значение 1.0 оставляет исходный уровень; усиление выше 3–4 может исказить громкую речь. Если собеседники слышат перегруз, уменьши этот параметр и проверь уровень записи в Windows.
vc_receive_volume регулирует голоса собеседников отдельно от общей громкости игры. 1.0 соответствует исходному уровню, верхний предел 10.0 даёт сильное усиление.
9. Выбор микрофона
Пункт Mic device... показывает устройства записи, доступные OpenAL. Команда voice_mic_list выводит текущий выбор, системный микрофон и список устройств с номерами.
vc_mic_device "(default)" следует выбору микрофона в Windows. Если устройство исчезло или было переименовано, выбери его заново через меню.
10. Голосовой сервис
Адрес по умолчанию: https://voice-api.q2pro-x.com. Сервис подготавливает вход в комнату; голос передаётся через отдельную голосовую инфраструктуру и не проходит через игровой сервер Quake II.
Менять vc_server нужно только для собственного сервиса голосовой связи. При обычном использовании оставь исходный адрес.
11. Автоматический вход
Включи vc_enable 1, vc_autojoin 1 и оставь vc_room_mode server, чтобы входить в голосовую комнату при подключении к серверу. После ручного выхода через voice_leave вернуться можно командой voice_join.
12. Если голосовой чат не работает
Чат включён, но соединения нет
Проверь OpenAL, vc_enable 1, vc_mic_enable 1, разрешение микрофона в Windows и выбранное устройство. Если эти настройки верны, проверь доступность vc_server и ограничения брандмауэра или антивируса.
Тебя не слышно
Убедись, что клавиша PTT назначена и удерживается. При передаче по голосу уменьши слишком высокий vc_vad_threshold. Проверь микрофон и убедись, что vc_input_gain не равен нулю.
Не слышно собеседников
Проверь vc_deafen 0, ненулевую громкость vc_receive_volume, работу OpenAL и то, что вы вошли в одну комнату.
Разговор мешает игре
Уменьши vc_receive_volume или временно заглуши входящий голос командой vc_deafen 1. Для своего микрофона используй передачу по отдельной клавише вместо постоянной активации голосом.
13. Начальные настройки
Для начала можно использовать такой набор:
Затем выбери микрофон, назначь клавишу разговора и подстрой громкость собеседников.
14. Полный список настроек
| Переменная | Допустимые значения | Описание |
|---|---|---|
| vc_enable | 0=выключено (по умолчанию) / 1=включено | Главный переключатель голосового чата Q2PRO-X. 0 (по умолчанию) = фича полностью выключена — нет захвата, нет подключения, нет побочных эффектов cvar. Установите 1, чтобы активировать голосовую систему. И передача, и приём голоса требуют OpenAL sound backend. |
| vc_autojoin | 0=только ручное подключение (по умолчанию) / 1=автоподключение при входе на сервер | Автоматически подключаться к voice room при входе на игровой сервер. Требует vc_enable 1 и vc_room_mode "server". Срабатывает при CL_Connected. При дисконнекте комната покидается автоматически. |
| vc_server | URL строка (по умолчанию "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_relay | URL строка (по умолчанию пусто = использовать ответ 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_enable | 0=микрофон выключен (по умолчанию) / 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_mode | 0=VAD (голосовая активность) / 1=push-to-talk (по умолчанию) | Режим гейтирования передачи. 1 (по умолчанию) = push-to-talk: аудио отправляется только пока удерживается бинд +voiceptt. 0 = voice activity detection (VAD): аудио отправляется автоматически при превышении RMS-уровня порога vc_vad_threshold. PTT рекомендуется во избежание утечки фонового шума. |
| vc_vad_threshold | 0.0..1.0 float (по умолчанию 0.02) | Порог обнаружения голосовой активности. Активен только при vc_ptt_mode 0. Если RMS-амплитуда захваченного фрейма ниже этого значения, фрейм не передаётся. Меньше = чувствительнее (улавливает тихие звуки); больше = менее чувствительно (требует более громкой речи). |
| vc_input_gain | 0.0..10.0 float (по умолчанию 1.0) | Множитель усиления входного сигнала микрофона, применяемый перед передачей. 1.0 = единичное усиление (по умолчанию), до 10.0 = 10x усиление. Значения выше 1.0 усиливают захваченный сигнал; ниже 1.0 — ослабляют. Выходной сигнал ограничивается диапазоном [-1.0, 1.0] после применения усиления; выше 3-4x ожидайте слышимое клиппирование на громких звуках. |
| vc_receive_volume | 0.0..10.0 float (по умолчанию 1.0) | Множитель громкости входящего голоса от других участников. Не зависит от s_volume и s_voice_volume. 0.0 = тишина, 1.0 = единичная (по умолчанию), 10.0 = 10x усиление. Применяется к каждому участнику при воспроизведении. Воспроизведение участников тоже требует OpenAL backend. Для одновременного заглушения всех участников используйте vc_deafen. |
| vc_deafen | 0=обычный режим (по умолчанию) / 1=заглушить весь входящий голос | Заглушить весь входящий голос участников. При 1 аудиофреймы от всех участников комнаты отбрасываются при воспроизведении — полезно для концентрации или стриминга. Захват и передача микрофона продолжаются в обычном режиме при deafen, то есть другие участники по-прежнему слышат вас. |
| vc_display_name | строка (по умолчанию пусто = использовать ник игрока) | Отображаемое имя в voice room, которое видят другие участники. Если пустое (по умолчанию), используется игровой ник (cvar "name"). Позволяет задать другое имя в voice room без изменения игрового ника. |
15. Корректный выход из комнаты
При выходе из игры или закрытии её окна клиент покидает голосовую комнату, чтобы остальные участники не видели уже ушедшего игрока. Это также предусмотрено для завершения сочетанием клавиш и быстрого повторного запуска.
16. Файлы времени выполнения
Голосовая подсистема использует две библиотеки, которые входят в поставку выпуска:
| Файл | Зачем нужен |
|---|---|
| soft_oal.dll | Звуковой движок OpenAL, обязателен для передачи и приёма |
| livekit_ffi.dll | Голосовой транспорт |
Обе библиотеки должны лежать в корне папки игры. Если одна отсутствует, восстанови её из полного пакета Q2PRO-X: без неё голосовой чат не запустится.
Ожидание соединения
Ожидание голосового сервера при входе, переподключении или выходе из комнаты не останавливает игру.