Voice dispatch
Common issues
Dispatch doesn't respond at all
- Off duty. Most commands need you on duty in c3r.
- Wrong mic. Open
/controland pick the right microphone, then use Mic check: hold the button and say a command. It shows your level and what dispatch heard. - H is taken. Another script on H (the taser's flashlight, a radio script) can swallow the key. Rebind one in Settings → Key Bindings → FiveM.
- Still loading. On a player's first join the speech model is downloading. Wait for it to finish.
"10-9, say again" every time
- Run Mic check in
/control. Too quiet or clipping means a mic level problem in Windows. - Turn off Mic noise filtering in
/control. The browser's noise suppression helps in loud rooms but can garble speech otherwise. - Speak after the click. In push-to-talk mode the mic opens on the key press; the click plays once it's live.
- Say the command, not a sentence about it. "Plate check" works better than "could you maybe check this plate for me".
It hears the wrong command
Let it learn: after a "say again", repeat it the way you meant. The working retry teaches dispatch your word for next time. You'll see the correction in /control.
With Config.Debug = true, F8 shows exactly what was heard, with a confidence for each word, and which command ran.
Recognition doesn't work for one player
Their game probably has WebAssembly switched off: Windows Exploit Protection (Arbitrary Code Guard) or an antivirus applying exploit protection to FiveM. The server takes over for them automatically, so it still works, just with a short delay. If it still fails, they can remove FiveM from the exploit protection rules on their PC.
The first join takes a long time
The speech model and voice clips are about 210 MB, downloaded once per player. Later joins are quick.
The plate readback skips the model
There's no clip for that car, usually an addon vehicle. Add one: see Voice lines.
Callsign is wrong or missing
With the MDT, it's the callsign you signed on with in the CAD; change it in the CAD's settings. Without the MDT, set it in /control.
Stuck? Ask on Discord
View as Markdown