Skip to content

RedM Pause Menu Permissions

The menu uses RedM aces only. Framework admin groups — VORP admin levels, RSG permissions, RedEM:RP groups — are deliberately not used, because:

  • the same grant works identically on every framework, including standalone,
  • access is controlled in one predictable place, your server.cfg or permissions file,
  • no framework update can silently change who holds the desk keys.

The server is the law

Every desk action re-checks the ace server-side first, on every single request. UI visibility is a convenience, not a control.

The master ace

rm_pausemenu.desk

Configurable via Cfg.Desk.Ace. Holding it unlocks every badge plus the logbook.

cfg
# a whole group
add_ace group.admin rm_pausemenu.desk allow

# one person, by license identifier (survives name changes)
add_ace identifier.license:0123456789abcdef0123456789abcdef01234567 rm_pausemenu.desk allow

# or via a principal chain
add_principal identifier.license:0123456789abcdef... group.admin

Find a player's license identifier with rm_checkdesk <serverId> in the server console — it prints the exact string to use.

Per-badge aces

Each desk panel is guarded by a badge. By default every badge is false, meaning master ace only. To hand one out separately, set an ace string in Cfg.Desk.Badges:

lua
Cfg.Desk = {
    Ace     = 'rm_pausemenu.desk',
    Command = 'sheriff',
    Badges = {
        Bulletin = 'rm_pausemenu.bulletin',  -- moderators may edit the notice board…
        Events   = 'rm_pausemenu.events',    -- …and the calendar
        Ticker   = false,                    -- master only
        Board    = false,
        Tuning   = false,
        Telegram = 'rm_pausemenu.telegram',  -- event staff may send banners
        Journal  = false,
        Keymap   = false,
    },
}
cfg
add_ace group.moderator rm_pausemenu.bulletin allow
add_ace group.moderator rm_pausemenu.events   allow
add_ace group.eventteam rm_pausemenu.telegram allow

A player holding any badge sees the Sheriff tab, with only their panels active. Panels they lack are shown locked.

BadgeGuards
BulletinThe notice board — create, edit and drop notices, including wanted posters
EventsThe events calendar
TickerThe marquee / message of the day
BoardHome card toggles
TuningLive runtime overrides and the Discord wire settings
TelegramBroadcast banners
JournalJournal pages
KeymapThe keybinds card

The Tuning badge includes the Discord wire

It covers reading and replacing the webhook URL. Give it only to people you trust with your staff channel.

The logbook is master-only

The audit logbook — who changed what, when — can only be read by holders of the master ace. Per-badge aces never grant it, by design: editors should not audit editors.

Diagnosing with rm_checkdesk

From the server console, not in-game chat:

rm_checkdesk 3

For server id 3 it dumps the resolved identifier (character identifier, or license fallback), the master-ace result, and the result of every per-badge check.

SymptomCause
Master ace false for an adminThe add_ace line is missing, misspelled, or in a file that is not executed. Check Cfg.Desk.Ace matches the ace you granted
Ace granted but still falseGranted to the wrong principal. Verify the license string printed by rm_checkdesk matches your add_ace line exactly — copy it from the output rather than typing it
Everything true but no Sheriff tabThe tab comes from a fresh server check when the menu opens. Reopen the menu. On framework servers the profile must be loaded — character selected — first

Ace changes need a restart

Changes to server.cfg aces require a server restart, or a re-exec of your permissions file, to take effect.

Documentation for RedMorrow. Scripts are licensed per server — redistribution is not permitted.