[指令] #2 指令運(yùn)行的平臺

指令,作為游戲中動(dòng)用權(quán)限來影響世界的強(qiáng)大工具,受到許多人的追捧和贊美——雖然它有著強(qiáng)大的能力,但它并不易用。而我在之前編寫的教程,不但單一、雜亂、無系統(tǒng),里面還包含著一些過時(shí)內(nèi)容。為了各位仍然選擇陪伴MC的朋友,我選擇重新編寫一次《指令:新概念》,這次的重編中我采訪到了幾位曾經(jīng)對指令感興趣、且深入的學(xué)習(xí)了指令的朋友,并根據(jù)他們各自遇到的瓶頸做出專門針對來寫出這一系列專欄。
本專欄永遠(yuǎn)只會(huì)發(fā)布在嗶哩嗶哩平臺和知乎平臺,不會(huì)轉(zhuǎn)載至任何其他平臺,若有變動(dòng)請查看置頂評論。不要相信任何所謂的“授權(quán)轉(zhuǎn)載”,私信可以通過修改源代碼顯示,請眼見為實(shí)。

本專欄將只會(huì)提供干貨,包括很多你在維基上都看不見的干貨,編寫一期需要大量精力,請各位拿硬幣砸死我。游戲默認(rèn)版本是1.13+,因?yàn)檫@個(gè)階段的指令功能更強(qiáng)大,而且是新的。
▍名詞解釋 EXPLANATION OF WORDS
刻:在這里提到的是游戲刻,每刻為二十分之一秒。是Minecraft世界中的計(jì)時(shí)工具。
▍運(yùn)行平臺 COMMAND RUNNING PLATFORMS
在麥塊世界(Minecraft世界,下同),指令通常有下列幾種運(yùn)行平臺:
聊天欄(CHAT BAR)是玩家輸入短指令的平臺。在這里輸入指令方便快捷,打開方式為按下 [T] 鍵,其劣勢也十分明顯:與聊天文本一樣,有著最高字符限制256字符,并且無法按照已給條件自動(dòng)執(zhí)行,也很難進(jìn)行邏輯聯(lián)動(dòng)(需要手動(dòng)執(zhí)行)。
在聊天欄,可以按Tab補(bǔ)全坐標(biāo)(指針?biāo)傅姆綁K),指針指空氣的時(shí)候補(bǔ)充波浪符~。(波浪符的作用后面會(huì)講,強(qiáng)烈建議這幾期翻著看)同樣,按下Tab鍵也會(huì)在可選參數(shù)內(nèi)循環(huán),例如應(yīng)填“玩家名”的地方會(huì)循環(huán)顯示“@a”,“@p”,“@e”,“@s”,“PlayerName”。當(dāng)循環(huán)到底的時(shí)候,會(huì)從頭開始循環(huán)
當(dāng)玩家在聊天欄里輸入指令時(shí),可選的參數(shù)會(huì)在聊天欄上方顯示。
在聊天欄,按鍵盤上的↑鍵可以切換上一次發(fā)送的消息。按↓鍵反之。當(dāng)你在歷史記錄里進(jìn)行了編輯后,再次切換歷史記錄,你的記錄不會(huì)保存,但如果是在輸入一條新消息時(shí)查看了歷史記錄,你的輸入會(huì)保存。
按下F3+D可以清空聊天欄和歷史記錄。非常適合在施工完成要錄像的時(shí)候清理干凈界面。
在聊天欄內(nèi)提交指令需要管理員權(quán)限。只有“/”開頭的的文本才會(huì)被認(rèn)為是指令。
雖然說好是用T打開聊天欄,但用“/”打開聊天欄時(shí),聊天欄會(huì)自帶一個(gè)斜杠。
命令方塊(COMMAND BLOCK,簡稱CB)是玩家輸入長指令的平臺。在這里輸入指令幾乎不需要擔(dān)心字符上限(除非你是OCB玩家,把好幾個(gè)命令方塊壓縮到一個(gè)指令里)。您可以通過在聊天欄敲擊指令/give @p command_block獲得命令方塊(需要管理員權(quán)限)。指令方塊的上限為32,500字符。默認(rèn)情況下可以使用紅石信號進(jìn)行激活,屆時(shí)會(huì)執(zhí)行命令方塊內(nèi)部的指令。操作紅石來激活命令方塊的玩家不需要管理員權(quán)限。命令方塊可以被設(shè)置三種不同的變量。忘了/give @p 137吧
在1.10.2后,命令方塊內(nèi)也可以像聊天欄一樣用Tab在可選參數(shù)之間循環(huán)。
編輯命令方塊、拆毀命令方塊都需要管理員權(quán)限。沒有管理員權(quán)限甚至無權(quán)拆除命令方塊。維基百科沒有提到非管理員能否復(fù)制和放置命令方塊,迫于正版無法開小號進(jìn)行測試,還請大佬在評論區(qū)補(bǔ)充。
命令方塊有三個(gè)變量。
脈沖、連鎖、循環(huán):
脈沖命令方塊就像是1.9之前的命令方塊,收到一次紅石信號激活一次。被設(shè)置為“無需紅石”后會(huì)在執(zhí)行一次后永久停止運(yùn)行,直到取消“無需紅石”。
通常用于進(jìn)行簡單的制作活動(dòng),例如給予、傳送等。
連鎖命令方塊會(huì)在指向它的方塊執(zhí)行命令后、且保持打開狀態(tài)(“無需紅石”或收到紅石信號)時(shí)運(yùn)行一次指令,無論指向它的命令方塊內(nèi)的指令是否成功執(zhí)行。
連鎖命令方塊與指向它的命令方塊會(huì)在同一刻內(nèi)被執(zhí)行。
這可以用來制作諸如紅石音樂、技能效果一類的需要在同一刻內(nèi)一起執(zhí)行的指令。
循環(huán)命令方塊會(huì)在打開時(shí)(“無需紅石”或收到紅石信號)每隔1刻執(zhí)行一次指令(每秒20次)。永遠(yuǎn)不要在這里面輸入Kill指令!
循環(huán)命令方塊通常用于檢測某種條件的滿足,因?yàn)樗偸窃谟螒騼?nèi)最短的時(shí)間周期上進(jìn)行運(yùn)行。
循環(huán)命令方塊+Kill會(huì)不斷地殺死所有能解除這個(gè)命令方塊的玩家!除非使用地圖編輯器,或者建立服務(wù)器后關(guān)閉命令方塊的使用權(quán)限,否則幾乎沒有任何方式救回你的地圖。
為了防止失誤,我們強(qiáng)烈建議用高等級傷害藥水或者傳送至虛空的方法來代替Kill,最起碼這能保護(hù)住創(chuàng)造模式的玩家。
如果你使用的是比較器高頻,那么你將會(huì)有0.1秒的時(shí)間粘貼指令清除命令方塊。但我們?nèi)匀徊煌扑]這么做,因?yàn)檫@種行為真的愚蠢至極。我為什么要寫這么多廢話給一個(gè)執(zhí)意想著把Kill寫進(jìn)循環(huán)里的人?
不受制約、條件限制
不受制約的命令方塊無論如何,只要條件滿足就會(huì)執(zhí)行。
這里說的條件滿足指沒有設(shè)置無需紅石的方塊被紅石激活/無需紅石,連鎖命令方塊指向它的命令方塊被執(zhí)行等情況。
條件限制的命令方塊必須在指向它的命令方塊返回執(zhí)行成果為“成功”時(shí)才會(huì)執(zhí)行。
如果沒有成功,在它后面的命令方塊如果沒有“條件限制”,而是“不受制約”的話,仍然會(huì)做它應(yīng)該做的事情,就像前面沒有這個(gè)“條件限制”方塊一樣。
紅石控制/保持開啟(無需紅石)
紅石控制的命令方塊只有在收到紅石信號的時(shí)候才會(huì)工作,在沒有收到信號時(shí),它就是一塊彩色基巖。
保持開啟的命令方塊會(huì)一直保持工作,脈沖會(huì)永遠(yuǎn)停止運(yùn)行(因?yàn)樗仨氃谟伞盁o激活”→“激活”狀態(tài)的時(shí)候才會(huì)工作,在這里一直保持“激活”意味著它沒法完成上述從“無激活”→“激活”的這個(gè)動(dòng)作。),連鎖會(huì)一直等待前面的命令方塊執(zhí)行,循環(huán)會(huì)一直復(fù)讀。
函數(shù)(FUNCTION)是一個(gè)在游戲外的Windows世界中進(jìn)行編輯等操作的指令執(zhí)行平臺。函數(shù)幾乎解除了任何限制,包括最大字符量上限,但仍然受到每刻不得受理65536條最大上限的限制。函數(shù)內(nèi)的命令會(huì)按照從上到下在同一刻內(nèi)執(zhí)行,超過65536限制的指令將被直接忽略。
你個(gè)指令菜鳥還不該了解這個(gè)。
然而,我也不會(huì)。
數(shù)據(jù)包(DATAPACKS)是各種函數(shù)的集合??梢栽诤瘮?shù)中互相調(diào)用以達(dá)到類似命令方塊邏輯的功能??捎脕碇谱饕绘I砍樹、連鎖挖礦等原版Mod。
同上。
事實(shí)上,我正在研習(xí)這兩項(xiàng),在之后的教程中我會(huì)科普這些內(nèi)容。
▍結(jié)束語
我愛這個(gè)游戲,我想把這個(gè)游戲的“高級玩法”——即指令的玩法奉上給各位,我希望各位能用好指令,創(chuàng)造出優(yōu)秀的作品,為了更美好的MC世界而努力。
學(xué)會(huì)紅石,改變Minecraft命運(yùn)。
????????????????????????????????????????——明月莊主
學(xué)會(huì)指令,改變世界規(guī)則,改變每一個(gè)生物、每一個(gè)實(shí)體、每一個(gè)粒子、每一個(gè)元素的行為做法、改變整個(gè)Minecraft世界的命運(yùn)。
????????????????????????????????????????——北冥餅鯤
【交流群-劃水扯淡】657876815?
【交流群-指令專屬】直接加上面的群

本文共2896字,全程手打,無任何直接復(fù)制粘貼他人作品行為。我說過,這個(gè)系列是我要做精的,也希望這些內(nèi)容能讓更多的玩家看到,領(lǐng)略到Minecraft指令的神奇之處。
請記得點(diǎn)贊、收藏、投幣、轉(zhuǎn)發(fā)。你的每一個(gè)互動(dòng)都會(huì)給我很多鼓勵(lì)。
NMD,不懂就問,不要害羞?。?!不問的話永遠(yuǎn)沒人會(huì)告訴你答案!!不敢發(fā)評論區(qū)請私聊!