SnowyGems

权限节点

SnowyGems 全部权限节点、user/admin 两个伞节点的用法,以及权限组配置示例。

权限节点

每个子命令都有独立的权限节点,另外提供两个伞节点用于一次性授予一组权限。

伞节点用 Bukkit 的权限父子关系实现:给玩家 snowygems.user,其下所有子权限自动生效,不需要逐个赋权。节点在插件启用时注册,/sgem reload 会幂等重建。

两个伞节点

伞节点默认包含
snowygems.user所有人普通玩家常用指令:镶嵌台、查看、拆卸、使用、打开菜单
snowygems.adminOP全部管理指令 + 完整的 user 权限

snowygems.admin 包含 snowygems.user,所以管理员只需要给这一个节点。


细粒度节点

普通玩家(snowygems.user 下,默认所有人可用)

节点命令作用
snowygems.command/sgem主命令基础权限,没有它其他节点都无效
snowygems.embed/sgem embed打开通用宝石镶嵌台
snowygems.inspect/sgem inspect只读查看装备上已镶嵌的宝石
snowygems.dismantle/sgem dismantle拆卸宝石(扣费 + 损坏概率)
snowygems.use/sgem use使用手持的兑换券/饮品类宝石
snowygems.open/sgem open <菜单>打开自定义工作台菜单

管理员(snowygems.admin 下,默认 OP)

节点命令作用
snowygems.view/sgem view分类浏览全部宝石并免费领取
snowygems.give/sgem give给玩家发放宝石
snowygems.debug/sgem debug开关调试输出
snowygems.reload/sgem reload重载全部配置
snowygems.compat/sgem compat查看版本兼容报告
snowygems.skills/sgem skills列出技能函数
snowygems.triggers/sgem triggers列出触发标记
snowygems.view管理权限,不是玩家浏览功能——那个界面可以无限量免费领取任何宝石。不要因为名字看起来无害就发给玩家。

常见配置

什么都不配(默认状态)

普通玩家可用镶嵌台、查看、拆卸、使用宝石、打开菜单;OP 额外拥有全部管理指令。对大多数服务器这就够了,不需要动权限插件。

不允许玩家自己拆卸

# LuckPerms 示例
/lp group default permission set snowygems.dismantle false

只开放镶嵌台,别的都收回

/lp group default permission set snowygems.user false
/lp group default permission set snowygems.command true
/lp group default permission set snowygems.embed true

snowygems.command 必须单独给回来——它是主命令的基础权限,撤销伞节点会一并撤销它。

给管理组完整权限

/lp group admin permission set snowygems.admin true

给 GM 组「能发宝石但不能重载」

/lp group gm permission set snowygems.user true
/lp group gm permission set snowygems.give true
/lp group gm permission set snowygems.view true

更新提示的权限

版本更新提示与公告默认发给拥有 snowygems.admin 的玩家(或 OP)。想改成别的节点,在 config.yml 里:

UpdateChecker:
  AdminPermission: snowygems.admin    # 改成你想通知的节点
  NotifyAdminOnJoin: true             # false = 只在控制台提示, 不打扰任何玩家

详见版本更新与公告


常见问题

给了权限但玩家还是用不了命令?

检查 snowygems.command 是否被显式设为 false。它是所有子命令的前置,被否定后其余节点都不起作用。

玩家能打开镶嵌台,但点击没反应?

这不是权限问题——镶嵌台内部的操作不再做权限检查。开 /sgem debug Embed 看具体判定。

我想让玩家用命令方块打开菜单,但不给他们 snowygems.open

命令方块执行 /sgem open <菜单> 时的执行者是玩家自身,仍会检查权限。变通做法是用一个中间插件(如 CMI、CommandPanels)以控制台身份代为打开,或者临时授予权限。

Copyright © 2026