Permissions
Every permission node in the plugin and how the permission-driven listing slot system works.
There are three nodes, plus an open-ended family for listing slots.
The nodes
| Node | Grants | Default |
|---|---|---|
atauctionhouse.use | Opening and browsing the auction house | Everyone |
atauctionhouse.sell | Creating listings | Everyone |
atauctionhouse.admin | Reload, remove and about | Operators |
atauctionhouse.admin is a parent of the other two, so granting it grants
atauctionhouse.use and atauctionhouse.sell as well.
What each one covers
The base node. Without it, /ah and every subcommand except the admin ones are refused
with a no-permission message.
It covers /ah, /ah <player>, /ah search, /ah collect, /ah transactions and
/ah help, along with every button inside the menus those open.
Revoke it from a rank and that rank cannot see or use the auction house at all.
Creating listings, through either /ah sell [price] or the sell menu.
Revoking it leaves a rank able to browse and buy but not to list. It does not stop them cancelling listings they already have, or collecting from their collection box.
/ah reload, /ah remove <id> and /ah about.
The console can run all three without holding anything. Any other non-player sender, such as a command block, RCON or a proxy plugin, must actually hold this node. A command block able to remove any listing is a real exposure, so it is not granted implicitly.
Listing slots
The number of active listings one player may have is permission-driven.
AUCTION.MAX-LISTINGS-PER-PLAYER in config.yml is the floor for everyone. It defaults
to 10.
| Node | Effect |
|---|---|
atauctionhouse.limit.<number> | Raises the cap to at least that number |
atauctionhouse.limit.unlimited | Removes the cap |
atauctionhouse.limit.* | Removes the cap, same as unlimited |
The highest value a player holds wins, and the config value is never lowered by a
permission. So a player with the default of 10 who holds atauctionhouse.limit.5 still
gets 10.
atauctionhouse.limit.25 25 slots
atauctionhouse.limit.100 100 slots
atauctionhouse.limit.unlimited no capA typical rank ladder:
| Rank | Node | Slots |
|---|---|---|
| Default | none | Whatever MAX-LISTINGS-PER-PLAYER says |
| VIP | atauctionhouse.limit.25 | 25 |
| MVP | atauctionhouse.limit.50 | 50 |
| Staff | atauctionhouse.limit.unlimited | No cap |
This works with any permissions plugin. There is no per-plugin integration to install and nothing to configure beyond handing out the node.
How it shows up in game
In "Your Listings", every slot past a player's allowance is drawn as the locked item from
YOUR-ITEMS.ITEMS.LOCKED in gui.yml. The {slots} placeholder there is that viewer's
own allowance, so the shipped lore reads "You have 25 auction slots. Rank up for more."
A player with no cap sees no locked slots at all.
Notes on behaviour
- A suffix that is not a number and is not
unlimitedor*is ignored, so a typo likeatauctionhouse.limit.twentyfivesilently does nothing rather than breaking the cap. - The check runs when a listing is created. Hitting the cap returns the item to the player, it does not consume it.
- A player's effective limit is cached briefly, for a couple of seconds, so that re-rendering a menu does not rescan their whole permission set. A rank change is picked up within a click or two.
/ah reloadclears that cache immediately, so changingMAX-LISTINGS-PER-PLAYERtakes effect at once.
Recommended setup
Leave the defaults alone for most servers
use and sell are already granted to everyone, and admin is already limited to
operators. Most servers need no permission work at all.
Add slot tiers if you sell ranks
Grant atauctionhouse.limit.<n> per rank. Nothing else changes.
Give staff the admin node
Grant atauctionhouse.admin to your staff group so they can run /ah remove <id> on a
scam listing and /ah reload after a config change.
Do not grant atauctionhouse.* as a wildcard to a normal rank. It picks up
atauctionhouse.admin, which lets that rank remove anybody's listing.