DocsBoss Menu

Jobs and access

Who can open the menu and what a boss may change.

Not released yet. These pages are written from the code of manniche_bossmenu and can change before the release.

Who can open the menu

The server checks every request. A player can open the menu when all of this is true:

  • The player's job is a key in Config.Jobs.
  • The job has at least one row in job_grades.
  • The player's grade is at least minGrade of the job. Without minGrade it must be the boss grade.
  • If Config.OpenDistanceToMarker is true: the player stands within Config.ZoneDistance of the job's entry in Config.BossZones.

The boss grade is the highest grade the job has in job_grades. The menu closes when the player's job changes.

Hierarchy rules

A boss can only hire, fire, promote, demote or edit ranks strictly below their own grade. Ranks are written to the ESX job_grades table.

Hiring sends a dialog to the target player. The player must accept within Config.Hire.offerSeconds seconds. Distance is checked again when the player accepts.

Server checks

  • Each menu action is a server callback with a flood guard per player and action.
  • Switched-off features in Config.Features are refused on the server.
  • Deposit and withdraw amounts must be between minAmount and maxAmount, with the cooldowns from Config.Economy.cooldown.
  • The UI never gets license identifiers. Members are sent with random tokens that work only for the boss they were issued to.

The script does not use ACE permissions.