Skip to main content

Permissions

Vanilla Core uses a hierarchical permission system. Most management and bypass permissions default to OP, while selected social/player-preference permissions default to true.

Primary namespace:

  • smp.*

Permission Defaults

By default, Vanilla Core uses these permission levels:

  • OP Players - Full access to all commands and bypass permissions
  • Regular Players - Access to permissions that default to true (for example smp.msg, smp.reply, and social toggle/block commands)

To change this behavior, use a permissions plugin like LuckPerms.

Admin Permissions

These permissions control access to the main plugin functions:

PermissionDescriptionDefault
smp.adminFull access to all Vanilla Core features and GUIOP
smp.reloadAbility to reload configuration filesOP
smp.versionAbility to view the running plugin versionOP
smp.menuAbility to open the main configuration GUIOP
smp.enchantManage enchantment limiter commandsOP
smp.maceManage mace limiter commandsOP
smp.mace.resetReset mace limiter countsOP
smp.netheriteManage netherite disabler commandsOP
smp.infiniterestockOpen/manage Infinite RestockOP
smp.ritualStart/view ritual eventsOP
smp.ritual.cancelCancel active ritual eventsOP
smp.msgSend private messagestrue
smp.replyReply to private messagestrue
smp.socialspyUse social spyOP
smp.announcementsManage announcements engineOP
smp.tpaRequest teleport to playerstrue
smp.tpahereRequest players teleport to youtrue
smp.tpacceptAccept teleport requeststrue
smp.tpdenyDeny teleport requeststrue
smp.spawnTeleport to spawntrue
smp.setspawnSet spawn locationOP
smp.backTeleport back to previous locationtrue
smp.tpUse direct teleport commandOP
smp.tphereTeleport player to your locationOP
smp.homeUse home commandtrue
smp.sethomeSet homestrue
smp.delhomeDelete homestrue
smp.homesOpen homes GUItrue
smp.homes.targetOpen another player's homes GUIOP
smp.warpUse warp commandtrue
smp.setwarpSet warpsOP
smp.delwarpDelete warpsOP
smp.warpsOpen warps GUItrue
smp.kitClaim kitstrue
smp.kitsList kitstrue
smp.flyToggle own flightOP
smp.fly.othersToggle others' flightOP
smp.godToggle own god modeOP
smp.god.othersToggle others' god modeOP
smp.speedSet own speedOP
smp.speed.othersSet others' speedOP
smp.repairRepair held itemOP
smp.repair.allRepair all inventory itemsOP
smp.giveitemGive item utility commandOP
smp.workbenchOpen virtual workbenchtrue
smp.anvilOpen virtual anviltrue
smp.ecOpen own ender chestOP
smp.ec.othersOpen others' ender chestOP
smp.invseeOpen target inventoryOP
smp.clearinvClear own inventoryOP
smp.clearinv.othersClear others' inventoryOP

Command Permissions

Main Commands

PermissionDescriptionDefault
smp.menuUse /smp and /smp menuOP
smp.reloadUse /smp reload and /smp reload <module>OP
smp.versionUse /smp versionOP
smp.ritualUse /ritual and /smp ritualOP
smp.ritual.cancelCancel active ritual eventsOP
smp.msgUse /smp msg or /msgtrue
smp.replyUse /smp reply or /replytrue
smp.socialspyUse /smp socialspy or /socialspyOP
smp.toggle.chatUse /smp togglechattrue
smp.toggle.pmUse /smp togglepmtrue
smp.toggle.mentionsUse /smp togglementionstrue
smp.blockUse /smp blocktrue
smp.unblockUse /smp unblocktrue
smp.blocklistUse /smp blockedtrue
smp.announcementsUse /smp announcements reloadOP

Dimension Lock Commands

PermissionDescriptionDefault
smp.dimension.netherManage Nether lock status/open/closeOP
smp.dimension.endManage End lock status/open/closeOP

Teleport Commands

PermissionDescriptionDefault
smp.tpaUse /tpatrue
smp.tpahereUse /tpaheretrue
smp.tpacceptUse /tpaccepttrue
smp.tpdenyUse /tpdenytrue
smp.spawnUse /spawntrue
smp.setspawnUse /setspawnOP
smp.backUse /backtrue
smp.tpUse /tpOP
smp.tphereUse /tphereOP

Homes And Warps

PermissionDescriptionDefault
smp.homeUse /hometrue
smp.sethomeUse /sethometrue
smp.delhomeUse /delhometrue
smp.homesUse /homestrue
smp.homes.targetUse /homes <player>OP
smp.warpUse /warptrue
smp.setwarpUse /setwarpOP
smp.delwarpUse /delwarpOP
smp.warpsUse /warpstrue

Kits And Utility

PermissionDescriptionDefault
smp.kitUse /kittrue
smp.kitsUse /kitstrue
smp.flyUse /flyOP
smp.fly.othersUse /fly <player>OP
smp.godUse /godOP
smp.god.othersUse /god <player>OP
smp.speedUse /speedOP
smp.speed.othersUse /speed <value> <player>OP
smp.repairUse /repairOP
smp.repair.allUse /repair allOP
smp.giveitemUse /giveitemOP
smp.workbenchUse /workbenchtrue
smp.anvilUse /anviltrue
smp.ecUse /ecOP
smp.ec.othersUse /ec <player>OP
smp.invseeUse /invseeOP
smp.clearinvUse /clearinvOP
smp.clearinv.othersUse /clearinv <player>OP

Bypass and Exception Permissions

PermissionDescriptionDefault
smp.dimension.bypassBypass all dimension locksOP
smp.dimension.bypass.endBypass End lock onlyfalse
smp.dimension.bypass.netherBypass Nether lock onlyfalse
smp.itemlimiter.bypassBypass Item Limiter restrictionsOP
smp.enderchestlimiter.bypassBypass Ender Chest Item Limiter restrictionsOP
smp.netherite.craft.*Bypass netherite crafting restrictionsfalse

Wildcard Permissions

Wildcard permissions grant all child permissions in a category:

PermissionGrants
smp.*All Vanilla Core permissions
smp.netherite.craft.*Bypass all netherite craft restrictions

LuckPerms Configuration Examples

Full Staff Access

Give staff members complete access to manage Vanilla Core:

/lp group staff permission set smp.admin true
/lp group staff permission set smp.reload true

Or use the wildcard:

/lp group staff permission set smp.* true

Moderator Access (Limited)

Allow moderators to manage dimensions without bypassing limits:

/lp group moderator permission set smp.dimension.nether true
/lp group moderator permission set smp.dimension.end true
/lp group moderator permission set smp.menu true

VIP Bypass (Item Limits Only)

Allow VIP players to bypass item limits but still respect other restrictions:

/lp group vip permission set smp.itemlimiter.bypass true

Note: Plan your permissions carefully if using group inheritance.

Remove OP Bypass

To prevent OP players from automatically having bypass permissions:

  1. Set the permissions explicitly to false:
/lp group default permission set smp.itemlimiter.bypass false
/lp group default permission set smp.enderchestlimiter.bypass false
  1. Then grant specific bypasses only to intended groups.

Best Practices

Separate Bypass from Management

Staff should be able to manage features without bypassing them. Consider this setup:

Admin Group:

  • smp.admin - Can manage all features
  • No bypass permissions - Subject to same limits as players

Helper Group:

  • smp.menu - Can open the settings menu and inspect feature states
  • No other permissions

Audit Bypass Permissions

Regularly review who has bypass permissions:

/lp user <playername> permission info

Look for any bypass entries that shouldn't be there, such as:

  • smp.itemlimiter.bypass
  • smp.enderchestlimiter.bypass
  • smp.dimension.bypass

Use Groups, Not Individual Permissions

Always assign permissions through groups rather than directly to players. This makes management easier and more consistent.


Next: Explore Features in detail.