Modul Priority
Modul Priority is a free, server-authoritative priority cooldown system for FiveM roleplay servers. One synchronized status for every player — Available, Active, Cooldown, On Hold — plus an independent Peace Time layer, shown in a clean, lightweight on-screen display.
Why this one?
- Server-authoritative — every state change and permission check happens on the server. There are no client events that can change state. Clients and the NUI only display.
- Actually lightweight — no per-frame loops anywhere. A one-second timer thread exists only while a countdown is running; the display counts down locally and is resynced periodically so it never drifts.
- Works everywhere — Qbox (qbx_core), QBCore, ESX and standalone, auto-detected at startup.
Features
- Synchronized priority status: Available / Active / Cooldown / On Hold, plus independent Peace Time
- Clean NUI status display — 6 position presets + custom CSS position, scale, accent colors, fade/slide animation
- Display modes: persistent NUI, chat-only, notification-only, or fully disabled
- Configurable commands and aliases:
/priority(/prio,/pcd) and/peacetime(/pt) - Flexible permissions: ACE, framework jobs with minimum grades, framework groups, identifiers, a Discord-role adapter and a custom callback — combined with
ace/job/ace_or_job/ace_and_joblogic - Optional player-count requirements before a priority can start (total / police / EMS online, on-duty aware)
- Optional max priority duration with automatic end into cooldown
- Configurable behavior when the priority starter disconnects: keep, end, cancel or hold
- Peace time can display alongside or replace the priority status, block priority starts, and optionally pause the cooldown
- Discord webhook logging — rich embeds for every action (including unauthorized attempts), with per-category toggles; the webhook URL lives in a server-only file and never reaches clients
- Optional persistence via oxmysql — status, cooldown, hold and peace time survive restarts, with cooldowns restored from real elapsed time. Runs fully without a database when disabled
- Complete server/client export + event API for dispatch systems, HUDs and admin menus
- Fully localized — every player-facing string lives in
locales/en.lua
Commands
Command
Description
/priority · /priority status
Show the current status (public by default)
/priority start · end · cancel
Start, end (into cooldown) or cancel a priority
/priority hold [reason] · resume
Place priorities on hold / lift the hold
/priority cooldown
Start a custom cooldown
/priority addtime · removetime
Adjust the running timer
/priority set · reset
Admin: force a state / reset the system
/peacetime on [reason] · off
Toggle peace time
Every command is validated and permission-checked on the server, rate-limited, and logged.
Dependencies
- ox_lib — required
- oxmysql — only if you enable persistence; the resource runs fully without it
- Framework: Qbox, QBCore, ESX or none — auto-detected, nothing to configure
Installation
Around five minutes: drop the folder in resources/, add the ACE lines and ensure modul_priority after ox_lib, adjust config.lua to taste. Step-by-step instructions ship in INSTALL.md, and every config option is documented inline and in CONFIG.md.