Радио и телефон GameLink
Симуляция радио в стиле ACRE/TFAR, встроенная в GameLink. Радиосвязь с ухудшением сигнала, телефонные звонки, интерком в технике и звуковые эффекты. Всё работает на стороне клиента и не нагружает сервер.
Системы связи
Три отдельных аудиоканала поверх уже существующего голоса по дистанции в GameLink
Радиосвязь
Несколько типов раций с разной дальностью. Качество сигнала ухудшается с расстоянием. Помехи усиливаются по мере приближения к максимальной дальности. Щелчок микрофона при нажатии PTT. Распределение по ушам выводит основную и дополнительную рацию в левое и правое ухо.
Телефонные звонки
Разговор по телефону один на один с полосовым фильтром для реалистичного телефонного звука. Полная громкость на любом расстоянии. Необязательный режим громкой связи позволяет игрокам рядом слышать разговор.
Интерком в технике
Качественный звук между всеми, кто сидит в машине, без затухания по расстоянию. Экипаж слышно идеально, какой бы ни был шум снаружи и какие бы ни стояли настройки дистанции. Включается автоматически, когда вы садитесь в технику.
Типы раций
Четыре профиля раций с разной дальностью и характером звука
Звуковые эффекты
Все эффекты обрабатываются на стороне клиента через Web Audio API и не нагружают сервер
Радиопомехи
Процедурно сгенерированный белый шум подмешивается к голосу. Его интенсивность растёт по мере ухудшения сигнала с расстоянием. У каждого типа рации свой базовый уровень шума.
Полосовой фильтр
Фильтры высоких и низких частот формируют звук голоса под частотную характеристику каждого типа рации. Для телефонных звонков используется более узкая полоса, чтобы звук был как у настоящего телефона.
Щелчки микрофона
Процедурно сгенерированные щелчки рации при нажатии и отпускании PTT. Разные тона для начала и конца передачи. Добавляют радиосвязи ощутимую обратную связь.
Распределение по ушам
Основная рация звучит в левом ухе, дополнительная в правом. Можно слушать две частоты одновременно и понимать, какая рация сейчас принимает. Используется стереопанорамирование для каждого пользователя.
Ухудшение сигнала
Громкость голоса падает, а помехи растут по мере приближения к максимальной дальности рации. С ретрансляторами качество сигнала улучшается в зависимости от близости и зоны покрытия вышки.
Окклюзия рельефом
Когда игровой мод передаёт данные о линии видимости через поле MuffleIntensity, GameLink применяет фильтр низких частот и приглушает голоса за рельефом или под водой.
Как это работает
Радио, телефон и интерком встроены в GameLink и включаются автоматически, если ваша игра их поддерживает
Игровой мод передаёт состояние рации
Ваш игровой ресурс определяет, когда игрок пользуется рацией, телефоном или садится в технику. Он отправляет данные о радио и позиции в GameVox, запущенный на компьютере игрока.
GameLink обрабатывает и передаёт дальше
GameLink получает данные о радио и позиции и отслеживает, кто сейчас передаёт, какой тип рации использует и какие у него параметры сигнала.
Звуковые эффекты на стороне клиента
Фронтенд строит для каждого пользователя цепочки эффектов Web Audio API: полосовые фильтры, генераторы шума, стереопанорамирование. Они встраиваются между аудиопотоком WebRTC и динамиками. Эффекты включаются и выключаются через узлы усиления без щелчков и сбоев звука.
Сведённый звук
Голос по дистанции, радио, телефон и интерком сводятся для каждого игрока. Радио имеет приоритет над громкостью по дистанции (далёких игроков слышно по рации). Интерком даёт чистый звук внутри машины на любом расстоянии.
Руководство по интеграции
Для разработчиков игровых ресурсов. Отправляйте эти команды из своего мода, чтобы включить радио и телефон
Радиосвязь (команды 30/31)
Отправьте команду 30, когда игрок начинает передачу по рации. Отправьте команду 31, когда он заканчивает.
{
"Command": 30,
"ServerUniqueIdentifier": "your-server-id",
"Parameter": {
"Name": "Officer_Joe",
"SenderRadioType": 1,
"OwnRadioType": 1,
"PlayMicClick": true,
"Volume": 1.0,
"Direct": true,
"SecondaryChannel": false,
"RelayedBy": ""
}
}Телефонные звонки (команды 20/21)
Отправьте команду 20, чтобы начать звонок. Отправьте команду 21, чтобы положить трубку.
{
"Command": 20,
"ServerUniqueIdentifier": "your-server-id",
"Parameter": {
"Name": "Dispatch",
"SignalStrength": 1.0,
"Volume": 1.0,
"Direct": true,
"RelayedBy": ""
}
}Радиовышки (команда 32)
Размещайте ретрансляторы в игровом мире, чтобы увеличить дальность радиосвязи и улучшить качество сигнала.
{
"Command": 32,
"ServerUniqueIdentifier": "your-server-id",
"Parameter": {
"Towers": [
{ "X": 500.0, "Y": 1200.0, "Z": 50.0, "Range": 8000.0 },
{ "X": -300.0, "Y": 800.0, "Z": 120.0, "Range": 12000.0 }
]
}
}Индикаторы передачи (команда 33)
Показывает на радаре, кто сейчас передаёт. Отправляется для каждого игрока, который выходит в эфир.
{
"Command": 33,
"ServerUniqueIdentifier": "your-server-id",
"Parameter": {
"Name": "Officer_Joe",
"IsSending": true,
"IsPrimaryChannel": true
}
}Интерком в технике (команды 50/51)
Отправьте команду 50, когда игрок садится в технику. Отправьте команду 51, когда он выходит.
{
"Command": 50,
"ServerUniqueIdentifier": "your-server-id",
"Parameter": {
"VehicleID": "vehicle_123",
"Occupants": ["Officer_Joe", "Dispatch", "Cadet_Smith"]
}
}Окклюзия рельефом
Задайте поле MuffleIntensity (0.0–1.0) в обновлениях состояния игрока (команда 8 или 9), чтобы приглушать голоса за рельефом или под водой. Игровой мод должен выполнять рейкасты, чтобы определять окклюзию по линии видимости.
{
"Name": "Officer_Joe",
"Position": { "X": 120.0, "Y": 205.0, "Z": 10.0 },
"Rotation": 1.57,
"VoiceRange": 20.0,
"IsAlive": true,
"MuffleIntensity": 0.7
}Справочник типов раций
Используйте эти значения для SenderRadioType и OwnRadioType в команде 30
Поддерживаемые игры
Радио и телефон работают в любой игре с ресурсом GameLink
Никакой настройки
Радио, телефон и интерком включаются автоматически, если для вашей игры установлен плагин GameVox. Игрокам не нужно настраивать частоты или ставить сторонние программы. Просто зайдите в голосовой канал GameVox и играйте.
Работает вместе с голосом по дистанции
Радио и телефон работают поверх голоса по дистанции в GameLink. Игровые ресурсы, которые поддерживают только базовый звук по дистанции, продолжают работать без проблем. Функции радио только добавляются, для базового пространственного звука ничего менять не нужно.
Список игр растёт
Ресурсы GameLink доступны для FiveM, RedM, RAGE:MP, alt:V и Arma 3. Разработчики могут интегрировать любую игру через открытый протокол GameLink.
Готовы добавить симуляцию радио?
Начните с базового ресурса GameLink, а затем добавьте радиокоманды в свой мод