本站文本内容除另有声明外,均在知识共享 署名-非商业性使用-相同方式共享 3.0 协议下提供。(详情…本站文本内容除另有声明外,均在知识共享 署名-非商业性使用-相同方式共享 3.0 协议下提供。(详情…中文Minecraft Wiki是完全公开的。欢迎持续参与翻译工作中文Minecraft Wiki是完全公开的。欢迎持续参与翻译工作Minecraft中文Wiki微博正在更新!或许有兴趣去看看Minecraft中文Wiki微博正在更新!或许有兴趣去看看翻译或创建页面之前,不妨看看译名标准化Wiki条例页面。翻译或创建页面之前,不妨看看译名标准化Wiki条例页面。想与其他用户进行编辑上的沟通?社区专页正是为此创建的。想与其他用户进行编辑上的沟通?社区专页正是为此创建的。需要管理员的协助?在管理员告示板留言也许可以帮到您。需要管理员的协助?在管理员告示板留言也许可以帮到您。

指令

出自 Minecraft Wiki
(重新導向自 JSON文本)
前往: 導覽搜尋
Java Edition.pngMclogo.svgEducation Edition.svg

指令(Command)是通過輸入特定文本字符串而激活的高級功能。

使用方法[編輯 | 編輯原始碼]

在客戶端中,指令通過Minecraft聊天窗口輸入,通過按下T鍵(預設)或/鍵喚出聊天窗口。使用/鍵會同時輸入指令必需的前綴斜槓(/),因此這是個實用的快捷鍵。鍵可瀏覽之前輸入的指令文本,包含所有之前執行的指令。在輸入指令時按下Tab ↹鍵會循環顯示當前可用的指令或參數,也可以快速輸入準心當前指向方塊的坐標(在Java版,如果準心沒有指向坐標,則輸入~ ~ ~;在輸入實體選擇器時,如果準心指向某個實體(包括掉落的物品),則可以直接輸入其UUID)。

指令也可以在多人伺服器的控制台中輸入,但是不需要加入前綴/。在英語中,以這種方式執行指令的伺服器管理員被稱為「ghosting」。

指令方塊的變種「指令方塊礦車」可用在鐵軌上。但是也不需要加上前綴l/

指令方塊可在聊天欄用/give @s(也可用@p) command_block獲取。

指令方塊礦車可在聊天欄用/give @s(也可用@p) command_block_minecart獲取。

前綴「/[編輯 | 編輯原始碼]

指令方塊中,指令可以以前綴斜槓開頭,但不是必須的。在指令方塊中的指令通常還需要一個可選參數,如玩家名稱。

大多數指令只能在以下狀況有效:

  • Minecraft多人聯機伺服器遊戲中,由管理員或指令方塊使用。
  • 在其他的多人模式遊戲中,由開啟區域網並允許作弊的玩家,或主持多人聯機伺服器的玩家使用。
  • 單人模式中,創建世界時開啟作弊(藉由「更多選項」按鈕;極限模式不能開啟作弊)。

玩家指令在不允許作弊的生存模式中仍然可用。

注意:在單人遊戲中,如果不允許作弊,仍可以通過公開目前的遊戲至區域網 (Esc→「公開至區域網」,點選「允許作弊」為開,接著「開始區域網遊戲」) 而暫時可以作弊。你不必實際連入區域網或等待別人加入。這並不是永久的,但直至退出世界前都可以使用指令,且指令做出的修改都會被保存(物品、生物生成等)。你可以在再次開啟遊戲時重複以上步驟。注意當公開至區域網時遊戲便無法暫停,所以在打開遊戲目錄時若有需要最好找個安全的地方。你可以重新載入世界來取消公開至區域網。

波浪號和插入符[編輯 | 編輯原始碼]

很多指令可以使用波浪號~)來指定相對坐標,插入符^)來指定局部坐標(也稱本地坐標)。在波浪號和插入符後方的數字是相對某個東西的偏移量而不是絕對坐標。數字的正負號表示以坐標軸的正或負方向偏移。一個單獨的波浪號~~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 ^ ^會根據使用者頭部的方向將其傳送到右邊。插入符的用法是/tp ^左 ^上 ^前

在基岩版,多個指令參數有時可以不需要空格,如~~~可以代表~ ~ ~,~~1~可以代表~ ~1 ~,比如/tp @a ~1 ~2 ~3可以簡寫為/[email protected]~1~2~3。注意~~1不能代表~ ~ 1,因為「~1」會被視為一個整體,而「1~」不會。插入符也是如此。

偏移量的基準點由指令本身決定。比如/tp會以目標的起始位置未基準點。其它常見的基準點包括指令的執行位置和指令指定的其他坐標。

目標選擇器[編輯 | 編輯原始碼]

本段文字中,variable翻譯為變量,argument翻譯為參數,而value代表數值。有些指令因為易讀性的關係,並不會把它翻譯出來。

大多數以玩家作為參數的指令,可以通過某些限定條件來選擇一個或多個玩家,而不必要用名字來指定玩家。要用條件來選擇玩家,先選擇一個目標選擇器變量,然後,選擇一個或多個目標選擇器參數以制定具體的條件(可選)。以實體作為參數的指令,也可以通過目標選擇器選擇符合條件的一個或多個實體。

比如,要改變紅(Red)隊所有玩家的遊戲模式為創造模式,但不使用名字來逐個指明:

/gamemode creative @a[team=Red]

請注意,Java版的目標選擇器和基岩版有較大的區別,有的語法只適用於Java版,有的語法只適用於基岩版,請注意文中的「僅Java版」和「僅基岩版」標識。


目標選擇器變量[編輯 | 編輯原始碼]

目標選擇器變量匯總
變量 功能
@p 距離最近的玩家
@r 隨機玩家
@a 所有玩家
@e 所有實體
@s 指令的執行者

目標選擇器變量用於指定待選目標的大致分類。共有5種變量:

@p
選擇最近的玩家。在伺服器控制台中輸入時,基準點為(0, 0, 0)。如果有多個最近的玩家,他們與基準點距離完全相同,那麼會選擇其中最晚進入伺服器的玩家。
目標選擇器參數可以進一步篩選待選目標。舉例來說,@p[team=Red]只會選擇紅隊中距離最近的玩家,即使有其他非紅隊玩家更為靠近。
基岩版c‌‌[基岩版]目標選擇器參數可以用來追加待選目標。(舉例來說,@p[c=3]會選擇最近的三名玩家)。若參數是負值,c會反轉選擇目標的順序(舉例來說,@p[c=-1]會選擇最遠的一名玩家)‌‌[基岩版]。在Java版,該參數被limit取代‌‌[Java版],比如@p[limit=3]會選擇最近的三名玩家,選擇最遠的一名玩家則應該使用@a[limit=1,sort=furthest]‌‌[Java版]
@r
選擇隨機玩家(或使用type目標選擇器參數來包含實體)。
目標選擇器參數可以進一步篩選待選目標。舉例來說,@r[team=Red]只會隨機選擇紅隊玩家。
基岩版c目標選擇器參數可以用來追加待選目標。在Java版,追加待選目標應使用limit。比如@r[c=3]‌‌[基岩版]@r[limit=3]‌‌[Java版]@a[limit=3,sort=random]‌‌[Java版]會隨機選擇三名玩家。
如果沒有使用type參數,@r只會選擇隨機玩家。type參數可以用來選擇非玩家的實體(舉例來說,@r[type=zombie]會隨機選擇殭屍@r[type=!player]會隨機選擇非玩家實體,等等)。
@a
選擇所有玩家,包括已死亡玩家。除了@a以及@s以外的其他所有目標選擇器都不能選中已死亡玩家。
目標選擇器參數可以進一步篩選待選目標。舉例來說,@a[team=Red]只會選擇紅隊的所有玩家。
@e
選擇所有實體(包含玩家)。
目標選擇器參數可以進一步篩選待選目標。舉例來說,@e[type=cow]只會選擇牛。
@s
只選擇唯一一個實體:執行該指令的實體,包括已死亡玩家。若指令執行者不是一個實體,比如是指令方塊或伺服器控制台執行指令,則此選擇器不會選中任何東西。
目標選擇器參數可以進一步篩選指令執行者。舉例來說,@s[type=cow,team=Red]只會在指令執行者是紅隊的一頭牛時才會將其選中。


目標選擇器參數[編輯 | 編輯原始碼]

目標選擇器參數匯總
通過坐標
參數 選擇標準
x, y, z 坐標
distance‌‌[Java版]
rrm‌‌[基岩版]
距離
dx, dy, dz 體積尺寸
通過記分板參數
參數 選擇標準
scores 最大分數
tag 記分板標籤
team 隊伍名稱
通過其他特性
參數 選擇標準
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=X,y=Y,z=Z] — 修改目標選擇器選擇的基準點,與通過距離選擇目標結合可以選擇特定距離內的目標,與通過體積尺寸選擇目標結合可以選擇特定立方體內的目標。如果僅指定基準點而未指定距離和體積尺寸,則會選擇整個世界(對選擇順序及部分選擇參數有效,並且限制選擇範圍為執行的世界)。
坐標可以是整數或像12.34這樣的小數(具體為雙精度浮點數)且不會進行中心校正(center-corrected),這意味著x=0不再自動更正為x=0.5——波浪號可用於此參數‌‌[基岩版]
通過距離選擇目標
[r=R] — 只選擇小於R個方塊的目標執行指令。使用小於0的值則會將指令限制為在相同維度執行,且不限制執行位置的距離。‌‌[基岩版]
[rm=RM] — 只選擇大於RM個方塊的目標執行指令。‌‌[基岩版]
[distance=值或范围] — 只選擇與基準點的距離(單位為方塊格數)為某個值或者某個範圍內的目標。只允許非負數。‌‌[Java版]
若精確到坐標(上方)和半徑中的一或多個坐標,則半徑將以坐標為執行中心而不是指令執行位置。
在Java版,範圍可以是「最小值..」、「..最大值」或者「最小值..最大值」的格式,比如:‌‌[Java版]
  • @e[distance=10] — 是距離10範圍
  • @e[distance=10..12] — 是距離10到12範圍
  • @e[distance=5..] — 是距離5或以上範圍
  • @e[distance=..15] — 是距離15或以下範圍
通過體積尺寸選擇目標
[dx=DX,dy=DY,dz=DZ]
只選擇位於一定長方體區域內部的目標,體積定義為從基準點開始,向「x」方向(東/西方)延伸DX格(包括基準點本身,下同),向「y」方向(上/下方)延伸DY格,並向「z」方向(北/南方)延伸DZ格。(dxdydz用來指定與坐標的距離;它們不是指定一個新的坐標。)dx、dy、dz也可以是負數(即為反向延伸)。
  • @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={记分项1=分数1,记分项2=分数2,...}] — 僅選擇計分項計分項1分數1計分項2分數2……的目標。
記分板的選擇器參數全部在scores標籤中,其值為各項的組合,組合中每一項都是「記分項=分數」的格式。花括號內的分數可以是具體的值或範圍。例如:
  • @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=] — 只選擇沒有任何標籤的目標。
[tag=!] — 只選擇擁有任意標籤的目標。
[tag=标签1,tag=标签2] — 選擇既有標籤1又有標籤2的目標。
[tag=!标签1,tag=!标签2] — 選擇既沒有標籤1又沒有標籤2的目標。
[tag=标签1,tag=!标签2] — 選擇既有標籤1又沒有標籤2的目標。
  • @e[tag=a,tag=b,tag=!c] — 選擇只有標籤a和標籤b但沒有標籤c的目標。
  • @r[tag=a] — 隨機選擇一個帶有標籤a的玩家。
另見:記分板§標籤指令
通過隊伍選擇目標
[team=某队伍] — 只選擇屬於隊伍「某隊伍」的目標。
[team=!某队伍] — 只選擇不屬隊伍「某隊伍」的目標。
[team=] — 只選擇不屬任何隊伍的目標。
[team=!] — 只選擇屬於任意隊伍的目標。
另見:記分板§隊伍
通過數量選擇目標
[c=数量] — 僅選擇指定數量的目標。通常以距離指令執行點的順序排列。‌‌[基岩版]
[limit=数量] — 僅選擇指定數量的目標。‌‌[Java版]
當使用@p@r變量時,此參數被方案為1,而更大的數值會增加回傳的目標數量。當使用@a@e變量時,此參數只會限制目標數量(預設選擇所有目標)。
基岩版當輸入的值為負值時,目標的順序會被反轉。舉例來說,@p[c=-3] 會回傳3個最遠的目標,而且,如果所有目標距離都一樣遠,@e[c=-3] 會選擇3個剛加載/生成的目標。‌‌[基岩版]
Java版,不能使用負數,若要反選實體需要使用sort參數‌‌[Java版]。(在1.13之前,用法同基岩版。)
  • 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=-3]‌‌[基岩版] — 選擇距離最遠的4名玩家。
  • @a[limit=2,sort=random]‌‌[Java版]@r[c=2]‌‌[基岩版] — 隨機選擇4名玩家。
通過經驗等級選擇目標
[l=L] — 只選擇經驗等級低於L的目標。‌‌[基岩版]
[lm=LM] — 只選擇經驗等級高於LM的目標。‌‌[基岩版]
[level=值或范围] — 只選擇經驗等級為某個值或在某個範圍內的目標。‌‌[Java版]
這將自動過濾非玩家目標。
此選擇器支持範圍選擇。
Java版,從1.13開始,使用參數level而非l、lm。其中,範圍可以是「最小值..」、「..最大值」、「最小值..最大值」的格式(1.13之前用法與基岩版一樣),例如
  • @a[level=10] — 表示10級的玩家。
  • @a[level=10..12] — 表示10級與12級之間的玩家。
  • @a[level=5..] — 表示至少為5級的玩家。
  • @a[level=..15] — 表示不超過15級的玩家
通過遊戲模式選擇目標
[m=M] — 選擇處於指定遊戲模式的玩家。‌‌[基岩版]
[m=!M] — 選擇不處於指定遊戲模式的玩家。‌‌[基岩版]
[gamemode=M] — 選擇處於指定遊戲模式的玩家。‌‌[Java版]
[gamemode=!M] — 選擇不處於指定遊戲模式的玩家。‌‌[Java版]
變量M可以是:
這將自動過濾非玩家目標。
  • @a[gamemode=creative]‌‌[Java版] — 選擇所有創造模式的玩家。
  • @a[gamemode=!survival,gamemode=!adventure]‌‌[Java版] — 選擇所有既不是生存模式又不是冒險模式的玩家。
  • @a[gamemode=survival]‌‌[Java版]@a[m=1]‌‌[基岩版]@a[m=s]‌‌[基岩版] — 選擇所有生存模式的玩家。
  • @a[gamemode=!spectator]‌‌[Java版] — 選擇所有不是旁觀者模式的玩家。

Java版1.13,遊戲模式只支持全稱。在1.13之前,用法與基岩版相同。其中,在1.9之前的版本,遊戲模式只允許使用數字,且不能反選。

通過名稱選擇目標
[name=NAME] — 只選擇名字為NAME的目標。
[name=!NAME] — 只選擇名字不是NAME的目標。
如果NAME中包含空格,則需要用雙引號括起來。NAME不能是JSON文本
通過垂直旋轉選擇目標
[rx=RX] — 僅選擇最大垂直旋轉為RX的目標。‌‌[基岩版]
[rxm=RXM] — 僅選擇最小垂直旋轉為RXM的目標。‌‌[基岩版]
[x_rotation=值或范围] — 僅選擇垂直旋轉為特定的值或者在某個範圍內的目標。‌‌[Java版]
將視角轉到最上方,然後向下旋轉。垂直旋轉值從-90(垂直向上)向上增加,之後增加到0(水平),最後增加到90(豎直向下)(因此垂直旋轉值隨著向下旋轉而增加)。
此選擇器支持範圍選擇。
Java版,從1.13開始,參數名稱從rxrxm改為x_rotation(1.13之前和基岩版相同)。選擇範圍可以是「最小值..」、「..最大值」、「最小值..最大值」的格式,例如‌‌[Java版]
  • @e[x_rotation=10] — 表示x_rotation正好是10的實體。
  • @e[x_rotation=10..12] — 表示x_rotation為10到12(閉區間)的實體。
  • @e[x_rotation=5..] — 表示x_rotation為不小於5的實體。
  • @e[x_rotation=..15] — 表示x_rotation為不大於15的實體。
通過水平旋轉選擇目標
[ry=RY] — 僅選擇最大水平旋轉為RY的目標。‌‌[基岩版]
[rym=RYM] — 僅選擇最小水平旋轉為RYM的目標。‌‌[基岩版]
[y_rotation=值或范围] — 僅選擇水平旋轉為特定的值或者在某個範圍內的目標。‌‌[Java版]
將視角向東旋轉。水平旋轉值從-180/180(面向正北),到-90(面向正東),到0(面向正南),到90(面向正西),再次到-180/180。
Java版,從1.13開始,參數名稱從rxrxm改為y_rotation(1.13之前和基岩版相同)。選擇範圍可以是「最小值..」、「..最大值」、「最小值..最大值」的格式(1.13之前用法與基岩版一樣),例如‌‌[Java版]
  • y_rotation=10表示y_rotation正好是10的目標。
  • y_rotation=10..12表示y_rotation為10到12(閉區間)的目標。
  • y_rotation=5..表示y_rotation為不小於5的目標。
  • y_rotation=..15表示y_rotation為不大於15的目標。
通過實體類型選擇目標
[type=TYPE] — 只選擇特定的實體類型的目標。
[type=!TYPE] — 只選擇屬於特定的實體類型的目標。
TYPE必須遊戲內部用來判定不同種類實體的實體ID或實體標籤(舉例來說,creeper指定苦力怕minecart指定普通礦車tnt指定TNT等等,可以加上命名空間,如果命名空間是預設的minecraft:則可以省略)。實體ID或標籤必須區別大小寫,且無效的實體ID會造成指令執行失敗。你可以分別使用type=player來選擇玩家或type=!player來選擇非玩家實體。
當與@r一起使用時,原本用來選擇玩家的指令也可以被用來選擇其他實體。
  • @e[type=creeper] — 選擇全部的苦力怕。
  • @e[type=!chicken,type=!cow] — 選擇除雞和牛之外的全部實體。
  • @e[type=chicken,type=cow] — 是非法的寫法。
  • @e[type=#skeletons] — 選擇全部的骷髏、凋零骷髏、流髑。
通過實體的數據標籤選擇目標‌‌[Java版]
[nbt=NBT] — 只選擇擁有指定數據標籤的目標。
[nbt=!NBT] — 只選擇沒有指定數據標籤的目標。‌[需要驗證]
NBT必須為遊戲內有效的實體數據標籤,需要加大括號{}。如{CustomName:"\"foo\""}指定名字(CustomName)為foo的實體。無效的數據標籤會導致指令失敗。
比如:
  • @a[nbt={OnGround:1b}]@a[nbt={OnGround:true}] — 選擇站在地上的玩家。
  • @e[nbt={Tags:[a,b]}]@e[tag=a,tag=b]相同,但不推薦使用前者。
  • @e[nbt={Color:0b},type=sheep] — 選擇白色的羊。
通過進度選擇目標‌‌[Java版]
1.13開始,實體選擇器支持advancements參數,取代/advancement testadvancements後接一組用中括號括起來的鍵值對,其中鍵為進度或條件的名稱,值為true或false或表示進度的各條件的鍵值對。
  • @a[advancements={story/form_obsidian=true}] — 選擇已達成進度「冰桶挑戰」(minecraft:story/from_obsidian)的玩家。
  • @a[advancements={story/form_obsidian=false}] — 選擇未達成進度「冰桶挑戰」的玩家。(注意進度的條件是一個規定的字符串(可以是空字符串),它沒有命名空間。)
  • @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}}],因為「隔牆有眼」的唯一條件是in_stronghold
進度的條件的字符串可以在遊戲主文件(\versions\版本名.jar)中的data\minecraft\advancements中的代表各個進度的JSON文件中查閱。

數據標籤[編輯 | 編輯原始碼]

數據標籤是一段NBT文字序列,描述鍵值對組成的數據結構。數據標籤用於Java版的指令中,用於指定玩家、實體和一些方塊的較為複雜的數據。

數據標籤由零個或以上、用逗號分隔的鍵值對組成,且用大括號括住。每個鍵值對包含鍵名和鍵值,用冒號分開。但是,有些鍵值可以繼續包含鍵值對,因此數據標籤可以用來描述層次結構。

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

這些數據標籤所採用的數據結構與Minecraft世界存檔相同。這種數據結構在其他條目中有詳細描述。指令使用的數據標籤中鍵名有嚴格的限定(區分大小寫):

數據結構規範連結
對象 例子
方塊 儲物箱、熔爐、指令方塊、生怪蛋、告示牌等
物品 物品欄中的物品 (包括附魔、自定義名稱等)
物品實體 在地上的物品
生物 苦力怕、牛、村民等
彈射物 弓箭、火球、飛濺藥水等
交通工具 船、礦車等
動態方塊 引燃的TNT、正在掉落的沙、礫石、鐵砧
其他實體 煙火、畫和物品展示框

指定鍵名的鍵值也必須符合數據類型要求。

數據標籤鍵值數據類型
類型 說明

 字節
介於-128和127之間(包含)的整數。

 短整型
介於-32768和32767之間(包含)的整數。

 整型
介於-2147483648和2147483647之間(包含)的整數。

 長整型
介於-9,223,372,036,854,775,808和9,223,372,036,854,775,807之間(包含)的整數。

 單精度浮點型

 雙精度浮點型
Float - 32位單精度浮點數,例:3.1415926

Double - 64位雙精度浮點數,例:3.141592653589793

詳見IEEE二進位浮點數算術標準


 字符串
一串字符,如果內容包含不在 a-z A-Z 0-9 _ .(不包括空格)的字符則需要在整個字符串前後加上雙引號並將內容轉義。(不支持像json那樣\u00a7這樣的轉義。)

轉義方式為,在"\號前加上\

例:"Call me \"Ishmael\""

 列表
值的序列,用逗號分隔並用方括號包含。所有值的數據類型必須統一——數據類型標準由列表的第一個元素決定。
例:[3.2,64,129.5]

檢測的時候僅檢測是否擁有特定物品,不在乎順序及整個列表是否一樣。


 字節數組
介於-128和127(包含)之間的整數序列,用逗號分隔內容並用方括號包含,首個元素前方需要加入類型標識B;
例: [B;1b,2b,3b]

檢測時需要檢測整個數組是否一致,包括順序。


 整型數組
介於-2,147,483,648和2,147,483,647(包含)之間的整數序列,用逗號分隔內容並用方括號包含,首個元素前方需要加入類型標識I;
例: [I;1,2,3]

檢測時需要檢測整個數組是否一致,包括順序。


 長整型數組
介於-9,223,372,036,854,775,808和9,223,372,036,854,775,807(包含)之間的整數序列,用逗號分隔內容並用方括號包含,首個元素前方需要加入類型標識L;
例: [L;1l,2l,3l]

檢測時需要檢測整個數組是否一致,包括順序。


 複合標籤
鍵值對的序列,用逗號分隔並用花括號包含。
例:{X:3,Y:64,Z:129}

每個數據標籤的內容本身就是一個複合標籤。

檢測時僅檢測特定名稱的元素是否一致。


 布爾型
一種數據類型,只有「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對象:


  • 基礎聊天組件對象

    •  text:字符串,存儲在聊天框中直接出現的純文字。(如果是數字或布爾值則可以轉化為字符串,如果是組合對象或者列表則會報錯。)注意像是「@a」和「@p」的選擇器並不會轉譯成玩家名字;必須使用selector代替。使用轉義字符「\n」換行(回車)。

    •  translate:顯示文本的翻譯標識符,用於將文本翻譯至玩家使用的語言。此標識符與assets資料夾或資源包中的標識符一致。翻譯文本只會在text字符串被使用時顯示。如果翻譯標識符無效,則顯示標識符本身,

    •  withtranslate所使用的聊天對象參數列表和字符串參數。
      • 該參數為當前語言翻譯文本中出現的參數賦值,參數依序排列(例如,列表中的第一個元素將會取代翻譯文本中的「%1$s」)。如果翻譯標識符無效,但含有%s或%1$s這樣的內容,則也能夠替換。(對"text"中的%s或%1$s無效。)

    •  score: 一個玩家在一個記分板目標裡的分數。若該玩家沒有被該記分板目標追蹤,則什麼都不顯示。此參數存在時完全忽略texttranslate

      •  name:要被顯示分數的玩家的名字。可使用選擇器(例如@p),以及記分板系統中存在的虛擬玩家名稱。另外,如果名稱為「*」,會顯示讀者自己的分數(例如,/tellraw @a {score:{name:"*",objective:"obj"}}將給每個在線玩家顯示他們自己在「obj」目標裡的分數)。

      •  objective:要顯示分數的記分板目標。

      •  value:可選。如果存在,將以此覆蓋目標原先的分數。

    •  selector:一個包含了一個選擇器(@s、@p、@a、@r或@e)的字符串以及可選的選擇器參數。不像text,此處的選擇器將會被解析為正確的玩家/實體名。如果多於一個玩家/實體符合條件,其將會被以例如'名字1和名字2'或'名字1,名字2,名字3,和名字4'的形式顯示。此參數存在時完全忽略texttranslatescore。在/tellraw指令中使用此標籤時,點擊結果中的玩家名稱會出現私信該玩家的指令建議;按住⇧ Shift點擊玩家名稱會將名稱填入聊天框中;按住⇧ Shift點擊非玩家實體的名稱會將其UUID填入聊天框中。

    •  keybind:顯示用於執行特定操作的按鍵鍵位。例如,key.inventory會向玩家顯示打開物品欄的按鍵,若玩家使用預設設定,則會顯示「E」。

    •  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。字符串形式的"true"和"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地址)、「run_command」(以玩家的身份在聊天框中輸入value值並提交。可以用來執行指令,但是如果玩家沒有所需的權限,指令會失敗)、「change_page」(只能用在完成的書中,如果該value頁存在,翻至該頁)和「suggest_command」(和「run_command」相似,但是文本只會出現在玩家的聊天輸入欄,並不會自動提交。與insertion不同,這會直接取代原先在聊天輸入框中的內容)。「open_file」和「twitch_user_info」用於遊戲自動生成的信息中(如截圖時顯示的信息),不能在指令和告示牌中使用。

      •  value:前述指定的action使用到的URL地址、聊天內容或指令。注意,指令之前一定要加上「/」斜槓。

    •  hoverEvent:當玩家將滑鼠指針懸浮在文字之上時顯示的說明提示。

      •  action:說明提示的類型。有效值為「show_text」(顯示JSON文本)、「show_item」(顯示一個可帶NBT標籤的物品)和「show_entity」(顯示實體的名稱,還可能顯示其類型和UUID)。

      •  value:此標籤的格式取決於action。注意,「show_text」是唯一接受對象作為value值的action;其他action對應的value值都是字符串,所以必須用引號包含。
        • "show_text":可以是字符串,或是與基礎對象格式相同的一個對象。注意,此對象的clickEventhoverEvent在說明提示中不會生效,但是它的格式和extra標籤仍然有效。
        • "show_item":與物品NBT標籤格式相同的的字符串。包含「id」標籤,和可選的「Damage」標籤和「tag」標籤(和/give指令所使用的「dataTag」標籤中的組合相同)。
        • "show_entity":描述一個組合的字符串,包含字符串值「type」(例如「Zombie」)、「name」和「id」(要求為實體UUID,但接受任意字符串)。

由於extra標籤的存在,以上格式可遞歸地嵌套成非常複雜與多功能的字符串。然而,JSON文本不必弄得如此複雜:幾乎所有的屬性都可選或會被忽略。

為了確保有效,每一個對象至少應該包含以下至少一個元素:texttranslatescoreselector(其餘的元素都是可選的)。為使用方便,整個對象可以只用一個字符串表示。此時,將這個字符串賦作text的值即可。例如,"This is raw text"{"text":"This is raw text"}是等價的。這種寫法在任何需要使用JSON文本的地方都是有效的(包括/tellraw裡面所用到的<raw json message>參數,extra列表中的元素,以及「show_text」hover_event中的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指令生成器(可選中文)
鍵位名稱一覽表
對象生成器

方塊、物品、實體等ID[編輯 | 編輯原始碼]

許多指令要求指定某種方塊、物品、實體、藥水效果、附魔、boss欄等的ID。在下文的指令語法中,這些參數會被標註為<方块><物品>或類似的表述,在舉例中會以類似minecraft:stone的形式出現。這些ID都具有命名空間,並且所有源於Minecraft目錄下的內容都具有命名空間minecraft:,生物使用其他的命名空間。命名空間為minecraft:的ID可以省略前綴。

指令列表及其概述[編輯 | 編輯原始碼]

下表列出了所有可用指令。點擊表頭可以排序。點擊每一列第一格中的連結可以查看指令的具體用法。

指令概述
指令 描述 BE EDU JE OP等級 僅限MP



/? /help的替代指令,提供指令使用幫助。 0
/ability 賦予或剝奪玩家的能力。 2
/achievement 添加或移除玩家的成就。 已移除 2
/advancement 添加、移除或查詢玩家的進度。 2
/agent 創建一個Agent。 僅WebSocket執行 僅WebSocket執行 2
/ban 將玩家加入封禁列表。 3 MP
/ban-ip 將IP位址加入封禁列表。 3 MP
/banlist 顯示封禁列表。 3 MP
/blockdata 更改方塊的數據標籤。 已移除 2
/bossbar 添加/查詢/設定/移除一個Boss欄或列出所有已創建的Boss欄。 2
/broadcast 向整個伺服器廣播消息。 已移除 2
/clear 從玩家物品欄中刪除物品。 2
/clone 將特定區域的方塊複製到另一處。 2
/closewebsocket 斷開已連接的WebSocket伺服器。 僅WebSocket執行 僅WebSocket執行 2
/connect /wsserver的替代指令,連接至WebSocket伺服器。
/data 允許玩家獲取、合併或是移除實體或方塊的數據標籤。 2


/datapack 控制加載的資料包。 3
/debug 開始或結束除錯會話。 3
/defaultgamemode 更改預設的遊戲模式 2
/deop 撤銷玩家的管理員權限。 3 MP
/difficulty 設定難易度等級。 2
/effect 添加或移除狀態效果 2

/enchant 附魔玩家的物品。 2
/entitydata 更改實體的數據標籤。 已移除 2
/execute 執行另一指令。 2
/experience 給予玩家經驗 2
/fill 將某個區域填滿特定方塊。 2
/forceload 強制不斷加載區塊。 2
/function 運行一個函數 2
/gamemode 更改玩家的遊戲模式 2
/gamerule 更改或查詢遊戲規則值。 2
/give 給予玩家物品。 2
/help 提供指令使用幫助。 0
/home 將玩家傳送至其出生點 已移除 0
/kick 將玩家踢出伺服器。 3 MP
/kill 殺死實體(玩家、生物、物品等)。 2

/list 列出伺服器中的玩家。 0
/listd 以JSON形式列出伺服器中的玩家。 僅限WebSocket執行 僅限WebSocket執行 2
/locate 顯示給定結構的最近坐標。 2
/loot 從一個物品欄中掉落物品到地面上。 即將到來 2



/me 顯示一條關於自己的信息。 0
/mixer Mixer交互性控制。 2
/mobevent 控制或查詢允許運行的生物事件。 即將到來 2
/msg /tell的替代指令,向另一玩家發送私信。 0
/op 授予玩家管理員權限。 3 MP
/pardon 從封禁列表中移除項目。 3 MP
/particle 創建粒子。 2
/playsound 播放音效。 2
/publish 向區域網開放單人遊戲世界。 4 僅限SP
/recipe 解鎖或鎖定合成配方。 2
/reload 從硬碟中重新加載戰利品表、進度和函數。 4
/replaceitem 替換物品欄中的物品。 2


/resupply 立即補給村莊新經濟供需體系。 即將到來 2
/save 準備備份,查詢其狀態或恢復。 MP
/save-all 將伺服器保存到硬碟。 4 MP
/save-off 關閉伺服器自動保存。 4 MP
/save-on 開啟伺服器自動保存。 4 MP
/say 向多個玩家發送消息。 1
/schedule 安排函數或標籤在特定的遊戲刻後運行。 即將到來 2
/scoreboard 管理記分板目標、玩家、隊伍與標籤。 2

/seed 顯示世界種子 2
/setblock 將方塊替換為其他方塊。 2
/setidletimeout 設定無操作玩家被踢出的延時。 3 MP
/setmaxplayers 設定可加入遊戲的玩家數量上限。
/setspawn 將當前位置設定為新玩家的預設出生點。 已移除 2
/setworldspawn 設定世界出生點 2
/solid 相互切換放置石頭狀態和放置基岩狀態。 已移除 2
/spawnpoint 為玩家設定出生點。 2
/spreadplayers 將實體傳送到隨機位置。 2

/stats 使用其他指令的結果控制記分項的更新。 已移除 2


/stop 關閉伺服器。 4 MP
/stopsound 停止音效。 2
/summon 生成實體。 2
/tag 修改玩家或實體的標籤。 2

/team 修改隊伍。 2

/teleport /tp的替代指令,傳送實體。 2

/teammsg 指定要發送給隊伍的消息。 即將到來 0
/tell 向另一玩家發送私信。
/tellraw 向玩家顯示JSON消息。 2
/testfor 統計符合給定條件的實體。 2

/testforblock 測定某方塊是否在某位置。 2
/testforblocks 測定兩個區域中的方塊是否相同。 2
/tickingarea 添加、刪除或列出常加載區域。
/time 更改或查詢遊戲中的世界時間。 2
/title 管理螢幕上的標題。 2
/toggledownfall 切換天氣。 2
/tp 傳送實體。 2

/transferserver 將玩家轉送至另一伺服器。
/trigger 設定一個觸發器。
/unban 解除對一個玩家的封禁。 已移除 3 MP
/w /tell的替代指令,向另一玩家發送私信。 0
/weather 設定天氣。 2
/whitelist 管理伺服器白名單。 3 MP
/worldborder 管理世界邊界 2
/wsserver 連接至WebSocket伺服器。
/xp 增加或減少經驗 2

指令指引[編輯 | 編輯原始碼]

另見:指令術語列表
格式
顯示
普通文本 直接輸入該文本,應完全一致。
斜體 以合適的值替換斜體部分
<尖括號> 這是必需參數
[方括號] 這是可選參數
x|y

在多個選項當中選擇一個

候選字符用豎線隔開:|。

省略號 … 此參數可能是含有空格的多個單詞。
x:整數 此參數需要輸入數字
y:字符串 此參數可輸入多個單詞,且允許包含空格。
成功條件
只有情況符合指令的成功條件時遊戲才會認為指令執行成功。成功與否本身會產生許多影響,例如接受指令方塊紅石信號的紅石比較器的輸出會有所變化。請注意,並非所有的「成功」的指令都會使世界有所改變,「失敗」的指令也不意味著指令什麼也沒有做。
限制條件
描述該指令的執行者與執行條件要求。
  • 無:此指令可以由任何玩家在任何世界執行。下列指令沒有限制條件:/help/me/tell/trigger
  • 是管理員:此指令只能由管理員或在啟用作弊的單人遊戲執行。在多人聯機伺服器中,這類指令的結果會向所有在線管理員通報。
所有多人聯機限定的指令都不允許參數中有目標選擇器。
除了/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)
1.0.16 增加/ban/ban-ip/banlist/deop/home/kick/op/pardon/pardon-ip/say/stop指令。
1.0.16_01 增加/save-all/save-on/save-off/tp指令。
1.0.16_02 增加/list/tell指令。
1.2.5 移除/home指令。
1.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指令。
17w45b 增加/data指令。
移除/entitydata指令。
17w46a 增加/datapack指令。
增加選項以切換指令自動補全的模式。
指令介面的UI樣式標準更新,並重新在多人遊戲中工作。
17w47a 移除/blockdata指令。
粒子名變更。
17w48a 調整了指令補全介面的UI。
17w49b 移除遊戲規則gameLoopFunction,使用函數標籤#minecraft:tick取代。
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許可證開源open-sourced(曾在資料庫網站提供了原始碼,未指定許可證)。
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.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
1.9 beta 1.9.0.0 增加/tellraw
增加showdeathmessages遊戲規則。
增加immediaterespawn遊戲規則
beta 1.9.0.2 現在/kill可以殺死創造模式的玩家了。
加入了/titleraw
1.11 beta 1.11.0.1 增加/resupply
beta 1.11.0.3 增加/mobevent

錯誤[編輯 | 編輯原始碼]

關於「指令」的錯誤由錯誤追蹤器維護,請在那裡使用英文匯報錯誤。

另見[編輯 | 編輯原始碼]