The biggest release so far. An AI dispatcher answers your units, your 911 line and your CAD. The in-game radio gains programmable softkeys, real menus, emergency profiles and a scanner. tRadio drops its own port, and every transmission arrives about 200 ms sooner. Upgrading needs a few config changes.
- AI dispatcher (experimental) — a unit keys up and gets an answer back on the same channel, with the same radio effects. It knows who is on each channel, raises alerts, sends tones, patches channels, relays 911 calls, and can answer them itself. Recommended setup is an API key for the writing and one for the voice; without keys it runs models on your own server. Configured in Admin Panel → Settings → AI Dispatch. Read the docs
- CAD / MDT on every surface — LACORE, SonoranCAD, ImperialCAD, wasabi_mdt, tk_mdt and ps-mdt, detected from the running resource. 911 mirroring and panic now reach all six, not just ImperialCAD. Experimental
- Scanners — a new receive-only radio that can never transmit. Any codeplug with Scanner ticked becomes one, and a
Scannercodeplug ships alongsideLEO, granted to nobody until you map it. The SWX-250 portable is built for it. Experimental - Scanning, rebuilt — scan on/off and the scan list are separate things now, each channel has its own list, and the radio locks onto one scanned channel at a time. Priority 1 interrupts anything, Priority 2 interrupts non-priority. Nuisance delete drops the channel you are hearing; talkback replies on it
- A programmable radio interface — every layout runs the same radio: a paging Home softkey row, Select Zone and Select Chan menus where browsing previews and
Selcommits, an Options menu, Radio Info, and a clock from the game world or the player's PC. Admins program the Home row per codeplug under Codeplugs → Home Softkeys - Emergency profiles — the orange button is programmed per channel: hold to activate, then Alarm, Call or both, optionally Silent, staying put or reverting to an emergency channel, with a hot mic and configurable retries. Dispatch gets ALARM / CALL / SILENT badges with ACK and Clear. Existing codeplugs become a single Default profile, so nothing changes until you edit it
- Direct (simplex) channels — radio-to-radio with no repeater: you hear only units close to you, and dispatch reaches the channel through an optional base radio
- Talk-permit, TX denied and a transmit time-out — trunked key-ups wait for the grant, a taken channel bonks, and a key held past the limit un-keys itself after a warning tone. Settings → Audio & Radio → Transmit Time-Out
- A QRX-720 in the player's hand — the Shoulder and Handheld animations hold a portable that ships with tRadio, its screen and LEDs mirroring the radio in use
- Front-seat radio sharing — driver and passenger work the car's radio together, each transmitting under their own callsign. Nothing to configure
- Explosions over the air — an explosion near a transmitting unit is heard by everyone listening, as gunshots already were
- Radios by Discord role — Credentials → Role → codeplug, stacking with the job, ACE and item routes
- Dispatch panel — tune incoming radio FX for yourself alone, and pick which microphone the panel transmits from
- Marketplace — animation packs, search by name, the full catalog past the first hundred items, and theme previews rendered in the real panel
- Admin panel — speakers, towers and geo zones placed on a map from one Coverage page, and a Credentials page that stores keys write-only
- Voice arrives about 200 ms sooner — smaller packets and a playout buffer that sizes itself per conversation. Latency no longer grows after a stall and stays grown
- tRadio no longer has a port of its own. The radio runs over the FiveM connection players already have, and the panels are served through tLib.
serverPortis gone andserverAddressis nowhostServerUrl. tLib v1.0 or newer is required - ACE permissions are lowercase (
tradio.admin) and events aretradio:. Both keep working under the old names; the two renamed convars do not - Radio layouts are
ui.htmlonly —config.jsonlayouts are no longer read, and all eleven shipped models were renamed - P25 audio retuned against reference recordings. The digital leg sits at analog level, no longer clips, and no longer changes level with the analog FX toggle
- Both FiveM generations ship — the streamed props load on Legacy and Enhanced alike
- Escape returns control to the game and leaves the radio visible. The floating × is gone; hiding on unfocus is a setting
- Startup checks your config — every problem reported at once, naming the key and the fix, plus a
tradio_diagreport that is safe to paste - Dispatch themes are folders in
layouts/, each with its own identity file, instead of rows in the server's data. Installed themes keep working - Desktop app: one copy, and closing it quits — with Minimize to Tray on Close for the old behavior
- Stream Deck gains Softkey and Radio Function actions
- Scan priorities relabeled — new entries default to Non-priority; stored priorities are unchanged
- Lighter on busy servers — blip bookkeeping no longer grows with the square of the player count, one digital decode is shared by every nearby radio, and the screen redraws only on change
FixedFixes15
- The first transmission after about 20 seconds of silence was heard by nobody
- The last words of a transmission were cut off at unkey
- Incoming audio could go silent until voice settings were toggled
- A dispatcher transmitting on a trunked channel heard nothing back
- The desktop app transmitted analog on P25 channels
- A 911 caller on the panel was heard through radio effects instead of as a phone call
- A logout or character switch left the radio on the previous character's channel
- A unit whose channel is taken is now told at that moment, and shown who took it
- Lowering Compression toward 0 made distortion worse rather than flatter
- An integration sending a blank callsign erased the player's saved one
- The admin Sounds trash button could delete a shipped tone and always reported success
- The admin password printed at first start was hundreds of characters long
- Satellites could read the host's admin password through federation
- Panel notifications could stay on screen for the life of the page, and froze while hidden
- The in-game radio retained memory across reconnects and long sessions
TIMMYG Studios