SnowyGems
权限节点
SnowyGems 全部权限节点、user/admin 两个伞节点的用法,以及权限组配置示例。
权限节点
每个子命令都有独立的权限节点,另外提供两个伞节点用于一次性授予一组权限。
snowygems.user,其下所有子权限自动生效,不需要逐个赋权。节点在插件启用时注册,/sgem reload 会幂等重建。两个伞节点
| 伞节点 | 默认 | 包含 |
|---|---|---|
snowygems.user | 所有人 | 普通玩家常用指令:镶嵌台、查看、拆卸、使用、打开菜单 |
snowygems.admin | OP | 全部管理指令 + 完整的 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)以控制台身份代为打开,或者临时授予权限。