Skip to content

/ability 玩家能力

设置或查询玩家的特殊能力,如世界建造者、飞行与禁言,为基岩版独有命令

命令
官方•Dingding OvO, 3-1415f · 2026-08-12

/ability 用于设置或查询玩家的特殊能力,包括世界建造者、飞行与禁言三种。该命令是基岩版与教育版独有,Java 版中不存在。它最早加入于携带版 Alpha 0.16.0,1.5.0 起新增了查询能力值的用法。

原理

/ability 直接读写玩家实体数据中的「能力标志」(ability flag)。基岩版中每个玩家都携带一组按索引排列的布尔标志,用来表示该玩家当前具备的各类权限,例如「允许飞行」「已静音」「世界建造者」等。/ability 命令本质上就是对这些标志做读取或写入,不涉及物品、方块或计分板等其它系统,因此执行是即时的,也不需要改动世界状态。

三个能力各自对应不同的游戏子系统。worldbuilder 写入「世界建造者」标志,它绕过冒险模式的方块交互限制,使玩家即使在冒险模式下也能放置和破坏方块,这套权限源于教育版的「世界建造者」体系。mayfly 写入「允许飞行」权限标志,它与「当前正在飞行」的状态标志相互独立——后者描述玩家此刻是否在空中,前者描述玩家是否有资格起飞。mute 写入「已静音」标志,聊天系统在把消息广播给其他玩家之前会检查该标志,一旦为真就拦截这条消息,使其他人既看不到也听不到。

能力标志与游戏模式存在耦合。游戏模式会为玩家设定一组默认能力基线:例如创造模式默认开启飞行与建造,生存模式默认关闭。/ability 则是绕过游戏模式、单独覆盖某个标志,因此可以用 /ability @p mayfly true 让生存模式玩家获得飞行能力,而不改变其游戏模式。反过来,切换游戏模式会按新模式的默认值重新计算部分能力,可能覆盖此前用 /ability 设置的结果。

不带布尔值的写法是查询操作:只读取标志并返回当前值;连能力名都省略时,则返回该玩家的能力概况。使用 @a 等多目标选择器时,命令会对每个被选中的在线玩家分别执行,设置形式的成功计数为 1,查询形式的输出则为被选中玩家的数量。由于这些标志保存在玩家的会话数据中,玩家退出游戏后所有能力都会被撤销。

语法

设置能力:

/ability <玩家> <能力> true|false

查询单个能力:

/ability <玩家> <能力>

查询全部能力:

/ability <玩家>

参数

  • <玩家> — 目标选择器(CommandSelector<Player>)。指定要设置、撤销或查询能力的目标玩家,必须为玩家名或玩家类型选择器(如 @p、@a、@s),不能选择非玩家实体。
  • <能力> — 枚举类型。指定要操作的能力名称,可选值见下方「能力一览」。
  • true|false — 布尔值。true 为启用该能力,false 为撤销该能力;省略时进入查询模式,返回该能力的当前值。

能力一览

能力说明
worldbuilder世界建造者。授予后玩家即使在冒险模式下也能放置和破坏方块,绕过冒险模式的方块交互限制。
mayfly飞行。授予玩家飞行的权限,使其像在创造模式一样飞行,无需切换游戏模式。
mute禁言。开启后该玩家的聊天消息对其他玩家不可见,也无法被其他玩家听见。

示例

给最近玩家开启飞行: /ability @p mayfly true

距离执行者最近的玩家获得飞行权限,即使处于生存模式也能像创造模式一样飞行。

撤销指定玩家的世界建造者能力: /ability Steve worldbuilder false

玩家 Steve 被撤销世界建造者能力,之后无法再绕过冒险模式的方块交互限制。

禁言所有在线玩家: /ability @a mute true

所有在线玩家的聊天消息都会被拦截,其他玩家看不到也听不到这些消息。

查询某玩家的禁言状态: /ability Steve mute

查询并返回 Steve 的禁言能力当前值,若为 true 表示其正处于禁言状态。

查询某玩家的全部能力: /ability Steve

返回 Steve 当前拥有的全部能力概况,方便你一次确认该玩家的能力状态。

基岩版注意

  • 需要 OP 等级 1,且世界需开启作弊(cheats)才能使用。
  • 该命令为基岩版独有,Java 版中不存在 /ability 命令,也没有等价的禁言命令。
  • /ability 最早加入于携带版 Alpha 0.16.0;1.5.0 起才支持查询用法(省略布尔值或能力名),早期版本仅支持设置用法。
  • 玩家退出游戏后,所有能力均会被撤销,重新加入世界后需要再次执行命令授予。
  • worldbuilder 能力源于教育版的世界建造者权限体系,但在普通基岩版世界中同样可用,前提是已开启作弊。

常见问题

为什么执行 /ability 提示没有权限?

/ability 需要 OP 等级 1,并且世界必须开启作弊。若是单人世界,需在世界设置中开启「激活作弊」;在服务器中,则需要先通过服务器控制台授予自己 OP。

玩家退出重进后能力还在吗

不在了。能力保存在玩家的会话数据中,退出游戏后即被撤销,重新加入世界后需要重新执行命令授予。

生存模式玩家获得飞行后为什么还是飞不起来?

mayfly 只授予「允许飞行」的资格,不改变玩家当前的飞行状态,玩家需要在空中再次按下跳跃键才能实际起飞。此外,切换游戏模式会按新模式的默认值重新计算飞行等能力,可能覆盖之前用 /ability 设置的结果。

worldbuilder 和创造模式有什么区别

worldbuilder 只放开「放置与破坏方块」这一项权限,不影响生命值、物品栏或无敌状态;而创造模式则同时附带飞行、无敌、无限资源等一整套能力。它主要用于冒险模式地图中,只允许特定玩家编辑世界而不改变其余玩家的体验。

相关命令

  • /gamemode — 游戏模式决定玩家的基础能力,mayfly 与创造模式飞行、worldbuilder 与建造权限直接相关
  • /gamerule — 通过 sendcommandfeedback、commandBlocksEnabled 等规则控制命令输出与执行环境
  • 命令语法基础 — 了解 @p、@a、@s 等目标选择器与参数格式的完整说明