Reverie uses Fabric’s permission API. If you have LuckPerms or another permission mod installed, you can use these nodes for fine-grained access control. Without a permission mod, checks fall back to operator level.
Permission OP Level Description reverie.command.base2 Access to /reverie base command reverie.command.reload2 Reload all configurations reverie.command.debug2 Access all debug commands reverie.command.beatmap2 Manage beatmaps reverie.command.showdown2 Access Showdown debug utilities reverie.command.showdown.eval4 Evaluate Showdown JS expressions (dangerous)
Permission OP Level Description reverie.contest.create2 Create new contests reverie.contest.manage2 Admin-manage contests (add bots, set stats, etc.) reverie.contest.spectate0 Spectate contests (if requirePermission is true)
Permission OP Level Description reverie.camera.manage2 Preview, test, and visualize camera positions
Permission OP Level Description reverie.hall.manage2 Create, edit, delete, and reload halls
Permission OP Level Description reverie.tournament.create2 Create new tournaments reverie.tournament.manage2 Admin-manage tournaments
Permission OP Level Description reverie.contesttype.manage2 Create, edit, and reload contest types
Permission OP Level Description reverie.sealcase.use0 Use a Seal Case item
Permission Description reverie.cooldown.bypassBypass all contest entry cooldowns reverie.cooldown.vipVIP tier: 2 min entry, 30 sec re-entry reverie.cooldown.premiumPremium tier: 30 sec entry, 10 sec re-entry
Without any cooldown permission, the defaults are 5 minutes between entering contests and 1 minute to re-enter after leaving.
Contest types can define custom permission requirements:
permission = "reverie.contest.vip"
Any string can be used as a permission node, allowing VIP-only contests, rank-restricted events, etc.
When no permission mod is installed:
Level Who 0 All players 2 Server operators 4 Server console / owners
Most admin commands require level 2. Player-facing commands like /contest join, /accessibility, and /tournament join require no special permissions.
/lp group default permission set reverie.contest.spectate true
/lp group default permission set reverie.sealcase.use true
/lp group coordinator permission set reverie.contest.create true
/lp group coordinator permission set reverie.contest.manage true
/lp group coordinator permission set reverie.tournament.create true
/lp group vip permission set reverie.cooldown.vip true
/lp group admin permission set reverie.command.base true
/lp group admin permission set reverie.command.reload true
/lp group admin permission set reverie.command.debug true
/lp group admin permission set reverie.hall.manage true
/lp group admin permission set reverie.camera.manage true
/lp group admin permission set reverie.contesttype.manage true
/lp group admin permission set reverie.tournament.manage true
/lp group admin permission set reverie.command.beatmap true
/lp group admin permission set reverie.cooldown.bypass true