Well I found the problem…
virtual uint32 RegisterRemoteTalker(const FUniqueNetId& UniqueId) override
{
// Not needed in Steam
return S_OK;
}
virtual uint32 UnregisterRemoteTalker(const FUniqueNetId& UniqueId) override
{
// Not needed in Steam
return S_OK;
}
The steam subsystem doesn’t implement the registering functions.
So instead use the mute functions I provided instead, its not as nice as being able to unregister the other team, but it will do the same thing.
bool UAdvancedVoiceLibrary::IsPlayerMuted(uint8 LocalUserNumChecking, const FBPUniqueNetId& UniqueNetId)
bool UAdvancedVoiceLibrary::MuteRemoteTalker(uint8 LocalUserNum, const FBPUniqueNetId& UniqueNetId, bool bIsSystemWide)
bool UAdvancedVoiceLibrary::UnMuteRemoteTalker(uint8 LocalUserNum, const FBPUniqueNetId& UniqueNetId, bool bIsSystemWide)
ClearVoicePackets() clears the local players queued voice packets, is that what you actually want?