本站文本内容除另有声明外,转载时均必须注明出处。(详情…本站文本内容除另有声明外,转载时均必须注明出处。(详情…中文Minecraft Wiki是完全公开的。请勇于扩充与修正内容!中文Minecraft Wiki是完全公开的。请勇于扩充与修正内容!Minecraft中文Wiki微博正在更新!或许有兴趣去看看Minecraft中文Wiki微博正在更新!或许有兴趣去看看想与其他用户进行编辑上的沟通?社区专页正是为此创建的。想与其他用户进行编辑上的沟通?社区专页正是为此创建的。翻译或创建页面之前,不妨看看译名标准化Wiki条例页面。翻译或创建页面之前,不妨看看译名标准化Wiki条例页面。需要管理员的协助?在管理员告示板留言也许可以帮到您。需要管理员的协助?在管理员告示板留言也许可以帮到您。
各位用户:为了让我们能更好了解您的需求,提供更优良的服务,请帮助我们填写一份问卷。编者问卷读者问卷(需要花费7分钟左右)

Hi Gamepedia users and contributors! Please complete this survey to help us learn how to better meet your needs in the future. We have one for editors and readers. This should only take about 7 minutes!

命令

来自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)。
目标选择器参数可以进一步筛选待选目标。举例来说,@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版] 进度
predicate‌‌[仅Java版]‌‌[新增: JE 1.15] predicate

在使用目标选择器之后,你可以使用参数来限定所要选择的群组。当使用@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>,...}] — 根据指定目标的分数过滤目标。
所有的记分项都放在一个单独的标签中,并这个标签中分别列出分数选择器。此选择器支持使用范围。
  • @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=0]‌‌[仅基岩版]@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}}]的效果相同。
通过predicate选择目标‌‌[仅Java版]‌‌[新增: JE 1.15]
[predicate=<命名空间ID>] — 选择所有匹配该predicate的目标。
[predicate=!<命名空间ID>] — 选定所有不匹配该predicate的目标。
19w38a起,选择器可以在其参数中使用predicate
  • @a[predicate=example:test_predicate] — 选择所有匹配predicate example:test_predicate的玩家。
  • @e[predicate=!minecraft-wiki:smart_entity] — 选择所有不匹配predicate 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]是一个长整型数组);否则会假定为列表。但有以下特例:[]是一个空列表,而[,]是一个空整型数组。

如果用/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不存在时,该标签无效。

    •  storage‌‌[新增: JE 1.15]:字符串,指定要获取NBT数据标签的命令存储命名空间ID
       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不同,这会直接取代原先在聊天输入框中的内容)和“copy_to_clipboard”‌‌[新增: JE 1.15](将value复制到剪贴板中)。“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 EE 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添加了新命令。

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

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

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