Permissions
The six nodes, and how a tab or a rarity is sold as one line.
The nodes
| Permission | Grants |
|---|---|
exyliaemotes.command.emote | /emote and everything under it. |
exyliaemotes.admin | Every subcommand of /emotesadmin, and the hint on how to set a preview stage. |
exyliaemotes.emote.<id> | One emote, by its id. |
exyliaemotes.emote.* | Every emote. |
exyliaemotes.category.<id> | Every emote in that tab. |
exyliaemotes.tier.<id> | Every emote of that rarity. |
None of them is declared in plugin.yml, so none is given to anybody by default: only operators hold
them until a permissions plugin grants them.
An emote is owned if any of the four emote nodes applies: its own, the wildcard, its tab's or its rarity's. A permission is only half of owning one — the other half is an unlock from the crate, which is written to the player's account instead. The menu, the commands, the placeholders and the stage all ask the same question, so they cannot disagree.
The id is the node
There is no permission key in emotes.yml. The node is the key, lowercased:
wave → exyliaemotes.emote.wave
meme → exyliaemotes.category.meme
legendary → exyliaemotes.tier.legendaryRenaming a key is a different node, and everybody who had the old one loses the emote.
Selling it
/lp group default permission set exyliaemotes.command.emote true
/lp group default permission set exyliaemotes.emote.wave true
/lp group vip permission set exyliaemotes.category.meme true
/lp group mvp permission set exyliaemotes.emote.handshake true
/lp group elite permission set exyliaemotes.tier.legendary true
/lp group legend permission set exyliaemotes.emote.* trueWithout exyliaemotes.command.emote the catalogue cannot be opened at all, and a player who cannot see
what is for sale cannot want it. Locked emotes are shown locked, and can be previewed.
What the nodes are checked for
| Moment | What happens without one |
|---|---|
Performing, from the menu or /emote play | Refused with no-permission, while behaviour.require-permission is on. |
| Accepting a duet | Both players must own it, or it is refused on accept. |
| Being drawn | behaviour.hide-without-permission decides whether a locked emote is hidden in the menu or shown locked. On the favourites tab it is always shown. |
Tab completion of /emote play | Only owned emotes are offered. |
With behaviour.require-permission: false every emote is playable by anybody who can run /emote, and
nothing in the menu is locked.
Previewing and starring never need the emote's node. /emotesadmin play does not either — it reaches
past ownership on purpose.
Something missing on this page? Tell us on Discord