Skip to content

/effect 状态效果

给予或移除实体的状态效果,支持设置持续时间、等级、隐藏粒子与无限时长

命令
官方•Dingding OvO · 2026-08-12

给予或移除玩家与实体的状态效果,可设置持续时间、等级与是否隐藏粒子。基岩版 1.21.40 起新增了 infinite 关键字用于给予无限时长效果,并支持 clear <效果> 清除指定效果。

原理

状态效果是附着在实体上的一个持续状态,游戏为每个实体维护一张「活跃效果」表,表中的每条记录包含效果 ID、剩余时长(以游戏刻计)、放大器等级以及是否显示粒子等字段。/effect 命令并不直接改写实体的血量或速度等属性,而是先解析目标选择器得到一批实体,再向这些实体的活跃效果表里插入或更新对应条目。效果真正产生作用,是由游戏在每个游戏刻读取这张表、按效果类型执行相应逻辑来实现的。

命令里的 [秒] 参数最终会换算成游戏刻(每秒 20 刻)存入实体。每个游戏刻,游戏把剩余时长减 1,并根据效果类型执行周期性动作——例如 poison 每隔一段时间扣血、regeneration 每隔一段时间回血,而 speed、strength 这类效果则持续参与移动或伤害公式的计算。剩余时长减到 0 时该条目被移除,实体恢复常态。instant_health、instant_damage 与 saturation 三个瞬间效果是例外:它们的时长参数直接按游戏刻解读,并且只生效一次。

[放大器] 采用 0 起算的整数,0 表示 I 级、1 表示 II 级,依此类推;游戏在计算效果强度时把「放大器 + 1」作为等级因子,例如 speed 每级额外提升 20% 移动速度。当目标已经拥有同名效果时,命令会用新参数刷新该条目:剩余时长被重置,放大器与隐藏粒子标志按新值写入。把 [秒] 设为 0 会移除目标已拥有的同名效果;时长超过 2,040,109,465 秒的数值会提示成功但实际不生效。基岩版还要求效果 ID 必须是字母 ID,不接受数字 ID。

活跃效果表是一个共享的底层系统,药水、信标、金苹果等途径最终都是向这张表写入条目,因此用 /effect clear 也能移除由这些途径施加的同名效果。信标赋予的效果带有「环境」标记,通常不显示粒子且图标样式不同,但 /effect 仍按效果 ID 统一读写这些条目。[隐藏粒子] 只控制效果自带的旋涡粒子,隐藏后若要补充视觉反馈,可以另外使用 /particle 生成自定义粒子。

语法

给予效果:

/effect <目标> <效果> [秒] [放大器] [隐藏粒子]

给予无限时长效果(1.21.40+):

/effect <目标> <效果> infinite [放大器] [隐藏粒子]

清除效果:

/effect <目标> clear

/effect <目标> clear <效果>(1.21.40+)

基岩版在 1.21.40 之前没有 infinite 关键字,也无法指定清除单一效果,旧版的清除语法只有 /effect <目标> clear。

参数

  • <目标> — 目标选择器或玩家名。指定要给予或清除效果的玩家或实体,可用 @p、@a、@r、@s 或 @e;其中 @e 配合类型参数可以选中非玩家实体(如 @e[type=zombie])。
  • <效果> — 效果 ID。指定要给予或清除的状态效果,基岩版要求使用字母 ID(如 speed、strength),不能使用数字 ID。
  • [秒] — 整数,持续时间,单位秒。缺省为 30 秒;设为 0 会移除目标已拥有的同名效果。取值范围 0 到 2,147,483,647,但超过 2,040,109,465 时虽然提示成功却不产生效果。instant_health、instant_damage、saturation 三个瞬间效果的该参数以游戏刻为单位。
  • [放大器] — 整数,效果等级。0 表示 I 级、1 表示 II 级,依此类推;缺省为 0,不接受负数。
  • [隐藏粒子] — 布尔值。true 隐藏该效果自带的旋涡粒子,缺省为 false。
  • infinite — 关键字,表示无限时长(1.21.40+)。它替代 [秒] 的位置,效果将持续到被清除或实体死亡。
  • clear — 关键字,进入清除模式。不带 <效果> 时清除目标的全部状态效果,带 <效果> 时只清除指定效果(后者需 1.21.40+)。

常用效果

效果 ID中文名说明
speed速度每级提升 20% 移动速度
slowness缓慢降低移动速度
haste急迫提升挖掘与攻击速度
mining_fatigue挖掘疲劳降低挖掘与攻击速度
strength力量提升近战攻击伤害
instant_health瞬间治疗立即恢复生命
instant_damage瞬间伤害立即造成伤害
jump_boost跳跃提升提升跳跃高度并减免摔落伤害
regeneration生命恢复周期性恢复生命
resistance抗性提升减免受到的伤害
fire_resistance抗火免疫火焰与熔岩伤害
water_breathing水下呼吸水下不消耗氧气
invisibility隐身使实体不可见
night_vision夜视黑暗中视野全亮
saturation饱和立即恢复饥饿值
absorption伤害吸收提供额外吸收生命
levitation飘浮使实体向上飘起
slow_falling缓降减缓下落速度并免疫摔落伤害
conduit_power潮涌能量提供水下呼吸、夜视与急迫
health_boost生命提升临时提升生命上限
blindness失明视野严重受限
nausea反胃画面扭曲晃动
hunger饥饿加速饥饿值消耗
weakness虚弱降低近战攻击伤害
poison中毒周期性造成伤害
wither凋零周期性造成伤害,可致死
darkness黑暗视野周期性变暗
bad_omen不祥之兆进入村庄时触发袭击
village_hero村庄英雄袭击胜利后获得交易折扣

示例

给予自己 30 秒的速度 II:

/effect @s speed 30 1

给自己施加 30 秒的速度 II 效果,移动速度提升 40%。

给予所有玩家无限时长的夜视并隐藏粒子:

/effect @a night_vision infinite 0 true

给所有在线玩家施加无限时长的夜视效果,并隐藏粒子旋涡,效果持续到被清除或玩家死亡。

清除自己的全部状态效果:

/effect @s clear

移除自己身上的所有状态效果,包括由药水和信标施加的效果。

仅清除所有玩家的速度效果:

/effect @a clear speed

只移除所有在线玩家的速度效果,其它状态效果不受影响。

给所有僵尸施加减速 III 并隐藏粒子:

/effect @e[type=zombie] slowness 30 2 true

给世界中的所有僵尸施加 30 秒的减速 III 效果,并隐藏粒子旋涡。

用 0 秒时长移除最近玩家的中毒效果:

/effect @p poison 0

把 [秒] 设为 0 会把最近玩家已有的中毒效果变更为 0 秒,等效于移除该效果。

基岩版注意

  • 需要开启作弊并具备 OP 等级 1;Java 版需要权限等级 2。
  • 与 Java 版的最大差异:Java 版使用 give 与 clear 子命令(如 /effect give @s speed 60 1、/effect clear @a),基岩版没有 give 关键字,效果 ID 直接跟在目标之后,clear 则放在目标之后作为清除标记。
  • 基岩版效果 ID 必须使用字母 ID(如 speed),不接受 Java 版曾支持的数字 ID。
  • infinite 关键字与 clear <效果>(清除指定效果)是 1.21.40 新增的语法,旧版可用较大的 [秒] 值或 /effect <目标> clear 代替。
  • 放大器 0 起算,基岩版不接受负数;Java 版 1.20.5 起把放大器上限由 255 改为 127,基岩版上限以实际测试为准(待验证)。
  • 时长参数以秒为单位,但 instant_health、instant_damage、saturation 三个瞬间效果以游戏刻为单位。
  • 基岩版还包含独有的 fatal_poison(致命中毒)效果 ID,Java 版没有。
  • 网易版与国际版在部分效果 ID 与行为上可能存在差异,本文档基于国际版编写。

常见问题

执行 /effect 时提示没有权限是怎么回事?

基岩版的 /effect 需要世界开启「作弊」,且执行者具备 OP 等级 1。若世界设置中未开启作弊,或你不是该世界的操作员,命令会被拒绝执行。

如何让状态效果不显示旋涡粒子?

把 [隐藏粒子] 参数设为 true 即可,例如 /effect @s invisibility 60 0 true。隐藏后效果依旧生效,只是不显示粒子;若需要替代的视觉反馈,可配合 /particle 自定义粒子。

旧版本没有 infinite 关键字,如何给予「永久」效果?

1.21.40 之前的版本可以用一个极大的 [秒] 值近似实现,例如 /effect @s night_vision 1000000 0 true。注意超过 2,040,109,465 秒会提示成功但不生效,所以数值不要超过该上限。1.21.40+ 直接使用 infinite 关键字即可。

/effect 能作用于怪物等非玩家实体吗?

可以。用 @e 选择器并配合类型参数即可,例如 /effect @e[type=zombie] slowness 30 1 会给所有僵尸施加减速。虽然官方文档把目标参数标为 player,但 @e[type=...] 在基岩版中能够选中并作用于非玩家实体。

相关命令

  • /particle — 生成自定义粒子,可替代被隐藏的效果粒子提供视觉反馈。
  • /playsound — 播放音效,常用于给予效果时增强反馈。
  • /clear — 清除物品,同为「清除」语义的命令,注意它操作的是物品栏而非状态效果。
  • /execute — 配合条件子命令按需给予或清除效果。
  • /summon — 召唤实体,可与效果配合设定生物状态。