Voice setup and troubleshooting
Voice is the feature players notice instantly and the one that quietly breaks launches. The fix is rarely mysterious: a missing dependency, a mic permission, or a config that fights the framework. This is the get-it-working-and-keep-it-working guide.
Get it working
Install pma-voice and its dependency
Download pma-voice and drop it in your resources folder. It depends on mumble-voip, which ships with the server artifacts, so make sure that resource exists and is not deleted. Add the start line to server.cfg:
ensure pma-voice
Restart and watch the console. A missing-dependency error here almost always means mumble-voip was removed from your artifacts or renamed.
Set proximity and mode in config
pma-voice reads its settings from convars (set in server.cfg) and from shared.lua. The three you touch first set the proximity ranges and the audio mode. Defaults work; tune ranges only after voice works:
# Proximity ranges in metres: whisper / normal / shout
setr voice_defaultVoiceMode 2
setr voice_useNativeAudio false
setr voice_enableRadioAnim false
The talk, whisper, and shout distances themselves live in shared.lua as Cfg.voiceModes (three entries: a range and a label each). Leave voice_useNativeAudio at false for standard mumble positional audio; flip it to true only if you specifically want OneSync native audio and have tested it.
Confirm mic permission and device
In FiveM settings, set the correct input device and push-to-talk key, and allow microphone access at the OS level. A muted OS mic looks exactly like a broken server.
Test with a second player
Voice is hard to test alone. Bring a second client (or a friend), stand close, and confirm proximity falloff as you walk apart.
Keep reading the full lesson
Sign in to start, then unlock every step of this lesson and the full FiveM School with a membership.
- How it works
- Troubleshooting order
- What you can do now
The remainder of Voice setup and troubleshooting is available to FiveM School members.