๐Ÿ‘ฎโ€โ™‚๏ธ Modifying Ranks And Permissions With Luckperms

LuckPerms is our permissions plugin. It handles all player permissions on the server through individual player-based permissions and group (parent) permissions. It is very complicated, and for that reason, suggested that you do not mess around with it. You can very easily mess a player's permission up that causes more problems for you and them.

There are some instances when you will need to modify a player's permissions. If you do not feel comfortable doing so, please refer the player / issue to another admin. This guide will cover some instances that are fairly straightforward, but cannot possibly cover all of them.

When a player reaches their third strike of Advert Misuse, they lose privileges as described in Advert Misuse. To remove their advert privileges, you must remove their permission to use advert.

To remove the permission, use the following command:
/lp user <player> permission set advert.use false

If you ever need to give a player back advert privileges (unlikely unless they appeal and win somehow), you can set the permission back to true:
/lp user <player> permission set advert.use true

It is suggested to always confirm that this was done properly by checking the permission afterwards:
/lp user <player> permission check advert.use

False Vulcan Alerts

Sometimes, players will set off a ton of false Vulcan anti cheat alerts. This can happen for a variety of reasons. If you are able to confirm that a player is not actually cheating, and that the alerts are false flags, you can disable specific alerts for the player with the following command:
/lp user <player> permission set vulcan.bypass.<checkname> true

It is suggested to always confirm that this was done properly by checking the permission afterwards:
/lp user <player> permission check vulcan.bypass.<checkname>

Incorrect Chem Rank

Due to bugs, players sometimes are not given the correct rank. To set a player's chem rank, they must be added to the group for the rank.

First, check if they currently belong to a parent group for any chem rank:
/lp user <player> info

If so, remove that parent group:
/lp user <player> parent remove <current chem rank>

Then, give the player the new parent group for the new rank:
/lp user <player> parent add <new chem rank>

Finally, make sure the player has the correct rank:
/lp user <player> info

Police On Duty In Main Spawn

If a cop is in main spawn while on duty, then it is very likely that their permissions are messed up. This is almost always due to them having the Default parent group.

First, check if they have the Default parent group:
/lp user <player> info

If they do, remove it:
/lp user <player> parent remove default

Then confirm that the player no longer has the group:
/lp user <player> info

Finally, check if the player can still be in the main spawn building while on duty. If not, then congrats, you have fixed the issue! If so, then rats, and have them make a bug ticket ASAP.

Player Missing Gold

If a player is missing their MC-Labs Gold, but can provide some form of proof that they should have it (payment history, etc.), then you may need to give them the permission for Gold.

First, confirm that they are missing the parent group for gold:
/lp user <player> info

Next, find out their payment plan for Gold and how much longer they should have on their current subscription. Then use the following command:
/lp user <player> parent addtemp gold <time>

For instance, if player AubsterLovesYou should have 3 more days with Gold on their current subscription, then the command would be:
/lp user AubsterLovesYou parent addtemp gold 3d

It is suggested to always confirm that this was done properly by checking the permission afterwards:
/lp user <player> info

Player Missing Efarm

If a player is missing Efarm, then you may need to give them the permission for it back.

First, confirm that they are missing the parent group for Efarm:
/lp user <player> info

Next, ask the player if they know how much longer they should have Efarm. Then give them Efarm for that duration with the following command:
/lp user <player> parent addtemp autoreplant <time>

For instance, if player AubsterLovesYou should have 3 more days with Efarm, then the command would be:
/lp user AubsterLovesYou parent addtemp autoreplant 3d

It is suggested to always confirm that this was done properly by checking the permission afterwards:
/lp user <player> info

Promoting Staff and Donators via /promote

For standard staff and donor rank promotions, we use the custom shortcut command /promote instead of raw LuckPerms commands.

  • Command Syntax:
    /promote <player> <rank>
    • Example: /promote PlayerA trialmod

Supported Ranks

The script maps these arguments to underlying LuckPerms groups and prefixes:

  • Staff Ranks:
    • helper: Adds helper group; sets prefix &f[&9Helper&f] (priority 55).
    • trialmod: Adds trialmod group; sets prefix &f[&3Trial&2Mod&f] (priority 56).
    • mod: Adds moderator group; sets prefix &f[&dMod&f].
    • trialadmin: Adds trialadmin group; sets prefix &f[&4T-Admin&f].
  • Legacy Donator Ranks:
    • vip: Adds legacy vip group and prefix &f[&aVIP&f].
    • vipplus: Adds legacy vipplus group and prefix &f[&aVIP&6+&f].
    • mvp: Adds legacy mvp group and prefix &f[&4M&eV&2P&f].
    • mvpplus: Adds legacy mvpplus group and prefix &f[&4M&eV&2P&6+&f].
    • mvpplusplus: Adds legacy mvpplusplus group and prefix &f[&4&lM&e&lV&2&lP&6&l++&f].

Promotion to Admin

Promoting someone to full admin cannot be done with /promote like it can be for other staff ranks. Instead, they need the direct parent group.

To give them the admin parent group, use the following command:
/lp user <player> parent add admin

Make sure to also remove their trialadmin parent group:
/lp user <player> parent remove trialadmin

Caution: Players must also be added to the hard permission check on promotions. Please contact Dakota for assistance with this. Until they are added, they will be kicked for Permission Error.


Prefix Management

Sometimes chat prefixes get messed up, or players require custom prefix modifications:

  • Check Prefix Priority:
    /lp user <player> meta info
    Use this to see what priority a user has a chat prefix assigned at.
  • Add a Chat Prefix:
    /lp user <player> meta addprefix <priority> "<prefix>"
    Note: If the prefix has spaces in it, you MUST put the prefix in quotation marks (e.g. /lp user novaseepa meta addprefix 999 "&f[&4Admin&f] ").
  • Remove a Chat Prefix:
    /lp user <player> meta removeprefix <priority>
    Note: You must remove it at the exact same priority it was assigned.

Advanced Perm & Group Actions

[!CRITICAL]
Parent Group Modification Warning: Always use parent add or parent remove to adjust player ranks. Do not use parent set! Running parent set will wipe out all other parent groups the player belongs to, causing catastrophic loss of permissions and ranks.

  • Turn Off LuckPerms Log spam:
    If LP messages are filling up your chat, turn them off with:
    /lp log notify off
  • List Player Permissions:
    /lp user <player> perm list
  • Temporarily Ban Item Rentals:
    To revoke a player's /rent abilities for a set period (e.g. after warnings):
    /lp user <player> permission settemp itemrent.ban true <time> (time should be in days/hours, e.g. 14d).
  • Extend Temporary Parent Groups (Accumulate):
    To add additional time to a temporary parent group, append the accumulate keyword:
    /lp user <player> parent addtemp <group> <time> accumulate
    Example: /lp user novaseepa parent addtemp mvpplusplus 90d accumulate
  • Nickname Master Perms Shortcut:
    /dn2 <player>
    Shortcut to assign nickname master perms, giving the player access to all colors.

Walkthrough: Cop Demotions and Reinstatements

Demoting a Player from Cop

If a cop commits a major violation (e.g. planting drugs, farming, accepting bribes) and needs to be demoted:

  1. Ban the Player: Ban them using /ban with a clearly worded reason (e.g. "Planting drugs on players" or "Farming as a cop").
  2. Run Demote: Run /demote <player>.
    • Note: The order of ban and demote isn't important anymore. Previously, /demote would overwrite bans with a 5-minute console ban, but it has been changed to a kick (if online) and a warning.
  3. Remove Cop Rank: Check the player's ranks with /lp user <player> info and remove their cop rank group manually:
    /lp user <player> parent remove <coprank>
    • To demote back to junky, the player must be in the default group. It is added automatically along with permissions that prevent them from re-enrolling when you /demote them.
  4. Manual Enrollment Blocks (If needed): If /demote failed or you need to block enrollment manually:
    • /lp user <player> perm set police.enroll false
    • /lp user <player> perm set police.becomecop false
  5. Warning: Do not forget to remove their cop rank! If you forget to remove their cop rank group, they will still have cop privileges (such as the ability to enter the spawn building and use drug sellers), even if they are demoted.

Removing a Cop Ban / Reinstating a Player

If a player appeals their cop ban successfully, or if a mistake was made:

  1. Check Perms: Run /lp user <player> perm info. Identify the two permissions in red: police.enroll and police.becomecop.
  2. Unset Enrollment Blocks: Remove these blocks:
    • /lp user <player> perm unset police.enroll
    • /lp user <player> perm unset police.becomecop
  3. Restore Cop Rank: Give them their cop rank back:
    /lp user <player> parent add <coprank>
  4. Remove default Rank: Do not forget this step! You must manually remove the default rank:
    /lp user <player> parent remove default