← Shop · agencyg.de
Ecosystem Changelog

Every release, one feed

Each Agency-* resource ships its own release notes. Here they all land in one timeline so you can see at a glance how often we ship.

Agency-Essentials
V.1.2.0
💼 Agency-Essentials v1.2.0 — Manage your server from your phone: the free Agency Companion app integration is here, plus a unified 25-language locale pack!

💼 Agency-Essentials

📱 Companion App — Reports & Elevator now link to the free Agency Companion app via QR code, manage everything from your phone.
🌍 25 Languages — the entire bundle now ships with a unified 25-language locale pack, nothing hardcoded anymore.
🐛 Fixed — Database table collision in the Elevator module resolved on clean installs.

📱 Companion App — connect your phone
🛗 Elevator
• New /aeconnect command — pulls up a QR code anyone can scan to link the free Agency Companion app
• Browse every building on the server and set a GPS route straight from your phone
• Smooth fade in/out, draggable window — plus a pairing card right inside the /aelevator menu
📋 Reports
• A QR pairing card inside the report menu (player & admin view)
• Read, answer, claim, close and manage tickets from the app
• Staff rights are re-checked on every action — the QR can never grant admin
💼 Essentials Admin Pairing
• Scan the admin QR code on the /aessentials Global tab to link the whole suite
• Flip module kill-switches, manage doorlocks, and view reports straight from your phone
Changes (cont.)
🌍 Full Localization
• Menus, Doorlock, Companion cards and every module now ship in 25 languages
• Set the language in the config (default English) — nothing is hardcoded anymore

🐛 Fixes & Polish
• Database Table Collision: Fixed a key schema conflict in the Elevator module by separating companion app settings into agency_elevator_companion_settings. This eliminates startup console errors on clean installations.
• Module toggles now persist correctly — turn a module off and it stays off after reopening the menu
• Cleaner Companion QR windows and smoother menu animations

🔔 Agency-Notify / ⏳ Agency-Progressbar
• No functional changes — both modules untouched in this release
Changes (cont.)
🔗 Direct Deep-link
• Bundle: https://agency-script.tebex.io/package/essentials

♻️ Backward Compatible
• Existing configurations, doorlocks, reports, progressbars, and companion pairings remain completely untouched. Table migration happens automatically.
• The companion integration is optional — set the companion Enable flags to false in the config and nothing changes.

Installation
• Replace all files in your Agency-Essentials folder (or overwrite them):
- fxmanifest.lua
- config.lua (new Companion config blocks)
- client/ (all updated modules & companion managers)
- server/ (all updated modules & companion managers)
- shared/ (all updated localization shims)
- html/ (updated NUI files for all modules)
- sql/install.sql (updated database schema)

• No manual database changes required — all tables are created automatically on the first start • Restart the resource via txAdmin or ensure Agency-Essentials.
Agency-Elevator
V.1.3.1
🛗 Agency-Elevator v1.3.1 — Database collision fix: Resolved key database conflict and eliminated startup console errors on clean installs.

🛗 Agency-Elevator

🐛 Fixed • Database Table Collision • Renamed the companion settings table to agency_elevator_companion_settings to resolve a conflict with the UI settings table. This completely eliminates the red "Unknown column 'id'" query error in the console on server boot.

🌍 Improved • Code Quality & Syntax • Verified all Lua files for strict syntax compliance. No more warnings or errors on boot.
Changes (cont.)
🏷️ Improved • Branding Standards • Conformed the fxmanifest.lua author field to "Agency Scripts" and added the mandatory Agency advertising banner for free resources.

💾 Improved • SQL Script • Added the agency_elevator_companion_settings table definition to the sql/install.sql file for clean, manual database imports.
♻️ Backward Compatible • Existing elevators, UI configurations, and companion pairings remain completely untouched. The table migration happens automatically.

Installation • Replace these files in your Agency-Elevator folder (or overwrite them):

fxmanifest.lua
server/companion.lua
sql/install.sql

• No manual database changes required — the new companion table is created automatically on the first start • Restart the resource via txAdmin or ensure Agency-Elevator.
Agency-Admin
V.1.4.0
📋 Agency-Admin v1.4.0 — Run your whole admin panel from your phone: the free Agency Companion app now links to Agency-Admin, on iOS & Android.

📋 Agency-Admin

✨ New — Agency Companion App • Your full admin control panel, right on your phone — moderate your server from anywhere • Its OWN QR code, fully independent of Agency-Phone & Agency-Elevator — Admin pairs on its own • ADMIN-ONLY pairing: only staff can link a device — run /aaconnect (alias /aac) for the QR, or find it inside the panel — then scan it (or type the 6-digit code) in the free Agency Companion app • The pairing token carries ZERO rights of its own — every single action is re-validated against your live permissions on each request

📱 New — Now on iOS & Android • The free Agency Companion app is live on the App Store and Google Play • Full download & setup guide at companion.agencyg.de • One app links to all your Agency scripts — Admin, Phone, Pad, Elevator, Reports & more
🛡️ New — Moderate From Anywhere • See the live player list, open any player, and review bans & ranks from your phone • Run your full moderation toolkit — kick, ban, freeze, spectate, goto / bring, heal / revive and more — all through the same guarded pipe as the in-game panel • Log every paired device out instantly with one tap
Changes (cont.)
🖥️ New — Live Server Console, In Your Pocket • Tail the server console live and run commands straight from the app • Commands execute as YOUR own client, so player-targeted commands (kill, revive, teleport…) just work • Smart autocomplete suggests your server's scanned + framework commands, fully localized
🔒 New — Security-First by Design • Admin-ONLY: a non-staff device can never pair, and the QR can never elevate anyone • Every action re-checks your permission LIVE — online: full ACE + framework + rank + per-player override; offline: identifier-based against your live rank tables (pure ACE-only admins must be online) • Double-gated: the request is checked once at the companion layer and AGAIN inside the panel's action pipe • Built-in rate-limiting on remote actions

🔑 New — 6-Digit Pairing Code • Can't scan? Type the 6-digit code shown under the QR into the app instead • The code stays visible even while a device is linked, so you can add another phone anytime • Codes expire after Config.Companion.TokenTTL (default 5 min) for safety

🌍 Improved — Full Localization • All new app, pairing, console and UI texts translated into all 13 supported languages: EN, DE, CS, ES, FR, IT, NL, PL, PT, RO, RU, SV, TR
Changes (cont.)
🛡️ Fixed — Hardened Server Events • Closed 4 previously-unguarded net events that could be triggered regardless of the panel — give-weapon, spawn-object, edit-object and claim-vehicle-ownership now all require panel access AND the matching action permission, checked server-side • The 6-digit pairing code now always renders under the QR in the panel • Cleaner companion panel open/close behaviour and various smaller NUI polish

♻️ Backward Compatible • All your existing ranks, permissions, bans and panel settings keep working untouched — no migration, no data loss • The companion integration is OPTIONAL — set Config.Companion.Enable = false and nothing changes • All companion pairing tables are created automatically on first start — no manual SQL

Installation • Replace your Agency-Admin folder with the new build (or overwrite these files):

fxmanifest.lua
config.lua (review the Config.Companion block — safe to keep your own)
client/main.lua
client/companion.lua
server/db.lua
server/main.lua
server/companion.lua
server/companion_relay.lua
web/index.html
web/style.css
web/app.js
web/companion.js
web/qrcode.min.js
shared/locale.lua
locales/ (all language files)
• No manual database changes — all tables are created automatically • Needs oxmysql (already required) • Restart the resource via txAdmin or ensure Agency-Admin.
Agency-Banking
V.1.2.0
📋 Agency-Banking v1.2.0 — Your bank in your pocket: the free Agency Companion app now links to Agency-Banking, on iOS & Android.

📋 Agency-Banking

✨ New — Agency Companion App • A full premium banking dashboard right on your phone — balance, transfers, cards, fixed deposits & ATM PIN • Its OWN QR code, fully independent of Agency-Phone & Agency-Elevator — Banking pairs on its own • Pair in seconds: run /abconnect (alias /abc) for a QR anyone can scan, or find the same QR inside the bank menu — then scan it (or type the 6-digit code) in the free Agency Companion app • The pairing token carries no banking rights of its own — every money action is re-validated server-side on each request

📱 New — Now on iOS & Android • The free Agency Companion app is live on the App Store and Google Play • Full download & setup guide at companion.agencyg.de • One app links to all your Agency scripts — Banking, Phone, Pad, Elevator, Reports & more
💳 New — Your Bank, On the Go • Check your balance, cash and recent transactions any time • Transfer money to another account straight from your phone • Open a fixed deposit and claim it once it matures — right from the app • Create, delete and switch your debit cards (up to 3) • Set or change your ATM PIN on the go

🔒 New — Money-Safe by Design • Every money action runs through the EXACT same validated path as the in-game bank (AgencyBankingBridge) — no shortcuts, no second code path • Reads work offline, but any write (transfer, deposit, PIN) requires the player to be online — so a paired phone can never move money on its own • The server re-checks your account and balance on every single request
Changes (cont.)
✨ New — Ad-Free Premium • Because Agency-Banking is a paid script, its module in the app is completely ad-free — a clean, premium dashboard with no promo banners, ever
🔑 New — 6-Digit Pairing Code • Can't scan? Type the 6-digit code shown under the QR into the app instead • The code stays visible even while a device is linked, so you can add another phone anytime • Codes expire after Config.Companion.TokenTTL (default 5 min) for safety

🌍 Improved — Full Localization • All new app, pairing and UI texts translated into all 13 supported languages: EN, DE, CS, ES, FR, IT, NL, PL, PT, RO, RU, SV, TR

🐛 Fixed • Hardened fixed-deposit claiming — a deposit can no longer be claimed early or double-claimed from the app; every claim is re-validated server-side • The 6-digit pairing code now always renders under the QR in the bank menu • Cleaner companion panel open/close behaviour and various smaller NUI polish
Changes (cont.)
♻️ Backward Compatible • All your existing accounts, cards, fixed deposits and transactions keep working untouched — no migration, no data loss • The companion integration is OPTIONAL — set Config.Companion.Enable = false and nothing changes • All companion pairing tables are created automatically on first start — no manual SQL

Installation • Replace your Agency-Banking folder with the new build (or overwrite these files):

fxmanifest.lua
config.lua (review the Config.Companion block — safe to keep your own)
client/main.lua
client/companion.lua
server/main.lua
server/companion.lua
server/companion_relay.lua
html/index.html
html/script.js
html/style.css
html/js/companion.js
html/js/qrcode.min.js
locales/ (all language files)
• No manual database changes — all tables are created automatically • Needs oxmysql (already required) • Restart the resource via txAdmin or ensure Agency-Banking.
Agency-Doorlock
V.1.1.0
📋 Agency-Doorlock v1.1.0 — Control your doors from your phone: the free Agency Companion app now links to Agency-Doorlock, on iOS & Android.

📋 Agency-Doorlock

✨ New — Agency Companion App • Lock, unlock and manage your doors straight from your phone — no need to stand at the keypad • Its OWN QR code, fully independent of Agency-Phone & Agency-Elevator — Doorlock pairs on its own • Pair in seconds: run /adlconnect (alias /adlc) for a QR anyone can scan, or find the same QR inside the /adoorlock setup menu — then scan it (or type the 6-digit code) in the free Agency Companion app • The pairing token can NEVER grant admin — every staff action is re-validated server-side against your existing setup permission on each request

📱 New — Now on iOS & Android • The free Agency Companion app is live on the App Store and Google Play • Full download & setup guide at companion.agencyg.de • One app links to all your Agency scripts — Doorlock, Phone, Pad, Elevator, Reports & more
🎮 New — Players, On the Go • See every door you have access to in one list, with its live locked / unlocked state • Lock or unlock a door you own when you're nearby — the same access rules as in-game apply • Set a GPS waypoint to any door from the app to find it fast
Changes (cont.)
🛡️ New — Admins, On the Go • Override ANY door on the server from anywhere — no distance limit, a true remote security override • Delete doors you no longer need right from your phone (static config doors stay protected) • Open the in-game door setup menu remotely to add or edit doors • Every admin action re-checks your Config.SetupPermission server-side — the QR/pairing can never elevate anyone

🔑 New — 6-Digit Pairing Code • Can't scan? Type the 6-digit code shown under the QR into the app instead • The code stays visible even while a device is linked, so you can add another phone anytime • Codes expire after Config.Companion.TokenTTL (default 5 min) for safety
🌍 Improved — Full Localization • All new app, pairing and UI texts translated into all 25 supported languages: EN, DE, BG, CS, DA, EL, ES, FI, FR, HR, HU, IT, JA, KO, NL, NO, PL, PT, RO, RU, SK, SV, TR, UK, ZH

🐛 Fixed • The 6-digit pairing code now always renders under the QR in the /adoorlock setup menu • The companion QR card collapses/expands cleanly and no longer overlaps the door list • Cleaner panel open/close behaviour and various smaller NUI polish
Changes (cont.)
♻️ Backward Compatible • All your existing doors, keybinds, sounds and configs keep working untouched — no migration, no data loss • The companion integration is OPTIONAL — set Config.Companion.Enable = false and nothing changes • Stale-config-safe: even if an older config.lua has no Config.Companion block, the feature stays enabled on safe defaults — a leftover config can never silently kill it • All companion pairing tables are created automatically on first start — no manual SQL
Installation • Replace your Agency-Doorlock folder with the new build (or overwrite these files):

fxmanifest.lua
config.lua (review the Config.Companion block — safe to keep your own)
client/main.lua
client/companion.lua
client/configurator.lua
server/main.lua
server/companion.lua
server/companion_relay.lua
html/index.html
html/script.js
html/style.css
html/js/companion.js
html/js/qrcode.min.js
shared/locales.lua
shared/locale/ (all language files)
• No manual database changes — all tables are created automatically • Needs oxmysql (already required) • Restart the resource via txAdmin or ensure Agency-Doorlock.
Agency-ReportsV2
V.2.2.0
📋 Agency-Reports-V2 v2.2.0 — Manage your reports from your phone: the free Agency Companion app is here, now on iOS & Android.

📋 Agency-Reports-V2

✨ New — Agency Companion App • Handle player reports straight from your phone — you don't need to be at your PC • Pair in seconds: open the report window (/areport), hit "Link phone", then scan the QR — or type the 6-digit code — in the free Agency Companion app • The pairing token can never grant admin — every staff action is validated server-side on each request

📱 New — Now on iOS & Android • The free Agency Companion app is live on the App Store and Google Play • Full download & setup guide at companion.agencyg.de • One app links to all your Agency scripts — Reports, Phone, Pad, Elevator & more

🎮 New — Players, On the Go • Create a new report and follow its status from anywhere • Full live chat with staff — messages sync both ways in real time, with the complete history
🛡️ New — Staff, On the Go • See the live report queue and open any ticket from your phone • Claim, close, delete and reply — plus goto / bring / heal the reporter — all from the app • Every action respects your existing admin permissions, checked server-side

🔑 New — 6-Digit Pairing Code • Can't scan? Type the 6-digit code shown under the QR into the app instead • The code stays visible even while a device is linked, so you can add another

🌍 Improved — Full Localization • All new app, pairing and UI texts translated into all 13 supported languages: EN, DE, CS, ES, FR, IT, NL, PL, PT, RO, RU, SV, TR

🐛 Fixed • The 6-digit pairing code now always renders under the QR in the report window • Cleaner companion panel open/close behaviour • Various smaller NUI polish
♻️ Backward Compatible • Existing reports, chats and webhooks keep working untouched — no migration, no data loss • The companion integration is optional — leave it disabled and nothing changes • All pairing tables are created automatically on first start — no manual SQL

Installation • Replace your Agency-Reports-V2 folder with the new build (or overwrite these files):

fxmanifest.lua
config.lua (review the Config.Companion block — safe to keep your own)
client/main.lua
client/companion.lua
server/main.lua
server/companion.lua
server/companion_relay.lua
html/popup.html
html/js/companion.js
html/js/qrcode.min.js
locales/ (all language files)
• No manual database changes — all tables are created automatically • Needs oxmysql (already required) • Restart the resource via txAdmin or ensure Agency-Reports-V2.
Agency-Elevator
V.1.3.0
🛗 Agency-Elevator v1.3.0 — Control your elevators from your phone: the free Agency Companion app is here, now on iOS & Android.

🛗 Agency-Elevator

✨ New — Agency Companion App • Browse and control every elevator on your server straight from your phone • Pair in seconds: run /aeconnect, then scan the QR code — or type the 6-digit code — in the free Agency Companion app • Call any floor, step one floor up/down, or drop a GPS route to a building from anywhere • The pairing token can never grant admin — every action is re-checked server-side on each request

📱 New — Now on iOS & Android • The free Agency Companion app is live on the App Store and Google Play • Full download & setup guide at companion.agencyg.de • One app links to all your Agency scripts — Elevator, Phone, Pad, Reports & more
🎮 New — Live In-App Control • The panel always shows the current floor and plays a real-time travel animation • ▲/▼ move one floor; tap any floor in the grid to go straight there • Detects both app-initiated and normal in-game trips, so the live view never desyncs

🔒 New — Per-Elevator Access Control • Restrict an elevator to specific players — only they can control it, in-game and in the app • Players are stored by a permanent ID, so access survives a server restart even when everyone gets a new session ID • Leave the list empty and the elevator stays open to everyone (per-floor job locks still apply)

🎚️ New — Per-Elevator Loading Screen • Turn the travel/fade screen on or off per elevator with a single checkbox in the configurator • Left untouched, it follows your global Config.ScreenEffect
🛠️ New — Manage Elevators From the App (Admin) • Create, edit and delete elevators from your phone — including AgencyAI floor auto-detection • Teleport straight to any building or floor for quick edits • Every admin action is permission-gated server-side

🌍 Improved — Full Localization • All new app, pairing and configurator texts translated into all 13 supported languages: EN, DE, FR, ES, PT, IT, NL, PL, TR, CS, RO, RU, SV

🐛 Fixed • Travel overlay & current-floor display now stay perfectly in sync during live control • Cleaner /aeconnect open/close animation — no more pop-in or cut-off fade • A 6-digit code now always shows under the QR (even while a device is already linked, so you can add another) • Various smaller NUI & ESC-handling polish
♻️ Backward Compatible • Existing elevators keep working untouched — no migration, no data loss • The companion integration is optional — leave it disabled and nothing changes • The new per-elevator settings + pairing tables are created automatically on first start — no manual SQL

Installation • Replace your Agency-Elevator folder with the new build (or overwrite these files):

fxmanifest.lua
client/main.lua
client/configurator.lua
client/companion.lua
server/main.lua
server/companion.lua
server/companion_relay.lua
html/index.html
html/script.js
html/style.css
html/js/companion.js
shared/locale/ (all language files)
config.lua (new Config.Companion block — review, then keep your own settings)
• No manual database changes — all tables are created automatically • Needs oxmysql (already required) • Restart the resource via txAdmin or ensure Agency-Elevator.
Agency-Essentials
V.1.1.0
Changes
🔒 New Module — Agency-Doorlock joins the bundle as the 5th module: lockable doors with full in-game setup, built right into the /aessentials menu.
📱 Companion App — Reports & Elevator now link to the free Agency Companion app via QR code, manage everything from your phone.
🌍 25 Languages — the entire bundle is now fully translated, nothing hardcoded.

🔒 Agency-Essentials Doorlock
⚡ New — Doorlock is now built in
• Lockable doors with [E] key & target support, fast in-game setup via /adoorlock (short alias /adl)
• Per-door access by Job, Gang, Grade or specific players — plus an optional PIN pad
• Multi-framework auto-detect: QBCore, QBox, ESX or Standalone
• Ad-free & fully brandable like the rest of the bundle

🎛️ Doorlock in the /aessentials menu
• Server-wide on/off toggle for the whole module
• Live settings — Accent color, Door Sound (on/off + volume), [E] Prompt and Door Marker
• Turning the module off now instantly releases every locked door (and re-locks them when turned back on)
📱 Companion App — connect your phone
🛗 Elevator
• New /aeconnect command — pulls up a QR code anyone can scan to link the free Agency Companion app
• Browse every building on the server and set a GPS route straight from your phone
• Smooth fade in/out, draggable window — plus a pairing card right inside the /aelevator menu
📋 Reports
• A QR pairing card inside the report menu (player & admin view)
• Read, answer, claim, close and manage tickets from the app
• Staff rights are re-checked on every action — the QR can never grant admin

🌍 Full Localization
• Menus, Doorlock, Companion cards and every module now ship in 25 languages
• Set the language in the config (default English) — nothing is hardcoded anymore

Changes (cont.)
🐛 Fixes & Polish
• Module toggles now persist correctly — turn a module off and it stays off after reopening the menu
• Doorlock now plays the proper door lock/unlock sound
• Cleaner Companion QR windows and smoother menu animations

🔔 Agency-Notify / ⏳ Agency-Progressbar
• No functional changes — both modules untouched in this release

🔗 Direct Deep-link
• Bundle: https://agency-script.tebex.io/package/essentials

Installation
• Overwrite all files. If you've customized config.lua, merge in the new AgencyConfig.Doorlock + Companion sections. New database tables create themselves automatically — no manual SQL needed.
Agency-Garage
V.1.0.1
🚗 Agency-Garage v1.0.1 — 3-row scrolling list, two critical exploits patched & a cleaner package.

🚗 Agency-Garage

🔒 Security — Free-Vehicle Exploit Patched (critical) • The "take out" action trusted the job-vehicle flag, model and plate sent by the client • A tampered client could spawn ANY vehicle for free at ANY garage • Now fully verified server-side: job vehicles only spawn at a real job garage the player has access to, and only for a model that garage actually lists • The plate is generated server-side — the client's value is never trusted
🔒 Security — Impound Griefing Patched (critical) • The impound event had no permission check — any player could impound anyone's vehicle and set an arbitrary release fee • Now restricted to whitelisted jobs (Config.Impound.allowedJobs, default police / mechanic) or the ACE 'agency.garage.impound' • Release fee is clamped to Config.Impound.maxFee, the depot id is validated, and the event is rate-limited • The server-side export ImpoundVehicle() is unchanged and keeps working for trusted scripts

🔒 Security — Vehicle Locator Hardened • "Locate" now only returns coordinates for a vehicle the requesting player actually owns — no more tracking foreign plates
🪟 Fixed — Vehicle List Scrolling • The list grew endlessly with your vehicle count and got cut off at the bottom — you couldn't scroll to the cars below (same problem in the impound depot) • The list now caps at 3 rows and scrolls cleanly past that, with the styled cyan scrollbar • Few vehicles → the panel shrinks to fit instead of showing a big empty box • Verified across 1080p, 1440p and laptop resolutions

🌐 New — Config Options • Config.Impound.allowedJobs — which jobs may use the in-game impound event • Config.Impound.maxFee — hard cap on a client-requested release fee

🧹 Cleaned — Removed two dead duplicate files (client_main.lua, root app.js) that were never loaded — leaner, more professional package

♻️ Backward Compatible • No database changes — vehicle state still uses the standard state/garage columns • Existing vehicles, garages and phone sync keep working untouched — the new security checks are purely additive

Installation • Overwrite the following files in your existing Agency-Garage folder:
fxmanifest.lua
config.lua
server/main.lua
html/index.html
html/style.css • Delete these leftover files if they exist: client_main.lua and app.js (both in the root folder) • Config note: if you keep your own config.lua, add allowedJobs and maxFee to your Config.Impound block — otherwise the impound event stays locked to ACE only. Set allowedJobs to your server's actual job names (e.g. mechaniker, ambulance). • No database changes required. • Restart the resource via txAdmin or ensure Agency-Garage.
Agency-Elevator
V.1.2.3
🛗 Agency-Elevator v1.2.3 — Multiple jobs per floor, per-job minimum grades & full multi-framework support.

🛗 Agency-Elevator

✨ New — Multiple Jobs Per Floor • Each floor can now be restricted to more than one job • A player gets access if they hold ANY one of the assigned jobs (e.g. police OR ambulance) • Managed entirely in-game: open a floor in the configurator, hit "Add Job", remove with one click • Floors with no jobs stay public — anyone can use them

✨ New — Minimum Grade Per Job • Every assigned job has its own minimum grade field (e.g. police grade 2+) • Grade 0 = any rank allowed • Locked floors show the exact requirement in the elevator panel (e.g. "Requires: police (Grade 2) / ambulance") • Access is verified server-side on every trip — no client-side bypass
🌐 New — Unified Multi-Framework Support • Job + grade checks now work on QBCore, QBox (qbx_core) and ESX (legacy & Legacy/1.2+) out of the box • Smart auto-detection (qbx_core is detected before the qb-core bridge so the native API always wins) • Grade reading is normalized across frameworks — QBCore/QBox table grades and ESX numeric grades both handled safely • ox_core is detected gracefully; standalone servers keep all floors open

🌍 Improved — Full Localization • All new texts ("Job Access", "Add Job", "Min. Grade", requirement labels, …) translated into all 13 supported languages: EN, DE, FR, ES, PT, IT, NL, PL, TR, CS, RO, RU, SV

🐛 Fixed — In-game Discord support link pointed to the wrong invite — now correct everywhere

♻️ Backward Compatible • Existing elevators keep working untouched — old single-job setups migrate automatically on the next save • No migration, no data loss

Installation • Overwrite the following files in your existing Agency-Elevator folder:

fxmanifest.lua
client/main.lua
server/main.lua
server/configurator.lua
html/script.js
html/style.css
shared/locale/ (all language files)
config.lua (optional — only a comment update; safe to keep your own) • No database changes required — jobs & grades are stored inside the existing floors JSON column. • Restart the resource via txAdmin or ensure Agency-Elevator.
Agency-Elevator
V.1.2.2
🛗 Agency-Elevator v1.2.2 — Editable floor numbers in configurator & elevator panel.

🛗 Agency-Elevator

✨ New — Custom Floor Numbers • Floor numbers are no longer auto-generated as 1, 2, 3, … • Each floor now has an editable number field in the configurator — click it and type any value • Supports negative numbers (e.g. -1, -2 for basement floors), zero, text like EG, or any custom label • The custom number is shown in the elevator panel on floor buttons and in the digital floor display • Auto-Detect Floors also assigns editable numbers that can be changed afterwards • New floors default to the next sequential number but can be freely overwritten

✨ New — Display Number Persistence • Custom floor numbers are stored in the database alongside floor label, coords, and job • Existing elevators without custom numbers automatically fall back to sequential numbering — no migration needed

Installation • Overwrite the following files in your existing Agency-Elevator folder:

fxmanifest.lua
client/main.lua
server/configurator.lua
html/script.js
html/style.css • No database changes required — the new displayNumber field is stored inside the existing floors JSON column. • Restart the resource via txAdmin or ensure Agency-Elevator.
Agency-Admin
v1.2.1
🛡️ Agency-Admin — Permission system, ban overhaul, direct commands & inventory fix.

---

🛡️ Agency-Admin
🐛 Bug Fix — Tab Access Without Permission
• Ranks without `tab_server` or `tab_vehicles` could still open those tabs and perform actions such as writing announcements or viewing the server config
• The implied-actions fallback in `getVisibleTabs()` was bypassing explicit `false` denials
• Tabs now respect explicit permission denials regardless of implied action permissions

🐛 Bug Fix — Commands Not Working
• Admins with permissions for clothing, teleport, and similar actions could only use them via the panel — the matching commands were not registered
• Commands now perform the same permission check as the panel buttons — if a rank can use the button it can use the command

🐛 Bug Fix — Open Inventory Not Working (ESX)
• The inventory action always called `esx_inventoryhud:openPlayerInventory` which is not present on modern ESX servers
• Detection order is now: `ox_inventory` first (framework-independent), then `qs-inventory`, then `esx_inventoryhud` as a last fallback

🐛 Bug Fix — Ban Modal Not Clickable
• The ban modal rendered correctly but buttons and input fields could not be interacted with
• Missing `pointer-events: all` on the overlay and modal elements caused all click and keyboard events to pass through to the game

🐛 Bug Fix — Ban Expiry Not Persisted
• The `expires` field was never written to `banned_players.json` during `saveBanState`
• After a server restart all timed bans were loaded without an expiry and could not auto-expire on `playerConnecting`
• Both `saveBanState` and `loadBanState` now correctly save and restore the `expires` field

🐛 Bug Fix — Revive Not Working
• The revive action only performed a client-side native resurrection
• On QBCore and ESX the death state is tracked server-side — the native alone does not clear `isdead` / `inlaststand` metadata, so the player was immediately put back into the death state
• Server now clears the framework death state before triggering the client resurrection

---

✨ New — Ban Reason & Duration
• Clicking Ban now opens a modal instead of immediately banning the player
• Reason field — free text up to 200 characters, required before the ban can be submitted
• Duration dropdown — Permanent / 1h / 6h / 24h / 48h / 7d / 30d
• Kick message shows the ban reason and expiry date for timed bans
• Banned players list now shows the expiry date in the panel

✨ New — Direct Admin Commands
• All commands check the same rank permissions as the panel buttons — if a rank does not have the permission the command is blocked

| Command | Permission | Description |
|---|---|---|
| `/agoto [id]` | `goto_player` | Teleport to a player |
| `/abring [id]` | `bring_player` | Bring a player to you |
| `/arevive [id]` | `revive_player` | Revive a player |
| `/aheal [id]` | `heal_player` | Heal a player |
| `/aslay [id]` | `slay_player` | Kill a player |
| `/akill [id]` | `slay_player` | Kill a player (alias) |
| `/aclothing [id]` | `open_clothing_menu` | Open clothing menu for a player |
| `/akick [id] [reason]` | `kick_player` | Kick a player |
| `/aban [id] [reason]` | `ban_player` | Permanent ban with reason |
| `/aban [id] 1h/6h/24h/7d/30d [reason]` | `ban_player` | Timed ban with reason |
| `/anoclip` | `tool_noclip` | Toggle noclip for yourself |
| `/atpm` | `goto_player` | Teleport to your map waypoint |

✨ New — Spawn by name for Vehicles

---

Installation
• Overwrite your existing Agency-Admin folder with this version — no database changes required.
• If you are on ESX and use `ox_inventory` or `qs-inventory` the Open Inventory button will now work automatically without any config change.
Agency-Vehiclekeys
V.1.1.4
🔑 Agency-Vehiclekeys — SQL installation files added for ESX and QBCore.

🗄️ Agency-Vehiclekeys
🐛 Bug Fix — Missing SQL
• The table simple_carkeys_shared required for key sharing was never shipped with the resource
• Both ESX and QBCore users were affected — /givekey and /removekey would silently fail without it

📄 ESX & QBCore SQL Files
• install_esx.sql added — run this once in your database if you are on ESX
• install_qb.sql added — run this once in your database if you are on QBCore
• Both files create the simple_carkeys_shared table used by /givekey and /removekey
• The tables owned_vehicles (ESX) and player_vehicles (QBCore) are provided by your framework and do not need to be created

Installation
• Add the new SQL file matching your framework to your database — no script files need to be overwritten.
Agency-Essentials
V.1.0.1
🛠️ Elevator Module — ScreenEffect now fully respected, plus vehicle support and a new skip option.

🛗 Agency-Essentials Elevator
🐛 Bug Fix — ScreenEffect = false
• Previously only suppressed the GTA screen fade — the NUI travel overlay (elevator animation + progress bar) was still shown regardless
• Now both the fade and the overlay are controlled by a single toggle

🚗 Vehicle Support
• Drive into the elevator and remain inside your vehicle after arrival
• Works for drivers and all passenger seats (-1 through 16)
• Whole vehicle is teleported — every occupant travels along
• Auto re-seat fallback if the engine bumps anyone out mid-teleport

⚡ New — SkipAnimation
• New config option SkipAnimation = false inside AgencyConfig.Elevator
• When true: skips the keycard animation, all wait delays and the simulated travel time — instant teleport
• Designed to pair with ScreenEffect = false — no fade means no reason to wait
• Works for both on-foot and vehicle travel
🔔 Agency-Notify / 📋 Agency-Reports V2 / ⏳ Agency-Progressbar
• No changes — all three modules untouched in this patch

🔗 Direct Deep-link
• Bundle: https://agency-script.tebex.io/package/essentials

Installation
• Overwrite files, no DB / SQL changes needed.
Agency-Elevator
V.1.2.1
🛠️ Config Fix & Instant Travel — ScreenEffect now fully respected, plus a new skip option.

🐛 Bug Fix — ScreenEffect = false
• Previously only suppressed the GTA screen fade — the NUI travel overlay (elevator animation + progress bar) was still shown regardless
• Now both the fade and the overlay are controlled by a single toggle

⚡ New — SkipAnimation
• New config option Config.SkipAnimation = false
• When true: skips the keycard animation, all wait delays and the simulated travel time — instant teleport
• Designed to pair with ScreenEffect = false — no fade means no reason to wait
• Works for both on-foot and vehicle travel

🔗 Direct Deep-link
• Bundle: https://agency-script.tebex.io/package/essentials

Installation
• Overwrite files, no DB / SQL changes needed.
Agency-Elevator
V.1.2.0
🚗 Vehicle Support Update — Take your car into the elevator and stay seated across every floor.

⚡ Vehicle-Aware Travel
• Drive into the elevator and remain inside your vehicle after arrival
• Works for drivers and all passenger seats (-1 through 16)
• Whole vehicle is teleported — every occupant travels along
• Auto re-seat fallback if the engine bumps anyone out mid-teleport

🎬 Smart Animation
• Keycard animation now auto-skips while seated (used to eject you mid-trip)
• Identical total travel timing — no faster, no slower than v1.1.9

🛗 Quality-of-Life
• `SetVehicleOnGroundProperly` after teleport — clean landings, no clipping or hops on tight floors
• Vehicle is frozen during travel instead of the ped, so cars no longer drift while the screen fades

🔗 Direct Deep-link
• Bundle: https://agency-script.tebex.io/package/essentials

Installation
• Overwrite files, no DB / SQL changes needed.
Agency-Admin / Reports V2
V 1.2.0
------------------------------
🛠️ Agency Admin
✨ New

📝 Reports module integrated into admin panel.

🔔 Discord webhook for admin actions (bans, kicks, money, etc.)
------------------------------
📋 Agency Reports V2
✨ New

↩️ Return button — sends a brought player back to their original position with one click
------------------------------
Agency-ReportsV2
V.2.1.1
🔗 Quality-of-life Update — Cleaner upgrade prompt across player + admin UIs.

⚡ Ad-free Upgrade Promo
• Player + Admin footer buttons rebranded: "Ad-free Version — Agency-Essentials"
• Secondary "Werbefreie Version bei Agency Admin Script" admin promo retired — replaced with a unified, English Agency-Essentials CTA across all 13 supported UI locales
• Tooltip + URL now point straight to the bundle product page
• New promo block at the top of config.lua

🖥️ Console Banner
• Brand-new startup banner (previously had no banner) — promotes Agency-Essentials at server start
• Same brand voice as Notify / Progressbar / Elevator

🔗 Direct Deep-link
• Bundle: https://agency-script.tebex.io/package/essentials

Installation
• Overwrite files, no DB / SQL changes needed.
Agency-Elevator
V1.1.9
🔗 Quality-of-life Update — Easier discovery of the ad-free 4-in-1 bundle.

⚡ Ad-free Upgrade Promo
• Both footer buttons (Configurator + Settings) now read "Ad-free Version — Agency-Essentials"
• Click takes shoppers straight to the Agency-Essentials product page
• New promo block at the top of config.lua listing all bundle features

🖥️ Console Banner
• Startup banner now highlights Agency-Essentials instead of the standalone shop
• Reminds about: unified /aessentials dashboard, 24 languages, kill-switches, central webhook router
• Price callout: €4.99 one-time

🔗 Direct Deep-link
• Bundle: https://agency-script.tebex.io/package/essentials

Installation
• Overwrite files, no DB changes needed.
Agency-Progressbar
V.2.0.4
🔗 Quality-of-life Update — Easier upgrade path, consistent UX across all 14 supported languages.

⚡ Ad-free Upgrade Promo
• Settings footer button rebranded: "Ad-free Version — Agency-Essentials"
• All 14 UI locales (en/de/fr/es/pt/nl/pl/it/tr/cs/ro/ru/sv/da) now show the same English Agency-Essentials CTA — single source of truth
• Click opens the Agency-Essentials product page directly
• New promo block at the top of config.lua

🖥️ Console Banner
• Startup banner refreshed — highlights Agency-Essentials, the 4-in-1 bundle
• Tagline mentions: unified /aessentials dashboard, full rebranding, 24 languages
• Price callout: €4.99 one-time

🔗 Direct Deep-link
• Bundle: https://agency-script.tebex.io/package/essentials

Installation
• Overwrite files, no DB changes needed.
Agency-Notify
V.2.0.1
🔗 Quality-of-life Update — Better signposting toward the ad-free, fully re-brandable upgrade path.

⚡ Ad-free Upgrade Promo
• Settings footer button rebranded: "Ad-free Version — Agency-Essentials"
• Click now opens the Agency-Essentials product page directly
• New promo block at the top of config.lua with the full feature breakdown

🖥️ Console Banner
• Startup banner refreshed — highlights Agency-Essentials, the 4-in-1 bundle
• Mentions the unified /aessentials dashboard, 24 languages, full rebranding
• Single price callout: €4.99 one-time

🔗 Direct Deep-link
• Bundle: https://agency-script.tebex.io/package/essentials

Installation
• Overwrite files, no DB changes needed.
Agency-Admin
V1.1.1
Changes

🔒 Security & ⚡ Performance Update — This release focuses on hardened data persistence, safer storage handling, and a smoother, more efficient UI.

💾 SQL Persistence (oxmysql)

• All admin data (ranks, permissions, assignments, bans, spawned objects, server state) now lives in a single agency_admin_data table

• Data survives folder deletion, clean reinstalls, and overwrites

• Triple-redundant storage

🖥️ Server Console

• New dashboard tile opens a draggable in-game console window

• Run server commands

• Per-client persistent command history

• New dedicated server_console permission, configurable in the Permissions panel

🏗️ Object Spawner

• Spawned objects are now persisted server-side via SQL + JSON + KVP

🤖 Agency AI

• New online/offline status dot in the AI window header

🎨 UI / UX

• Reworked card-in animations

• Removed content-swap flicker on tab change

• Silent background data refresh — player counts, performance, and bans hydrate quietly without rebuilding the visible tab
Installation (cont.)
• Update path simplified: overwrite files, do not delete the exist folder! — SQL keeps your data safe
Agency-Minerjob
V.1.2.0
🔧 Framework Compatibility

Complete rewrite of client & server code — now fully framework-agnostic
Auto-detection for QB-Core, ESX, and standalone setups (configurable in config.lua)
Auto-detection for ox_inventory, QB inventory, and ESX inventory
Fixed critical ESX crash (attempt to index a nil value) that prevented the sell menu from opening
All framework-specific calls are now routed through unified helper functions with proper fallback handling
Added native GTA notification fallback when no notification system is available
📋 Built-in Sell Menu

Fully integrated NUI sell menu — no longer requires qb-menu or any external menu script
Clean card-style layout showing item name, amount, price per unit, and total value
Dynamic pricing display with live market prices
Works identically on QB-Core, ESX, and standalone frameworks
⛏️ Built-in Quick-Time Event

Custom NUI-based skill check — no longer requires ox_lib
Moving indicator with target zone — press Space or E to hit the green zone
600ms "get ready" phase before the indicator starts moving
Frame-rate independent movement using performance.now() delta timing — no more lag spikes
Three difficulty levels: Easy (32% zone, 2.2s sweep), Medium (22%, 1.6s), Hard (15%, 1.1s)
📦 Removed Dependencies

Removed hard dependency on ox_lib (was required for skill checks and UI)
Removed dependency on qb-menu (was required for sell menu)
Only runtime dependency remaining: oxmysql (for skill database persistence)
🌍 Localization — 24 Languages

Added 20 new languages (previously only EN, DE, FR, ES)
Now supported: English, Deutsch, Français, Español, Português, Italiano, Nederlands, Polski, Čeština, Română, Türkçe, Русский, Українська, Svenska, Dansk, Norsk, Suomi, Magyar, Hrvatski, Ελληνικά, Български, 日本語, 한국어, 中文
Default language changed to English
All languages selectable via Config.Locale in config.lua
🔧 Bug Fixes & Improvements

Fixed sell menu showing "Translation not found" for item labels
Fixed event-based communication replacing framework-specific callback systems
Added ESX player loaded event (esx:playerLoaded) for proper NPC spawning on ESX
Removed stale duplicate client files (client_new.lua, client_new_updated.lua)
Cleaned up duplicate files {} block in fxmanifest.lua
Agency-Admin
v1.1.0
🛡️ Permission System

• Fully reworked rank & permission system — now managed entirely in-game via the Settings panel

• Ranks, permissions, clothing presets, and nametags are stored server-side in JSON (no more config editing)

• Per-player rank assignments with optional permission overrides

• Only server admins (global ACE) can manage ranks and permissions — prevents privilege escalation

• All permission changes apply instantly to online staff members

🏗️ Object Spawner

• New object spawner with search, placement, and persistent storage

• Spawned objects are saved server-side and synced across all players

• Objects persist through resource restarts and server reboots

🎨 Admin Duty

• New interactive clothing menu with spinner controls

• Separate male & female outfit presets per rank

• Added nametag support with customizable text, color, and scale per rank

🔧 Bug Fixes & Stability

• Fixed a server crash that prevented players from joining

• Improved error handling for ban checks and data loading
• Fixed green hair color bug

• Fixed many UI bugs

• Smarter Agency AI
Agency-Phone
V26.3 Part 3
• Phone — Added real call history so normal calls and test calls appear in Recents
• Games — Added stake selection so net profit display now matches the actual reward logic
• Added locale coverage for new Setup Wizard update flow in every supported phone language
• Added locale keys for new Mail, Buzz, FaceZoom, Browser, Wallet, Contacts and Theme flows
• Localization
• Localization
• Bug Fixes
• Bug Fixes
• Phone — Fixed stuck call animation after calls end
• Buzz — Fixed sender/receiver messages collapsing to the same side after sending
• Buzz — Fixed occasional emoji menu crashes and improved emoji panel sizing
• Buzz — Fixed white mode text contrast issues across list and chat views
• Buzz — Fixed sent locations to open Maps and shared contacts to open/save in Contacts
• Buzz — Fixed photo messages only appearing for the sender
• Mail — Fixed deleted mails reappearing because they were not removed from the database
• Mail — Fixed inability to send player-to-player mail
• Mail — Fixed primary mailbox star still asking for Face Unlock even when that setting was disabled
• Mail — Fixed reply/create actions disappearing in white mode
• Wallet — Fixed Agency Pay button staying disabled until app restart after creating a card
• Wallet — Fixed white-on-white selected states in white mode
• Photos — Fixed deleted photos returning until restart and fixed stuck fullscreen photo viewer after pressing Home
• Settings — Fixed language change not properly updating the settings experience
• Settings — Fixed app-specific settings so they actually apply on-device
• Settings — Fixed notification/privacy toggles not being enforced correctly
• Settings — Fixed privacy hide-number mode so saved contacts no longer reveal the hidden number
• VidFlow — Fixed phone-close behavior so playback pauses instead of continuing incorrectly
• Music — Fixed “must open Music first” issue for nearby shared playback
• Music — Fixed shared pause/seek so other listeners stay synchronized
• Music — Fixed shared volume so nearby listeners hear volume changes too
• Maps — Fixed generic Pin/Blip labeling by preferring real nearby blip names
• Games — Fixed incorrect displayed/credited winnings in Coinflip, LuckySlot and Roulette
• Race — Fixed race accept flow so both players receive the correct update
• Invoices — Fixed endless loading issues and improved compatibility detection for supported billing systems
• Browser — Fixed broken website loading flow and improved back navigation to browser home / phone flow
• Browser — Fixed direct Google search behavior and better handling of blocked pages
• Wallet/App Store — Fixed deleted apps not always being reinstallable from the store
• Contacts — Fixed broken modal/action menu layout in contact submenus
• Setup Reset — Fixed full phone wipe so it actually returns to setup with default apps and default layout instead of a broken leftover state
• Ensured new UI flows use translation keys instead of new hardcoded visible strings wherever possible
Agency-Phone
V26.3 Part 2
• Story Viewer — Added progress bars, entry/exit motion and clearer story timing
• Dialer — Added clearer recent-call cards, better floating nav placement and improved keypad readability
• White Mode — Corrected unreadable white-on-white text/buttons across Browser, Buzz, Mail, Wallet, Contacts and newer screens
• Pictogram Live — Added in-phone-only live rendering path instead of the earlier broken fullscreen/transparency approach
• Pictogram Live — Added live comments, analytics summary, viewer history and comment history after stream end
• Privacy — Added real block all calls behavior so callers see the target as unreachable
• Mail — Removed unused microphone button from search where it had no function
• Safe Areas — Reworked many screens so top controls, live bars and bottom actions sit properly around notch and home indicator
• Technical
• Technical
• Pictogram Live — Reworked the live transport pipeline to use latent events instead of normal reliable events
• Music Sync — Improved shared play, pause, seek and volume synchronization for nearby listeners
• Privacy — Moved number hiding and call acceptance logic into real server-enforced behavior
• Mail — Ensured mailbox state survives app/script restart correctly and does not reopen the creation flow incorrectly
• Gallery — Improved local delete handling so removed photos disappear immediately and stay gone after restart
• Photos/Pictogram — Stored uploaded media URLs for reuse across gallery and social posting flows
• Branding Cleanup — Removed or replaced legacy real-brand wording and standardized on Agency naming
• Data Plans — Reused plan speed as the single network-profile value for downloads and selected online actions
• Pictogram Live — Reduced frame payload weight and capture frequency to lower lag and prevent event overflow crashes
• UI/UX
• UI/UX
• Liquid Glass — Expanded Agency Liquid Glass styling across Mail, Buzz, Contacts, Phone, FaceZoom, Wallet and Setup
• Animation — Added softer open/close transitions for stories, panels, setup steps and wallet card actions
• Pictogram Stories — Enforced 24-hour story expiry based on actual post time and exposed story post timing in UI
• Browser — Improved URL parsing to distinguish real domains from search queries
• Localization — Moved new UI text to locale keys instead of hardcoded strings across new screens and flows
• Media Storage — Added English config guidance explaining that Discord webhooks can expire and make media disappear over time
• Settings — Expanded full-row interaction for app settings instead of tiny toggle-only hit areas
• Configuration
• Configuration
• Mail — Added configurable mailbox domain and configurable mailbox account limit
• Browser — Added configurable proxy URL, proxy mode and optional allowlist behavior
• Dialer — Added configurable test number with 511 as default
• Media Storage — Added config support for FiveManage and Discord upload providers
Agency-Phone
V26.3
• New Features
• New Features
• Setup Wizard — Added a post-setup software update stage before first use
• Setup Wizard — Added power-off after setup completion so the phone must be turned on again before use
• Setup Wizard — Added theme selection with Light, Auto, and Dark directly during onboarding
• Mail — Added mailbox hub with main menu, inbox views, compose flow and primary mailbox selection
• Buzz — Added AgencyAI chat thread with better persistence and app actions from inside the conversation
• Contacts — Added contact sharing via Agency Drop and tappable contact cards from chats
• Browser — Added Google search fallback for non-URL input
• Wallet — Added immediate Agency Pay unlock as soon as the first card is created
• Music — Added background-ready shared playback receiver so nearby shared music works without opening Music first
• Media Storage — Added selectable upload backends for FiveManage and Discord webhooks, with FiveManage as default
• AgencyOS26.3 — Full rebrand across the phone system, setup flow and app surfaces
• Improvements
• Improvements
• Browser — Reworked start page, top bar behavior, back flow and compatibility messaging
• Music — Reworked bottom safe-area handling and now-playing screen spacing
• Pictogram — Reworked stories, story viewer, story timing, live overlays and live analytics presentation
• Phone — Reworked Recents density, keypad spacing, typed-number area and bottom navigation placement
• Mail — Added required mailbox creation flow before receiving mail
• Buzz — Added full Agency-style messaging hub redesign with filters, edit mode, search and quick actions
• Contacts — Added new Agency Liquid Glass contacts hub with Lists, improved self-card and group/list creation
• Phone — Added redesigned liquid phone experience with Favorites, Recents, Contacts, Keypad and floating nav
• Homescreen — Reworked page resolver, widget placement and page movement logic to avoid scattered app layouts
• Homescreen — Added better cross-page dragging, wheel navigation in edit mode and safer edit-mode entry behavior
• Homescreen — Added proper reset to a clean default app layout after phone wipe
• Mail — Reworked overall layout, sizing, spacing and white/dark mode readability
• Buzz — Reworked conversation layout, bubble alignment, emoji composer, white mode readability and filter transitions
• Contacts — Reworked card sizing, action layout and white mode appearance
• Wallet — Reworked card animations and selection visibility, especially in white mode
• FaceZoom — Reworked hub layout, call overlays and transition path from audio call to video call
• Mail — Added multi-mailbox support with configurable default limit and configurable agencyg.de domain
• Mail — Added optional per-app Face Unlock handling for Mail instead of forcing unlock for every mailbox action
• Phone — Added configurable always-reachable test number 511 for audio and video call testing
• Browser — Added unrestricted website mode by default, with optional allowlist/proxy config still available
• Browser — Added configurable proxy mode and clearer browser compatibility warnings
• Settings — Added Auto appearance mode based on the phone’s configured time
Agency-Elevator
v.1.1.8
• New Features
• Technical — Added job-based floor access control with full server-side validation
• All 12 supported languages updated with new job permission strings
• Job Permissions — Floors can now be restricted to specific jobs (e.g. police, fire, mechanic)
• Improvements
• Technical — Job names are automatically normalized (lowercase, trimmed) for consistent matching
• Technical — All permission checks enforced server-side to prevent client-side bypass
• Localization
• Job Permissions — Locked floors display a lock icon and show the required job name to players
• Job Permissions — Players without the required job cannot interact with restricted floor buttons
• UI/UX
• Locked floors show visual lock indicator with "Requires: [jobname]" text
• Added locale keys: ui_locked, ui_requires_job, floor_locked
• Restricted floor buttons are automatically disabled for unauthorized players
• Configuration
• Added optional job field per floor in the configurator (empty = open access)
• Added config_floor_job and config_floor_job_placeholder locale keys
Agency-Phone
AgencyOS26.2.1
• New Features
• Added first-time card onboarding so users create their own card before using Wallet features
• Added custom card creation with multiple finishes for Agency Pay
• Improvements
• Improved folder drop behavior and reduced accidental page switching while rearranging apps
• Moved the Widgets entry into edit mode and hide the clock while editing
• Improved Agency Pay fullscreen checkout behavior and success flow
• Dispatch calls now stack correctly instead of replacing each other
• Respond now sets GPS routing and informs the caller which unit is on the way
• Improved MDT patient search behavior and removed old legacy back-button handling
• Improved app open/install flow and refined the store card presentation
• Improved 2048, Flappy Bird and roulette presentation and interaction behavior
• Improved Agency Pay state cleanup after repeated use
• Improved terminal detection and payment state handling for more stable checkout sessions
• Reworked the Dynamic Island music player in compact and expanded states with richer playback controls
• Updated device frame rendering and finish customization for a stronger premium metal look
• Refined app editing, widget access and multiple system overlays for a cleaner overall experience
• Updated AgencyOS26.2.1 software/version references in the system info and update areas
• Added a redesigned Wallet with Cards, Agency Pay, Transfer, Fixed and Activity tabs
• Fixed app dragging so moved apps stay visible on the cursor
• Fixed Agency Pay cancel flow so Wallet returns to the correct state
• Fixed saved cards not being recognized immediately after a restart
• Reduced Wallet and Agency Pay state rebuild issues that could cause blank screens or stuck overlays
• Performance
• Added Agency Pay quick launch via Action Button, power double-press and /agencypay
• Added a redesigned Settings app with new profile, appearance, device info and Agency Shop sections
• UI/UX
• Refined lock screen clock styling with a cleaner liquid-glass look
• Added configurable Agency Pay terminals with terminal detection, pricing, reward and metadata support
• Added aluminium frame finish selection directly inside Settings
• Expanded missing translations across supported languages for payments, dispatch, settings and game flows
• Improved Settings and Wallet readability in light mode
• Configuration
• Added a Config option to disable all money-generating gambling apps
• Added Agency Pay terminal configuration with location, heading, amount, label and reward support
• Expanded personalization options with aluminium finish presets and appearance controls
Agency-Progressbar
V.2.0.2
• Technical
• Changed default prop bone from 18905 to 60309 (PH_R_Hand - Prop Helper Right Hand)
• Removed manual position/rotation offsets (handled automatically by PH_R_Hand bone)
• Water props changed to prop_ld_flow_bottle model for better compatibility
• Bug Fixes
• Fixed props attaching to incorrect hand bone during eating/drinking animations
• Fixed water bottle appearing in left hand instead of right hand
• Fixed burger rotation appearing backwards in hand
• Props now correctly positioned for all consumable animations
• Simplified prop configuration — zero offsets now work correctly with proper bone
• Added configurable bone support per-prop in Config.Consumables
• Configuration
• All consumable prop configs reset to vec3(0.0, 0.0, 0.0) for pos/rot
• Updated examples/consumables_config.lua with corrected values
Agency-Progressbar
V.2.0.1
• New Features
• Added corner position translations for all 14 supported languages
• V1 and V2 progress bars support all positions with proper CSS classes
• Database schema compatible (VARCHAR(20) supports new position names)
• Improvements
• Localization
• Keys: topLeft, topRight, bottomLeft, bottomRight
• Technical
• Server-side position validation updated to accept corner positions
• Corner positions use optimized entry animations
• Total of 7 position choices for maximum UI flexibility
• Redesigned position selector grid in settings menu (3×3 layout)
• UI/UX
• Position buttons now display intuitive corner icons
• Updated Config.UI.position documentation
• Four new corner position options: top-left, top-right, bottom-left, bottom-right
• Settings grid reorganized for better visual clarity
• Configuration
• Updated Config.Defaults.position with all 7 position options
Agency-Phone
V.26.2
• New Features
• OpenRouter and Grok support for AgencyAI, including access to free AI providers.
• AgencyAI AutoRide app with driverless pickup, multiple vehicle choices, live ride controls, ride pricing, passenger support, and direct AgencyAI pickup requests in the phone language.
• Agency Reports V2 integration with support for standard, ad-free, and legacy report modes.
• Multi-language coverage expanded so new AgencyOS26.2 features are available across all supported languages.
• Home indicator now supports AgencyAI overlay access and more consistent home/overlay interactions.
• New GarageSystem auto-detection and expanded garage provider support.
• New Agency Reports provider selection for V2, ad-free V2, or legacy mode.
• New data storage mode to save phone data to the device instead of the player by default.
• Full Notification Center and Lock Screen notification system with stacking, history, app deep links, highlights, and home/lock screen delivery.
• Full Maps app overhaul with GTA-style map view, Fast Nav, pins, nearby points of interest, and synced GPS waypoint routing.
• FaceZoom phone-number-based video calling without account login, plus in-phone handheld call presentation.
• Agency HUD sync exports so the HUD can react when the phone is opened or closed.
• Pictogram livestream and story features, plus an upgraded social media feature set.
• Improvements
• App Store downloads now behave like real installations, with locked apps until download completion and cleaner progress presentation.
• Lock screen, notification banners, notification swipes, and white/dark mode presentation refined for a more polished feel.
• Re-import `agency-phone.sql` to apply the AgencyOS26.2 database schema changes.
• Wallet fixed-deposit tab with configurable terms and interest rates.
• Bug Fixes
• Fixed garage vehicle delivery so spawned vehicles keep their saved tuning, colors, health, and fuel data.
• Fixed Buzz so received messages are visible when opening the app.
• Fixed Chirper posting, gallery media usage, and social posting flows that previously failed.
• Fixed crypto trading so buy and sell actions work directly through the app with custom amounts.
• Fixed police MDT navigation so category switching works correctly.
• Fixed photo deletion so removed images stay removed after reopening the Gallery app.
• Fixed alarms so they trigger correctly in the background and respect the selected phone timezone.
• Fixed multiple white/dark mode readability issues across popups, forms, menus, and app content.
• New wallet fixed-deposit configuration for durations and interest rates.
• Performance Mode for lower-end PCs, including startup activation support and Control Center access.
• Redesigned Control Center with improved swipe behavior, cleaner dismissal, larger gesture zones, performance toggle access, and better scale synchronization.
• New Performance Mode defaults and startup behavior settings.
• Full AgencyOS26.2 liquid-glass redesign across the homescreen, setup wizard, Control Center, notifications, widgets, calculator, music, maps, and core system overlays.
• AgencyAI, Music, Maps, Calculator, Radio, App Store, and AutoRide apps redesigned for stronger visual consistency and cleaner navigation.
• Homescreen edit mode upgraded with cleaner app and widget dragging, folders, persistence, and better long-press handling.
• Startup and shutdown flows upgraded with a boot animation, shutdown slider, emergency actions, and a more native first-boot/update experience.
• Music app now ships as a default app and includes a redesigned now-playing experience with stronger media controls.
• UI/UX
• Smoother app close animation and cleaner background loading behavior.
• Game Mode presentation redesigned around the Dynamic Island with cleaner entry and exit behavior.
• Lock screen notifications now use a cleaner liquid-glass style and smoother swipe-to-dismiss behavior.
• Shutdown, emergency, and boot overlays redesigned to match the new AgencyOS26.2 visual language.
• AutoRide ride overlays, ride commands, live pricing, and boarding flow were redesigned for cleaner in-ride control.
• Stocks expansion with profit/loss tracking, portfolio charts, extra stocks, and ETF options.
• Oxide Banking integration as an additional banking provider option.
• Phone data storage can now be configured per-device instead of only per-character.
• Control Button short-press and long-press behavior expanded and aligned with system settings.
• Configuration
• New AI provider options for OpenRouter and Grok.
• New AutoRide and AgencyAI feature toggles, including full disable support from config.
• New LifeInvader V2 integration toggle behavior.
• New banking provider option for Oxide Banking.
Agency-Phone
v.1.1.1
• md-garage support
• swipe auto-dismiss
• ESX JSON vehicle parsing
• Fixed homescreen wallpaper
• Smoother app close animation
• Home indicator opens AgencyAI overlay on homescreen
• MDT apps hidden when EnableMDT = false
• New EnableAgencyAI config — disables app, hotkey, Control Center, Siri overlay
• New GarageSystem config — force specific garage or auto-detect