先來張結(jié)果圖:
關(guān)於 PSI 的基礎(chǔ)教學(xué),版上有一篇文章已經(jīng)講得很清楚了。 ? [1.9] Psi - 魔法科技模組
雖然遊戲內(nèi)已經(jīng)有很好的中文教學(xué),但是由於是翻譯過的,我想大家在coding時肯定會遇到一些問題,本篇會專注於實務(wù)上的教學(xué),附上相關(guān)圖、影片供大家快速入門。
一、基礎(chǔ)介紹:程式中的五種元素
啟動式:整個程式的核心,決定了該程式的能力,例如爆炸、放置、破壞方塊。
運算子:整個程式之中最困難的部分,決定向量、運算加減乘除等。
選擇符:設(shè)定對象。
常量:設(shè)定爆炸強度、方塊數(shù)目...等。
連結(jié)子:輔助連結(jié)其他元素。
二、開始實作:讓眼前的生物自體爆炸
如果你有看過上面的基礎(chǔ)教學(xué)連結(jié),那麼應(yīng)該會知道一些基礎(chǔ)的名稱,我在這邊簡單用白話文形容一次。
咱們的科技魔法槍(術(shù)式輔助演算機),是要透過槍殼(CAD 機體)、核心(CAD 核心)、彈夾(CAD彈夾)所組成,
並且預(yù)先寫入程式之後,把子彈(術(shù)士子彈)放入槍裏頭。
到時候按右鍵擊發(fā)子彈,就會產(chǎn)生程式設(shè)定的效果;我們可以撰寫各種不同程式,放入子彈中使用。
今天要教的「讓眼前的生物自體爆炸」,就是一種程式。
不過大家也不要看到程式就頭暈,作者很好心的弄成了圖形化介面,配合介紹文應(yīng)該會比較好入門。
首先,我們必須要有寫程式的環(huán)境術(shù)式編寫臺
打開之後會是空白的一片
在某一格按下右鍵,會出現(xiàn)目前可以使用的元素,(有一些需要高等級之後才會解鎖,所以跟著內(nèi)建教學(xué)練習(xí)還是必須的)
這裡把滑鼠移到我們要的「啟動式:爆炸」,並且按下 Shift 查看詳情。
我們程式中的每一個元素都有其輸入、輸出值,A給B、B給C、C再給D...,這樣層層連結(jié),就是咱們程式的基本架構(gòu)。
這裡頭「<-」代表輸出,「->」代表需要輸入的東西。
紅1:None 表示可以不能輸出任何數(shù)值,基本上就代表這裡是所有程式碼/元素路徑的終點。
紅2:需要輸入位置,並且限定用 Vector(向量)表示。
紅3:需要輸入強度,並且限定用 Number(常量/常數(shù))表示。
如果你到這裡還是感到疑惑的話,可以想像一下:
從:在「紙片的頭上」,用「10公斤重的力道」,「打下去」
變成:在「某某座標(biāo)」,用「某某強度」,「爆炸」
那某某座標(biāo)、某某強度要不是有人告訴他,不然是不會憑空知道的,
如果你還是不能了解的話,可以參考影片,也許可以幫助到你。
接著,點及左鍵,把「啟動式:爆炸」放置到術(shù)式編寫臺中
可以注意到,左下角有白色的箭頭可以按,這箭頭就代表其他輸入值的位置
例如如果我按右的話,「啟動式:爆炸」就會從右邊一格讀取位置
此時我們還沒設(shè)定在「啟動式:爆炸」的右邊是什麼嘛,所以滑鼠往右移一格按右鍵,找尋可以用的元素
以等級6可以使用的元素,照字面意思來看,會是「運算子:實體位置」及「運算子:聚焦實體」比較有可能
不過各位還記得嗎?咱們「啟動式:爆炸」所要輸入的位置是 Vector(座標(biāo)),並非是 Entity(實體),
所以前者「運算子:實體位置」會是個相對正確的選擇。
其實在面對一個不熟悉的程式就是這樣,先選定咱們的目標(biāo)行為(例如這裡就是爆炸),
然後再透過需要的輸入值和常理去推斷下一步驟是什麼,不要怕弄錯,多試幾次就會熟悉了。
以爆炸為例,基本的邏輯是這樣的:施法者視線眼前的生物的位置會爆炸
加個括號就是:「施法者」「視線眼前的生物」的「位置」會「爆炸」
再倒過來就是:「爆炸」→「位置」→「視線眼前的生物」→「施法者」
當(dāng)然,以上只是提供一種思考的方式,大家參考看看。
所以到目前為止,咱們的盤面會是這樣:
看一下「運算子:實體位置」的說明:獲取一個實體的位置
如果各位吸收的還不錯,應(yīng)該就會知道這裡是咱們要讓牠爆炸的生物,苦力怕、綿羊...之類的
而我們前面說過,是要「施法者視線眼前的生物」,所以此時剛好可以使用「運算子:聚焦實體」,輸入/輸出值也合乎邏輯。
「運算子:聚焦實體」的說明:獲取指定實體所看的實體
重述前面的邏輯:
「爆炸」→「位置」→「視線眼前的生物」→「施法者」
現(xiàn)在我們已經(jīng)完成前面三項,所以說明裏頭提到的指定實體,當(dāng)然指的就是施法者囉!
(事實上,幾乎所有的程式都會把施法者,也就是自己放進去)
這裡用的是「選擇符:施法者」,
放入後:
最後別忘了,「啟動符:爆炸」還需要另一個輸入值,強度
這裡基本上毫無懸念,使用到目前為止的唯一常量「常量:數(shù)字」,並且輸入1。
(依照新手的能力,爆炸暫時沒有辦法給超過1的值,這裡不贅述)
最終的盤面:
到這裡也許你會有疑問,為何左上角會有叉叉呢?
其實那個叉叉就是用來檢測你的程式有沒有問題的,當(dāng)你程式都寫好卻還是顯示叉叉,你可以把鼠標(biāo)移到上頭,他會告訴你哪裡發(fā)生錯誤。
以這裡來說,其實就只是忘記幫程式(魔法式)命名了。
輸入好名稱就完成囉!此時就可以把這些程式讀取到子彈裏頭,施展魔法!
讓我們再看看怪物的慘狀吧XD
除了讓眼前的怪物自體爆炸外,稍微修改一些元素,也可以做到背對怪物開槍,在條件允許的情況下,甚至還可以一次炸死一堆怪呢!
如果你還是看不懂的話,不妨參考一下影片吧!
三、後記
這一次嘗試跳過一坨拉庫的基礎(chǔ)教學(xué),直接開始講我認為初學(xué)者最會遇到的問題,不知道各位覺得怎麼樣呢?
喜歡的話,不妨點個GP,留個言。有什麼可以進步的地方,也希望可以告訴我:D
如果你想要知道紙片是怎麼研究模組的話,可以參考我的以小時為單位的研究實況,
另外,這個模組也會在我、悟訢、夏克斯三人的《1.8.9 前瞻模組生存》中出現(xiàn),歡迎收看!
轉(zhuǎn)貼本文時禁止修改、商業(yè)使用,同時請註明作者「紙片模型」以及原文連接:如何動個手指就讓怪物自體爆炸?|PSI 科技魔法|Minecraft 模組介紹