如何將新兵種加入戰役中
感謝之前我發帖詢問時回文的enacui, ancientcc兩位.
但是因為可以說明的更仔細, 並增加一些補充.
所以我想把我目前了解到的修改技巧條列出來,希望對大家有幫助.
當然, 這只是我個人了解的部分, 有錯誤歡迎補充.
首先, 先找到一個想要加入的目標單位,由於我不懂的編寫新單位, 所以這裡的目標就放從Era中找到的某個種族.
在原理上, 想要在戰役中加入新單位,必須讓wesnoth/data/core/unit中有這個單位的資料.
然後在加入新角色可能會使用到的圖片(動作圖像以及攻擊圖像)
最後,修改戰役的檔案, 讓想要玩的戰役可以招募該單位.
想要讓wesnoth/data/core/unit中有這個單位的資料, 必須要有兩個動作:
1. 將選定的某個種族的單位放入 '' wesnoth/data/core/unit/種族名'' 當中.
在這裡, 放入的單位的種族如果是原本就已經有的, 那就放到正確的資料夾內就好了.
如果原本的core資料夾內沒有這個種族, 那就將原本Era內的那個種族的整個資料夾複製到core資料夾內,
2. 如果新加入單位的種族在core內本來就有, 那就不需要第二點了.
但是如果是加入的整個新種族, 就必須修改一下wesnoth/data/core當中的一個名為unit的檔案, 我是使用筆記本開啟的.
這個資料夾中大略分成三個部分,
第一個部分是種族列表, 第二個部分是種族屬性, 第三個部分不同移動方式的移動說明以及所產生的閃避率.
如果只是簡單的想要加入新種族, 那就在第一個部分加入一行{core/units/種族名/} 這樣就可以了.
最後, 必須檢查一下新加入的單位的檔案, 看他的移動方式是否是unit檔案內有提及過的幾中之一,
如果不是, 那麼在執行的時候就會發現角色不能移動, 而且在哪裡被閃避率都會是0%,
這個時候如果想要保持新角色原本特性, 那就要再unit檔案的第三部分進行中改.......這比較複雜.
還有一個選擇就是修改要加入的新單位以及他的升級版兵種的檔案,
將其中的 '' movement_type=移動方式 '' 修改為unit檔案中原本就有的移動方式.
並不需要去細查unit檔案, 可以由其他已存兵種的檔案來進行參考.
ex: 打開半獸人的檔案, 很有可能就會看到movement_type=orcishfoot,
那個orcishfoot就是可以參考的移動方式, 不同種族不一樣. 而且使用之後就會有獸人蠻兵的閃避率.
放入檔案的這個部分講完了.
再來, 加入新角色可能會使用到的圖片(動作圖像以及攻擊圖像).
這個動作如果不執行其實不會影響調遊戲的運行, 但是所有的圖都會不存在.
所以為了保證遊戲的精美, 還是做一下比較好.
動作很簡單, 找到相要加入的Era, 舉例來說,
我想要加入Era_of_Magic中的兵種, 進入wesnoth/userdata/data/add-on/Era_of_Magic/images,
裡面會有一堆資料夾, 這包括了各個兵種的圖像以及攻擊的動作選擇的圖像, 找到目標單位的種族圖案,
如果是加入已存種族,就將目標圖片放入 '' wesnoth/data/core/images/units/種族名 '' 內.
如果是新加入整個種族, 就將整個資料夾複製到wesnoth/data/core/images/units資料夾內就可以了.
最後最後.......再修改戰役的檔案
一般來說, wesnoth的遊戲存檔會紀錄很多資料, 這其中就包括了能招募的兵種.
修改兵種的時候, 只要修改第一幕就可以了, 其後的每一幕如果作者沒有特別設定, 一般都會繼承第一幕的兵種.
首先進入wesnoth/userdata/data/add-on/目標戰役/scenarios這個資料夾,
在此, 會找到每一幕的檔案, 一般第一幕的名字會是 " 01_幕名''
將第一幕的檔案打開, 我是用筆記本.
裡面的內容有些複雜, 不過可以用搜尋指令, 輸入英雄名稱, 來找到屬於我方英雄的資料部分:
在英雄的資料的部分, 找到 " recruit=兵種1,兵種2,兵種3,兵種4,.....",
在這些兵種後方加入想要新加入的兵種.
注意,這裡要寫入的是新兵種的id, id會寫在每個兵種檔案的一開頭部份, 很好查.
id不一定是兵種名稱, 如果打錯了, 會造成在主堡擊點右鍵想要招募的時候, 招募列表跑不出來.
基本上就是這樣了.
但是還要注意, 因為遊戲的存檔實在紀錄了很多東西,
所以這些修改必須在開始玩戰役之前就修改好,
不然在跑遊戲時會使用存檔中的資料, 而造成修改無效.