警告:根据CC BY-NC-SA 3.0协议,所有从wiki搬运的资料都必须写上来源出处(中文Minecraft Wiki),否则将被视为侵权行为!详细阅读
致繁体用户:本wiki现已更新简繁更换系统,各位用户可以通过简繁切换来查看正确的繁体译名

命令

出自Minecraft Wiki
(重定向自多人游戏服务器指令
跳轉到: 導覽搜尋

命令(commands)是藉由輸入特定文本字元串而激活的進階功能。

使用方法[編輯]

請注意,本條目所述皆為官方原版遊戲中的指令。列表外的指令均非原版指令。


一般的客戶中,命令由 Minecraft聊天視窗中輸入,藉由按下 T 鍵(預設) 或 / 鍵叫出聊天視窗。使用 / 鍵也會同時輸入命令必備的前綴斜線,因此這是個實用的快捷鍵。在輸入命令時按下 Tab ↹ 鍵會循環可用的命令或參數。

命令也可以在多人伺服器的控制台輸入,但是不需要加入前綴的 / 。指令方塊中的命令可以加入前綴 / ,但是非必要。指令方塊中的命令可能還會要求可選擇的參數,通常是玩家的名字。

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

有些#命令在不允許作弊的生存模式中仍然可用

注意:在單人遊戲中,如果不允許作弊,仍可以藉由公開目前的遊戲至區域網 ( 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 時,參數縮小所選的數量,從所有名單變成更小的群組來選擇最近或隨機的玩家。

在目標選擇器變數之後增加參數 - 數值對做為以逗號分隔的列表,包含在中括弧中:

@<variable>[<argument>=<value>,<argument>=<value>,…]

括弧、等號和逗號旁不能有空白鍵,只有逗號可以用來分隔參數 - 數值對。

參數會區分大小寫,不支援的參數會直接被忽略掉。舉例來說,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]
通過坐標選擇目標
[x=X,y=Y,z=Z] — 選擇基於距離的目標,準確的位置。結合選擇的半徑選擇在特定位置的唯一目標。
坐標必須準確的符號 - tilde notation 不可以用參數坐標選擇器。
通過半徑選擇目標
[r=R] — 只選擇半徑小於命令的執行行R的數值的區塊里的目標。
[rm=RM] — 只選擇目標超過命令的執行行RM的數值的區塊里的目標。
如果一個坐標(以上),或兩個半徑/我都定義,命令會以定義的坐標為中心執行命令。By using a very distant coordinate and a very large radius, it is possible to simulate a near-linear edge to use to specify targets.
通過遊戲模式選擇目標
[m=M] — 只選擇目標與指定的 game mode.遊戲模式。M允許值為:
  • -1: 所有的遊戲模式
  • 0: 生存模式
  • 1: 創造模式
  • 2: 冒險模式
  • 3: 旁觀者模式
通過數量選擇目標
[c=C] — 只選擇指定數量的目標。通常在從指令方塊執行遠程命令。
When used with @p or @r, this argument defaults to 1, so using a higher number will increase the number of nearest or random targets returned. When used with @a or @e, this argument returns only the nearest targets.
If there are multiple nearest players, caused by them being precisely the same distance away, a player is selected by the time the player most recently joined the server. For example, if equally distant, @a[c=1] will select the player who has been on the server the longest and @e[type=Creeper,c=3] will select the three oldest creepers.
When used with a negative value, the order of targets is reversed. For example, @p[c=-3] will return the three farthest targets, and, if all potential targets are equally far away, @e[c=-3] will select the last three targets created.
通過經驗等級選擇目標
[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,points的分數的沒有超過39的目標。
另見:Scoreboard#Objectives
通過隊伍選擇目標
[team=TEAM] — 只選擇團隊「team」的目標。
[team=!TEAM] — 只選擇不是團隊「team」的目標。
[team=] — 只選擇不在「任何」隊的目標。
另見:Scoreboard#Teams
通過名字選擇目標
[name=NAME] — 僅選擇「'name'的目標。
[name=!NAME] — 只選擇名字不是'name'的目標。
通過體積選擇目標
[dx=DX,dy=DY,dz=DZ]
Selects only targets within the volume defined as starting from the location where the command was executed and extending DX blocks in the positive "x" direction (i.e., east), DY blocks in the positive "y" direction (i.e., upwards), and DZ blocks in the positive "z" direction (i.e., south). All values must be positive. If an initial coordinate is specified with the x, y, and z arguments, that will be used instead of the position of the command's execution for the lower northwestern corner (dx, dy, and dz still specify distances from that coordinate; they do not specify a separate coordinate).
It is possible to combine selection by radius and selection by volume, in which case the command will only select targets within the overlap of both regions (within certain radius/i of the volume's lower northwest corner and not outside the defined volume).
通過垂直旋轉選擇目標
[rx=RX] — 只選擇最大不超過垂直旋轉值「RX」唯一目標。
[rxm=RXM] — 只選擇最小不低於垂直旋轉值「RXM」的唯一目標。
垂直旋轉值的變化範圍從90到90面對面值而下(垂直旋轉值增加旋轉向下)。
通過水平旋轉選擇目標
[ry=RY] — 只選擇與最大不超過水平旋轉的「RY」的唯一目標。
[rym=RYM] — 只選擇與最小不低於水平旋轉的「RYM」的唯一目標。
Horizontal rotation values vary from -180.0 (facing due north), to -90.0 (facing due east), to 0.0 (facing due south), to 90.0 (facing due west), to 179.9 (just west of due north) before wrapping back to -180.0 (thus horizontal rotation values increase with rotation to the right, or clockwise viewed from above).
通過類型選擇目標
[type=TYPE] — 只選擇特定的實體類型的目標。
[type=!TYPE] — 只選擇目標不具體的實體類型。
TYPE must be an entity ID used to identify different types of entities internally (for example, Creeper for creepers, MinecartRideable for regular minecarts, PrimedTnt for primed TNT, etc.). Entity IDs are case-sensitive and invalid entity IDs will cause the command to fail.
When used with @r, can change its normal behavior of targeting only players to target other entities.


玩家命令[編輯]

這些命令可由聯入伺服器的任何玩家在聊天輸入框里直接輸入。

命令 描述
help [頁碼 | 命令名]
? [頁碼 | 命令名]
列出可以使用的命令或有關命令名更多的信息。
tell <玩家名稱> <信息>
msg<玩家名稱> <信息>
w <玩家名稱> <信息>
用來發送給伺服器里的玩家一條私信。 在需要和玩家交流時非常有用。
me <動作信息> 和 /emote 或 /action相似,而且其作用和IRC客戶端里的 /me 命令一樣, /me命令會以敘述的方式顯示出這個玩家在做什麼,具體顯示為"* 你的名字 動作信息" (比如: "* 你的名字 打了個噴嚏。")。
trigger <目標> <add | set> <數值> 修改帶有Trigger準則的目標(被稱為觸發器),此命令可以被非管理員玩家使用。見版本記錄

只有管理員可用的命令[編輯]

這些命令只有管理員(Operator)通過伺服器或客戶端使用。客戶端使用時需要加「/」前綴。例如輸入的應該是「/help」而非只是「help」。必需的參數由<尖括弧>標出;可選的參數由[方括弧]標出。用斜體標註的參數必須用一個適當的數值代替;用普通字體的參數直接照搬即可。

在單人生存模式中,開啟作弊功能且對區域網開放單人世界的服主也可以使用下列命令。

注意: 在多人模式下,普通玩家通常看不見OP指令的輸入,但是對於其他的在線OP卻是可見的。

命令 描述
achievement give <數據名> [玩家名] 用於賜予玩家成就
blockdata <x> <y> <z> <數據標籤> 用於編輯指定坐標的數據標籤
clear <玩家名> [物品] [數據] 清空該玩家的物品欄,或只清除特定的物品。
clone <x1> <y1> <z1> <x2> <y2> <z2> <X> <Y> <Z> [主模式] [子模式] 複製指定區域的方塊,目的坐標是(X,Y,Z),主模式有 [ replace ]複製每一個方塊、[ masked ]只會複製非空氣方塊、[ filtered ]過濾不想被影響的方塊。

子模式有 [ move | force | normal ]。

debug <start | stop> 開始一次新的除錯進程或是停止當前進程。除錯進程會監控任何控制台內的潛在信息並在停止之後將信息記錄在debug文件夾內。
defaultgamemode <survival | creative | adventure | spectator> 設置默認的遊戲模式。新加入的玩家將被設置為該模式。生存/創造/冒險/旁觀也可以簡寫為「s/c/a/sp」或「0/1/2/3」。
difficulty <0 | 1 | 2 | 3> 改變遊戲難度。0為和平,1為容易,2為普通,3為困難,
effect <玩家名> <藥水效果> [秒數] [倍率] 給予目標玩家持續指定時間的指定藥水效果(默認30秒,最長可設置1000000秒)。「倍率」代表效果強度(最大為255),0為取消該效果。藥水效果用ID表示,詳見藥水效果
effect <玩家名> clear 清除該玩家身上的所有效果。
enchant <玩家名> <魔咒ID> [魔咒等級] 附魔玩家持有的物品。請注意用該命令附魔的魔咒無法超越正常附魔步驟的限制,例如最大等級、魔咒衝突、魔咒限制等,詳見附魔
entitydata <實體名> <數據標籤> 用於編輯指定實體的數據標籤,對玩家無效
execute <玩家名 | 實體名> <x> <y> <z> <命令> 以目標玩家或實體為中心執行命令,可以用來通過玩家及實體的運動生成生物或放置方塊。
fill <x1> <y1> <z1> <x2> <y2> <z2> <方塊名> [數據值] [舊方塊處理方式]<數據標籤> 用指定方塊填滿指定區域。舊方塊處理方式可為:[ replace | destroy | keep | hollow | outline ]。能指定要處理的舊方塊種類,前提是不包含方塊實體值,僅能在replace模式中使用,語法:/fill [x] [y] [z] [x] [y] [z] [方塊名] [數據] replace [過濾方塊名] [過濾數據]
gamemode <survival | creative | adventure | spectator> [玩家名] 改變該玩家的遊戲模式。生存/創造/冒險/旁觀也可以簡寫為「s/c/a/sp」或「0/1/2/3」。如果未定義玩家名,那麼該命令會更改你自己的遊戲模式。注意: 要成功改變遊戲模式,該玩家必須在線。
gamerule <規則名> [true | false] 激活或取消規則名。規則包括:doFireTick, doMobLoot, doMobSpawning, doTileDrops, keepInventory, mobGriefing and commandBlockOutput(詳見指令方塊條目)
give <玩家名> <數據值> [數量] [附加數據值] 給予玩家的物品欄一定'數量(默認為1)的物品(由數據值方塊實體值(默認為0)定義)。
kill [玩家名] 對指定的玩家造成1000 (Heart.svg × 500)點傷害(一擊必殺),未指定則為使用該命令的玩家。 當你迷路或者被卡住的時候很有用。如果你有把握找回身上的物品,那麼這也是個快速補滿飢餓值的好方法。這個命令在創造模式下依然有效。
partcles <顆粒> <x> <y> <z> <x偏移量> <y偏移量> <z偏移量> <速度> [顆粒數] 顯示顆粒效果。
playsound <音樂/聲效> <玩家名> [x] [y] [z] [音量] [頻率] [最小音量] 播放聲效。
publish 將單人遊戲向區域網玩家開放。
replaceitem <entity | block> 給予實體或方塊物品。
say <信息> 廣播 信息 至所有在線的玩家。(使用明亮的粉紅色字體)
scoreboard <objective | players> 詳細信息請參見計分板條目。
seed 顯示伺服器地圖種子。
setblock <x> <y> <z> <方塊名> [數據值] [舊方塊處理方式] [數據標籤] 用於創造,刪除,或代替單個方塊。舊方塊處理方式可為:[ keep | replace | destroy ]
setworldspawn [x] [y] [z] 設置所有玩家的出生點(即使是從未進入伺服器的玩家或是不在線的玩家,但不會覆蓋床的設置)。
spawnpoint <玩家名> [x] [y] [z] 將該玩家的出生點移到指定位置。如果該位置沒有定義,那麼「指定位置」就是玩家當前位置。
spreadplayers <x> <z> <分布距離> <最大半徑> <是否採用隊伍> <玩家名> 把玩家分布到一個起始點.能夠定義分散範圍與最小間距。
summon <實體名> [x] [y] [z] [數據標籤] 用於在遊戲中生成任何實體,包括巨人,末影水晶,終界龍,和激活的TNT。
tellraw <玩家名> <原json消息> 運用json語言來在聊天窗口中顯示高級文本(如創造出"按鈕"和格式化文本)。
testfor <玩家名> 測試指定的玩家是否在線或指定玩家是否在指定位置,在1.7.6之前只可以由指令方塊使用。
testforblock <x> <y> <z> <方塊名> [數據值] [數據標籤] 檢測在指定位置的方塊否與指定的方塊相同。
testforblocks <x1> <y1> <z1> <x2> <y2> <z2> [模式] 檢測在指定區域的方塊是否與另一區域的方塊相同。
time set <時間 | day | night> 設置世界時間。時間為0到24000之間的整數,0為凌晨,6000為正午,12000為傍晚,18000為午夜。"time set day"相當於把時間設為1000(舊版為0),"time set night"相當於把時間設為12500(舊版為12000)。
time add <時間> 將世界時間往後撥一段時間。時間必須為自然數。
toggledownfall 更改天氣為下雨或下雪。
tp <目標玩家> 將玩家自己傳送至目標玩家的位置。
tp <玩家名> <目標玩家> 將指定玩家傳送至目標玩家的位置。
tp <玩家名> <x> <y> <z> 將指定玩家傳送到指定位置。如果坐標號前加~,則代表相對坐標。例如/tp John ~3 64 ~3會將ID為John的玩家傳送到他目前的x、z坐標各加3的位置,再將高度調到64。
weather <clear | rain | thunder> <持續秒數> 改變天氣。持續秒數最大為1000000。
xp <數量> <玩家名> 給予該玩家指定數量的經驗。最大數量為2,147,483,647。負數代表減少經驗。數量後加L代表增加指定的等級。

只有多人生存模式可用的命令[編輯]

命令 描述
ban <玩家名稱> 封禁擁有玩家名稱名稱的玩家,列入黑名單,令其永遠無法登進此伺服器。 注意:封禁操作會覆蓋之前的白名單操作。
ban-ip <ip 地址> 封禁一個特定的IP,列入黑名單,並從此拒絕任何從該地址而來的連接請求。
banlist [ips] 顯示封禁名單。若要列出封禁的IP,請使用banlist ips指令。
deop <玩家名稱> 撤銷一個玩家的管理員身份。
kick <玩家名稱> 強制斷開玩家名稱與伺服器的連接。
list 顯示當前在線的玩家列表。(按Tab ↹也會有同樣的效果)。
op <玩家名稱> 授予 玩家名稱 在伺服器里的管理員職位。
pardon <玩家名稱> 玩家名稱 移出黑名單,允許他再次連接到伺服器。
pardon-ip <ip地址> ip地址 從IP黑名單移除,允許該IP連接到伺服器。
save-all 強制將伺服器尚未儲存地變更寫入存檔。
save-off 取消伺服器對地圖存檔的寫入。所有的更改都會暫時進入等待隊列。
save-on 允許伺服器寫入地圖存檔。這項是默認設定。
setidletimeout <閑置時限(分鐘)> 會自動將掛機過久的玩家踢下線。
stop 正常關閉伺服器。
whitelist <add|remove> <玩家名稱> 玩家名稱加進或移出白名單。
whitelist <list> 顯示所有在白名單上的玩家。
whitelist <on|off> 啟用/停用伺服器的白名單機制。 注意: 伺服器的OP總是能夠在白名單打開時進入伺服器,無論他們在與不在白名單上。
whitelist reload 重新從硬碟讀取white-list.txt上的白名單。(當white-list.txt在Minecraft外被更改時可以使用此指令)。

數據標籤[編輯]

玩家可以使用/give,/summon及其他命令創造帶NBT標籤的物品或實體。數據標籤是數據結構的一種,格式為不嚴謹的JSON(lenient)。數據標籤是由一系列被逗號分隔開的鍵/值對組成的。每一個鍵/值對的格式是<key>:<value>key是NBT標籤的名稱,value是要指定的數據。標籤名稱對大小寫敏感,keyvalue外的空白字元會被忽略。

value有以下不同的類型:

  • String(字元串) 是一段可以被一對雙引號包住的文本。當字元串中包含花括弧({}),方括弧([]),逗號或空格時必須要使用雙引號包住。如果包括雙引號,則必須在雙引號前加上轉義符(\),示例:"My name is \"Steve\""。奇怪的是,當使用/summon命令時,無法使用轉義符,鍵也不能被雙引號包住,官方稱因為轉義符在/summon中無法識別。[1]
  • Number(數字) 是數字類型,可以加前導符號(+-). They're classified in Integers, that don't have a decimal mark, Doubles, that uses a dot (.) as a decimal mark, and Floats, that also have f appended after the number. 例如:整數-128、雙精度浮點數-1.2345或單精度浮點數1.2f
  • Array(數組) (或者稱之為 「表」) is multiple, comma separated values wrapped with square brackets. The containing values do not need to be of the same type. 示例:[1,2,3]
  • Boolean(布爾值) 可以是 true(是) 或 false(否), 但是它在NBT格式中一樣使用數字儲存。使用數字時,大於等於0並且小於1的數字代表false,而其他的數字代表true. 示例:true
  • Hash(散列) or 'Object' is a container for data structures (as explained above). They are wrapped with curly braces. Notice: The Data tag itself is a Hash. 例如: {Health: 18, CustomName: "Friend"}
  • null(空) 這是用於表示空值的,不能加引號。示例:null

定義標籤的完整列表(儘管不是都能在命令中修改)請參閱:

標識符的完整列表,請參閱:

歷史[編輯]

正式版本
1.3.1 12w16a 增加作弊模式
12w24a 增加/publish命令
12w25a 區域網連接可以選擇是否允許作弊
12w27a 增加/debug命令
1.4.2 12w32a 增加/difficuty/gamerule/spawnpoint/weather命令
12w37a 增加/clear命令
12w38a /clear命令可以指定移除特定的方塊或物品
12w41a /xp的經驗上限提高到2,147,483,647
1.4.4 1.4.4pre 增加/enchant命令
1.5 13w03a 增加指令方塊獨佔的/testfor命令。
13w04a 增加計分板/scoreboard系列命令。
1.7.2 13w36a 增加/summon指令。
13w37a 增加/setblock/testforblock/tellraw指令。
13w43a 增加/setworldspawn指令。
1.8 14w02a 增加/blockdata指令。
14w03a 增加/fill/clone指令。
14w04a 增加/particle指令。
14w06a 增加/trigger指令。
14w07a 增加/execute/testforblocks指令。
14w19a 增加/worldborder指令。
14w20a 增加/title指令。
14w26a 增加/replaceitem指令。

引用[編輯]

  1. https://mojang.atlassian.net/browse/MC-37661

另見[編輯]