Looking at the Voice Chat | Documentation - Roblox Creator Hub and was wondering if you could possibly have different channels and what I mean by channels is one where everyone can hear you and another where specific users could hear you however it would be global instead of spacial.
channel 1 would be heard by all users near by
channel 2 would be heard by all users on the same team as you globally meaning no matter where you are you could hear x emitter.
Hopefully the short explanation helps with your understanding.
I’ve been working on a module that utilizes a channel like structure to succeed Team Voice Chat and here it is:
(Uncopylocked) VoiceLink - Roblox
It’s pretty bare bones at the moment, but it can do either Proximity/Spatial or Direct/Global voice chat.
Here’s some simple documentation on how you’d use it:
Direct
local Channel = VoiceLink:CreateChannel({
Identifier = 'MyFirstChannel',
Type = 'Direct'
})
local function PlayerAdded(Player: Player)
Channel:AddSpeaker(Player)
end
Players.PlayerAdded:Connect(PlayerAdded)
for _, Player in Players:GetPlayers() do
task.spawn(PlayerAdded, Player)
end
Proximity
local Channel = VoiceLink:CreateChannel({
Identifier = 'MyFirstChannel',
Type = 'Proximity'
})
local function PlayerAdded(Player: Player)
Channel:AddSpeaker(Player)
end
Players.PlayerAdded:Connect(PlayerAdded)
for _, Player in Players:GetPlayers() do
task.spawn(PlayerAdded, Player)
end
With sound effects
local Channel = VoiceLink:CreateChannel({
Identifier = 'Channel1',
Type = 'Direct',
Modifiers = {
{
Name = 'AudioReverb', -- corresponds to instance ClassName.
Density = 10
}
}
})
local function PlayerAdded(Player: Player)
Channel:AddSpeaker(Player)
end
Players.PlayerAdded:Connect(PlayerAdded)
for _, Player in Players:GetPlayers() do
task.spawn(PlayerAdded, Player)
end
Here are some of the possible sound effects/modifiers: