user-policeStaff Management

Configure staff roles, promotions, demotions, and strike system

Introduction

The Staff Management configuration file (staff_management.json) manages staff hierarchy, role assignments, nickname formatting, and the strike system.


Staff Roles

Type: Array of Objects

Define your staff role hierarchy.

staff_roles: [
    {
        'name': 'Admin',
        'id': '804354024048427009',
        'additional_roles': ['123456789012345678'],
        'sorting_role': false,
    },
    {
        'name': 'Moderator',
        'id': '804354026568155137',
        'additional_roles': [],
        'sorting_role': false,
    },
    {
        'name': 'Staff',
        'id': '804354029076348959',
        'additional_roles': [],
        'sorting_role': true,
    },
]

name - Role name used in nicknames and roster id - Discord role ID additional_roles - Extra roles applied when promoted/demoted to this position (e.g., "Training Needed") sorting_role - Whether this is an organizational role for grouping staff (e.g., "Management" for all admins/managers)

circle-info

Sorting Roles: Used to group staff members in activity lists. For example, "Management" might be a sorting role applied to both Managers and Admins for organization purposes.

circle-exclamation

Manage Roles

Control how roles are applied during promotions/demotions.

apply_sorting_roles

Type: Boolean

Whether to apply sorting roles in addition to the primary staff role.

When true: Sorting roles are added along with the staff position role When false: Only the primary staff role is applied


apply_all_possible_sorting_roles

Type: Boolean

Whether to apply all applicable sorting roles or just the highest one.

When true: All sorting roles the user qualifies for are applied When false: Only the highest applicable sorting role is applied


remove_roles_if_demoted

Type: Boolean

Whether to remove staff roles when demoting users.

When true: Old staff roles are removed during demotion When false: Roles are kept (not recommended)

Only roles listed in staff_roles are removed.


Manage Nicknames

Automatically format staff member nicknames.

enabled

Type: Boolean

Whether to auto-update nicknames.


format

Type: String

Nickname format template.

Placeholders:

  • %role_name% - Staff role name

  • %user% - Original username

Example Result: Admin Β» JohnDoe


Sync Roster Panel

Type: Boolean

Auto-update roster panel when staff changes.

When true: Roster is automatically updated after promotions/demotions/resignations When false: Roster must be manually updated


DM Notification

Type: Boolean

Send DM notifications for staff changes.

When true: Users receive DMs when promoted, demoted, or force-resigned When false: No DM notifications are sent


Staff Strikes

Automatic demotion system based on strikes.

max_strikes

Type: Number

Maximum strikes before automatic demotion.

When a staff member reaches this number of active strikes, they are automatically demoted.


demote_to_next_lower_role

Type: Boolean

Demotion behavior when max strikes is reached.

When true: User is demoted to the next lower staff role When false: User is demoted directly to member role


Complete Configuration Example

Here's a production-ready staff management configuration:

Last updated