本站文本內容除另有聲明外,均在知識共享 署名-非商業性使用-相同方式共享 3.0 協議下提供。(詳情…本站文本內容除另有聲明外,均在知識共享 署名-非商業性使用-相同方式共享 3.0 協議下提供。(詳情…中文Minecraft Wiki是完全公開的。請勇於擴充與修正內容!中文Minecraft Wiki是完全公開的。請勇於擴充與修正內容!Minecraft中文Wiki微博正在更新!或許有興趣去看看Minecraft中文Wiki微博正在更新!或許有興趣去看看想與其他用戶進行編輯上的溝通?社區專頁正是為此創建的。想與其他用戶進行編輯上的溝通?社區專頁正是為此創建的。翻譯或創建頁面之前,不妨看看譯名標準化Wiki條例頁面。翻譯或創建頁面之前,不妨看看譯名標準化Wiki條例頁面。需要管理員的協助?在管理員告示板留言也許可以幫到您。需要管理員的協助?在管理員告示板留言也許可以幫到您。

命令

来自Minecraft Wiki
跳转至: 导航搜索
Information icon.svg
此特性为Java版基岩版教育版独有。

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

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

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

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

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

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

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

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

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

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

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

举例来说,/tp 0 64 0将会移动使用者到坐标(0, 64, 0),而/tp ~3 ~ ~-3会使使用者往x轴的正方向(东方)移动3米,保持原本高度,并在z轴的负方向(北方)移动3米,而/tp ^ ^ ^3‌‌[Java基岩]会使使用者往前移动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~”不会。‌‌[基岩版]

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

本段文字中,variable翻译为变量,argument翻译为参数,而value代表数值。有些命令因为易读性的关系,并不会把它翻译出来。

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

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

/gamemode creative @a[team=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]会选择最远的一名玩家)‌‌[基岩版]
@r
选择随机玩家(或使用type目标选择器参数来包含实体‌[需要验证])。
目标选择器参数可以进一步筛选待选目标。举例来说,@r[team=A]‌‌[Java版]只会随机选择A队玩家。
c‌‌[基岩版]limit‌‌[Java版]目标选择器参数可以用来追加待选目标。比如,@r[c=3]‌‌[基岩版]@r[limit=3]‌‌[Java版]将随机选择三个玩家。
@a
选择所有玩家。
目标选择器参数可以进一步筛选待选目标。举例来说,@a[team=A]‌‌[Java版]只会选择A队的所有玩家。
@e
选择所有实体(包含玩家),但不包含死亡的实体。除@e以外的所有目标选择器都可以选中死亡的实体。
目标选择器参数可以进一步筛选待选目标。举例来说,@e[type=cow]只会选择牛。
@s
只选择唯一一个实体:该命令的执行者,包括已死亡玩家。若命令执行者不是一个实体,比如是命令方块或服务器控制台执行命令,则此选择器不会选中任何东西。
目标选择器参数 可用于确定执行者是否会成为目标。举例来说,@s[type=cow,team=Red]只会在命令执行者是红队的一头牛时才会将其选中。
@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 实体类型
nbt‌‌[Java版] 实体的数据标签
advancements‌‌[Java版] 进度

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

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

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

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

指定基准点
[x=<value>,y=<value>,z=<value>]
在世界中定义一个位置,用于distance参数或dxdydz参数。如果没有这些参数,单独定义位置是没有用的,所以将它(并且只有它)应用于@e仍然会选择世界上的所有实体。
坐标可以是整数或像12.34这样的小数(具体为双精度浮点数)且不会进行中心校正(center-corrected),这意味着x=0不再自动更正为x=0.5波浪号可用于此参数‌‌[基岩版]
通过距离选择目标
[<x>,<y>,<z>,distance=<value>] — 根据到某点的欧几里得距离过滤目标。如果位置参数未定义,则相对于命令执行的位置计算。只允许使用非负数。‌‌[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=<value>,dy=<value>,dz=<value>] — 只选择所有位于一定长方体区域内部的目标。体积定义为从基准点开始,向“x”方向(东方)延伸特定格(包括基准点本身,下同),向“y”方向(上方)延伸特定格,并向“z”方向(南方)延伸特定格。
这可以解释为创建一个由初始位置(<x>, <y>, <z>)至对角线向量(<dx>, <dy>, <dz>)组成的正方体,然后选择碰撞箱与其重叠的所有实体。如果位置参数未定义,则相对于命令执行的位置计算。允许任何值,包括负数和小数。
注意dxdydz用来指定与坐标的距离;它们不是指定一个新的坐标。
  • @e[x=1,y=2,z=3,dx=4,dy=5,dz=6] — 只有碰撞箱方块区域(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] — 只有碰撞箱在方块区域(1,2,3)内所有有重叠的实体会被选择。
可以将通过按距离来选择与按体积来选择组合在一起, 在这种情况下,命令将选择在两个区域的重叠内的目标(在基准点的某个半径范围内,且不在定义的体积之外)。
通过分数选择目标
[scores={<objective>=<value>,...}] — 根据指定目标的分数过滤目标。‌‌[Java版]
所有的记分项都放在一个单独的标签中,并这个标签中分别列出分数选择器。此选择器支持使用范围。
  • @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之间(包含)的目标。
参见:记分板§记分项
通过队伍选择目标‌‌[Java版]
[team=<某队伍>] — 选择所有属于队伍“某队伍”的目标。‌‌[Java版]
[team=!<某队伍>] — 只选择所有不属队伍“某队伍”的目标。‌‌[Java版]
[team=] — 选择所有不属于任何队伍的目标。‌‌[Java版]
[team=!] — 选择所有属于任意队伍的目标。‌‌[Java版]
参见:记分板§队伍
指定数量并排序选择目标
[limit=<value>] — 仅选择指定数量的目标。‌‌[Java版]
[c=<value>] — 通常以距离命令执行点的顺序排列。‌‌[基岩版]
当使用@p@r变量时,此参数默认为1。对它们使用limit参数时会增加选择最近或随机目标的数量。当使用@a@e变量时,此参数会限制目标数量。
当输入的值为负值时,目标的顺序会被反转。举例来说,@p[c=-3] 会回传3个最远的目标,而且,如果所有目标距离都一样远,@e[c=-3] 会选择3个刚加载/生成的目标。‌‌[基岩版]
[limit=<value>,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=<value>] — 根据指定目标的经验等级过滤目标。这将自动过滤非玩家目标。‌‌[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=1]‌‌[基岩版]@a[m=s]‌‌[基岩版] — 选择所有生存模式的玩家。
  • @a[gamemode=spectator]‌‌[Java版] — 选择所有旁观者模式的玩家。
  • @a[gamemode=!survival,gamemode=!adventure]‌‌[Java版] — 选择所有既不是生存模式又不是冒险模式玩家
通过名称选择目标
[name=<某名称>] — 选择所有名字为“某名称”的目标。
[name=!<某名称>] — 选择所有名字不为“某名称”的目标。
这是一个字符串,包含空格时应当用双引号括起。不能是JSON文本
  • @e[name!=Steve] — 选择不叫“Steve”的目标。
通过垂直旋转选择目标
[x_rotation=<value>] — 根据指定目标的垂直旋转角度过滤目标。‌‌[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=<value>] — 根据指定目标的水平旋转角度过滤目标。‌‌[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内的目标(骷髅、凋灵骷髅和流浪者)。
通过标签选择目标
[tag=<标签名>] — 选择所有有标签“标签名”的目标。
[tag=!<标签名>] — 选择所有没有标签“标签名”的目标。
[tag=] — 选择所有没有标签的目标。
[tag=!] — 选择所有有标签的目标。
允许使用多个参数。被选择的实体必须满足所有的参数条件。
  • @e[tag=a,tag=b,tag=!c] — 选择所有拥有标签a和b,但没有标签c的目标。
  • @r[tag=a] — 选择一个有标签a的随机玩家。
参见:记分板§标签命令
通过数据标签选择目标‌‌[Java版]
[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版]
1.13开始,目标选择器支持advancements参数,取代/advancement test。参数名称是进度的IDadvancements后接一组用中括号包含来的键值对,其中键为进度或条件的名称,值为true或false或表示进度的各条件的键值对。
  • @a[advancements={story/form_obsidian=true}] — 选择所有已达成进度“冰桶挑战”(minecraft:story/from_obsidian)的玩家。
  • @a[advancements={story/form_obsidian=false}] — 选择所有未达成进度“冰桶挑战”(minecraft:story/from_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版的命令中,用于指定玩家、实体和一些方块的较为复杂的数据。

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

例: {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]是一个长整型数组);否则会假定为列表。但有以下特例:[]是一个空列表,而[,]是一个空整型数组。

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

数据标签的数据结构是JSONlenient形式。

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

/tellraw/title命令使用严格的JSON语法。

告示牌被放置或修改时,或在一本成书被“翻开”(书写后第一次打开)时,记分板分数和目标选择器会被解析成具体的值。这些结果不再更新,使用NBT编辑器修改已存在的告示牌或已翻开的书也不会起作用。解析的结果无法在告示牌上换行,或在书上换页,超出的文字只会直接消失。

原始JSON文本的格式是
JSON字符串、
JSON列表或
复合标签。JSON文本的格式支持以下(大多是可选的)元素的JSON对象:


  • 直接显示的原始文本字符串。与只有标签
     text
    基础对象效果相同。

  • 每一个元素都与原始JSON文本结构重复。

  • 基础聊天组件对象。

    •  text:字符串,存储在聊天框中直接出现的纯文字。(如果是数字或布尔值则可以转化为字符串,如果是组合对象或者列表则会报错。)注意像是“@a”和“@p”的选择器并不会转译成玩家名字,必须使用selector代替。可以使用转义字符,例如用“\n”换行、“\t”缩进等。

    •  translate:显示文本的翻译标识符,用于将文本翻译至玩家使用的语言。此标识符与从assets文件夹或资源包中找到的语言文件的标识符一致。当text存在时忽略此参数。如果翻译标识符无效,则显示标识符本身。

    •  withtranslate所使用的聊天对象参数列表和字符串参数。
      • 该参数为当前语言翻译文本中出现的参数赋值,参数依序排列(例如,列表中的第一个元素将会取代翻译文本中的“%1$s”)。如果翻译标识符无效,但含有%s或%1$s这样的内容,则也能够替换。

    •  score:一个玩家在一个记分板目标里的分数。若该玩家没有被该记分板目标追踪,则什么都不显示。当上述的文本显示字段存在时忽略此参数。

      •  name:要被显示分数的玩家的名字。可使用选择器(例如@p),以及记分板系统中存在的虚拟玩家名称。另外,如果名称为“*”,会显示读者自己的分数(例如,/tellraw @a {"score":{"name":"*","objective":"obj"}}将给每个在线玩家显示他们自己在“obj”目标里的分数)。

      •  objective:要显示分数的记分板目标。

      •  value:可选。如果存在,将以此覆盖目标原先的分数。

    •  selector:一个包含了一个选择器(@s、@p、@a、@r或@e)的字符串以及可选的选择器参数。不像text,此处的选择器将会被解析为正确的玩家/实体名。如果多于一个玩家/实体符合条件,其将会被以例如“名字1, 名字2”或“名字1,名字2,名字3,名字4”的形式显示。当上述的文本显示字段存在时忽略此参数。在/tellraw命令中使用此标签时,点击结果中的玩家名称会出现私信该玩家的命令建议;按住⇧ Shift点击玩家名称会将名称填入聊天框中;按住⇧ Shift点击非玩家实体的名称会将其UUID填入聊天框中。

    •  keybind:显示用于执行特定操作的按键键位。例如,key.inventory会向玩家显示打开物品栏的按键,若玩家使用默认设置,则会显示“E”。当上述的文本显示字段存在时忽略此参数。

    •  nbt:一段NBT路径,用于从实体或方块处查找特定NBT数据标签的值并将其显示。当上述的文本显示字段存在时忽略此参数。

    •  interpret:布尔值,用于说明是否将
       nbt指示的字符串化NBT值解释为原始JSON文本(根据此原始JSON文本结构)。 若不为原始JSON文本则没有效果。

    •  block:字符串,指定要获取NBT数据标签的方块实体的坐标。坐标可以是绝对坐标或相对坐标
       nbt不存在时,该标签无效。

    •  entity:字符串,以目标选择器的形式指定要获取NBT数据标签的实体。
       nbt不存在时,该标签无效。

    •  extra:附加对象的列表,格式与基础对象相同。

      • 与基础聊天组件对象格式相同的附加对象。注意所有对象的属性都会被其子对象所继承,除了textextratranslatewithscore。这表意味着子对象会保留与父对象相同的格式和事件,除非子对象有自己的属性将其覆盖。

    •  color:渲染文字时使用的颜色。有效值有:“black”、“dark_blue”、“dark_green”、“dark_aqua”、“dark_red”、“dark_purple”、“gold”、“gray”、“dark_gray”、“blue”、“green”、“aqua”、“red”、“light_purple”、“yellow”、“white”和“reset”(取消父对象使用的颜色效果)。技术上来说,“bold” (粗体)、“underline”(下划线)、“italic”(斜体)、“strikethrough”(删除线)和“obfuscated”(模糊处理)都是可接受的,不过建议使用下文提到的标签来实现。

    •  bold:布尔值(true/false) - 是否将文字渲染为粗体,默认为false。

    •  italic:布尔值(true/false) - 是否将文字渲染为斜体,默认为false。

    •  underlined:布尔值(true/false) - 是否为文字添加下划线,默认为false。

    •  strikethrough:布尔值(true/false) - 是否为文字添加删除线,默认为false。

    •  obfuscated:布尔值(true/false) - 是否将文字模糊处理,默认为false。

    •  insertion:当玩家按住⇧ Shift并点击文字时,此字符串会自动填入聊天编辑框中。不会覆盖原有的文字。

    •  clickEvent:当玩家点击文字时产生的事件。

      •  action:当点击文字时所触发的行为。有效值为“open_url”(在玩家的默认浏览器中打开value中的URL地址)、“open_file”(打开用户计算机上的value文件)、“run_command”(以玩家的身份在聊天框中输入value值并提交。可以用来执行命令,但是如果玩家没有所需的权限,命令会失败)、“change_page”(只能用在成书中,如果该value页存在,翻至该页)和“suggest_command”(和“run_command”相似,但是文本只会出现在玩家的聊天输入栏,并不会自动提交。与insertion不同,这会直接取代原先在聊天输入框中的内容)。“open_file”用于游戏自动生成的信息中(如截图时显示的信息),不能在命令和告示牌中使用。

      •  value:前述指定的action使用到的URL地址、文件、聊天内容、命令或书页。注意,命令之前一定要加上“/”斜杠。

    •  hoverEvent:当玩家将鼠标指针悬浮在文字之上时显示的说明提示。

      •  action:说明提示的类型。有效值为“show_text”(显示JSON文本)、“show_item”(显示一个可带NBT标签的物品)和“show_entity”(显示实体的名称,还可能显示其类型和UUID)。

      •  value:此标签的格式取决于action。注意,“show_text”是唯一接受对象作为value值的类型;其他类型对应的value值都是字符串,所以必须用引号引起。
        • “show_text”:可以是字符串,或是与基础对象格式相同的一个对象。注意,此对象的clickEventhoverEvent在说明提示中不会生效,但是它的格式和extra标签仍然有效。
        • “show_item”:与物品NBT标签格式相同的的字符串。包含“id”标签,和可选的“Damage”标签和“tag”标签(和/give命令所使用的“dataTag”标签中的组合相同)。
        • “show_entity”:描述一个组合的字符串,包含值“type”(例如“Zombie”)、“name”和“id”(要求为实体UUID,但接受任意字符串)。

由于extra标签的存在,以上格式可递归地嵌套成非常复杂与多功能的字符串。然而,JSON文本不必弄得如此复杂:几乎所有的属性都可选或会被忽略。

为了确保有效,每一个对象至少应该包含以下任意一个元素:texttranslatescoreselectorkeybind(其余的元素都是可选的)。为使用方便,整个对象可以只用一个字符串表示。此时字符串视为text的值。例如,"This is raw text"{"text":"This is raw text"}是等价的。这种写法在任何需要使用JSON文本的地方都是有效的(包括/tellraw里面所用到的<raw json message>参数,extra列表中的元素,以及hover_event中“show_text”的value值)。

/tellraw也接受一个对象及字符串数组,数组与extra的处理方式大致相同(首个元素视作其后元素的父元素,继承文字样式)。它也接受多层嵌套的数组树,这样会以最深层的数据开始解释。例如:

/tellraw @a ["Hello there, ",{"selector":"@p"},"."]
/tellraw @a [[[["The "],[["quick ","brown "],[{"selector":"@p"}," jumps "],"over "],"the "],["lazy ","dog."]]]

最后,不同于其它使用JSON的命令,/tellraw中的字符串允许通过\u####符号使用Unicode字符,其中####是表示Unicode字符的十六进制数。

外部链接
Skylinerw的JSON格式示例(英文)
Tellraw命令生成器(可选中文)
键位名称一览表


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版中的参数类型。

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

下表列出了所有可用命令。点击表头可以排序。

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

权限类型‌‌[基岩教育][编辑 | 编辑源代码]

Any:任何人可以执行这些命令

Admin:仅主机可以执行这些命令(仅Alpha 0.16.0)。仅操作员可以执行这些命令(仅携带版1.0.0及以上版本)

Gamemasters:具备较高命令执行能力的(如命令方块/Add-Ons/ServerScript/ScriptEngine)执行者及管理员可以执行这些命令。

Host:仅WebSocket端可以执行这些命令用于获取JSON返回信息。

Internal:仅主机所在设备或游戏内部可执行这些命令。

Operator(仅Alpha 0.16.0):仅操作员可以执行这些命令。

Owner:仅官方核心服务器控制台可以执行这些命令。

WS[编辑 | 编辑源代码]

这类命令通常需要使用WebSocket服务器代为执行,在游戏界面中无法被执行。

已移除[编辑 | 编辑源代码]

这些命令在最新的游戏版本中已经被移除。

部分[编辑 | 编辑源代码]

这些命令通常并未被移除,但是玩家已无法通过任何正常方式在最新版本中执行。

命令概述
命令 描述 BE EDU JE OP等级 权限类型 仅限MP



/? /help的替代命令,提供命令使用帮助。 0 Any
/ability 赋予或剥夺玩家的能力。 2 G
/achievement 添加或移除玩家的成就。 已移除 2
/advancement 添加、移除或查询玩家的进度。 2
/agent 创建一个吉祥物。 WS WS Any
/ban 将玩家加入封禁列表。 3 MP
/ban-ip 将IP地址加入封禁列表。 3 MP
/banlist 显示封禁列表。 3 MP
/blockdata 更改方块的数据标签。 已移除 2
/bossbar 添加/查询/设置/移除一个Boss栏或列出所有已创建的Boss栏。 2

/broadcast 向整个服务器广播消息。 已移除 2
/classroommode 编辑受限制方块的能力。 3 Any
/clear 从玩家物品栏中删除物品。 2 G
/clone 将特定区域的方块复制到另一处。 2 G
/closewebsocket 断开已连接的WebSocket服务器。 WS WS Any
/connect /wsserver的替代命令,连接至WebSocket服务器。 Admin
/data 允许玩家获取、合并或是移除实体或方块的数据标签。 2


/datapack 控制加载的数据包。 2
/debug 开始或结束调试会话。 3
/defaultgamemode 更改默认的游戏模式 2
/deop 撤销玩家的管理员权限。 3 Admin MP
/difficulty 设置难度等级。 2 G
/effect 添加或移除状态效果 2 G

/enableencryption 为当前WebSocket连接启用加密。 WS WS Any
/enchant 附魔玩家的物品。 2 G
/entitydata 更改实体的数据标签。 已移除 2
/execute 执行另一命令。 2 G
/experience 给予玩家经验。 2 G
/fill 将某个区域填满特定方块。 2 G
/forceload 强制不断加载区块。 2(query)
4(其他)

/function 运行一个函数 G
/gamemode 更改玩家的游戏模式 2 G
/gamerule 更改或查询游戏规则值。 2 G
/give 给予玩家物品。 2 G
/help 提供命令使用帮助。 0 Any
/immutableworld 设置世界的不可变状态。 3 G
/kick 将玩家踢出服务器。 3 Owner MP
/kill 杀死实体(玩家、生物、物品等)。 2 G

/list 列出服务器中的玩家。 0 Any
/listd 以JSON形式列出服务器中的玩家。 WS WS Host
/locate 显示最近给定结构的坐标。 2 G
/loot 从一个物品栏中掉落物品到地面上。 2



/me 显示一条关于自己的信息。 0 Any
/mixer Mixer交互性控制。 Any
/mobevent 控制或查询允许运行的生物事件。 2 未知
/msg /tell的替代命令,向另一玩家发送私信。 0 Any
/op 授予玩家管理员权限。 3 Admin MP
/pardon 从封禁列表中移除项目。 3 MP
/particle 创建颗粒。 2 G
/playsound 播放音效。 2 G
/publish 向局域网开放单人游戏世界。 4 仅限SP
/querytarget 检测某实体所在坐标、y旋转角度、所在维度及专用ID。 WS WS Host
/recipe 给予或剥夺合成配方。 2
/reload 从硬盘中重新加载战利品表、进度和函数。 Internal
/remove 移除吉祥物。 3 未知
/replaceitem 替换物品栏中的物品。 2 G


/resupply 立即补给村庄新经济供需体系。 2 G
/save 准备备份,查询其状态或恢复。 4‌[需要验证] MP
/save-all 将服务器保存到硬盘。 4 Owner MP
/save-off 关闭服务器自动保存。 4 MP
/save-on 开启服务器自动保存。 4 Owner MP
/say 向多个玩家发送消息。 1 G
/schedule 安排函数或标签在特定的游戏刻后运行。 2
/scoreboard 管理记分板目标、玩家、队伍与标签。 2 G

/seed 显示世界种子 2
/setblock 将方块替换为其他方块。 2 G
/setidletimeout 设置无操作玩家被踢出的延时。 3 MP
/setmaxplayers 设置可加入游戏的玩家数量上限。 Host
/setspawn 将当前位置设置为新玩家的默认出生点。 已移除 2
/setworldspawn 设置世界出生点 2 G
/solid 相互切换放置石头状态和放置基岩状态。 已移除 2
/spawnpoint 为玩家设置出生点。 2 G
/spreadplayers 将实体传送到随机位置。 2 G

/stats 使用其他命令的结果控制记分项的更新。 已移除 2


/stop 关闭服务器。 4 Owner MP
/stopsound 停止音效。 2 G
/summon 生成实体。 2 G
/tag 修改玩家或实体的标签。 2 未知

/team 修改队伍。 2

/teleport /tp的替代命令,传送实体。 2 G

/teammsg 指定要发送给队伍的消息。 0
/tell 向另一玩家发送私信。 0 Any
/tellraw 向玩家显示JSON消息。 2 G
/testfor 统计符合给定条件的实体。 已移除 2 G

/testforblock 测定某方块是否在某位置。 已移除 2 G
/testforblocks 测定两个区域中的方块是否相同。 已移除 2 G
/tickingarea 添加、删除或列出常加载区域。 2 G
/time 更改或查询游戏中的世界时间。 2 G
/title 管理屏幕上的标题。 2 G
/toggledownfall 切换天气。 2 G
/tp 传送实体。 2 G

/transferserver 将玩家转送至另一服务器。 部分 部分 0 Any
/trigger 设置一个触发器。 0
/unban 解除对一个玩家的封禁。 已移除 3 MP
/w /tell的替代命令,向另一玩家发送私信。 0 Any
/weather 设置天气。 2 G
/whitelist 管理服务器白名单。 3 Owner MP
/worldborder 管理世界边界 2
/worldbuilder 编辑受限制方块的能力。 3 G
/wsserver 连接至WebSocket服务器。 0 Admin
/xp 增加或减少经验 2 G

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

参见:命令术语列表
格式
显示
普通文本 直接输入该文本,应完全一致。
斜体 以合适的值替换斜体部分
<尖括号> 这是必需参数
[方括号] 这是可选参数
x|y

在多个选项当中选择一个

省略号 … 此参数可能是含有空格的多个单词。
参数:整型 此参数需要输入整数
参数:浮点型 此参数需要输入小数
参数:字符串 此参数是字符串
成功条件
只有情况符合命令的成功条件时游戏才会认为命令执行成功。成功与否本身会产生许多影响,例如接受命令方块红石信号的红石比较器的输出会有所变化。请注意,并非所有的“成功”的命令都会使世界有所改变,“失败”的命令也不意味着命令什么也没有做。

限制条件
描述该命令的执行者与执行条件要求。
所有多人联机限定的命令都不允许参数中有目标选择器。
除了/list所有的任何多人联机命令都不能由命令方块执行。
许多这类命令都可以对从未进入服务器甚至非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.1 12w16a 增加作弊模式和/gamemode/give/time/toggledownfall/xp命令。
12w17a 增加/help命令。
多人游戏中的命令被显示为斜体。
12w18a 输入命令,使用书与笔书写,显示暂停菜单时游戏不再暂停。
12w21a 增加/seed命令。
12w22a 增加/defaultgamemode命令。
12w24a 增加/publish命令。
12w25a 可在将世界开放到局域网时开关作弊模式。
12w27a 增加/debug命令。
12w30a /gamemode 3改为/gamemode 0
1.4.2 12w32a 增加/difficulty/gamerule/spawnpoint/weather命令。
增加目标选择器
12w37a 增加/clear命令。
12w38a /clear命令增加item参数。
12w41a /xp的限制从5,000加大到2,147,483,647。
1.4.4 1.4.4-pre 增加/enchant命令。
1.5 13w03a 增加/testfor命令。
13w04a 增加/scoreboard命令。
13w09b 增加/effect命令。
1.6.1 13w23a 增加/spreadplayers命令。
增加游戏规则naturalRegeneration
13w24a 增加游戏规则doDaylightCycle
13w24b /kill命令造成的伤害从1,000增加至3.4×1038
1.6-pre /effect命令增加clear参数。
1.6.1-pre 增加/playsound命令。
1.7.2 13w36a 增加/summon命令。
增加/achievement命令。
/give命令增加dataTag参数。
13w37a 增加/setblock/tellraw/testforblock命令。
13w38a 增加/setidletimeout命令。
13w43a 增加/setworldspawn命令。
1.8 14w02a 增加/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.1 1.8.1-pre1 增加游戏规则doEntityDrops
游戏规则doTileDrops不再影响实体。
1.9 15w37a 增加游戏规则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.3 pre1 /tp命令不再将玩家传送至-512<y<512以外的区域。
pre2 增加/stopsound命令。
1.10 16w21b /tp命令的y轴坐标范围扩大至-4096~4096。
1.10-pre1 增加/teleport命令。与/tp效果类似,但传送目标必须指定、无法直接传送到其他玩家身上,且相对坐标基于命令执行者而非传送目标。
1.11 16w32a /execute/fill/setblock/testforblock命令增加方块状态支持。
16w32b /title命令增加显示文本至快捷栏上方的功能。
16w38a 增加游戏规则doWeatherCyclemaxEntityCramming
移除隐含目标选择器(如@e[167,28,454])。
无效的目标选择器(如@e[Type=creeper]@e[asdf=nonexistent]@e[malformed])现在会产生错误,而不再被静默忽略。
16w39a 增加/locate命令。
1.12 17w13a 增加/recipe/advancement命令。
增加游戏规则doLimitedCrafting
移除/achievement命令。
17w16b 增加游戏规则maxCommandChainLength
增加目标选择器@s,用于选择命令执行者。
17w18a 增加游戏规则announceAdvancements
增加/reload命令。
1.12-pre1 添加了游戏规则gameLoopFunction
增加/function命令。
1.13 17w45a 命令中不同的部分现在由不同颜色标示,而即使不运行命令,错误部分也将会显示为红色。
在大部分情况下命令将不再允许出现大写字母,并运行得比以前更加快速而效率。
在目标选择器中增加了nbt参数
修改了部分命令的语法。
增加/tag/team命令。
移除/enchant/stats/testfor/testforblock/testforblocks/toggledownfall命令。
重写/execute命令。
/gamerule命令不再接受未知值(自定义游戏规则)。
/gamerule命令现在会对值进行类型检查。
/publish命令现在支持可选参数port
17w45b 增加/data命令。
移除/entitydata命令。
重制了 /execute store命令。
17w46a 增加/datapack命令。
增加选项以切换命令自动补全的模式。
命令界面的UI样式标准更新,并重新在多人游戏中工作。
17w47a 移除了/blockdata命令。
颗粒名变更。
在聊天选项中添加切换自动命令建议。
17w48a 调整了命令补全界面的UI。
重制了tab键—将补全完整的坐标。
17w49b 移除游戏规则gameLoopFunction,使用函数标签#minecraft:tick取代。
17w50a 现在可以在命令里使用局部坐标^
Tab键—在没有指向方块时用~ ~ ~补全。
18w01a 增加/teleportfacing语法,这会调整目标实体面向的实体或坐标。
/time set增加了noon以及midnight选项。
将所有自定义名称(如方块、物品、生物实体、方块实体)转变为可翻译的文本.
物品实体的NBT键ThrowerOwner不再是字符串,而以两个长整型组件LM
雪球、鸡蛋和末影珍珠的NBT键owner不再是字符串,而以两个长整型组件LM
18w02a 命令中的错误现在有了更好的错误信息(提示中有更多的信息)。
/teleport进行了简化,并且现在允许跨维度传送了。
增加 /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,使生命值栏目显示为心形,就像这样: Heart.svgHeart.svgHeart.svgHeart.svgHeart.svgHeart.svg
增加 /scoreboard objectives modify <记分项> rendertype integer,使生命值栏目显示为黄色的数字。
队伍名称、记分项名称现在为文本元件,而不是纯字符串。
/team option 改为 /team modify
1.13.1 18w31a 增加/chunk命令。
pre1 /chunk改名为/forceload
2018年9月26日据MIT许可证开源(曾在数据库网站提供了源代码,未指定许可证)。
1.14 18w43a 增加/drop/schedule
/replaceitem可在物品展示框上使用。
18w44a 删除了/drop 命令中的award 部分。
18w45a /drop更名为/loot并重做。
19w02a 增加/teammsg
携带版(Alpha)
0.7.4 增加了对命令的支持,但尚未实现任何命令。
0.16.0 build 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命令。
大部分命令的功能与PC版1.10相同。差别在于:不支持数据标签、/clone命令无法使用forced模式、/gamemode命令仅允许指定创造模式和生存模式、/give命令中玩家目标为可选参数,以及/execute命令中实体目标为可选参数。
build 2 移除/clearfixedinv/setfixedinvslot及其他教育版相关的命令。
build 5 增加/enchant命令。
携带版
1.0 build 1 增加/locate/connect命令。
build 2 移除/locate命令。
build 3 重新增加/locate命令。仅能用于查找要塞。
1.0.3 build 1 增加/transferserver命令。
1.0.5 build 1 增加/clear/difficulty/effect/gamerule/me/particle/playsound/replaceitem/spreadplayers/stopsound/testfor/title命令。
build 2 移除/particle命令。
/effect命令的amplifier参数不再允许为负值。
1.1 build 1 /replaceitem支持canplaceoncandestroy
/locate可查找其他结构。
增加游戏规则dodaylightcycledoentitydropsdofiretickdomobspawningdomoblootdotiledropsdoweathercyclekeepinventorymobgriefing
1.1 增加/setmaxplayers
基岩版
1.2 build 1 增加/tickingarea
1.4 /transferserver移动到开发者命令,玩家不再能够正常使用。
1.5.0 beta 1.5.0.0 为启用教育版功能的世界添加了5个新命令。
1.6 beta 1.6.0.6 /gamerule增加游戏规则doInsomnia
1.7 beta 1.7.0.2 增加/scoreboard
增加了游戏规则commandblocksenabled
1.8 beta 1.8.0.8 重新加入/particle
增加randomTickSpeed游戏规则。
增加/reload
增加/function
1.9 beta 1.9.0.0 增加/tellraw
增加showdeathmessages游戏规则。
增加immediaterespawn游戏规则。
/particle添加新颗粒。
1.11 beta 1.11.0.1 增加/resupply,但并没有作用。
beta 1.11.0.3 增加/mobevent
1.12.0 beta 1.12.0.2 增加spawnradius游戏规则。
增加sendcommandblockfeedback游戏规则。
/particle添加更多的新颗粒。
为地图制作及Add-ons添加了新命令。

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

关于“命令”的漏洞由漏洞追踪器维护,请在那里使用英文汇报漏洞。

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