命令

来自Minecraft Wiki
跳转至: 导航搜索

命令(Command)是通过输入特定文本字符串而激活的高级功能。

使用方法[编辑 | 编辑源代码]

Java版中选取实体的UUID。

在客户端中,命令通过Minecraft的聊天窗口输入,通过按下T键、聊天按键‌‌[仅基岩教育版]D-Pad right‌‌[仅基岩版](默认)或/键唤出聊天窗口。使用/键会同时输入命令必需的前缀斜杠(/),因此这是个实用的快捷键。键可浏览之前输入的文本,包含所有之前执行的命令。在输入命令时按下Tab ↹键会循环显示当前可用的命令或参数,也可以快速输入准星当前指向方块的坐标(在Java版输入实体参数时,如果准星指向某个实体,则可以直接输入其UUID)。当光标在某些参数(比如一个ID)的对应位置时,在文本框上方会展示一个可用值的列表。如果这个参数已经输入了一半,这个列表则只会展示包含当前输入内容的值。

命令方块中,命令可以以前缀斜杠开头,但不是必须的。在命令方块中的命令通常还需要一个可选参数,如玩家名称。

命令也可以在多人服务器的控制台中输入,但是应加入前缀/。在英语中,以这种方式执行命令的服务器管理员被称为“ghosting”。

大多数命令只能在以下状况有效:

权限等级为0的命令所有玩家均可用。详见权限等级

注意:Java版中,在单人游戏中,如果不允许作弊,仍可以通过公开目前的游戏至局域网 (Esc→“公开至局域网”,点选“允许作弊”为开,接着“开始局域网游戏”) 而暂时可以作弊。你不必实际连入局域网或等待别人加入。这并不是永久的,但直至退出世界前都可以使用命令,且命令做出的修改都会被保存(物品、生物生成等)。你可以在再次开启游戏时重复以上步骤。注意当公开至局域网时游戏便无法暂停,所以在公开到局域网时若有需要最好找个安全的地方。你可以重新载入世界来取消公开至局域网。

基岩版中,作弊可以随时使用设置菜单中的选项切换。开启作弊会导致玩家在那个世界永远无法获得成就,即使后来作弊被关闭。

相对坐标和局部坐标[编辑 | 编辑源代码]

世界坐标被视作绝对坐标。很多命令可以使用波浪号~)来指定相对坐标,使用插入符^)来指定局部坐标(也有人称本地坐标)。在波浪号和插入符后可以跟一个数字,表示相对基准点的偏移量。基准点由命令本身决定。举例来说,常见的基准点包括命令的执行位置和命令指定的其他坐标。局部坐标的基准点默认为是脚部。

相对坐标以世界的绝对坐标为偏移量。局部坐标以执行者的头部为基准点,并在包括头部的倾斜角度下分别指向左、上、前方为坐标轴 x y z 的正方向。无论是哪一个,数字的正负号都表示向坐标轴的正或负方向偏移。一个单独的波浪号~~0的简写,表示没有偏移。同样地,^^0的简写。

举例来说,/tp 0 64 0将会移动使用者到坐标(0, 64, 0),而/tp ~3 ~ ~-3会使使用者往x轴的正方向(东方)移动3米,保持原本高度,并在z轴的负方向(北方)移动3米,而/tp ^ ^ ^3会使使用者往前移动3米。

通常绝对坐标和相对坐标可以混合使用,但局部坐标不可与绝对或相对坐标混合使用。举例来说,/tp ~ 64 ~会保持执行者的x轴和z轴坐标,但是将传送执行者到绝对高度64。/tp ^-5 ^ ^将根据头部的倾斜,将玩家向右传送5个方块的距离。

基岩版,多个命令参数有时可以不需要空格,如~~~可以代表~ ~ ~~~1~可以代表~ ~1 ~,比如/tp @a ~1 ~2 ~3可以简写为/tp @a ~1~2~3。注意~~1不能代表~ ~ 1,因为~1会被视为一个整体,而1~不会。

目标选择器[编辑 | 编辑源代码]

大多数以实体或玩家作为参数的命令,可以通过某些限定条件来选择一个或多个实体或玩家,而不必指定实体名、玩家名或UUID。要用条件来选择实体或玩家,应先输入一个目标选择器变量,如有需要,还可再使用一个或多个目标选择器参数以制定具体的条件(可选)。

比如,要把A队所有玩家的游戏模式改为创造模式,但不使用玩家名来逐个指明:

/gamemode creative @a[team=A]‌‌[仅Java版]

再如,把标签为A的玩家的游戏模式改为创造模式,但不使用玩家名来逐个指明:

/gamemode creative @a[tag=A]

请注意,Java版的目标选择器和基岩版有较大的区别,有的语法只适用于Java版,有的语法只适用于基岩版,请注意文中的“仅Java版”和“仅基岩版”标识。


目标选择器变量[编辑 | 编辑源代码]

目标选择器变量汇总
变量 功能
@p 距离最近的玩家
@r 随机玩家
@a 所有玩家
@e 所有实体
@s 命令的执行者
@c 自己的吉祥物‌‌[仅教育版]
@v 所有吉祥物‌‌[仅教育版]

目标选择器变量用于指定待选目标的大致分类。共有5种变量:

@p
选择最近的玩家。在服务器控制台中输入时,默认基准点为(0, 0, 0)。如果有多个最近的玩家,他们与基准点距离完全相同,那么会选择其中最晚进入服务器的玩家。
目标选择器参数可以进一步筛选待选目标。例如,@p[team=A]‌‌[仅Java版]只会选择A队中距离最近的玩家,即使有其他非A队玩家更为靠近。
c‌‌[仅基岩版]limit‌‌[仅Java版]目标选择器参数可以用来追加待选目标。例如,@p[c=3]‌‌[仅基岩版]@p[limit=3]‌‌[仅Java版]将选择三个最近的玩家。
基岩版中,若参数c是负值,会反转选择目标的顺序。例如,@p[c=-1]会选择最远的一名玩家。
type参数不适用于@p
@r
选择随机玩家。
目标选择器参数可以进一步筛选待选目标。例如,@r[team=A]‌‌[仅Java版]只会随机选择A队玩家。
c‌‌[仅基岩版]limit‌‌[仅Java版]目标选择器参数可以用来追加待选目标。例如,@r[c=3](特别地,c=-1在此处并不适用)‌‌[仅基岩版]@r[limit=3]‌‌[仅Java版]将随机选择三个玩家。
基岩版中,如果没有使用type参数,@r只会选择随机玩家。type参数还可以用来选择非玩家的实体。例如,@r[type=zombie]会随机选择一个僵尸@r[type=!player]会随机选择一个非玩家实体。
Java版中,type参数不适用于@r。要选择随机的实体,请使用@e[sort=random,limit=1]代替。
@a
选择所有玩家,包括已死亡玩家。
目标选择器参数可以进一步筛选待选目标。例如,@a[team=A]‌‌[仅Java版]只会选择A队的所有玩家。
type参数不适用于@a
@e
选择所有实体(包含玩家),但不包含死亡的实体。在Java版中,除@e以外的所有目标选择器都可以选中死亡的玩家。在基岩版中,只有@a@s可以选中死亡的玩家。
目标选择器参数可以进一步筛选待选目标。例如,@e[type=cow]只会选择牛。
@s
只选择唯一一个实体:该命令的执行者,包括已死亡玩家。若命令执行者不是一个实体,比如是命令方块或服务器控制台执行命令,则此选择器不会选中任何东西。
目标选择器参数可用于确定执行者是否会成为目标。例如,@s[type=cow,team=Red]‌‌[仅Java版]只会在命令执行者是红队的一头牛时才会将其选中。
@c
选择自己的吉祥物。‌‌[仅教育版]
目标选择器参数可以用于标记自己的吉祥物。例如,/tp @c 50 60 40会将自己的吉祥物传送到指定的位置。
@v
选择所有的吉祥物。‌‌[仅教育版]
目标选择器参数可以用于标记所有的吉祥物。例如,/remove @v将移除所有的吉祥物。


目标选择器参数[编辑 | 编辑源代码]

目标选择器参数汇总
通过坐标
参数 选择标准
x, y, z 坐标
distance‌‌[仅Java版]
rrm‌‌[仅基岩版]
距离
dx, dy, dz 体积尺寸
通过记分板参数
参数 选择标准
scores 记分项分数
tag 记分板标签
team‌‌[仅Java版] 队伍名称
通过其他特性
参数 选择标准
limitsort‌‌[仅Java版]
c‌‌[仅基岩版]
数量
level‌‌[仅Java版]
llm‌‌[仅基岩版]
经验等级
gamemode‌‌[仅Java版]
m‌‌[仅基岩版]
游戏模式
name 实体名称
x_rotation‌‌[仅Java版]
rxrxm‌‌[仅基岩版]
垂直旋转角度
y_rotation‌‌[仅Java版]
ryrym‌‌[仅基岩版]
水平旋转角度
type 实体类型
family‌‌[仅基岩版] 家族
nbt‌‌[仅Java版] 实体的数据标签
advancements‌‌[仅Java版] 进度
predicate‌‌[仅Java版] 谓词

在使用目标选择器之后,你可以使用参数来限定所要选择的群组。当使用@a@e时,待选目标从全体筛选成特定的少数。当使用@p@r时,参数将从完整的待选列表缩小到被筛选后的待选列表。当使用@s时,命令执行者只有在所有参数都满足时才会被选择,否则命令将执行失败。

在目标选择器变量之后附加键值对构成的逗号分隔,并包含在方括号中:

@<变量>[<参数>=<>,<参数>=<>,…]

参数和值区分大小写(在基岩版中可以不区分大小写),括号、等号和逗号旁可以有空格(目标选择器和第一个方括号之间除外)。键值对只能用逗号分隔。

指定基准点
[x=<>,y=<>,z=<>]
在世界中定义一个位置,用于distance参数或dxdydz参数。如果没有这些参数,单独定义位置是没有用的,所以将它(并且只有它)应用于@e仍然会选择世界上的所有实体。
坐标可以是整数或像12.34这样的小数(具体为双精度浮点数)且不会进行中心校正(center-corrected),这意味着x=0不再自动更正为x=0.5波浪号可用于此参数‌‌[仅基岩版]
通过距离选择目标
[<x>,<y>,<z>,distance=<>] — 根据到某点的欧几里得距离过滤目标。如果位置参数未定义,则相对于命令执行的位置计算。只允许使用非负数。‌‌[仅Java版]
[r=R] — 只选择所有小于R个方块的目标执行命令。
[rm=RM] — 只选择所有大于RM个方块的目标执行命令。‌‌[仅基岩版]
支持使用范围表示,以定义圆形区域:
  • @e[distance=10] — 选择所有距离执行位置10个方块的实体。
  • @e[distance=10..12] — 选择所有距离执行位置10至12个方块之间(包含)的实体。
  • @e[distance=5..] — 选择所有距离执行位置大于5个方块的实体。
  • @e[distance=..15] — 选择所有距离执行位置小于15个方块的实体。
通过体积尺寸选择目标
[<x>,<y>,<z>,dx=<>,dy=<>,dz=<>] — 选择所有位于一定长方体区域内部的目标。体积定义为从基准点开始,向“x”方向(东方)延伸特定格(包括基准点本身,下同),向“y”方向(上方)延伸特定格,并向“z”方向(南方)延伸特定格。
这可以解释为创建一个由初始位置(<x>, <y>, <z>)至对角线向量(<dx>, <dy>, <dz>)组成的正方体,然后选择碰撞箱‌‌[仅Java版]或脚部坐标‌‌[仅基岩版]与其重叠的所有实体。如果位置参数未定义,则相对于命令执行的位置计算。允许任何值,包括负数和小数。
注意dxdydz用来指定与坐标的距离;它们不是指定一个新的坐标。
  • @e[x=1,y=2,z=3,dx=4,dy=5,dz=6] — 选择碰撞箱‌‌[仅Java版]或脚部坐标‌‌[仅基岩版]方块区域(1~5,2~7,3~9)(或以数学语言来讲,范围是{(x,y,z)|x∈[1,6),y∈[2,8),z∈[3,10)})有重叠的所有实体
  • @e[x=1,y=2,z=3,dx=0,dy=0,dz=0] — 选择碰撞箱‌‌[仅Java版]或脚部坐标‌‌[仅基岩版]和方块区域(1,2,3)有重叠的所有实体。
可以将通过按距离来选择与按体积来选择组合在一起, 在这种情况下,命令将选择在两个区域的重叠内的实体(在基准点的某个半径范围内,且不在定义的体积之外)。
通过分数选择目标
[scores={<objective>=<>,...}] — 根据指定目标的分数过滤目标。
所有的记分项都放在一个单独的标签中,并这个标签中分别列出分数选择器。此选择器支持使用范围。
  • @e[scores={myscore=10}] — 选择所有记分项myscore分数为10的目标。
  • @e[scores={myscore=10..12}] — 选择所有记分项myscore分数为10到12之间(包含)的目标。
  • @e[scores={myscore=5..}] — 选择所有记分项myscore分数为5及以上的目标。
  • @e[scores={myscore=..15}] — 选择所有记分项myscore分数为15及以下的目标。
  • @e[scores={foo=10,bar=1..5}] — 选择所有记分项foo分数为10,且记分项bar分数为1到5之间(包含)的目标。
参见:记分板§记分项
通过标签选择目标
[tag=<标签名>] — 选择所有有标签“标签名”的目标。
[tag=!<标签名>] — 选择所有没有标签“标签名”的目标。
[tag=] — 选择所有没有标签的目标。
[tag=!] — 选择所有有标签的目标。
允许使用多个参数。被选择的实体必须满足所有的参数条件。
  • @e[tag=a,tag=b,tag=!c] — 选择所有拥有标签a和b,但没有标签c的目标。
  • @r[tag=a] — 选择一个有标签a的随机玩家。
通过队伍选择目标‌‌[仅Java版]
[team=<某队伍>] — 选择所有属于队伍“某队伍”的目标。
[team=!<某队伍>] — 选择所有不属队伍“某队伍”的目标。
[team=] — 选择所有不属于任何队伍的目标。
[team=!] — 选择所有属于任意队伍的目标。
指定数量并排序选择目标
[limit=<>] — 仅选择指定数量的目标。‌‌[仅Java版]
[c=<>] — 通常以距离命令执行点的顺序排列。‌‌[仅基岩版]
当使用@p@r变量时,此参数默认为1。对它们使用limit参数时会增加选择最近或随机目标的数量。当使用@a@e变量时,此参数会限制目标数量。
当输入的值为负值时,目标的顺序会被反转。举例来说,@p[c=-3] 会回传3个最远的目标,而且,如果所有目标距离都一样远,@e[c=-3] 会选择3个刚加载/生成的目标。‌‌[仅基岩版]
[limit=<>,sort=(nearest|furthest|random|arbitrary)] — 选择指定数量的目标,并指定优先级。‌‌[仅Java版]
  • sort=nearest — 将目标由近到远排序。(@p的默认排序方式)
  • sort=furthest — 将目标由远到近排序。
  • sort=random — 将目标随机排序。(@r的默认排序方式)
  • sort=arbitrary — 不进行排序。(@a@e的默认排序方式)
  • @a[limit=3,sort=nearest]‌‌[仅Java版]@p[limit=3]‌‌[仅Java版]@p[c=3]‌‌[仅基岩版] — 选择距离最近的3名玩家。
  • @a[limit=4,sort=furthest]‌‌[仅Java版]@p[c=-4]‌‌[仅基岩版] — 选择距离最远的4名玩家。
  • @a[limit=2,sort=random]‌‌[仅Java版]@r[c=2]‌‌[仅基岩版] — 随机选择2名玩家。
通过经验等级选择目标
[level=<>] — 根据指定目标的经验等级过滤目标。这将自动过滤非玩家目标。‌‌[仅Java版]
[l=L] — 只选择所有经验等级低于L的目标。‌‌[仅基岩版]
[lm=LM] — 只选择所有经验等级高于LM的目标。‌‌[仅基岩版]
此选择器支持使用范围。
  • @a[level=10] — 选择所有10级的玩家。
  • @a[level=10..12] — 选择所有10级与12级之间(包含)的玩家。
  • @a[level=5..] — 选择所有至少为5级的玩家。
  • @a[level=..15] — 选择所有至多为15级的玩家。
通过游戏模式选择目标
[gamemode=<游戏模式>] — 选择所有处于指定游戏模式的目标。‌‌[仅Java版]
[gamemode=!<游戏模式>] — 选择所有不处于指定游戏模式的目标。‌‌[仅Java版]
[m=M] — 选择所有处于指定游戏模式的玩家。‌‌[仅基岩版]
[m=!M] — 选择所有不处于指定游戏模式的玩家。‌‌[仅基岩版]
<游戏模式>的值可以为spectator‌‌[仅Java版]adventurecreativesurvival
这将自动过滤非玩家目标。
基岩版中,M可以为全称,也可以是数字(0=生存模式,1=创造模式,2=冒险模式)或缩写(s=生存模式,c=创造模式,a=冒险模式)。
  • @a[gamemode=survival]‌‌[仅Java版]@a[m=0]‌‌[仅基岩版]@a[m=s]‌‌[仅基岩版] — 选择所有生存模式的玩家。
  • @a[gamemode=spectator]‌‌[仅Java版] — 选择所有旁观模式的玩家。
  • @a[gamemode=!survival,gamemode=!adventure]‌‌[仅Java版] — 选择所有既不是生存模式又不是冒险模式玩家
通过名称选择目标
[name=<某名称>] — 选择所有名字为“某名称”的目标。
[name=!<某名称>] — 选择所有名字不为“某名称”的目标。
这是一个字符串,包含空格时应当用双引号括起。不能是JSON文本
  • @e[name=!Steve] — 选择不叫“Steve”的目标。
通过垂直旋转选择目标
[x_rotation=<>] — 根据指定目标的垂直旋转角度过滤目标。‌‌[仅Java版]
[rx=RX] — 仅选择所有最大垂直旋转角度为RX的目标。‌‌[仅基岩版]
[rxm=RXM] — 仅选择所有最小垂直旋转角度为RXM的目标。‌‌[仅基岩版]
更具体地说,是旋转高度与地平线的夹角,以度为单位。垂直旋转值从-90(垂直向上)向上增加,之后增加到0(水平),最后增加到90(竖直向下)(因此垂直旋转值随着向下旋转而增加)。
此选择器支持范围。
  • @e[x_rotation=0] — 选择所有看向地平线的目标。
  • @e[x_rotation=30..60] — 选择所有看向地平线偏下30°至60°(包含)的目标。
  • @e[x_rotation=45..] — 选择所有看向地平线偏下45°(包含)及更低的目标。
  • @e[x_rotation=..0] — 选择所有看向地平线偏上的目标。
通过水平旋转选择目标
[y_rotation=<>] — 根据指定目标的水平旋转角度过滤目标。‌‌[仅Java版]
[ry=RY] — 仅选择最大水平旋转为RY的目标。‌‌[仅基岩版]
[rym=RYM] — 仅选择最小水平旋转为RYM的目标。‌‌[仅基岩版]
其角度以正南(或正Z轴方向)为基准顺时针旋转。水平旋转值从-180(面向正北)开始,到-90(面向正东),再到0(面向正南),再到90(面向正西),最后到180(再次面向正北)。
此选择器支持范围。
  • @a[y_rotation=0] — 选择所有看向正南的目标。
  • @a[y_rotation=45] — 选择所有看向南偏西45°的目标。
  • @a[y_rotation=96] — 选择所有看向西偏北6°的目标。
  • @a[y_rotation=-90..0] — 选择所有看向正东和正南(包含)之间的目标。
  • @a[y_rotation=-90..90] — 选择所有看向正东和正西之间(包含)的目标,区域穿过正南。
  • @a[y_rotation=0..] — 选择所有不看向南方(包含)和东方之间的目标。
通过实体类型选择目标
[type=<实体类型>] — 选择所有特定的实体类型的目标。
[type=!<实体类型>] — 选择所有不是特定的实体类型的目标。
实体类型必须使用有效的实体ID或或实体标签。如果实体ID的命名空间在minecraft:内则可以省略命名空间。(举例来说,minecraft:creeper指定苦力怕minecart指定普通矿车tnt指定点燃的TNT等等)实体ID或标签区分大小写。
当与@r一起使用时,原本用来选择玩家的命令也可以被用来选择其他实体。
  • @e[type=skeleton] — 选择所有骷髅。
  • @e[type=!chicken,type=!cow] — 选择所有除之外的目标。
  • @e[type=chicken,type=cow] — 无效选择:选择所有既是鸡又是牛的目标(不存在)。
  • @e[type=#skeletons] — 选择所有在标签#skeletons内的目标(骷髅、凋灵骷髅和流浪者)。
通过家族选择目标‌‌[仅基岩版]
[family=<家族>] — 选择属于指定家族的实体。
[family=!<家族>] — 选择不属于指定家族的实体。
给定的实体家族可以是任何字符串,但不包括命名空间。这些实体家族在实体家族种类行为组件中定义。原版行为包使用的默认值包括更广泛的大型家族(例如mobinanimatemonsterundead)以及更具体的小型家族(例如zombieskeleton)和单个生物的家族(例如wandering_traderendermancreeper)。单个实体可以属于多个家族。
通过NBT选择目标‌‌[仅Java版]
[nbt=<NBT>] — 选择具有指定NBT的所有目标。NBT结构以其命令定义编写。
例如:
  • @a[nbt={OnGround:true}] — 选择所有站在地上的玩家。
  • @e[type=sheep,nbt={Color:0b}] — 选择所有白色的羊。
  • @e[type=item,nbt={Item:{id:"minecraft:slime_ball"}}] — 选择所有黏液球物品实体。
  • @e[nbt={Tags:[a,b]}]@e[tag=a,tag=b]的效果相同。后者更简单,且减少了CPU的负载。
注意:当匹配字符串内的命名空间ID时,不得省略其命名空间。
因此@e[type=item,nbt={Item:{id:slime_ball}}]找不到任何东西,因为 id字段始终包含一个已经被转换的命名空间ID字符串
通过进度选择目标‌‌[仅Java版]
Java版1.13开始,目标选择器支持advancements参数,取代/advancement test。参数名称是进度的IDadvancements后接一组用中括号包含来的键值对,其中键为进度或条件的名称,值为true或false或表示进度的各条件的键值对。
  • @a[advancements={story/form_obsidian=true}] — 选择所有已达成进度“冰桶挑战”(minecraft:story/form_obsidian)的玩家。
  • @a[advancements={story/form_obsidian=false}] — 选择所有未达成进度“冰桶挑战”(minecraft:story/form_obsidian)的玩家。
  • @a[advancements={story/obtain_armor={iron_helmet=true}}] — 选择所有装备过铁头盔的玩家。选择时玩家不一定正在装备铁头盔,也不一定需要达成进度“整装上阵”(minecraft:story/obtain_armor)。
  • @a[advancements={story/follow_ender_eye=true}]@a[advancements={story/follow_ender_eye={in_stronghold=true}}]的效果相同。
通过谓词选择目标‌‌[仅Java版]
[predicate=<命名空间ID>] — 选择所有匹配该谓词的目标。
[predicate=!<命名空间ID>] — 选定所有不匹配该谓词的目标。
19w38a起,选择器可以在其参数中使用谓词
  • @a[predicate=example:test_predicate] — 选择所有匹配谓词example:test_predicate的玩家。
  • @e[predicate=!minecraft-wiki:smart_entity] — 选择所有不匹配谓词minecraft-wiki:smart_entity的实体。


数据标签[编辑 | 编辑源代码]

数据标签是一种树状数据结构,可以被用花括号包含的键值对描述。数据标签用于Java版的命令中,用于指定玩家、实体和一些方块的较为复杂的数据。

数据标签由零个或多个用逗号分隔的键值对组成,且本身用大括号括住。每个键值对包含键名和键值,用冒号分开。但是,有些键值可以继续包含键值对,因此数据标签可以用来描述层次结构。

例: {name1:123,name2:"sometext",name3:{subname1:456,subname2:789}}

这些数据标签所采用的数据结构与Minecraft世界存档相同。这种数据结构在其他条目中有详细描述。命令使用的数据标签中键名有严格的限定(区分大小写):

数据结构规范链接
对象 例子
方块 箱子、熔炉、命令方块、刷怪蛋、告示牌等
物品 物品栏中的物品 (包括附魔、自定义名称等)
物品实体 在地上的物品
生物 苦力怕、牛、村民等
弹射物 弓箭、火球、喷溅药水等
交通工具 船、矿车等
动态方块 引燃的TNT、正在掉落的沙子、沙砾、铁砧
其他实体 烟花火箭、画和物品展示框

指定键名的键值也必须符合数据类型要求。

数据标签键值数据类型
类型 说明
 字节(byte) 介于-128和127之间(包含)的整数。
 短整型(short) 介于-32768和32767之间(包含)的整数。
 整型(int) 介于-2147483648和2147483647之间(包含)的整数。
 长整型(long) 介于-9,223,372,036,854,775,808和9,223,372,036,854,775,807之间(包含)的整数。
 单精度浮点型(float)
 双精度浮点型(double)
Float: 32位单精度浮点数,介于-3.4E+38和+3.4E+38之间。
例:3.1415926

Double: 64位双精度浮点数,介于-1.7E+308和+1.7E+308之间。

例:3.141592653589793

详见IEEE二进制浮点数算术标准

 字符串(string) 一串字符,如果内容包含不在 a-z A-Z 0-9 _ .(不包括空格)的字符则需要在整个字符串前后加上双引号。\可以将后面的字符转义(不支持像JSON那样\u00a7这样的转义)。转义方式为,在"\号前加上\
例:"Call me \"Ishmael\""
 列表(list) 值的序列,用逗号分隔并用方括号包含。所有值的数据类型必须统一——数据类型标准由列表的第一个元素决定。
例:[3.2,64,129.5]
 复合标签(compound) 键值对的序列,用逗号分隔并用花括号包含。
例: {X:3,Y:64,Z:129}

每个数据标签的内容本身就是一个复合标签。

复合标签里面可以包含任何标签。

 字节数组(byte-array) 介于-128和127(包含)之间的整数序列,用逗号分隔内容并用方括号包含,首个元素前方需要加入类型标识B;
例: [B;1b,2b,3b]
 整型数组(int-array) 介于-2,147,483,648和2,147,483,647(包含)之间的整数序列,用逗号分隔内容并用方括号包含,首个元素前方需要加入类型标识I;
例: [I;1,2,3]
 长整型数组(int-array) 介于-9,223,372,036,854,775,808和9,223,372,036,854,775,807(包含)之间的整数序列,用逗号分隔内容并用方括号包含,首个元素前方需要加入类型标识L;
例: [L;1l,2l,3l]
 布尔型(boolean) 一种数据类型,只有“true”和“false”两种取值。由于程序通常使用 字节存储布尔值,布尔型只会在JSON格式中出现。在NBT中,true和false相当于1和0。
例: {doFoo:true}

某些命令要求明确指明某些数值的数据类型,这可以通过在数值后附加限定字符(B、S、L、F、D)来实现。举例来说,3s表示短整型,3.2f表示单精度浮点,等等。(字符I不能限定整型。)限定字符不区分大小写。在不加限定字符,且Minecraft无法根据上下文来确定数据类型或需要比对数据标签时,会将数据类型假定为双精度浮点型(数值有小数部分时)、整型(数值没有小数点,且在整型取值范围内)或字符串(若前述情况均不符合)。被方括号包含的集合中,被逗号分隔的元素若全为整型,则会将数据类型假定为整型数组(如[I;1,2,3]是一个整型数组,[L;1L,2L,3L]是一个长整型数组);否则会假定为列表。但有以下特例:[]是一个空列表,而[,]是一个空整型数组。

如果用/clear等命令来查找数据标签,这些命令只会检查目标实体/方块/物品是否存在此标签。这意味着一个符合条件的实体/方块/物品可能同时还拥有其他标签。这对列表和数组同样成立:只要列表或数组中包含待查找的所有元素,就会成功匹配,既不考虑元素的排列顺序,也不考虑是否有多余的元素存在。

原始JSON文本[编辑 | 编辑源代码]

/tellraw/title命令使用严格的JSON语法以显示文字。

此外,部分NBT标签的值需要输入原始JSON文本。

Java版中的ID参数[编辑 | 编辑源代码]

参见:命名空间ID§从字符串识别

许多命令要求指定某种方块、物品、实体、药水效果、附魔、boss栏等的ID。在下文的命令语法中,这些参数会被标注为<方块><物品>,或在实例中用诸如minecraft:stone 之类的标识符替换。这些ID都有命名空间。所有来自Minecraft的内容都使用minecraft命名空间,而来自mod数据包的内容都使用其他命名空间。 在大多数情况下,可以省略命名空间为 minecraft的ID的前缀,但是在某些情况下,例如匹配NBT数据标签时,需要完整的命名空间ID。

<方块>[编辑 | 编辑源代码]

例子:

  • stone
  • minecraft:redstone_wire[power=15,north=up,south=side]
  • minecraft:jukebox{RecordItem:{...}}
  • minecraft:furnace[facing=north]{BurnTime:200}

<方块>参数的格式为命名空间ID[方块状态]{数据标签},其中方块状态和数据标签在不需要时可以省略。

  • 方块的命名空间ID是必需的(如果没有设定命名空间则将默认为预设值:minecraft:)。
  • 方块状态是可选的,位于[]内,名称与值用等号分隔,名称数值组用逗号分隔,且必须是该方块支持的状态:
    [<方块状态名称>=<>,<方块状态名称>=<>,…]
    • minecraft:stone[doesntexist=purpleberry]有语法错误,因为stone(石头)没有doesntexist状态。
    • minecraft:redstone_wire[power=tuesday]有语法错误,因为redstone_wire(红石线)的power是一个在0和15之间的数字。
  • 数据标签是可选的,位于{}内。
  • 如果方块参数被用于检查方块,则只会检查参数内指定了的方块状态与数据标签是否符合。
  • 如果方块参数用于放置方块,你所提供的任何状态与标签都会被设置,而其他未提供的状态与标签会被设为预设值
    • 如当你设置redstone_wire[power=15],那它将设置power到15却使north设为预设值(在这个情况下被设置为none

如果方块参数被用于检查方块,则也可以填写带#前缀的方块标签的命名空间ID,如#minecraft:planks

<物品>[编辑 | 编辑源代码]

例子:

  • stone
  • minecraft:stick{display:{Name:"\"谎言之杖\""}}

<物品>参数的格式为命名空间ID{数据标签},其中数据标签在不需要时可以省略。

  • 物品的命名空间ID是必需的(如果没有设定命名空间则将设为预设值minecraft:)。
  • 数据标签位于{},是可选的。

参数类型列表[编辑 | 编辑源代码]

下列为Java版中的参数类型。

权限等级[编辑 | 编辑源代码]

权限等级用于控制命令执行者可以执行什么命令。比如在基岩版中,/setmaxplayers不能在命令方块中执行,因为这个命令需要3的权限等级,而命令方块的权限等级仅为1

Java版中,权限等级可为01234

  • 命令方块命令方块矿车的权限等级为2
  • 服务器控制台的权限等级为4
  • 函数的权限等级为2(可在server.properties中更改)。
  • 对于玩家来说:
    • 如果该玩家是服务器的管理员,那么他的权限等级由ops.json中的值决定(默认为4)。
    • 如果该玩家已经启用作弊,并在单人游戏世界中或是局域网世界的所有者,那么他的权限等级为4
    • 如果该玩家在一个允许作弊的局域网世界中,那么他的权限等级为4
    • 否则,他的权限等级为0

基岩版中,权限等级可为01234

  • 命令方块命令方块矿车的权限等级为1
  • 服务器控制台的权限等级为4
  • 函数附加包中的脚本的权限等级为1
  • 对于玩家来说:
    • 如果该玩家在服务器中,且该玩家在“玩家权限”屏幕中的“操作员命令”开关已打开,那么他的权限等级默认为1(可在server.properties中更改)。
    • 如果该玩家在单人游戏世界或局域网世界中,且该玩家在“玩家权限”屏幕中的“操作员命令”开关已打开,那么他的权限等级默认为3
    • 否则,他的权限等级为0。‌[需要测试]

注:命令的权限等级与暂停菜单和“玩家权限”屏幕中的身份(访客,成员,操作员或自定义)不同。例如在单人游戏世界中,身份为操作员的玩家的权限等级为3,因为其对应的“操作员命令”开关已打开;身份为访客或成员的玩家的权限等级为0,因为其对应的“操作员命令”开关没有打开。‌‌[仅基岩版]


命令列表及其概述[编辑 | 编辑源代码]

下表列出了所有可用命令,包括即将到来的命令。点击表头可以排序。

点击每一行第一格中的链接可以查看命令的具体用法。

命令概述
命令 描述 BE EDU JE JE权限等级 BE及EDU权限等级 仅限MP
/? /help的替代命令,提供命令使用帮助。 0 0
/ability 赋予或剥夺玩家的能力。 1
/advancement 添加、移除或查询玩家的进度。 2
/agent 操控吉祥物。 WS WS 0 0‌‌[仅EDU]
1‌‌[仅BE]
/alwaysday /daylock的替代命令,锁定或解锁日夜循环。 1
/attribute 修改或查询玩家和生物的属性。 2
/ban 将玩家加入封禁列表。 3
/ban-ip 将IP地址加入封禁列表。 3
/banlist 显示封禁列表。 3
/bossbar 修改或查询Boss栏。 2
/camerashake 启用镜头抖动效果。 1
/changesetting 更改一个正在运行的服务器的设置。 4
/classroommode 允许编辑受限制的方块。 0‌[需要验证]
/clear 从玩家物品栏中删除物品。 2 1
/clearspawnpoint 从世界中移除出生点。 1
/clone 将特定区域的方块复制到另一处。 2 1
/closechat 如果聊天框已打开,则关闭它。 0
/closewebsocket 断开已连接的WebSocket服务器。 WS WS 0
/code 启动代码编辑器。 0
/codebuilder 设置一个玩家的代码编辑状态。 1
/connect /wsserver的替代命令,连接至一个WebSocket服务器。 0‌‌[仅EDU]
2‌‌[仅BE]
/data 允许玩家获取、合并或是移除实体或方块的数据标签。 2
/datapack 控制加载的数据包。 2
/daylock /alwaysday的替代命令,锁定或解锁日夜循环。 1
/debug 开始或结束调试会话。 3
/defaultgamemode 更改默认的游戏模式 2
/deop 撤销玩家的管理员权限。 3 2 是‌‌[仅Java版]
/dialogue 打开一个玩家的NPC对话。 1
/difficulty 设置难度等级。 2 1
/effect 添加或移除状态效果 2 1
/enableencryption 为当前WebSocket连接启用加密。 WS WS 0
/enchant 附魔玩家的物品。 2 1
/event 用于触发一个实体的事件。 1
/execute 代表实体执行另一命令。 2 1
/experience /xp的替代命令,给予玩家经验。 2
/fill 在某个区域填充特定方块。 2 1
/fog 用于更改玩家当前的雾设置。 1
/forceload 强制不断加载区块。 2
/function 运行一个函数 2 1
/gamemode 更改玩家的游戏模式 2 1
/gamerule 更改或查询游戏规则。 2 1
/getchunkdata 获得特定区块的数据。 3
/getchunks 获得已加载区块列表。 3
/geteduclientinfo 显示有关客户端的数据。 0
/geteduserverinfo 显示有关服务端的数据。 0
/getlocalplayername 显示本地玩家姓名。 0
/getspawnpoint 获得特定玩家的出生地点。 3
/gettopsolidblock 获得特定位置以下最高的非空气方块。 0‌‌[仅EDU]
1‌‌[仅BE]
/give 给予玩家物品。 2 1
/globalpause 查询或设置所有玩家的世界暂停状态。 3
/help /?的替代命令,提供命令使用帮助。 0 0
/immutableworld 设置世界的不可变状态。 1
/item 用于修改方块或实体的物品栏。‌[新增:JE 1.17] 即将到来 2
/kick 将玩家踢出服务器。 3 1
/kill 清除实体(玩家、生物、掉落物等)。 2 1
/lesson 处理教育版课程报告。 0
/list 列出服务器中的玩家。 0 0
/listd 以JSON形式列出服务器中的玩家及信息。 WS WS 3
/locate 显示最近的给定结构的坐标。 2 1
/locatebiome 显示最近的给定生物群系的坐标。 2
/loot 从一个物品栏中掉落物品到地面上。 2
/me 显示一条关于自己的信息。 0 0
/mixer Mixer交互性控制。 0
/mobevent 控制或查询允许运行的生物事件。 1
/msg /tell/w的替代命令,向另一玩家发送私信。 0 0
/music 设置玩家是否能控制当前播放的音乐。 1
/op 授予玩家管理员权限。 3 2 是‌‌[仅Java版]
/ops /permission的替代命令,重载并应用权限。 4
/pardon 从封禁列表中移除玩家封禁项目。 3
/pardon-ip 从封禁列表中移除IP封禁项目。 3
/particle 创建粒子。 2 1
/permission /ops的替代命令,重载并应用权限。 4
/playanimation 运行一次特定动作。 1
/playsound 播放音效。 2 1
/publish 向局域网开放单人游戏世界。 4 仅限SP
/querytarget 检测某实体所在坐标、旋转角度、所在维度及专用ID。 WS WS 0‌‌[仅EDU]
2‌‌[仅BE]
/recipe 给予或剥夺合成配方。 2
/reload 从硬盘中重新加载战利品表、进度和函数。 2 2
/remove 移除吉祥物。 是‌[需要验证] 2
/replaceitem 替换物品栏中的物品。
[失效:JE 1.17]
2 1
/ride 控制一个实体的骑行状态。 1
/save 准备备份,查询其状态或恢复。 4
/save-all 保存服务器世界状态到硬盘。 4
/save-off 关闭服务器自动保存。 4
/save-on 开启服务器自动保存。 4
/say 向多个玩家发送消息。 2 1
/schedule 安排函数在特定的游戏刻后运行。 2 1
/scoreboard 管理记分板的目标、玩家和队伍。 2 1
/seed 显示世界种子 0[仅单人游戏]
2[仅多人游戏]
/setblock 将方块替换为其他方块。 2 1
/setidletimeout 设置无操作玩家被踢出的延时。 3
/setmaxplayers 设置可加入游戏的玩家数量上限。 3
/setworldspawn 设置世界出生点 2 1
/spawnpoint 为玩家设置出生点。 2 G
/spawnitem 在特定位置生成一个物品实体。 0
/spawnpoint 设置一个玩家的出生地点。 2 1
/spectate 使一个处于旁观模式的玩家旁观一个实体。 2
/spreadplayers 将实体传送到随机位置。 2 1
/stop 关闭服务器。 4 4
/stopsound 停止音效。 2 1
/structure 无需结构方块即可保存和加载结构。 1
/summon 生成一个实体。 2 1
/tag 修改实体的标签。 2 1
/takepicture 从一个玩家的角度拍摄另一个玩家的照片。 1
/team 修改队伍。 2
/teammsg /tm的替代命令,指定要发送给队伍的消息。 0
/teleport /tp的替代命令,传送实体。 2 1
/tell /msg/w的替代命令,向另一个玩家发送私信。 0 0
/tellraw 向玩家显示JSON消息。 2 1
/testfor 统计符合给定条件的实体。 已移除 2 1
/testforblock 检测某方块是否在某位置。 已移除 2 1
/testforblocks 检测两个区域中的方块是否相同。 已移除 2 1
/tickingarea 添加、删除或列出常加载区域。 1
/time 更改或查询游戏中的世界时间。 2 1
/title 管理屏幕上的标题。 2 1
/titleraw 使用JSON管理屏幕上的标题。 1
/tm /teammsg的替代命令,指定要发送给队伍的消息。 0
/toggledownfall 切换天气。 1
/tp /teleport的替代命令,传送实体。 2 1
/trigger 设置一个触发器。 0
/videostream 连接一个WebSocket服务器,并进行视频推流。 0
/w /tell/msg的替代命令,向另一玩家发送私信。 0 0
/wb /worldbuilder的替代命令,给予能编辑受限制方块的能力。 1
/weather 设置天气。 2 1
/whitelist 管理服务器白名单。 3 4
/worldborder 管理世界边界 2
/worldbuilder /worldbuilder的替代命令,给予能编辑受限制方块的能力。 1
/wsserver /connect的替代命令,连接至WebSocket服务器。 0‌‌[仅EDU]
2‌‌[仅BE]
/xp /experience的替代命令‌‌[仅Java版],增加或减少一个玩家的经验 2 1

已移除的命令[编辑 | 编辑源代码]

命令概述
命令 描述 移除版本 移除原因 BE EDU JE JE权限等级 BE及EDU权限等级 仅限MP
/achievement 给予或剥夺玩家的成就。 Java版1.12
(17w13a)
Java版1.12中,成就系统被进度替代。 已移除 2
/banip 将IP地址加入封禁列表。 Java版Indev 0.31 被整理进/ban-ip 已移除 ?
/blockdata 修改方块的数据标签。 Java版1.13
(17w47a)
被整理进/data 已移除 2
/broadcast 在整个服务器中广播消息。 Java版Classic 0.0.16a_01 被整理进/say 已移除 1
/chunk 控制一个区块是否常加载。 Java版1.13.1-pre1 被整理进/forceload 已移除 2
/clearfixedinv 清除固定的物品栏。 携带版Alpha 0.16.0
build 2
? 已移除 已移除 ? ?
/detect 当限制条件满足时执行命令。 基岩版1.2.0 被整理进/execute 已移除 1
/entitydata 修改实体的数据标签。 Java版1.13
(17w45b)
被整理进/data 已移除 2
/executeasself 执行一个命令。 ? ? 已移除 已移除 0
/home 将玩家召唤到世界的生成点 Java版Alpha v1.2.5 世界生成点现在基于生成区块了,而不是单一位置。 已移除 0
/position 控制是否在HUD中显示玩家坐标。 教育版1.0.21 被整理进/gamerule 已移除 0
/resupply 村民重新补给。 ? ? 已移除 2
/setfixedinvslot 以一个物品设置固定的物品栏。 携带版Alpha 0.16.0
(build 2)
? 已移除 已移除 ? ?
/setfixedinvslots 设置固定物品栏数量。 携带版Alpha 0.16.0
(build 2)
? 已移除 已移除 ? ?
/setspawn 将当前位置设为新玩家默认的生成点。 Java版Indev 0.31 世界生成点现在基于生成区块了,而不是单一位置。 已移除 2
/solid 在放置石头和放置基岩间切换。 Java版Indev 0.31 放置的方块现在由物品栏决定。 已移除 2
/stats 更新命令结果产生的记分项。 Java版1.13
(17w45a)
被整理进/execute 已移除 2
/toggledownfall 更改天气。 Java版1.13
(17w45a)
被整理进/weather 可用 可用 已移除 2
/unban 从封禁列表中移除封禁项目。 Java版Alpha v1.0.16 被整理进/pardon 已移除 3

其他[编辑 | 编辑源代码]

“WS”表示这类命令通常需要使用WebSocket服务器代为执行,在游戏界面中无法被执行。“部分”表示这些命令通常并未被移除,但是玩家已无法通过任何正常方式在最新版本中执行。

基岩版开发者命令

Information icon.svg
此特性为基岩版独有。

基岩版开发者命令是供游戏的开发和测试使用的,在正式版本中玩家通常无法看见并执行这些命令。然而,这些命令曾被意外地保留了下来。随后在基岩版1.2.14中被移除。

命令指引[编辑 | 编辑源代码]

参见:命令术语列表
格式

Java版中,:

语法 含义
纯文本 纯文本, 直接键入。
<参数名> 需要使用一合适的值来替换该参数。
[可选参数] 该参数是可选的。
(参数|参数) (必须的)在显示的值中选择一个填写。
[entry|entry] (可选的)在显示的值中选择一个填写。
省略 ... 需要接入一条子指令。

基岩版中,:

语法 含义
纯文本 纯文本, 直接键入。
名称:种类 需要使用一合适的值来替换该参数。
参数|参数 在显示的值中选择一个填写。
<参数> 该参数是必需的。
[可选参数] 该参数是可选的。
省略号 … 此参数可能是含有空格的多个单词。
参数:整型 此参数需要输入整数
参数:浮点型 此参数需要输入小数
参数:字符串 此参数是字符串
成功条件
只有情况符合命令的成功条件时游戏才会认为命令执行成功。成功与否本身会产生许多影响,例如接收了命令方块红石信号的红石比较器,其输出会有所变化。请注意,并非所有的“成功”的命令都会使世界有所改变,“失败”的命令也不意味着命令什么也没有做。

限制条件
描述该命令的执行者与执行条件要求。
所有多人游戏限定的命令都不允许参数中有目标选择器。
除了/list/kick‌‌[仅基岩版]所有的多人游戏命令都不能由命令方块执行。
许多这类命令都可以对从未进入服务器甚至非Minecraft注册账号的玩家使用。
  • 不在命令方块上执行:此命令的执行者不能是命令方块。

历史[编辑 | 编辑源代码]

Java版Classic
0.0.15a(多人测试3) 加入了/ban/banip/broadcast/deop/kick/op/tp/unban命令。
0.0.16a_01/broadcast命令变更为/say
0.0.17a加入了/setspawn命令。
0.0.20a加入了/solid命令。
Java版Indev
0.31移除了所有命令。
Java版Alpha
v1.0.16加入了/ban/ban-ip/banlist/deop/home/kick/op/pardon/pardon-ip/say/stop命令。
v1.0.16_01加入了/save-all/save-on/save-off/tp命令。
v1.0.16_02加入了/list/tell命令。
v1.2.5移除了/home命令。
v1.2.6加入了/kill命令。
Java版Beta
1.3加入了/whitelist命令。
Java版
1.3.112w16a加入了作弊模式和/gamemode/give/time/toggledownfall/xp命令。
12w17a加入了/help命令。
多人游戏中的命令被显示为斜体。
12w18a输入命令时游戏不再暂停。
12w21a加入了/seed命令。
12w22a加入了/defaultgamemode命令。
12w24a加入了/publish命令。
12w25a可在将世界开放到局域网时开关作弊模式。
12w27a加入了/debug命令。
12w30a/gamemode 3改为/gamemode 0
1.4.212w32a加入了/difficulty/gamerule/spawnpoint/weather命令。
加入了目标选择器
12w37a加入了/clear命令。
12w38a/clear命令加入了item参数。
12w41a/xp的限制从5,000加大到2,147,483,647。
1.4.41.4.4-pre加入了/enchant命令。
1.513w03a加入了/testfor命令。
13w04a加入了/scoreboard命令。
13w09b加入了/effect命令。
1.6.113w23a加入了/spreadplayers命令。
加入了游戏规则naturalRegeneration
13w24a加入了游戏规则doDaylightCycle
13w24b/kill命令造成的伤害从1,000加入了至3.4×1038
1.6-pre/effect命令加入了clear参数。
1.6.1-pre加入了/playsound命令。
1.7.213w36a加入了/summon命令。
加入了/achievement命令。
/give命令加入了dataTag参数。
13w37a加入了/setblock/tellraw/testforblock命令。
13w38a加入了/setidletimeout命令。
13w43a加入了/setworldspawn命令。
1.814w02a加入了/blockdata命令。
加入了目标选择器@e
/kill命令加入了player|entity参数。
/clear命令加入了data参数。
/testfor命令加入了dataTag参数。
/testfor命令可在命令方块以外运行。
JSON文本规范中加入了insertion属性。
14w02c为修复MC-44371/kill命令现在直接清除非生物实体,不再对其造成3.4×1038虚空伤害。
14w03a/tp命令加入了旋转角度参数。
目标选择器加入了dxdydz参数。
加入了/clone/fill命令。
加入了游戏规则logAdminCommands
NBT数据现在支持使用字符串ID。
虽然数字ID仍能在NBT数据中使用,但在其余命令中均不再有效。
14w04a加入了/particle命令。
14w05a/gamemode/defaultgamemode命令加入了spectator参数。
14w06a/effect命令加入了hideParticles参数。
加入了/trigger命令。
14w07a加入了/execute/testforblocks命令。
/testfor命令现在只要求NBT标签被检测的部分一致。
14w08a使用/execute执行命令的返回值会回传到运行/execute命令的命令方块上。
14w10a加入了游戏规则showDeathMessages
/clone命令加入了force选项。
14w17a加入了/worldborder命令。
加入了游戏规则randomTickSpeed
14w19a加入了/worldborder damage/worldborder warning命令。
14w20a加入了/title命令。
JSON文本规范中加入了selector属性。
/clone命令加入了move选项。
14w26a加入了/worldborder add命令。
加入了/replaceitem命令。
加入了游戏规则sendCommandFeedback
14w28a加入了/stats命令。
14w29a加入了/worldborder get命令。
/particle命令加入了force参数。
加入了/time query命令。
允许设立自定义游戏规则。
/stats命令加入了QueryResults
14w30a/summon命令可以召唤闪电
14w31a/debug可在单人游戏中运行。
/debug命令加入了chunk参数。
14w32b加入了/entitydata命令。
/give现在无法突破堆叠限制。
1.8.11.8.1-pre1加入了游戏规则doEntityDrops
游戏规则doTileDrops不再影响实体。
1.915w37a加入了游戏规则spectatorsGenerateChunks
15w43a现在被/gamemode命令或F3 + N切换游戏模式的玩家会在聊天框中得到提示消息。
15w49a/playsound命令支持Tab键自动补全。
/particle命令加入了playerparams参数。
15w49b/time query现在支持day作为参数值。
15w51a加入了游戏规则spawnRadius,用于指定重生点半径。
16w02a目标选择器m接受游戏模式的全称及其缩写,如aadventure,且可以将其反选,如@a[m=!a]
/playsound命令要求source参数,指定声音所属的分类,以归入音量控制。
在命令方块中运行/help命令时,会在“上一个输出”中随机显示诙谐的语句。
16w03a/achievement命令不再影响统计数据。
16w07a加入了游戏规则disableElytraMovementCheck
1.9.3pre1/tp命令不再将玩家传送至-512<y<512以外的区域。
pre2加入了/stopsound命令。
1.1016w21b/tp命令的y轴坐标范围扩大至-4096~4096。
1.10-pre1加入了/teleport命令。与/tp效果类似,但传送目标必须指定、无法直接传送到其他玩家身上,且相对坐标基于命令执行者而非传送目标。
1.1116w32a/execute/fill/setblock/testforblock命令加入了方块状态支持。
16w32b/title命令加入了显示文本至快捷栏上方的功能。
16w38a加入了游戏规则doWeatherCyclemaxEntityCramming
移除了隐含目标选择器(如@e[167,28,454])。
无效的目标选择器(如@e[Type=creeper]@e[asdf=nonexistent]@e[malformed])现在会产生错误,而不再被静默忽略。
16w39a加入了/locate命令。
1.1217w13a加入了/recipe/advancement命令。
加入了游戏规则doLimitedCrafting
移除了/achievement命令。
17w16b加入了游戏规则maxCommandChainLength
加入了目标选择器@s,用于选择命令执行者。
17w18a加入了游戏规则announceAdvancements
加入了/reload命令。
1.12-pre1加入了游戏规则gameLoopFunction
加入了/function命令。
1.1317w45a命令中不同的部分现在由不同颜色标示,而即使不运行命令,错误部分也将会显示为红色。
在大部分情况下命令将不再允许出现大写字母,并运行得比以前更加快速而效率。
在目标选择器中加入了了nbt参数
修改了部分命令的语法。
加入了/tag/team命令。
移除了/enchant/stats/testfor/testforblock/testforblocks/toggledownfall命令。
重写/execute命令。
/gamerule命令不再接受未知值(自定义游戏规则)。
/gamerule命令现在会对值进行类型检查。
/publish命令现在支持可选参数port
/tp现在是/teleport的缩写。
17w45b加入了/data命令。
移除了/entitydata命令。
重制了 /execute store命令。
17w46a加入了/datapack命令。
加入了选项以切换命令自动补全的模式。
命令界面的UI样式标准更新,并重新在多人游戏中工作。
17w47a移除了/blockdata命令。
粒子名变更。
在聊天选项中加入了切换自动命令建议。
17w48a调整了命令补全界面的UI。
重制了tab键—将补全完整的坐标。
17w49b移除了游戏规则gameLoopFunction,使用函数标签#minecraft:tick取代。
17w50a现在可以在命令里使用局部坐标^
Tab键—在没有指向方块时用~ ~ ~补全。
18w01a加入了/tpfacing语法,这会调整目标实体面向的实体或坐标。
/time set加入了了noon以及midnight选项。
将所有自定义名称(如方块、物品、生物实体、方块实体)转变为可翻译的文本.
物品实体的NBT键ThrowerOwner不再是字符串,而以两个长整型组件LM
雪球、鸡蛋和末影珍珠的NBT键owner不再是字符串,而以两个长整型组件LM
18w02a命令中的错误现在有了更好的错误信息(提示中有更多的信息)。
/tp进行了简化,并且现在允许跨维度传送了。
加入了 /execute的子命令用于允许对于命令的进一步控制。
服务器命令现在将会执行于世界重生点而非固定为坐标0,0,0
18w03a命令和函数变得更快、效率更高了。
为分析器加入了命令(/debug)。
/data get标签路径现在可以使用非数字标签。
加入了/particle <name> <pos>作为该命令的一个简写。
18w05a加入了/bossbar命令。
新的/execute store子命令。
为命令UI加入了了基本的目标选择器。
现在为不明确的命令提示。
18w06a重新加入了/enchant命令。
为实体选择器加入了命令建议。
实体选择器和方块状态参数现在允许使用空格了。
/locate现在接受之前在Temple分组下所有结构的不同名称Desert_PyramidIglooJungle_PyramidSwamp_Hut
18w08a/locate命令输出的坐标加入了可点击的传送链接(将传送命令输入至聊天窗口)。
18w19a/seed输出的种子现在可被直接通过点击来复制。
18w20a组队现在可以有一个前缀和后缀。
pre7加入了 /scoreboard objectives modify <记分项> displayname <显示名称>
pre8加入了 /team modify <队伍> displayName
加入了 /scoreboard objectives modify <记分项> rendertype hearts,使生命值栏目显示为心形,就像这样: ♥♥♥♥♥♥
加入了 /scoreboard objectives modify <记分项> rendertype integer,使生命值栏目显示为黄色的数字。
队伍名称、记分项名称现在为文本元件,而不是纯字符串。
/team option 改为 /team modify
1.13.118w31a加入了/chunk命令。
pre1/chunk改名为/forceload
2018年9月26日据MIT许可证开源(曾在数据库网站提供了源代码,未指定许可证)。
1.1418w43a加入了/drop/schedule
/replaceitem可在物品展示框上使用。
18w44a删除了/drop 命令中的award 部分。
18w45a/drop更名为/loot并重做。
19w02a加入了/teammsg
1.1620w06a加入了/locatebiome命令。
20w17a加入了/attribute命令。
Java版(即将到来)
1.1720w46a移除了/replaceitem命令。
加入了/item命令。
携带版Alpha
0.7.4加入了对命令的支持,但尚未实现任何命令的运行。
0.16.0build 1加入了/clearfixedinv/clone/deop/execute/fill/gamemode/give/help(及其别名/?)、/kill/list/op/say/setblock/setfixedinvslot/setworldspawn/spawnpoint/summon/tell(及其别名/msg/w)、/testforblock/testforblocks/time/toggledownfall/tp(及其别名/teleport)、/weather/wsserver/xp命令。
大部分命令的功能与Java版1.10相同。差别在于:不支持数据标签、/clone命令无法使用forced模式、/gamemode命令仅允许指定创造模式和生存模式、/give命令中玩家目标为可选参数,以及/execute命令中实体目标为可选参数。
build 2移除了/clearfixedinv/setfixedinvslot及其他教育版相关的命令。
build 5加入了/enchant命令。
携带版
1.0.00.17.0.1加入了/locate/connect命令。
0.17.0.2移除了/locate命令。
1.0.0.0重新加入了/locate命令。仅能用于查找要塞。
1.0.31.0.3.0加入了/transferserver命令。
1.0.51.0.5.0加入了/clear/difficulty/effect/gamerule/me/particle/playsound/replaceitem/spreadplayers/stopsound/testfor/title命令。
1.0.5.3移除了/particle命令。
/effect命令的amplifier参数不再允许为负值。
1.1.01.1.0.0/replaceitem支持canplaceoncandestroy
/locate可查找其他结构。
加入了游戏规则dodaylightcycledoentitydropsdofiretickdomobspawningdomoblootdotiledropsdoweathercyclekeepinventorymobgriefing
?加入了/setmaxplayers
基岩版
1.2.01.2.0.2加入了/tickingarea
1.4.0?/transferserver移动到开发者命令,玩家不再能够正常使用。
1.5.01.5.0.0为启用教育版功能的世界加入了5个新命令。
1.6.01.6.0.6/gamerule加入了游戏规则doInsomnia
1.7.01.7.0.2加入了/scoreboard
加入了了游戏规则commandblocksenabled
1.8.01.8.0.8重新加入了/particle
加入了randomTickSpeed游戏规则。
加入了/reload
加入了/function
1.9.01.9.0.0加入了/tellraw
加入了showdeathmessages游戏规则。
加入了immediaterespawn游戏规则。
/particle加入了新粒子。
1.11.01.11.0.1加入了/resupply,但并没有作用。
1.11.0.3加入了/mobevent
1.12.01.12.0.2加入了spawnradius游戏规则。
/clear的特殊值功能失效。
加入了sendcommandblockfeedback游戏规则。
/particle加入了更多的新粒子。
为地图制作及Add-ons加入了新命令。
?移除了/resupply
1.14.01.14.0.3/clear的特殊值功能被修复。
1.16.01.16.0.57加入了/kick命令。
正式版加入了/whitelist命令。
1.16.1001.16.100.52加入了/playanimation/ride/structure命令。
1.16.100.54加入了/fog命令。
1.16.100.57加入了/camerashake/clearspawnpoint/event命令。
1.16.100.58加入了/music命令。
1.16.100.59加入了/schedule命令。
1.16.2101.16.210.53移除了/mixer命令。
1.16.210.54重新加入了/mixer命令。
1.16.210.58再次移除了/mixer命令。
1.16.210.60加入了/gametest命令。
基岩版(即将到来)
1.16.2301.16.230.50/whitelist重命名为/allowlist

漏洞[编辑 | 编辑源代码]

关于“命令”的漏洞由漏洞追踪器维护,请在此汇报漏洞。

参见[编辑 | 编辑源代码]