ProVouchers

Commands and Permissions

The /voucher command tree and every permission node.

All commands live under /voucher, with the aliases /pv and /vouchers.

Commands

CommandPermissionRoleDescription
/voucher give <id> [amount] [player]provouchers.giveadminGive a voucher to yourself or another player.
/voucher giveall <id> [amount]provouchers.givealladminGive a voucher to every online player.
/voucher redeem <code> [arg]provouchers.redeemplayerRedeem a typeable code.
/voucher listprovouchers.listadminList loaded vouchers and the code count.
/voucher reloadprovouchers.reloadadminReload voucher and code files, reporting per-file errors.

give

/voucher give crate_key            # to yourself (if you are a player)
/voucher give crate_key 5          # 5 copies, to yourself
/voucher give crate_key 5 Steve    # 5 copies, to Steve

When the player argument is omitted, the voucher goes to the command sender. Running give from the console requires naming a player. The voucher stacks until a player interacts with it; see Anti-Dupe for why.

giveall

/voucher giveall crate_key 1

Gives the voucher to every player currently online. Players who are offline are not included (an offline delivery queue is planned but not yet active).

redeem

/voucher redeem WELCOME
/voucher redeem REFER Steve        # with an argument, if the code uses one

Players use this for codes. The code must be typed exactly, honouring case-sensitive when the code sets it.

reload

/voucher reload

Reloads every file in vouchers/ and codes/. If a file has a mistake (an unknown reward type, a bad material, an invalid expiry, a malformed condition), the reload reports it with the file name and the reason, and keeps loading the rest.

Bypass and utility permissions

PermissionEffect
provouchers.bypass.cooldownIgnore per-voucher redemption cooldowns.
provouchers.bypass.gamemodeRedeem in any game mode (creative and spectator are blocked by default).
provouchers.bypass.ownerRedeem an owner-only voucher belonging to another player.
provouchers.notifyReceive a staff alert when a duplicate voucher is detected.

Permission nodes you define

Conditions of type permission reference whatever node you choose, by convention under provouchers.use.<id>:

conditions:
  - type: permission
    permission: "provouchers.use.crate_key"

Grant that node to the players or groups who should be able to redeem the voucher. These are normal permissions you manage in your permissions plugin; they are not auto-created.

Redeeming items

Holding a voucher and right-clicking redeems it (main or off hand). The item is validated, checked for duplication, consumed, and the rewards are granted. Placing a voucher into an item frame is blocked, to keep it tied to its anti-dupe stamp.

On this page