指令
遊戲
命令(Command)是通過輸入特定文本字元串而激活的高級功能。
伺服器遊戲中,獲得了管理員(Operator)許可權的玩家可以使用絕大多數指令,而無許可權的玩家可以使用的指令通常很少
Java版在1.1版加入了指令,攜帶版(基岩版)在0.16版加入了指令。
基徠岩版與Java版的指令有所不同,這裡不過多說明。
請注意,本條目所述皆為官方原版遊戲中的指令。列表外的指令均非原版指令。
一般的客戶端中,命令由Minecraft的聊天視窗中輸入,藉由按下T鍵(預設) 或/鍵叫出聊天視窗。使用/鍵也會同時輸入命令必備的前綴斜線(/),因此這是個實用的快捷鍵。在輸入命令時按下Tab ↹鍵會循環可用的命令或參數。
命令也可以在多人伺服器的控制台輸入,但是不需要加入前綴的/。命令方塊中的命令可以加入前綴/,但是非必要。命令方塊中的命令可能還會要求可選擇的參數,通常是玩家的名字。
大多數命令只能在以下狀況有效:
• 在單人模式中,創造世界時允許作弊 (藉由"更多選項"按鈕)
• 在Minecraft多人聯機伺服器遊戲中,由管理員或[[命令方塊]使用
• 在其他的多人模式遊戲中,由開啟區域網並允許作弊的玩家,或主持多人聯機伺服器的玩家使用
而有些命令在不允許作弊的生存模式中仍然可用
注意:在單人遊戲中,如果不允許作弊,仍可以藉由公開目前的遊戲至區域網 (Esc→ "公開至區域網" ,點選 "允許作弊" ,接著 "公開至區域網" ) 而暫時可以作弊。你不必真的在區域網上或讓別人加入。這並不是永久的,但它可以允許命令的使用直到你離開該世界,你使用命令所改變的東西都會被存檔 (items spawned 等命令)。你可以在再次開啟遊戲時重複以上步驟。注意當公開至區域網時遊戲便無法暫停,所以在打開遊戲目錄時最好找個安全的地方。你可以重新載入世界來取消公開至區域網。
如果在命令方塊中執行測試類命令(例如/testfor),命令方塊會將測試結果以紅石信號形式輸出到相連的紅石比較器中。
很多命令可以使用波浪號(~)來指定相對座標。在波浪號後方的數字是個偏移量而不是一個座標。偏移符號可以指定要往軸的正或負方向移動。一個單一的波浪號~是~0的簡寫。
舉例來說,tp 0 64 0將會移動使用者到座標(0,64,0),而tp ~3 ~ ~-3會使使用者往 x 軸移動3格(也就是東方),保持原本高度,並在 z 軸移動-3格(也就是北方)。
通常絕對座標和相對座標可以混合使用。舉例來說,/tp ~ 64 ~會保持使用者的 x 軸和 z 軸座標,但是傳送使用者到絕對高度64。
偏移量的基準點由命令本身決定。舉例來說,/tp的偏移是從起始位置來算。其他常見的偏移量包括命令的執行位置或者從另一個坐標由該命令指定。
註:本段文字中,variable 翻譯為變數,argument 翻譯為參數,而value 代表數值。有些指令因為易讀性的關係,並不會把它翻譯出來。
大多數玩家被指定為參數的命令,可以藉由滿足某些條件來選擇一個或多個玩家,而不是用名字來指定玩家。要用條件來選擇玩家,先選擇一個目標選擇器變數,然後隨意地,選擇一個或多個目標選擇器參數以修改欲滿足的條件。
舉例來說,要改變紅色組別所有玩家的遊戲模式為創造模式,而不藉由個別玩家名字指定他們:
/gamemode creative @a[team=Red]
目標選擇器變數
摘要 | |
---|---|
變數 | 功能 |
@p | 距離最近的玩家 |
@r | 隨機玩家 |
@a | 所有玩家 |
@e | 所有實體 |
目標選擇器變數可以指定選擇該目標大類。共有四種變數:
• @p
• 選擇最近的玩家。如果有多個最近的玩家,他們與自己距離完全相同,那麼會選擇其中最常進入伺服器的玩家。
• 目標選擇器參數可以用來減少會被選擇到的玩家群組。舉例來說,@p[team=Red]會選擇在紅色組別中距離最近的玩家,即使有其他玩家更靠近自己。
• c目標選擇器參數可以用來增加被選擇的玩家的數量。(舉例來說,@p[c=3]會選擇最近的三名玩家)。若是負值,c會反轉指定的目標(舉例來說,@p[c=-1]會選擇最遠的玩家)。
• @r
• 選擇隨機玩家(或使用type目標選擇器參數來包含實體)。
• 目標選擇器參數可以用來減少會被隨機選擇到的玩家群組。舉例來說,@r[team=Red]會選擇在紅色組別中的隨機玩家。
• c目標選擇器參數可以用來增加被隨機選擇的玩家的數量。舉例來說,@r[c=3]會選擇隨機三名玩家。
• 如果沒有使用type參數,@r只會選擇隨機玩家。type參數可以用來選擇非玩家的實體 (舉例來說,@r[type=Zombie]會隨機選擇殭屍,@r[type=!Player]會隨機選擇非玩家實體,@r[type=!Zombie]會選擇非殭屍實體...等)。
• @a
• 選擇所有玩家。
• 目標選擇器參數可以用來減少會被選擇到的玩家群組。舉例來說,@a[team=Red]只會選擇在紅色組別中的玩家。
• @e
• 選擇所有實體 (包含玩家)。
• 目標選擇器參數可以用來減少會被選擇到的實體群組。舉例來說,@e[type=Cow]只會選擇牛。
目標選擇器參數
摘要 | |
---|---|
參數 | 選擇標準 |
x,y,z | 座標 |
r,rm | 半徑 (最大,最小) |
m | 遊戲模式 |
c | 數量 |
l,lm | 經驗等級 (最大,最小) |
score_name | 最高分數 |
score_name_min | 最低分數 |
team | 隊伍名稱 |
name | 玩家名稱 |
dx,dy,dz | 體積尺寸 |
rx,rxm | 垂直旋轉 (最大,最小) |
ry,rym | 水平旋轉 (最大,最小) |
type | 實體種類 |
在使用目標選擇器之後,你可以隨意地使用參數來修改所要選擇的群組。當使用@a或@e時,參數縮小所選的數量,從所有名單到特定的少數。當使用@p或@r時,參數縮小所選的數量,從所有名單變成更小的群組來選擇最近或隨機的玩家。
在目標選擇器變數之後增加參數 - 數值對做為以逗號分隔的列表,包含在中括弧中:
• @[=,=,…]
括弧、等號和逗號旁不能有空白鍵,只有逗號可以用來分隔參數 - 數值對。
參數會區分大小寫,不支持的參數會直接被忽略掉。舉例來說,kill @e[type=Creeper,r=20]會殺死20方圓格以內的所有爬行者,但是kill @e[Type=Creeper,r=20]('type' 變成大寫) 會殺死20方圓格以內的所有實體 (包括玩家) ,因為參數不再有選擇爬行者的限制。
如果最前面的四個參數值被簡化為只有數值而沒有參數,他們會被假定為,按照順序的x,y,z, 和r。因此,下列兩個指令是相同的:
• /gamemode creative @a[x=10,y=20,z=30,r=4]
• /gamemode creative @a[10,20,30,4]
同一個參數不能多次使用,否則只執行最後的選擇,比如@e[type=Creeper,type=Zombie]只選定殭屍。
• 通過坐標選擇目標
• [x=X,y=Y,z=Z]— 選擇基於此準確位置一定距離的目標。結合選擇半徑以選擇在特定位置的唯一目標。
• 坐標必須準確的符號 -波浪號不可以用於此參數座標選擇器。
• 通過半徑選擇目標
• [r=R]— 只選擇以命令的執行處為中心,半徑小於R的區塊里的目標。
• [rm=RM]— 只選擇以命令的執行處為中心,半徑大於RM的區塊里的目標。
• 如果座標(參見上一段)和半徑都已被定義,命令會以定義的座標為中心執行命令。如果使用極遠的座標為中心以及極大的半徑,如此可以模擬出一個近於線性的邊緣,用以指定目標。
• 通過遊戲模式選擇目標
• [m=M]— 只選擇目標與指定的遊戲模式。M允許值為:
• -1: 所有的遊戲模式
• 0(s): 生存模式
• 1(c): 創造模式
• 2(a): 冒險模式
• 3(sp): 旁觀模式【PC獨有】
• 通過數量選擇目標
• [c=C]— 只選擇指定數量的目標。通常按與命令執行者的距離排序。
• 當使用@p或@r兩種變數時,此參數被預設為1,因此更大的數值會增加回傳的最近或隨機的目標。當使用@a或@e兩種變數時,此參數只會回傳最近的目標。
• 如果有多名距離最近的玩家,距離完全相同,那麼玩家會藉由玩家最近一次加入伺服器的時間來選擇。舉例來說,如果距離完全相同,@a[c=1]會選擇進入伺服器時間最久的玩家而@e[type=Creeper,c=3]會選擇生成最久的三隻爬行者。
• 當輸入的值為負值時,目標的順序會被反轉。舉例來說,@p[c=-3]會回傳三個最遠的目標,而且,如果所有目標距離都一樣遠,@e[c=-3]會選擇三個剛生成的目標。
• 通過經驗等級選擇目標
• [l=L]— 只選擇不超過L經驗等級的目標。
• [lm=LM]– 只選擇不低於LM經驗等級的目標。
• 通過分數選擇目標
• [score_name=SCORE]— 只選擇目標計分板name的分數的沒有超過SCORE的目標。
• [score_name_min=SCOREMIN]— 只選擇目標計分板name的分數的不低於SCOREMIN的目標。
• 例如,@a[score_points_min=30,score_points=39]將選擇目標計分板points的分數的不低於 30 ,且不高於 39 的目標。
• 另見:記分板#對象
• 通過隊伍選擇目標
• [team=TEAM]— 只選擇隊伍TEAM的目標。
• [team=!TEAM]— 只選擇不是隊伍TEAM的目標。
• [team=]— 只選擇不在任何隊伍的目標。
• 另見:記分板#隊伍
• 通過名字選擇目標
• [name=NAME]— 只選擇名字為NAME的目標。
• [name=!NAME]— 只選擇名字不是NAME的目標。
• 通過體積選擇目標
• [dx=DX,dy=DY,dz=DZ]
• 只選擇位於一定體積內部的目標,體積定義為從執行命令的地方開始,向正 "x" 方向延伸DX格,向正 "y" 方向延伸DY格,並向正 "z" 方向延伸DZ格。如果最初的座標已經使用x、y和z參數定義,則它會取代命令的執行位置,成為體積選擇參數的計算位置。 (dx、dy和dz仍然用來指定與座標的距離;它們不是指定一個新的座標)。
• 玩家可以結合通過半徑和通過體積選擇目標,此命令將會選擇重疊的區塊。 (從西北下角算起在一定的半徑以內,且不超過定義的體積)。
• 通過垂直旋轉選擇目標
• [rx=RX]— 只選擇最大不超過垂直旋轉值RX的唯一目標。
• [rxm=RXM]— 只選擇最小不低於垂直旋轉值RXM的唯一目標。
• 垂直旋轉值從 -90.0 面對正上方到 90.0 面對正下方 (因此垂直旋轉值增加時會旋轉向下)。
• 通過水平旋轉選擇目標
• [ry=RY]— 只選擇與最大不超過水平旋轉值RY的唯一目標。
• [rym=RYM]— 只選擇與最小不低於水平旋轉值RYM的唯一目標。
• 水平旋轉值從 -180.0 (面對正北方),到 -90.0 (面對正東方),到 0.0 (面對正南方),到179.9 (正北方偏西) ,旋轉回 -180.0 (因此水平旋轉值增加時會向右旋轉,或者從上方看來是順時針方向旋轉)。
• 通過類型選擇目標
• [type=TYPE]— 只選擇特定的實體類型的目標。
• [type=!TYPE]— 只選擇不是特定的實體類型的目標。
• TYPE必須是個用來內部判定不同種類實體的實體ID(舉例來說,Creeper指定爬行者,MinecartRideable指定一般的礦車,PrimedTnt指定TNT等等)。實體ID 必須區別大小寫,且無效的實體ID 會造成命令失敗。
• 當與@r一起使用時,原本用來選擇玩家的指令也可以被用來選擇其它實體。
數據標籤是一段文字序列,使用屬性/值對描述資料結構。使用在命令的數據標籤指定了較複雜的玩家、實體和一些方塊的數據。
數據標籤由零個以上、用逗號分隔的的屬性/值對組成,且用大括弧界定。每個屬性/值對包含屬性名稱和屬性值,用冒號分開。但是,有些屬性值可能本身就包含了屬性/值對,因此數據標籤可以用來描述層次結構。
• 例:{name1:123,name2:"sometext",name3:{subname1:456,subname2:789}}
這些數據標籤所描述的資料結構和Minecraft世界存檔中的資料結構是一樣的。這些資料結構在另一篇有詳細描述,而命令會要求數據標籤要使用一樣的屬性名字 (區分大小寫):
定義的資料結構也要求正確種類的屬性值.
指令[遊戲[Minecraft]中的運算機制]
有些命令可能會要求那個數字的類型,以在數字後面加上一個字母來表示。舉例來說,3i表示整數,3.2f表示浮點數...等等
如果用/testfor、/testforblock、/clear等指令來尋找相符的數據標籤,它們只會檢查那些實體/方塊/物品是否存在此標籤。這表示當找到符合的實體/方塊/物品時,它們可能同時還有其他標籤。這在 lists (表單) 和 arrays (序列) 也適用:表單的順序未被確認,只要每個要求的元素都在表單裡面,那麼即使有額外的元素存在,它也會符合條件。
數據結構的形式是JSON的一種形式lenient。
/tellraw和/title指令使用特殊的lenientJSON格式來表示更複雜的文字。和上述NBT 格式表示法相似,Strings (字串)、Objects (Compounds)(物件,或複合體)、Lists (表單) 被用來表示原始文本的不同性質。
JSON 文本的形式是支援以下 (大多是可選擇的) 元素的 JSON 物件:
•
基礎聊天組成物件
•
name:要被顯示分數的玩家的名字。選擇器(例如@p)可被使用,除了被記分板系統創造的"假"玩家名。另外,如果名稱為"*",它將會顯示玩家自己的分數(例如,/tellraw @a {score:{name:"*",objective:"obj"}}將給每個在線玩家顯示他們自己在"obj" objective里的分數)。注意非玩家實體不會顯示分數(例如@e[type=Cow]),即使該實體已在objective里被給予了一個分數。
•
objective: The internal name of the objective to display the player's score in.
•
value:可選。如果存在,此值被使用作 regardless of what the score would have been.
• The arguments are text corresponding to the arguments used by the translation string 在當前的語言中,依序(例如, the first list element corresponds to "%1$s" in a translation string)。
• "show_text":可以是純字串,或是和這個基礎物體的格式一樣的物體。注意,clickEvent和hoverEvent在提示工具中不會有效果,但是它的格式和extra標籤仍然有作用。
• "show_item":像 NBT 標籤的格式化的字串。包含 "id" 標籤,和可選的 "Damage" 標籤和 "tag" 標籤 (和give指令所用的數據值和數據標籤一樣)。
• "show_achievement":這個成就或遊戲數據的名字。它使用和成就、遊戲數據記分板對象判據以及/achievement命令一樣的格式。
• "show_entity":一個像是複合體,包含字元串值 "type" (例如 "Zombie")、 "name" 和 "id" (應該要是實體 UUID,但實際上可以是任何字串),的格式化字串。
•
action:提示所顯示的種類。有效值為 "show_text" (顯示純 JSON 文本), "show_item" (顯示可能帶有 NBT 標籤的物品的提示工具), "show_achievement" (顯示用來描述成就或數據的標準格式。一般的成就是綠色的,最終的成就是深紫色的,數據名稱是灰色的。除此之外,還有成就的描述),和 "show_entity" (顯示實體的名字,或可能是它的種類、和它的通用唯一識別碼)。
•
value:這個標籤的格式取決於 action (動作)。注意, "show_text" 是唯一支援物體當作值的動作;其他動作的值都是字串,所以必須用引號包含。
•
action:當點擊時所引發的動作。有效值為 "open_url" (在玩家的預設瀏覽器中打開值為value的 URL 位址),"run_command" (在聊天欄輸入value,就好像是玩家自己輸入的一樣。這可以用來執行命令,但是如果玩家沒有所需的許可權,命令會失敗。), "change_page" (只能用在成書,翻至第value頁如果該頁存在),和 "suggest_command" (和 "run_command" 相似,但是命令文字只會出現在玩家的聊天輸入欄,並不會自動執行。不像insertion,這會直接取代原先就存在於聊天輸入欄中的內容)。
•
value:特定的action會使用到的 URL 位址、聊天內容或命令。注意,命令之前一定要加上 "/" 斜線。
•
為使用和基礎物件相同格式的表單元素 (遞迴的)。注意所有物件的性質都會被子物件所繼承,除了text、extra、translate、with和score。這表示子物件會保留和這個物件一樣的格式和情況,除非子物件明確的覆蓋原物件。
•
text:String (字串) 代表在聊天中直接出現的純文字。注意像是"@a" 和 "@p" 的選擇器並不會轉譯成玩家名字;必須使用selector代替。"\n" 是新的一行 (enter 鍵)。
•
extra:外加物件的表單,使用和基礎物件相同的格式。
•
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。
•
underlined:布爾 (true/false) - 是否將文字渲染為加底線,預設為 false。
•
italic:布爾 (true/false) - 是否將文字渲染為斜體,預設為 false。
•
strikethrough:布爾 (true/false) - 是否將文字渲染為加上刪除線,預設為 false。
•
obfuscated:布爾 (true/false) - 是否將文字渲染為模煳處理,預設為 false。
•
insertion:當玩家按著 shift 並點擊時,這個字串就會插入至聊天文字欄。它不會覆蓋原有的正在輸入的文字。
•
clickEvent:當玩家在文字上點擊時發生動作。
•
hoverEvent:允許當玩家滑鼠在文字之上時顯示提示。
•
translate:使用玩家選擇的語言來顯示的翻譯識別器。此識別器和 assets 檔案夾或資源包里的 lang files 可以找到的識別器是一樣的。翻譯過的文字只會在text字串不被使用時顯示。
•
with:translate所使用的聊天組件參數列表和/或字串參數。
•
score: A compound for displaying 一個玩家在一個objective里的分數。 Displays nothing 若該玩家 is not tracked in the given objective. 完全忽視可能存在的text或translate。
•
selector:一串包含了一個選擇器(@p,@a,@r,或@e)的字元串以及,可選的,選擇器參數。不像text,選擇器將會被譯解為正確的玩家/實體名。如果多於一個玩家/實體被選擇器發現了,其將會被以例如'名字1和名字2'或'名字1,名字2,名字3,和名字4'的形式顯示。完全忽視可能存在的text,translate,或score。
這些命令可由聯入伺服器的任何玩家在聊天輸入框里直接輸入。
指令[遊戲[Minecraft]中的運算機制]
這些命令只有管理員(Operator)通過伺服器或客戶端使用。客戶端使用時需要加“/”前綴。例如輸入的應該是“/help”而非只是“help”。
在單人生存模式中,開啟作弊功能且對區域網開放單人世界的服主也可以使用下列命令。
注意:在多人模式下,普通玩家通常看不見OP指令的輸入,但是對於其他的在線OP卻是可見的。
This template provides a uniform design for the infobox on thecommandspage.
指令[遊戲[Minecraft]中的運算機制]
列出了所有可用命令,點擊第一列的命令了解該命令的。
格式
成功條件
一條命令的成功條件必須被滿足來使遊戲認為命令"成功"。這被用於決定各種各樣的事件,比如反饋自輸入了一條命令的命令方塊的一個紅石比較器的輸出。注意不是所有"成功"命令都實際上完成了些什麼,而不是所有"失敗"命令都沒能做些有用的事。
限制
描述了能使用命令的人或情況的限制。
無:命令能被任何玩家在任何世界中使用。下列命令沒有限制:/help,/me,/tell,和/trigger。
管理員:命令只能被一個管理員或在開啟作弊的單人模式下使用。在多人伺服器中,這些命令的結果會被播送至其他在線管理員。
多人:命令僅在多人伺服器上可用。下列命令被限制僅用於多人伺服器:/ban,/ban-ip,/banlist,/deop,/kick,/list,/op,/pardon,/pardon-ip,/save-all,/save-off,/save-on,/setidletimeout,/stop,/whitelist。
多人命令的參數不能有目標選擇器,且除了/list,多人命令不能在命令方塊中使用。大多數命令能用於從未登入過伺服器的玩家,甚至是沒有在Minecraft註冊(或者不能註冊)賬號名字的玩家。
• 非命令方塊:命令不能被命令方塊執行。
achievement
限制條件 | 僅限伺服器管理員 |
第一次發布 | 1.7.2(13w36a) |
給予一位玩家一項成就或提高統計數據。
• 格式
• achievement [玩家]
• 參數
• stat_name
• achievement.achievement_name,achievement_name是合法的成就標識符。
• stat.statistic_name,statistic_name是合法的統計標識符。
• *代表所有的成就。
• 必須是以下中的:
• 玩家(可選)
• 必須為一個玩家名或目標選擇器。若未指定,默認為命令執行者。在命令方塊中為必需項。
• 結果
• 若參數指定不正確則失敗, 或者玩家中的玩家不在線也會失敗。
• 若成功,給予或移除玩家的特定成就(包括所有的前提成就)或是給玩家特定的統計數據增加/減少1。
• 例子
• 給予你自己"Overkill"成就:achievement give achievement.overkill
• 給予Alice"Taking Inventory"成就:achievement give achievement.openInventory Alice
• 要給最近的玩家的"Mob Kills"增加1:achievement give stat.mobKills @p
• 清除所有玩家的所有成就:achievement take * @a
• 另見
• 修改玩家的命令:
• /effect— 給予玩家一個狀態效果
• /spawnpoint— 設定玩家的生成位置
• /xp— 更改玩家的經驗值或等級
這些命令管理著伺服器的封禁列表。封禁列表包含的是不允許連接伺服器的玩家或IP地址。封禁會在適當的時候取代任何白名單。
• 另見:/whitelist
ban[編輯|編輯源代碼]
ban
限制條件 | 僅限多人遊戲 僅限伺服器管理員 不能在命令方塊上使用 |
第一次發布 | Alpha 1.0.16 |
將玩家列入封禁名單。
• 格式
• ban <名字> [原因 …]
• 參數
• 名字
• 被封禁的玩家名字。不需要玩家在線,甚至不需要真的存在這個玩家。
• 原因(可選)
• 隨著封禁顯示的文字,呈獻給其他管理員並記入伺服器日誌。
• 結果
• 總是成功。玩家的名字將列入伺服器的封禁名單,阻止任何使用這個名字的玩家連接伺服器。
ban-ip[編輯|編輯源代碼]
ban-ip
限制條件 | 僅限多人遊戲 僅限伺服器管理員 不能在命令方塊上使用 |
第一次發布 | Alpha 1.0.16 |
將IP地址加入封禁列表
• 格式
• ban-ip [原因 …]
• 參數
• address|name
• 必須為一個玩家名或一個IP地址。
• 原因(可選)
• 隨著封禁顯示的文字,呈獻給其他管理員並記入伺服器日誌。
• 結果
• 若address|name的IP無效或指定玩家不在線則失敗。
• 若成功, IP地址(在線玩家的,或是指定的)將加入伺服器的封禁列表,阻止任何來自這個IP的玩家連接伺服器。
banlist[編輯|編輯源代碼]
banlist
限制條件 | 僅限多人遊戲 僅限伺服器管理員 不能在命令方塊上使用 |
第一次發布 | Alpha 1.0.16 |
顯示封禁列表。
• 格式
• banlist ips
• banlist players
• 結果
• 總是成功。顯示被封禁的IP與被封禁的玩家。
blockdata
限制條件 | 僅限伺服器管理員 |
第一次發布 | 1.8(14w02a) |
徠修改方塊的數據標籤。
• 格式
• blockdata
• 參數
• x y z
• 指定要修改的方塊的坐標。可以使用波浪號代表與命令執行處的相對坐標。
• dataTag
• 指定方塊要被加入或覆蓋的數據標籤。必須是NBT格式組(例如,{CustomName:Fred})。
• 結果
• 若參數指定不正確則失敗。
• 若成功, 修改目標方塊的數據標籤。
• 例子
• 將位於(0,64,0)的信標的初始效果改為急迫:
• blockdata 0 64 0 {Primary:3}
• 另見
• 實體格式— 所有方塊的數據標籤
• /entitydata— 改變實體的數據標籤
• /replaceitem— 替換物品到方塊的物品欄
• /setblock– 在一個位置放置一個新方塊
• /stats— 設置方塊的CommandStats
tellraw
限制條件 | 僅限伺服器管理員 |
第一次發布 | 1.7.2(13w37a) |
玩家發送一條Json格式的消息。
• 格式
• tellraw <玩家>
• 參數
• 玩家
• 指定發送該消息的玩家。必須是一個玩家的名字或目標選擇器。
• 原始Json文本
• 指定發送的消息。必須是有效的原始JSON文本。(例如,{text:"Hi there!",bold:true})
• 結果
• 如果參數未被正確地指定,或IpPraveRever無法評估一個或多個在線玩家,則失敗。
• 在成功時,目標玩家在聊天中接收JSON消息。
也見
• /say—向所有玩家發送簡單的文本消息
• /tell—向特定的玩家發送簡單的文本消息
testfor
限制條件 | 僅限伺服器管理員 |
第一次發布 | 1.5(13w03a) |
檢測並統計符合指定條件的實體。
• 格式
• testfor <玩家> [數據標籤]
• 參數
• 玩家
• 指定計數的目標。必須是一個玩家名稱或一個目標選擇器(@e除了玩家之外,其他實體目標也是可以的).
• 數據標籤(可選)
• 指定實體必須匹配成功的數據標記。必須是一個複合的NBT標籤(例如{XpLevel:3})。
• 結果
• 如果沒有正確地指定參數,或者指定實體不存在(指定的玩家須在線)則失敗。
成功,產生一個輸出強度等於匹配目標的玩家的數量的信號,這可以通過朝外的靠著命令方塊的紅石比較器測量。
• 例子
• 探測Alice是否在線:testfor Alice
• 探測在(0,64,0)半徑為3有幾個玩家testfor @a[0,64,0,3,m=0]
• 探測有幾個玩家在飛testfor @a {abilities:{flying:1b}}
• 探測在(0,64,0)半徑為20有幾個殭屍:testfor @e[0,64,0,20,type=Zombie]
testforblock
限制條件 | 僅限伺服器管理員 |
第一次發布 | 1.7.2(13w37a) |
探測某個方塊是否在特定位置。
格式
• testforblock [dataValue] [dataTag]
• 參數
• x y z ——指定要測試的塊的位置。xandz必須介於-30000000-30000000(包含,沒有逗號)之間,並且ymust必須在0-255(包含)之間。可以使用Noto指定相對於命令執行的位置。
•
• TileName——指定要測試的塊。必須是一個有效的塊ID(例如,MimeCrave:Stand)。
• dataValue(optional)——指定塊數據測試。DATavaLuMuTube在1到15(包含)之間。如果未指定,或IF-1,DATAVAULUMUMETCH任何塊數據值。
• dataTag(optional)——指定要測試的塊數據標記。必須是複合NBT標籤(例如,{NooNosi:弗萊德})。如果未指定,則數據匹配任何塊數據標籤。
結果
• 如果參數沒有正確指定,如果指定位置的塊與指定的塊id或數據不匹配,或者如果指定的數據標籤的值與塊數據標籤中定義的值不同,則失敗(dataTagd.不需要匹配塊的整個數據標籤和數據標籤i在塊中未定義的參數不會導致命令失敗。
• 成功時,返回成功數為1。
實例
• 測試是否在(0,64,0)塊是任何類型的羊毛:
testfordband 0 64 0 MICEFRAFT:羊毛
testfofrand 0 64×0 MICEFRAFT:羊毛- 1
• 測試是否在(0,64,0)塊是橙色羊毛:
testfofrand 0 64×0 MICEFRAFT:羊毛1
• 測試下面的塊是否是AjkkBOX,與“購物中心”一致:
testfordboo~~~ 1 MieCrave:點唱機- 1 {記錄:2261 }
testforblocks
限制條件 | 僅限伺服器管理員 |
第一次發布 | 1.8(14w07a) |
測試兩個區域中的塊是否匹配。
格式
• testforblocks [mode]
• Arguments
• x1 y1 z1andx2 y2 z2
• 指定要用作測試模式的區域的兩個相對角(源區域)。x1、z1、x2和z2必須都在-30000000和30000000之間(包含,沒有逗號),y1和y2必須在0和255之間(包含)。可以使用標記來指定相對於命令的位置的坐標。源區域中的塊數不得超過524288。
• x y z
• 指定要檢查的區域(目標區域)的西北下角(具有最負值的角)。xandz必須都在-30000000和30000000之間(包含,沒有逗號),並且ymust必須在0到254之間(包含)。可以使用標記來指定相對於命令的位置的坐標。源區和目的區可能重疊。
• mode(optional)
• 源區和目標區中的所有塊必須精確匹配。
• 源區域中的掩蔽空中塊將匹配目的區域中的任何塊。
• 指定如何匹配塊。必須是:
• 如果未指定,默認為ALL。
• 結果
• 如果未正確地指定參數,或源區和目標區不匹配,則失敗。
• 成功時,返回匹配塊的數量(非llmode的塊總數,或maskedmode中的源區域非空中塊的數量)。
time
限制條件 | 僅限伺服器管理員 |
第一次發布 | 1.3.1(12w16a) |
更改或查詢世界遊戲時間。
格式
• time <數值>
• 參數
• 數值
• add- 必須介於0和2147483647之間(包括0和2147483647)
• query-必須是daytime或gametime.
• set- 必須介於0和2147483647之間(包括0和2147483647),day或night.
• 設置時間、加快時間和查看時間:
• 結果
• 如果參數沒有被指定正確的數值則失敗。
• 如果成功:
• add- 以數值的數字來增加世界時間
• query- 顯示這一天的時間(從午夜開始的遊戲刻)或遊戲時間(從世界創建時開始計算的遊戲刻)
• set- 設置世界遊戲時間的數值(day= 1000,night= 13000)。
• 設置時間到1000:time set 1000或time set day
• 將世界時間增加一天:time add 24000
title
限制條件 | 僅限伺服器管理員 |
第一次發布 | 1.8(14w20a) |
管理屏幕標題。屏幕標題顯示給玩家作為單行的大中心對齊的文本在它們的顯示中間,可以包括第二行的文本稱為“字幕”。這兩條線都可以包含複雜的格式。屏幕標題可以設置為淡入淡出,並且還可以指定它們顯示的持續時間。屏幕標題的大小與GUIScalean成比例,並且屏幕標題太大,無法在屏幕上顯示,因此沒有行包裝(它們只是從屏幕兩側溢出)。
格式
• 該命令有五個變體,每個變數具有不同的參數。
• title clear(從屏幕中刪除屏幕標題)
• title reset(將選項重置為默認值)
• title subtitle (指定字幕文本)
• title times (淡入、停留和淡出時間)
• title title (顯示屏幕標題)
Arguments
• player
• 指定要顯示屏幕標題的播放器。必須是玩家名稱或目標選擇器。
• raw json title(僅字幕和單元格)
• 指定要顯示為標題或字幕的文本。必須是有效的JSON文本(for example,{text:"Chapter I",bold:true}).
• fadeIn,stay, andfadeOut(只有時間模式)
• 指定屏幕標題的時間(1秒/20秒),使屏幕標題淡入、停留和淡出。所有值必須介於-2147483648和214846347之間(包含,沒有逗號),但低於0的值將被視為0。如果未指定(或重置),則默認為20(1秒)、60(3秒)和20(1秒)。
• 結果
File:Title command.png
標題命令的示例結果
• 如果參數未被正確地指定,或IpPraveRever無法評估一個或多個在線玩家,則失敗。
論成功:
• 清除-從指定玩家的屏幕上清除屏幕標題。如果當前沒有顯示屏幕標題,則沒有效果。
• 重置-對於指定的播放器,將字幕文本重置為空白文本,淡入時間重置為20(1秒淡入),停留時間重置為60(3秒),淡出時間重置為20(1秒淡出)。
• 字幕-如果當前正在向指定的播放器顯示屏幕標題,則將當前顯示的字幕更改為新的指定文本;否則,指定要向指定的播放器顯示的下一個屏幕標題的字幕。
• times-如果當前正在向指定播放器顯示屏幕標題,則更改當前屏幕標題(以及所有未來屏幕標題)的淡入、停留和淡出時間;否則,指定向指定播放器顯示未來屏幕標題的時間。
• 將指定的文本顯示給指定的播放器,或者將當前顯示的文本更改為新的指定文本。淡出后,將字幕重置為空白文本,但不重置淡入、留存和淡出時間。
• 例子
• 顯示一個大膽的屏幕標題“第一章”與灰色斜體字幕“故事開始…”所有球員:
1.title @a subtitle {text:"The story begins…",color:gray,italic:true}
2.title @a title {text:"Chapter I",bold:true}
toggledownfall
限制條件 | 僅限伺服器管理員 |
第一次發布 | 1.3.1(12w16a) |
切換天氣。
語法
• toggledownfall
• 結果
• 總是成功的。如果天氣目前晴朗,就會轉換成下雨或下雪。如果天氣目前是雨雪天氣,它將停止下雨下雪。
tp
限制條件 | 僅限伺服器管理員 |
第一次發布 | Alpha 1.0.16_01 |
傳送實體 (玩家, mobs, 物品等)。
• 語法
• tp [目標玩家] <目的地玩家>
• tp [目標玩家] [ ]
• 參數
• 目標玩家(可選)
• 指定要傳送的目標。必須是一個玩家的名字或者目標選擇器(@e is permitted to target entities other than players). 若未指定,則默認為命令的使用者 Not optional in command blocks.
• destination player
• 指定目標傳送目標玩家。必須是一個玩家的名字或一個目標選擇器 (@eis permitted to target entities other than players).
• x y z
• 傳送目標至指定坐標.x和z的值必須在-30,000,000 到 30,000,000之間(exclusive, without the commas), 並且y最少為0. 可以使用波浪線來指定目標位置相對於當前位置的偏移量。
• y-rot(可選)
指定水平旋轉(-180.0表示正北方向,-90.0表示正東方向,0.0表示正南方向,90.0表示正西方向,179.9表示正北方向,然後迴繞到-180.0)。傾斜符號可以用來指定相對於目標先前旋轉的旋轉。
• x-rot(可選)
• 指定垂直旋轉(直達90至直達90)。傾斜符號可以用來指定相對於目標先前旋轉的旋轉。
• 結果
• 如果參數沒有正確指定,則失敗,如果目標播放器無法解析到一個或多個實體(指定的播放器必須聯機),或者如果目標播放器無法解析為單個實體(指定的播放器必須聯機)。
• 在成功時,將目標傳送到指定的目的地。
例子
• 傳送自己到Alice的位置:tp Alice
• 傳送所有玩家到自己的位置:tp @a @p
• 傳送自己到x軸為100,z軸為100,且比現在的位置高了三個方塊:tp 100 ~3 100
• To rotate the nearest player 10 degrees to the right without changing their position:tp @p ~ ~ ~ ~10 ~
trigger
限制條件 | 無 |
第一次發布 | 1.8(14w06a) |
設置要激活的觸發器
格式
• trigger
描述
• 與玩家一起使用,讓玩家激活操作員或地圖製作者製作的系統。目標是一個被允許的記分牌目標“觸發器”的目標。根據第二個參數是否為isaddorset,givalueis要麼添加到其現有值,要麼成為其新值。目標的值只為使用命令的玩家而改變。
• 成功條件
• 目標必須具有“觸發器”標準,運行命令的玩家必須能夠修改目標。
weather
限制條件 | 僅限伺服器管理員 |
第一次發布 | 1.4.2(12w32a) |
設定天氣。
格式
• weather [duration in seconds]
• Arguments
• clear
• 指定將天氣設置為晴天。
• rain
• Specifies to set the weather to rain (or snow in cold biomes).
• thunder
• Specifies to set the weather to a thunderstorm (or a thunder snowstorm in cold biomes).
• duration in seconds
• Specifies the time for the specified weather to last. Must be between 1 and 1,000,000 (inclusive, without the commas).
• Result
• Fails if arguments are not specified properly.
• On success, changes the weather for the specified duration (in seconds).
• Examples
• To get clear weather for oneMinecraftday:weather clear 1200
• To make it rain, but let it end at its own pace:weather rain 1
whitelist
限制條件 | 僅限多人遊戲 僅限伺服器管理員 不能在命令方塊上使用 |
第一次發布 | Beta 1.3 |
Manages the server whitelist. Server ops willalwaysbe able to connect when the whitelist is active, even if their names do not appear in the whitelist.
• Syntax
• The command has six variations.
• whitelist add
• whitelist list
• whitelist off
• whitelist on
• whitelist reload
• whitelist remove
• Arguments
• player(addandremovemode only)
• Specifies the player(s) to add or remove from the whitelist.
• Result
• Fails if player doesn't exist
• On success:
• add— Adds the player name to the whitelist. The player does not need to be online.
• list— Displays all player names in the whitelist.
• off— Disables the server's use of a whitelist.
• on— Enables the server's use of a whitelist.
• reload— Reloads the list of player names inwhite-list.txt(1.7.5 or earlier) orwhitelist.json(1.7.6 or later) from disk (used whenwhite-list.txtorwhitelist.jsonhas been modified outside ofMinecraft).
• remove— Removes the player name from the whitelist. The player does not need to be online.
worldborder
限制條件 | 僅限伺服器管理員 |
第一次發布 | 1.8(14w17a) |
這些命令管理著世界的邊界。
格式
• 該命令有八個變體,每個變數具有不同的參數:
• worldborder add [timeInSeconds](increases the world border diameter)
• worldborder center (recenters the world boundary)
• worldborder damage amount (specifies world border damage rate)
• worldborder damage buffer (specifies world border damage buffer distance)
• worldborder get(returns the world border diameter)
• worldborder set [timeInSeconds](sets the world border size and speed)
• worldborder warning distance (specifies the world border warning distance)
• worldborder warning time (specifies the world border warning time)
Arguments
• sizeInBlocks(add,damage buffer, andsetmodes only)
• add— specifies the number of blocks to add to the world border diameter.
• damage buffer— specifies the distance outside the world buffer before players start taking damage. Must be at least 0.0. Initially set to 5.0.
• set— Specifies the new diameter for the world border. Must be between 1.0 and 60,000,000 (inclusive, without the commas).
• Specifies a distance in blocks:
• timeInSeconds(addandsetmodes only)
• Specifies the number of seconds it should take for the world border to move from its current diameter to the new diameter. Must be at least 0. If not specified, defaults to 0.
• x z(centermode only)
• Specifies the horizontal coordinates of the world border's center. Must be between-30,000,000 and 30,000,000(inclusive, without the commas). May usetilde notationto specify coordinates relative to the command's execution.
• damagePerBlock(damage amountmode only)
• Specifies the damage a player takes per second per block past the world border buffer. For example, ifdamagePerBlockis 0.1, a player 5 blocks outside the world border buffer will take 0.5 damage per second (damage less than half a heart might not change the visual health display, but will still accumulate). Must be at least 0.0. Initially set to 0.2.
• blocks(warning distancemode only)
• Specifies the distance from the world border at which players will begin to see a visual warning of the world border's proximity. Must be at least 0. Initially set to 5.
• seconds(warning timemode only)
• Specifies the time in seconds before a moving world border overruns a player when they will begin to see a visual warning of the world border's proximity. For example, ifsecondsis 5, players will get a visual warning when the moving world border is 5 seconds or less away from passing their position. Must be at least 0. Initially set to 15.
• 結果
• 如果沒有適當地指定參數,或者新的世界直徑小於1或大於60000000,則失敗。
• 論成功:
添加世界邊界開始改變它的直徑。如果Blocksis為正,世界邊界將變成綠色並開始增加;如果為負,世界邊界將變成紅色並開始減少。IftimeInSecondsis 0或未指定時,立即發生更改;否則更改將以(sizeInBlocks/2)/timeInSecondsblocks每秒的速度進行。
中心-世界邊界的中心立即移動到指定的坐標。
傷害量-將世界邊界傷害量設置為指定值。在世界邊界緩衝區之外的任何玩家將承受超過世界邊界緩衝區距離的每個區塊每秒的傷害量。
損壞緩衝區-將世界邊界緩衝區距離設置為指定值。玩家在穿越世界邊界之前不會受到傷害。
在聊天中顯示當前世界的邊界直徑。
設置-世界邊界開始改變其直徑。如果sizeInBlocksis大於當前直徑,則世界邊界將變綠並開始增加;如果變小,世界邊界將變紅並開始減少。如果時間為0或未指定,則立即發生改變;否則,變化以((sisiin Bosie-)/ 2)/秒/秒/秒的速率進行。
警告距離-將世界邊界警告距離設置為這個值。
警告時間-將世界邊界警告時間設置為這個值。
xp
限制條件 | 僅限伺服器管理員 |
第一次發布 | 1.3.1(12w16a) |
將經驗值給予一個玩家。
• 語法
• xp <數量> [玩家名]
• xp <數量>L [玩家名]
• 參數
• 經驗值
• 指定給予玩家的經驗值數量。經驗值數量必須在 0(含)到 2,147,483,647(含)之間。
• 若出現字元L作為後綴,則改為提升玩家等級。等級數量必須在 -2,147,483,648(含)到 2,147,483,647(含)之間——負的等級數量將會扣除玩家等級。
• 玩家名(可選)
• 指定命令作用的對象。若沒有指定,則默認為命令的執行者。對命令方塊而言,此參數必須指定。
• 結果
• 若參數未正確設置或玩家名無法與至少一個在線玩家對應,則執行失敗。
• 執行成功后,對象獲得指定經驗值或提升/扣除等級。扣除操作不會使總經驗值和等級低於0。
• 範例
• 為自己增加7點經驗值:xp 7
• 將 Alice 的等級提升3級:xp 3L Alice
• 將所有玩家的等級歸零:xp -2147483648L @a
tnt
限制條件 | 僅限伺服器管理員 |
第一次發布 | 1.8 |
將tnt放到地圖各各腳落。
• 語法
• tnt <數量> [個數]
• 參數
• 玩家寫入以下指令,結果可能是災難性的。
execute @e[type=Item] ~ ~ ~ summon PrimedTnt ~ ~ ~ {Fuse:10,Motion:[-0.0,6,0,-6.0]}
• 結果
就是在有任意掉落物的地方不斷刷出點燃的TNT,其他的指令就是刷出一個高頻脈衝不斷激活上面的這條指令,當你扔了掉落物在地上時,會刷出點燃TNT,TNT會炸掉周圍的方塊,炸掉的方塊又變為掉落物,掉落物會刷出點燃TNT,TNT會炸掉周圍的方塊,炸掉的方塊又變為掉落物,掉落物會刷出點燃TNT,TNT會炸掉周圍的方塊,炸掉的方塊又變為掉落物,掉落物會刷出點燃TNT,TNT會炸掉周圍的方塊,炸掉的方塊又變為掉落物,掉落物會刷出點燃TNT,TNT會炸掉周圍的方塊,炸掉的方塊又變為掉落物,掉落物會刷出點燃TNT,TNT會炸掉周圍的方塊,炸掉的方塊又變為掉落物,掉落物會刷出點燃TNT,TNT會炸掉周圍的方塊,炸掉的方塊又變為掉落物,掉落物會刷出點燃TNT炸到世界沒方塊和掉落物為止。
• 停止TNT指令
kill @e[type=!player
• 運算方法
• /summon FallingSand ~ ~1 ~ {Tile:152,Time:10,Riding:{id:"FallingSand",Tile:137,Time:10,TileEntityData:{Command:"fill ~ ~-7 ~1 ~ ~-1 ~1 redstone_block"},Riding:{id:"FallingSand",Tile:137,Time:10,TileEntityData:{Command:"execute @e[type=Item] ~ ~ ~ summon PrimedTnt ~ ~ ~ {Fuse:10,Motion:[-0.0,6,0,-6.0]}"},Riding:{id:"FallingSand",Tile:137,Time:10,TileEntityData:{Command:"fill ~3 ~1 ~ ~3 ~2 ~ slime"},Riding:{id:"FallingSand",Tile:137,Time:10,TileEntityData:{Command:"setblock ~2 ~2 ~ redstone_block"},Riding:{id:"FallingSand",Tile:137,Time:10,TileEntityData:{Command:"setblock ~4 ~4 ~ sticky_piston 4"},Riding:{id:"FallingSand",Tile:137,Time:10,TileEntityData:{Command:"setblock ~4 ~4 ~ redstone_block"},Riding:{id:"FallingSand",Tile:137,Time:10,TileEntityData:{Command:"clone ~ ~-3 ~ ~4 ~7 ~1 ~ ~30 ~ masked move"},Riding:{id:"FallingSand",Tile:137,Time:10,TileEntityData:{Command:"setblock ~ ~-1 ~1 redstone_block"},Riding:{id:"FallingSand",Tile:137,Time:10,TileEntityData:{Command:"fill ~ ~ ~1 ~ ~9 ~1 air"}}}}}}}}}} [1]
指令[遊戲[Minecraft]中的運算機制]