Skip to content

Updates

What's new

Releases and writing from the studio, newest first. Written before it ships, not after someone asks.

  1. 2026
  2. Release

    tDB 1.0

    #

    About tDB

    tDB is a database layer for FiveM: PocketBase managed for you, with an admin UI, collections, logs and a SQL console — or point it at a database you already run.

    Install — drop tDB.zip into your resources folder and ensure tDB before anything that depends on it. It brings its own PocketBase binary and starts it for you; nothing to install separately.

    MIT, source included. Nothing in this download is obfuscated or escrowed.

    Needs tLib v1.0 or newer — the admin UI is served through tLib's HTTP hub, so there is no second port to open.

    Read the full update on tDB
  3. Release

    tRadio 7.0

    #

    43 changes

    About tRadio

    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.

    AddedFeatures15
    • 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 Scanner codeplug ships alongside LEO, 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 Sel commits, 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
    ChangedChanges13
    • 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. serverPort is gone and serverAddress is now hostServerUrl. tLib v1.0 or newer is required
    • ACE permissions are lowercase (tradio.admin) and events are tradio:. Both keep working under the old names; the two renamed convars do not
    • Radio layouts are ui.html only — config.json layouts 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_diag report 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
  4. Release

    tAFK 2.0

    #

    15 changes

    About tAFK

    tAFK gets an in-game editor, music that cuts on the beat, and a live radio source. tLib v1.0 or newer is now required — it was standalone in 1.0, and this will not start without it.

    ChangedNew5
    • An in-game editor. /tafkedit builds the camera sequences on the map itself, with the camera driven by pointer drags rather than key mappings
    • Cuts land on the beat. Tracks are analysed in the background and the grids are saved, so shots cut against a real beat grid instead of a BPM guessed at play time
    • A live radio stream can be the music source instead of the bundled tracks, primed before AFK starts rather than at it. Off by default
    • A still-camera option, for servers that want the screen to stop moving
    • /tafk_diag — one paste-safe line describing the install, for when something needs reporting
    ChangedChanged5
    • /afk is gone. Starting it by hand is /tafk, and a manual start now gets a grace window before the camera takes over
    • /tafk and /tafkedit ask the server rather than trusting a client-side cache, so what you see is what the server has
    • data.json is validated on load. A malformed settings file is reported instead of silently falling back
    • Five music tracks ship, not forty. The download went from 82 MB to 1.6 MB; the rest were never referenced by a shipped sequence
    • The interface is themed from tLib's tokens, and every shipped webfont carries its licence
    FixedFixed5
    • Toggling a sequence destroyed the control you had just clicked
    • AFK could start over an open UI, taking the screen while you were in a menu
    • Shots were scored against nothing, so the camera framed geometry that was not there
    • Two duplicate toasts on the same action, and a settings reset with no confirmation
    • Keyboard focus drew an outward ring CEF could not composite, so focused controls looked unfocused
  5. Release

    tDetector 2.0

    #

    11 changes

    About tDetector

    tDetector becomes a real object in the car. The detector is now a 3D prop with a live DUI screen, placed where you want it, instead of a flat overlay — and faceplates and tones install from the panel without a restart. tLib v1.0 or newer is now required.

    ChangedNew4
    • A 3D detector prop with a live screen, placed in the cabin with a gizmo, with positional audio from the unit itself rather than from nowhere
    • Faceplates and tone packs from the marketplace, installed in the panel and rendering without a restart
    • A quick settings tab, and the admin editor split out of the player settings so the two stop sharing a screen
    • /tdetector_diag and a config check that reports a bad setting at boot instead of at the moment it matters
    ChangedChanged4
    • tLib v1.0 or newer is required. The HUD, configuration, marketplace and keybinds all route through it
    • Youniden7 is retired. The shipped faceplates are RDX-8000, RDX-4000 and ARC-360 — a server pinned to the old name has to pick one of these
    • The prop editor button only appears when you are in a vehicle, since that is the only place it can do anything
    • The NUI bundle is obfuscated in release builds, and every shipped webfont carries its licence
    FixedFixed3
    • The marketplace panel opened blank, because it asked for a tab that did not exist
    • A locked vehicle's edit was refused only after it had been broadcast
    • Faceplate keys could not be seen when focused, and could not be reached by keyboard at all
    ChangedStill radar-agnostic0

    tRadar works with nothing to add. Wraith ARS 2X, Seeker Dual, RS9000 and ProLaser 4 take a one-line export, and a radar shipped under asset escrow — with no file you can edit — is read through a state bag, an event, or a bridge resource instead.

  6. Release

    tELS 1.0

    #

    26 changes

    About tELS

    tELS leaves beta. The editor is rebuilt around a single workspace with one undo history, a marketplace lives inside it so patterns and whole vehicle setups can be shared and imported without leaving the car, and a vehicle's configuration can now live in the vehicle's own resource instead of in tELS. There is a Stream Deck plugin, a stealth run-dark mode, and per-rule debounce on triggers. tLib v1.0 or newer is required.

    tELS is not an ELS replacement and does not read ELS or non-ELS vehicle packs — every vehicle is configured once in the in-game editor, or ships a tels.json of its own. If you are new to it, start with Installation.

    AddedFeatures12
    • A rebuilt editor — one workspace shell instead of floating panels, a single undo history across every tab, a resizable pattern grid, and the LED editor and feedback moved into the sidebar. The camera is driven by pointer drags on the page rather than game controls
    • Marketplace, inside the editor — browse LED layouts, patterns and full vehicle setups published by other servers, preview them animating on the card, and import one as a draft edit you can keep or throw away. Read the docs
    • Publish from in game — share an LED layout from the Light placement header, a single pattern in one click from the Patterns tab, or the whole vehicle setup from the Marketplace toolbar. Each becomes Update and Un-share once published, so a listing is replaced in place and keeps its id and import count rather than being duplicated
    • A vehicle can carry its own configuration — drop a tels.json inside the vehicle resource and that becomes the vehicle's home, so the lighting travels with the car instead of living in tELS. Export moves an existing configuration out to a vehicle resource
    • Wildcard model keys — one configuration covers a family of models, and a vehicle can be marked read-only so a shared pack is not edited by accident
    • Stream Deck plugin — built and published from the production build, and it connects on its own with nothing to configure. Keys mirror live state
    • Stealth run-dark mode — everything off, including the brake and reverse lights the game drives itself
    • Per-rule engage and release debounce — a trigger can be made to settle before it fires and before it lets go, which is what stops a rule chattering on a noisy condition
    • Junction preemption, turn signals and a key lock among the trigger conditions, plus a reminder when a vehicle is left lit
    • Quick settings in /tels — the handful of per-player options that were buried, on one tab
    • tels_diag — one paste-safe line describing the install, for when something needs reporting
    • HUD layout packs carry their own manifest, and a layout installed from the marketplace renders without waiting for a restart
    ChangedChanges8
    • tLib v1.0 or newer is required. The editor is built on tLib's design tokens, and configuration, marketplace, telemetry and keybinds all route through it
    • The two shipped HUD layouts are renamed to CRX-600 (was WCC) and SPX-1800 (was WCC2), matching the naming used across tRadio, tDetector and tRadar. There is no alias — a server pinned to the old name must pick the new one
    • data.json is no longer shipped. It is seeded on first boot, which stops an update overwriting a server's vehicles, and demo mode is honoured so a demo install cannot write
    • Runs on both FiveM Enhanced and Legacy
    • Black is a real colour in the pattern grid. An empty cell and a cell painted black are different things to an overlay — one lets the base pattern through, the other holds the LED dark — and they used to draw identically
    • Deleting a pattern is one click. It was a two-click confirm whose armed state was invisible in game, in front of an action that Ctrl+Z already reverses and that nothing writes until you save
    • A published listing records who published it — the Discord, Cfx and Steam identifiers behind a listing, for attribution and moderation. IP addresses are no longer sent or stored
    • The NUI bundle is obfuscated in release builds, and every shipped webfont carries its licence
    FixedFixes6
    • Transitioning cells never completed their cross-fade in the editor. A long fade rendered at a fraction of itself, which looked like a hard flicker, while the same pattern played correctly in normal gameplay
    • The pattern preview strip could not show a fade at all — it had no opacity channel, so a dimming LED stepped on and off
    • The transition gradient in the pattern grid did not reach the cell's edges, so a fade read as a band with an unfinished wash under it
    • Saving now waits for an answer before closing. A refused save used to clear the undo history and close the editor anyway, discarding the work it had just refused
    • An unreadable data.json silently erased the server's defaults instead of refusing to load
    • One bad vehicle model reprinted the same error every five seconds
  7. Release

    tRadar 1.0

    #

    6 changes

    About tRadar

    First release. tRadar is a traffic radar for FiveM: a counting unit on the dash, front and rear antennas, moving and stationary modes, a plate reader, and a BOLO list — standalone, with no database.

    ChangedWhat it does6
    • A real counting unit, placed in the car with a 3D gizmo and rendered as a 3D prop with a live screen, not a 2D overlay
    • Front and rear antennas with fastest-target tracking, lock and release, and positional audio from the head itself
    • A plate reader, off by default, with a BOLO list and a radar log
    • An in-car manual, so the controls are readable without leaving the vehicle
    • Faceplates from the marketplace install from the panel and render without a restart
    • A Stream Deck plugin, built and published from the production build, which connects on its own with nothing to configure
    ChangedRunning it0

    tLib v1.0 or newer is required, and it is the only dependency — no framework code and no database. Six frameworks and nine inventories resolve out of the box for job- or item-gated access; ACE and open access need neither.

    config.lua, server/sv_access.lua and every layout are left outside escrow.

  8. Release

    tUnit 2.0

    #

    7 changes

    About tUnit

    tUnit is rewritten. 1.0 spawned a 3D prop per digit and you positioned them by editing a Lua file; 2.0 draws the text as a single quad from a DUI texture atlas, spawns nothing, and is configured in game with a gizmo. tLib v1.0 or newer is now required — 1.0 was standalone.

    ChangedWhat changed7
    • Nothing is spawned and nothing is streamed. 1.0 attached a real object per character from the bundled digit props. 2.0 draws one quad per element
    • Any character, not just 0–9. 24 per element — letters, digits and punctuation — so a callsign or a department name works, not only a number
    • Any font. 1.0 had one. Three display faces ship, and your own webfont drops into web/fonts and is named in Config.fonts
    • Placed in game, not in a file. /tunitedit positions, rotates and scales each element on the car with a 3D gizmo, down to individual characters, with an undoable draft. The Lua position config is gone
    • 16 text elements per vehicle model, each independent
    • Values resolve on the server and publish to the vehicle's state bag, so every player reads the same car the same way. The value comes from a function you write
    • Layouts can be shared between servers and imported from inside the editor
    ChangedUpgrading from 1.00

    Your config.lua positions do not carry over, and there is no migration. The two do not describe the same thing: 1.0 placed props by offset from a bone, 2.0 places quads with a full transform. Rebuild each vehicle in /tunitedit — it is a few minutes per model and nothing is edited in a file afterwards.

    The old digit props are no longer streamed, so anything of your own referencing those models by name needs updating.

  9. Release

    tLib 1.0

    #

    About tLib

    First tagged release since v0.6 (May 2026). This is the version the documentation and every t* resource now pin against.

    Marketplace — browse runs server-side, installs are recorded in a ledger, and a refusal says what an operator can do about it. Panel previews render live.

    Dialogs — a display field type, rows and maxLength. Action rows now actually fire; before this they were inert everywhere. Feedback is reachable from any dialog.

    HUD — keyboard-operable keys, a reduced-motion switch that reaches the whole tree, and synchronous placement.

    Worth knowing if you build layouts: the HTML minifier was stripping attribute quotes, so every quote-anchored parser read a release build's layout as having no attributes at all. Dev builds were unaffected, which is why it survived this long. Both the minifier and the parsers are fixed.

    Also: boot logging no longer grows with content, and the interface font ships with its licence.

    Install — drop tLib.zip into your resources folder and ensure tLib before anything that depends on it. Documentation

    Read the full update on tLib
  10. Release

    tRadio 6.3

    #

    42 changes

    About tRadio

    tRadio v6.3 is a big one — 911 emergency calling end-to-end, a tower and 3D-speaker system, an official Stream Deck plugin, satellite-server federation, deeper dispatch theming with a new online Studio, LB Phone/Radio and ImperialCAD integrations, and a large batch of stability and audio fixes.

    AddedFeatures10
    • 911 emergency calls — /911 command with ringing/animation and ESC to hang up, plus a dispatch Call Queue (poppable into its own window on the desktop app)
    • Tower config + 3D speakers — place signal towers and speakers around the map and trigger tones from the speakers via the dispatch panel
    • Official Stream Deck plugin — an Elgato Stream Deck plugin (also Stream Deck Mobile and OpenDeck) that mirrors and drives both the in-game radio and the web dispatch panel — live channel/zone, who's talking, scanning, PTT, cross-channel dispatch, volume, and 911 — with no separate desktop app required
    • Satellite server federation — satellite servers now auto-sync zones, alerts, codeplugs, tones, and settings from the host every few minutes (previously manual-restart-only), and radio state is safe against duplicate server IDs across federated servers
    • Geo zones & channel auto-switching — geographic zones you place on the map (alongside speakers and towers) with location-based channel auto-switching, plus a per-player opt-out toggle in the /tradio settings dialog
    • Hide a zone from dispatch — a per-zone toggle that withholds a zone from the dispatch panel's channel list, transmission log, and live counts (great for civilian/criminal/business RP radio) without changing its in-game behavior or codeplug access
    • "Always Full Signal" admin setting — disable signal degradation without deleting your tower config
    • "Simultaneous Scan Audio" setting — hear every scanned channel at once instead of one muting the rest
    • Transmission playback (experimental) — play back a transmission directly from the dispatch panel, so a call you missed or couldn't quite hear can be replayed instead of lost
    • Fuller dispatch theming — an expanded v2 theme SDK (design-token tiers, component slots, requires compatibility, and declarative data-rd-* templates) plus a new online Theme Studio / creator at timmygstudios.com
    AddedIntegrations3
    • LB Phone / LB Radio — mirrors tRadio status into LB Radio's phone app
    • LB Phone 911 dial-in — call 911 from LB Phone in addition to the /911 command
    • ImperialCAD — auto-creates and closes calls in ImperialCAD when a 911 call comes through tRadio
    ChangedChanges3
    • Theme authoring moved online — the in-panel Theme Studio and the /theme-dev harness have been removed; themes are now authored in the external Studio (with a documented devtools install flow) against the v2 theme SDK. Existing installed themes keep working; theme authors should move to the online Studio.
    • Vehicle 3D radio audio now defaults on, and only emergency vehicles register as a 3D radio source — ordinary vehicles no longer do. The activation distance is also now admin-configurable instead of a fixed value.
    • FiveM Enhanced compatibility — admin-panel file writes and model/sound discovery now work on FiveM Enhanced (via a Node filesystem bridge) instead of failing or spamming the console.
    FixedFixes26
    • Server-side enforcement that a player's codeplug actually allows a channel before they can join or transmit, even from a modified client
    • Admin panel warns when a new zone isn't wired into any codeplug, with a one-click fix
    • Voice-normalization pass across the audio engine for more consistent volume across speakers and channel types
    • Fixed the radio going permanently unresponsive after a lag spike/disconnect and never auto-reconnecting
    • Fixed P25 (digital) voice being quieter than analog voice at the same volume
    • Fixed an occasional "ghost" tail of audio playing after a transmission had already ended
    • Fixed the toggle-radio keybind not closing the radio when it was already open
    • Fixed Escape closing the whole radio instead of just the open Settings panel
    • Fixed disabling 3D audio not stopping sounds that were already playing
    • Fixed "Man Down" auto-alert briefly re-enabling itself on load despite the codeplug disabling it
    • Fixed audio/P25 effect settings received right after initial connect not applying until reconnect
    • Fixed the auto-transmit opt-out setting doing nothing
    • Fixed panic alert repeats re-keying the mic on every repeat instead of once
    • Fixed reconnecting to a patched channel showing a stale "ON: freq" instead of "PATCH ACTIVE"
    • Fixed the panic button wrongly rejecting "not in channel" right after switching to it
    • Fixed listen-only players not receiving dispatcher alert tones/banners
    • Fixed a modified client being able to falsely spoof a "transmitting" state
    • Fixed other players' names showing as "Unknown" due to a join-time race
    • Fixed dispatch panel actions (alerts, messaging, callsign, disconnect) failing silently on error
    • Fixed actions getting misapplied to the wrong dispatcher when multiple dispatchers are connected
    • Fixed "Bonking" settings in the admin panel silently failing to save
    • Fixed the Marketplace tab stalling the admin panel up to 30s when unreachable
    • Fixed idle-session logout using a jarring native popup instead of an in-panel dialog
    • Fixed dispatch panel "Logout" not fully invalidating the session, allowing silent re-login on shared machines
    • Hardened dispatch session tokens to be HttpOnly instead of readable by JS
    • Fixed GPS blips not updating immediately on channel switch and getting stuck on the map after leaving
  11. Release

    tRadio 6.2

    #

    7 changes

    About tRadio

    tRadio v6.2 adds multi-server connection support so several game servers can share one voice server and dispatch panel, full localization through an editable config/locales.json, per-channel GPS blip colour overrides that still fall back to the codeplug, separated TX and RX LED colours on the radio display, the admin panel URL in the startup banner, and a callsign restriction and sync fix.

    AddedFeatures5
    • Multi-server connection support — several game servers can now run against one shared voice server and dispatch panel, so dispatchers see every unit from every server in a single place instead of working one panel per server. The host runs the backend; satellite servers point at it and federate their player, panic, tone, and alert state over HTTP, with requests signed using the shared authToken.
    • Localization support — every player-facing string now lives in an editable config/locales.json rather than being baked into the resource. The file ships unencrypted and survives updates untouched, and the dispatch and admin panels read the same string table, so one translation pass covers the in-game radio and the web surfaces together.
    • Per-channel GPS blip colour overrides — a channel can now specify its own GPS blip colour, applied only to players monitoring that channel. Left unset, the colour falls back to the codeplug's own GPS colour exactly as before, so this is purely additive: existing setups keep their codeplug-driven colours until a channel deliberately overrides one.
    • Separated TX and RX LED colours — the radio display's status LEDs now use distinct colours for transmitting (red) and receiving (amber) instead of sharing one indicator colour, so it reads at a glance whether you are the one talking.
    • Admin panel URL in the startup message — the startup banner now prints the admin panel address alongside the dispatch panel address, putting the /admin URL in the server console at boot instead of leaving it to be assembled by hand from the configured host and port.
    FixedFixes2
    • Fixed a callsign bug affecting both restriction enforcement and keeping callsigns in sync between the dispatch panel and connected clients.
    • A batch of smaller bug fixes across the radio UI, the dispatch and server bundles, and the shipped layouts.
  12. Release

    tELS 0.3

    #

    3 changes

    About tELS

    tELS v0.3 ties lighting patterns to a vehicle's fitted variant parts — modkits, mods, and GTA vehicle extras — so a pattern only drives the LEDs that physically exist on the spawned vehicle, and fixes a set of state-synchronisation problems that could leave one player's view of a vehicle's lights and siren out of step with everyone else's.

    AddedFeatures1
    • Modkit, mod and extra integration for patterns — patterns can now take a vehicle's fitted variant parts into account rather than assuming every vehicle of a model is identical. An LED bound to a GTA vehicle extra only renders when that extra is actually enabled on the spawned vehicle, so a single shared configuration can cover a model whose lightbar, visor bar, or rear cluster differs between builds instead of needing a separate vehicle entry for each one.
    FixedFixes2
    • Fixed state-synchronisation issues that could leave a vehicle's lighting, siren, and stage state out of step between the driver and the players around them, particularly when network-entity ownership of the vehicle changed hands.
    • A batch of smaller fixes and refinements across the HUD, the editor interface, and the shipped layouts.
  13. Release

    tRadio 6.1

    #

    8 changes

    About tRadio

    tRadio v6.1 introduces the codeplug system as the single place radio access is defined — demoting NAC IDs to cosmetic labels — alongside pre-configured inventory item integration, per-vehicle and per-livery radio model overrides, dispatch PTT groups with their own bindings, and codeplug-defined scan list presets, plus fixes for a UI render failure and the Radio FX sliders.

    AddedFeatures5
    • Codeplug system — a codeplug is a radio personality: which channels a unit can transmit on, which it can only scan, which radio models it may carry, which features are enabled, and what its emergency button does. Codeplugs are built in the admin panel and mapped to jobs and grades, which makes them the one place radio access is defined instead of it being spread across several config surfaces. As part of this, NAC IDs are now mostly cosmetic — a NAC shows on the radio screen and the dispatch panel but gates nothing; channel access is decided entirely by codeplugs and permission grants. Read the docs.
    • Inventory and item pre-configuration — the radio can be gated behind an inventory item with the integration already written for you. The item is registered as usable automatically for the supported inventories and frameworks, so using it from the inventory opens the radio with no bridging code to write. Detection defaults to automatic, and the requirement can be bypassed with a permission grant for staff.
    • Per-vehicle and per-livery model overrides — a codeplug can now override which radio model a player is handed for a specific vehicle spawncode, or for a specific spawncode and livery combination, taking priority over the per-context defaults. A marked unit and an unmarked unit of the same vehicle can therefore carry visibly different radios without either player changing anything.
    • Dispatch PTT groups and bindings — a group is a named set of channels that a dispatcher arms so their next transmission fans out to every channel in it at once, rather than repeating the same message channel by channel. The panel shows a groups bar whenever at least one group exists, and each group can be given its own PTT key, as can each individual channel card for cross-channel transmits without leaving the channel you are monitoring.
    • Scan lists and memory — codeplugs can define named scan list presets that a player loads in one click from the radio settings dialog or from the radio's own menu, instead of adding scanned channels one at a time. Each entry in a preset carries a priority tier, so a loaded list keeps high-priority traffic ahead of the rest.
    FixedFixes3
    • Fixed the radio UI failing to render, which surfaced as a length error rather than a usable radio.
    • Fixed the Radio FX sliders in the admin panel having no effect on the transmitted audio chain.
    • A batch of smaller bug fixes across the radio UI, the dispatch and server bundles, and the shipped layouts.
  14. Release

    tRadio 6.0

    #

    16 changes

    About tRadio

    tRadio v6.0 ships a new external admin panel, a dispatch panel theming system, man-down alarms and spoken zone and channel announcements, user-definable background transmission FX including a K9 mode, per-channel PTT bindings that survive a right-click to unbind, patches that persist across restarts, and pre-configured support for every major framework.

    AddedFeatures11
    • New external admin panel — server configuration moves out of config files and into a browser-based panel served by the resource itself. Zones, channels, codeplugs, alerts, audio settings and props are all edited there, and changes reach every connected client immediately rather than waiting for a restart.
    • Dispatch panel theming system — the dispatch panel can now be restyled rather than only used as shipped, with several themes selectable directly in the panel's settings and no install step for the ones that ship built in.
    • Man down alarm functionality — an optional alarm that watches for a unit being down or stationary too long, plays a warning tone at 45 seconds, and escalates to a full emergency broadcast 20 seconds after that if nothing changes. Both delays are configurable, the feature is gated per codeplug, and players toggle it themselves when their codeplug allows it.
    • Voice announcement system — the radio speaks the zone and channel name aloud as you switch between them, so a unit changing channels does not have to look at the radio screen to confirm where they landed. Codeplug-gated and on by default for new players.
    • Add your own background transmission FX modes — the background sound other players hear behind your voice is driven by a hook that returns a mode string, and that string is mapped to a WAV file. Three modes ship mapped; returning any other string, adding the mapping, and uploading the file is all that is needed to add your own, and an unmapped mode simply plays nothing rather than erroring.
    • K9 background audio FX — a K9 mode ships as one of those defaults, triggering when a dog ped is riding in a passenger seat so the animal is audible behind the handler's transmissions. The list of ped models that count is configurable, so custom K9 peds can be added.
    • Patches persist over restarts — patching bridges two or more channels so every patched unit hears the others, and a patch now survives a server restart instead of having to be rebuilt afterwards. Patched channels carry a badge so it is obvious which are bridged.
    • Per-channel PTT bindings — each channel can be given its own push-to-talk key, so a dispatcher can transmit on a specific channel without first switching to it.
    • Right-click to unbind channel PTT — key capture fields accept a click to record a key and a right-click to clear it, registering the action as unbound. Removing a binding no longer requires setting it to something else first.
    • Separate channel and transmitter UI bindings — the monitored-channel transmit control and the per-channel transmit controls are bound independently rather than sharing one binding.
    • Improved PTT keybind support — push-to-talk and the other radio actions are registered as proper FiveM key mappings, so players rebind them from the game's own key bindings screen rather than through a resource-specific menu.
    AddedIntegrations1
    • QB, ESX, Qbox, Ox and ND Core come pre-configured — the framework is auto-detected at startup and the framework-specific job lookup is already written, so the common case needs no bridging code. The detection order and the resource names it probes for are configurable, and a custom mode is available for anything not on the list.
    FixedFixes4
    • Fixed the 3D prop's screen icons failing to load, leaving the dashboard radio prop's display incomplete.
    • Fixed push-to-talk not activating or triggering in-game voice chat.
    • Fixed the 3D Prop Editor not saving placements to data.json, so edits were lost rather than applied.
    • Fixed tones not playing after the radio UI had been closed.
  15. Release

    tELS 0.2

    #

    1 change

    About tELS

    The first beta release of tELS, an emergency vehicle lighting system for FiveM built around configuring a vehicle from inside the vehicle rather than by editing and reuploading pattern files. This release is available to buy on request rather than through a public listing — open a ticket to purchase.

    AddedFeatures1
    • Beta release of tELS — emergency lighting configured in the vehicle instead of in a file. Rather than compiling patterns into a resource and reuploading it for every flash-rate change or LED adjustment, tELS puts the lights, the patterns that drive them, and the conditions that trigger them behind an in-game editor, and pushes a save out to connected clients. Being a beta, expect the configuration format and the editor to keep moving between releases. Purchasing is by ticket — open one and it will be handled from there.
  16. Release

    tLib 0.2

    #

    4 changes

    About tLib
    • Settings dialog is movable
    • Improved resource / start detection
    • New startup banner from @Pizzakaufen
    • HUD templating improvements
    Read the full update on tLib
  17. 2025