Permissions
CocoVouchers uses a flexible permission system with both admin and per-voucher permissions.
Permission Nodes
| Permission | Description | Default |
|---|---|---|
cocovouchers.* | All CocoVouchers permissions | OP |
cocovouchers.give | Give vouchers to players | OP |
cocovouchers.list | List all vouchers | true |
cocovouchers.create | Create new vouchers | OP |
cocovouchers.open | Open voucher browser GUI | true |
cocovouchers.edit | Edit vouchers via GUI | OP |
cocovouchers.duplicate | Duplicate vouchers | OP |
cocovouchers.convert | Convert from other plugins | OP |
cocovouchers.delete | Delete vouchers | OP |
cocovouchers.reload | Reload plugin | OP |
cocovouchers.use.* | Use any voucher | OP |
cocovouchers.cooldown.bypass | Bypass voucher cooldowns | OP |
Per-Voucher Permissions
You can restrict voucher usage with custom permissions:
requirements:
- "[PERMISSION] cocovouchers.use.vip"
This requires players to have cocovouchers.use.vip to use the voucher.
Common Patterns
| Permission | Purpose |
|---|---|
cocovouchers.use.vip | VIP-only vouchers |
cocovouchers.use.event.summer | Event-specific vouchers |
cocovouchers.use.rank.diamond | Rank-specific vouchers |
Crafting Permissions
Each voucher can have its own crafting permission:
crafting:
enabled: true
permission: "cocovouchers.craft.diamond_crate"
Players need this permission to craft the voucher.
Cooldown Bypass
Players with cocovouchers.cooldown.bypass can use vouchers without waiting for cooldowns.
Enable/disable this feature in config:
cooldown:
bypass-permission-enabled: true
LuckPerms Examples
Give Admin All Permissions
/lp group admin permission set cocovouchers.* true
Allow Players to Browse Vouchers
/lp group default permission set cocovouchers.list true
/lp group default permission set cocovouchers.open true
VIP Voucher Access
/lp group vip permission set cocovouchers.use.vip true
Staff Management
/lp group staff permission set cocovouchers.give true
/lp group staff permission set cocovouchers.list true
/lp group staff permission set cocovouchers.open true
Full Admin Access
/lp group admin permission set cocovouchers.* true
PermissionsEx Example
groups:
default:
permissions:
- cocovouchers.list
- cocovouchers.open
vip:
permissions:
- cocovouchers.use.vip
staff:
permissions:
- cocovouchers.give
- cocovouchers.list
- cocovouchers.open
admin:
permissions:
- cocovouchers.*
Negative Permissions (Inverse)
You can also use inverse requirements to deny players with a permission:
requirements:
- "[!PERMISSION] cocovouchers.voucher.claimed"
This prevents players who have cocovouchers.voucher.claimed from using the voucher (useful for one-time vouchers).