此模组为原版游戏添加了权限检查,以实现完整的权限自定义。
(任何支持 fabric-permissions-api 的权限提供模组也同样受支持。)
| 权限 | 描述 |
|---|---|
minecraft.adminbroadcast.receive |
接收命令反馈 |
minecraft.bypass.spawn-protection |
在出生点保护区域内建造 |
minecraft.bypass.force-gamemode |
绕过强制游戏模式 |
minecraft.bypass.move-speed.player |
绕过“玩家移动过快” |
minecraft.bypass.move-speed.vehicle. |
在骑乘 entity(例如 minecraft.boat)时绕过“玩家移动过快” |
minecraft.bypass.chat-speed |
发送消息/命令过快时绕过聊天踢出 |
minecraft.bypass.whitelist |
绕过服务器白名单 |
minecraft.bypass.player-limit |
绕过服务器玩家上限 |
[minecraft.command.](#commands) |
命令权限,更多信息请参阅 [命令](#commands) |
minecraft.debug_stick.use. |
对 block(例如 minecraft.oak_trapdoor)使用调试棒 |
minecraft.debug_chart |
查看调试图表 |
minecraft.. |
放置带有 NBT 数据的方块并使用调试命令 |
| `minecraft.operator_block..
` | 放置、查看、编辑和破坏操作员方块。 |
| minecraft.selector | 在命令中使用实体选择器 |
| [minecraft.selector.entity.](#selectors) | 允许使用 selector 选择[非玩家实体](#scope-control) |
| [minecraft.selector.player.](#selectors) | 允许使用 selector 选择[非自身玩家](#scope-control) |
| [minecraft.selector.self.](#selectors) | 允许使用 selector 选择[自身](#scope-control) |
有时也称为“选项”或“变量”。
不正确的类型被视为未定义值。
| 元数据 | 类型 | 描述 |
|---|---|---|
[minecraft.selector.limit.](#selectors) |
Integer |
[限制](#entity-limit) 使用 selector 可选择的实体的最大数量 |
[minecraft.selector.weight.](#selectors) |
Integer |
选择器权重,更多信息请参阅 [选择权重](#selection-weight) |
此模组使用 Brigadier 基于节点的权限系统。每个命令由多个节点组成,每个节点都有自己的权限。
例如,/gamemode 命令:
/gamemode) 需要 minecraft.command.gamemode。survival、creative 等,使用 minecraft.command.gamemode.survival、minecraft.command.gamemode.creative 等。在原版 Minecraft 中,只有根节点有权限检查(例如 OP 等级 2)。一旦玩家获得该根节点的访问权限,所有子节点默认被视为已解锁。
如果你想要更精细的控制,可以通过拒绝其特定权限来手动限制子节点。
Allow:
minecraft.command.gamemode
Deny:
minecraft.command.gamemode.creative
minecraft.command.gamemode.spectator
这允许玩家使用 /gamemode,但限制他们只能使用允许的子选项(例如生存模式和冒险模式)。
对于其他命令,请参阅每个命令的 Minecraft Wiki 页面中的语法部分。
命令方块和数据包会绕过所有选择器权限检查。
默认情况下,授予 minecraft.selector 允许玩家在他们有权访问的命令中使用任何选择器。
细粒度权限控制操作如下。请注意,此模组基于选择结果进行限制,而非原始选择器语法。使用玩家名称、UUID 或像 @e 这样的选择器,如果它们产生相同的结果,则是等效的。
` 字符串遵循格式:..`,其中:
例如,在 /teleport 命令中:
大多数选择器是 entity 选择器,这是受支持的。完整支持列表请参阅[下方](#status)。
| 命令 | 语法(参见 Minecraft Wiki) | 要控制的选择器 | `` 构建方式 |
|---|---|---|---|
/teleport @e @s |
teleport |
@e |
teleport.targets.targets.destination |
/teleport @e @s |
teleport |
@s |
teleport.destination.targets.destination |
/teleport @e ~ ~ ~ |
teleport |
@e |
teleport.targets.targets.location |
选择器权限可能很长。幸运的是,你可以使用通配符,例如 teleport.* 来覆盖所有传送命令的选择器。
然而,Luckperms 不支持元数据的通配符。你可以安装[此模组](https://modrinth.com/mod/metadatawildcard4fabric-permissions-api 'Metadata Wildcard for fabric-permissions-api')来启用它。
使用这些权限来定义选择器范围:
minecraft.selector.entity.minecraft.selector.player.minecraft.selector.self.如果玩家试图选择未经授权的实体,命令将失败。默认情况下,所有三个范围(即 minecraft.selector.*)都是允许的。
Allow:
minecraft.command.waypoint
minecraft.selector
Deny:
minecraft.selector.player.waypoint.*
minecraft.selector.entity.waypoint.*
玩家只能修改自己的路径点。
Allow:
minecraft.command.teleport # /teleport
minecraft.selector # 所有选择器
minecraft.selector.player.teleport.destination.destination #1
minecraft.selector.entity.teleport.destination.destination #2
minecraft.selector.entity.teleport.targets.targets.destination #3
minecraft.selector.player.teleport.facingEntity.* #4
Deny:
minecraft.selector.player.teleport.* #6
minecraft.selector.entity.* #5
minecraft.selector.self.teleport.facingEntity.* #7
命令行为:
| 命令 | 自身 | 非自身玩家 | 非玩家实体 | 结果行为 |
|---|---|---|---|---|
/teleport |
`` 默认允许 | `` 由 #𝟏 允许 | `` 由 #𝟐 允许 | 传送到任何实体 |
/teleport |
`` 默认允许 |
` 默认允许 | ` 被 #𝟓 拒绝
` 被 #𝟓 拒绝 | ` 由 #𝟑 允许
`` 被 #𝟔 拒绝 | 只能将非玩家实体传送到自身 |
| /teleport | (无选择器) | - | - | 无限制的位置传送 |
| /teleport | ` 默认允许 | 被 #𝟓 拒绝 | ` 被 #𝟔 拒绝 | 只能将自身传送到位置 |
| /teleport facing entity | `` 默认允许
` 被 #𝟕 拒绝 | ` 被 #𝟓 拒绝
` 由 #𝟒 允许 | ` 被 #𝟔 拒绝
`` 被 #𝟔 拒绝 | 将自身传送到位置,同时面向非自身玩家 |
设置元数据 minecraft.selector.limit. 以限制通过给定选择器可选择的最大实体数量。
如果未设置此元数据,则不应用限制。
由元数据 minecraft.selector.weight. 控制。
没有权重设置的实体始终可以选择任何目标,并且可以被任何选择器选择。当两个实体都有权重值时,选择器只能选择权重小于或等于其自身权重的目标。
你需要先安装[此模组](https://modrinth.com/mod/metadatawildcard4fabric-permissions-api 'Metadata Wildcard for fabric-permissions-api')。
# 全局权限
Allow:
minecraft.command.gamemode
minecraft.selector
# 玩家特定元数据
Player1: minecraft.selector.weight.gamemode.* = 7
Player2: minecraft.selector.weight.gamemode.* = -1
Player3: minecraft.selector.weight.gamemode.* = 7
Player4: (未设置权重)
| 玩家 | 可以修改游戏模式的玩家 | 原因 |
|---|---|---|
| Player1 | 所有玩家 | 权重 ($7$) ≥ 所有其他玩家的权重 |
| Player2 | 仅 Player2 和 Player4 | 权重 ($-1$) |
,允许数据包检查权限(例如 /execute if permission @s group.admin run say I am an admin`)
feedback 修饰符 /execute feedback [silent | console] 或 /execute feedback entity 用于静默或重定向命令反馈(例如 /execute feedback silent run gamemode creative)oplevel 修饰符 /execute oplevel 或 /execute oplevel 可用于降低命令源上下文的 OP 权限等级,这在你想以用户身份运行命令(从函数或控制台)但希望绕过权限工作时很有用(例如 /execute as DrexHD oplevel entity @s run rtp,这将使用玩家 DrexHD 的 OP 等级,而不是实际命令执行者来检查像 rtp.bypass 这样的权限)如果模组安装在客户端,即使玩家有权访问命令但不是 OP,也可以访问游戏模式切换器(对于基于 Spigot 的服务器很有用)!
友情链接: 网易我的世界 | 泰拉瑞亚 | ocent云计算 | 米饭Minecraft插件文档 | 友链合作
历史访问人数:110,004 | 历史访问人次:200,871
今日访问人数:20,836 | 今日访问人次:21,743
昨日访问人数:19,978 | 昨日访问人次:22,291
Copyright © 2019-2026 我的世界服务器列表站. All rights reserved.
❤ Powered by GermMC 京ICP备17023959号-6