創作內容

3 GP

中世紀2 modding教學(一):解包你的遊戲檔案

作者:Alondite│全軍破敵 2:王國興起│2018-12-06 00:59:50│巴幣:6│人氣:666

(這系列教學文可能會有不少垃圾話,不想看的請海涵。)

距離發售超過12年,台灣現在還在玩中世紀2的人已經越來越少了,更不用說有在玩MOD,甚至自己動手修改或製作MOD的。
加上本邊緣人天生邊緣,會來看這系列modding教學的大概是不會有人(´・ω・`)

官方在前陣子已經把中世紀2主程式跟王國擴充包綁在一起賣,稱做Definitive Edition,這就是公開聲明這個遊戲已經不會有更新了(´・ω・`)廢話都發售多久了

但國外TWC那邊中世紀2的modding還在活躍中,而且無疑是全軍破敵系列中最有人氣的板塊。就像義大利MOD Bellum Crucis的開發者之一Mr.Crow,在Bellum Crucis團隊解散但終於在TWC擁有自己論壇子板塊時用的標題,"What Is Dead May Never Die!"

就算中世紀2是一個已死的遊戲,中世紀2的modding是不會死的!!

好,帥氣話講完了,但事實是台灣這邊的modding看起來是死了(´_ゝ`)
這系列教學文就當作是寫來做墓誌銘的(?)畢竟是自己花不少時間去學的東西,巴哈版上精華區雖然有一些文章,但這個系列應該會包含更多且更廣的內容。假設,我說假設,有一天出現了對這部分有興趣的巴友,也許能給點幫助。

順帶一提,全軍破敵2是啥鬼,Medieval II是怎麼翻成全軍破敵2的




"不管你去哪個補習班補modding、老師是按月份收費還是按學期收費,第一節課都一定都是解包。"
-- 並沒有。並沒有這種名言。

Q.為什麼要解包?一定要解包嗎?
其實並不一定要解包啦(´・ω・`)
說實話,沒事就不要去解包,畢竟檔案很大,我知道大家的D槽空間都是很寶貴的。

由於中世紀2的遊戲檔案是包在.pack檔裡,你想要改的話當然得解包;但其實很多狀況下,你可以透過網路資源獲得你想要的檔案。舉一個真實案例:

"你在巴哈全軍破敵系列的討論區下載了左賢王團隊製作的中文化,那麼你就可以在data/text裡面找到所有字串檔,透過更改這些字串檔,你就可以把神聖羅馬帝國改成艾恩格朗特公國,然後哥德騎士改稱艾恩格朗特衛隊、雙手劍士改稱桐谷和人。
如果你今天不爽艾恩格朗特公國的桐谷和人實力孱弱與史實不符且不合乎比例原則,你可以去下載Retrofit MOD,把先前做過的字串改動複製到Retrofit的目錄內,你就可以享受到實力大增的桐谷和人。學會修改export_descr_units.txt檔,你還可以讓桐谷和人獲得16倍攻擊力。
接下來你下載了MOD鋼鐵咆哮,你可以在裡面找到條頓悲歌裡條頓菁英騎士(Ritterbrüder)的3D模型。你可以拿這個模型檔,把他偷渡到你先前下載的Retrofit裡,然後取名叫閃耀魔眼。完美重現閃耀魔眼的牛角。"

以上做的一切都不需要解包,你只需要啟動選項內的--io.file_first(當然你在安裝中文化時就需要他了,因為中文化其實也就是一種MOD)。
但有一些時候,你想修改的東西是別人的MOD裡找不到的。例如:

"你想修改雙手劍士的材質檔(.texture)讓他的盔甲從銀色變成藍黑色,更有資格稱做桐谷和人。"

這時候你就需要解包,因為MOD裡大多不會附原版兵模跟材質檔,原因是遊戲程式看到模組裡沒再去讀pack檔就有了,沒必要額外增加MOD檔案大小。

Q.所以要怎麼解包?
只要更新到1.02版或以上,遊戲安裝目錄下tools\unpacker裡面,你就可以看到CA幫你做好的解包程式,總共6個檔案:
unpacker.exe
unpack_all.bat
unpack_americas.bat
unpack_britannia.bat
unpack_crusades.bat
unpack_teutonic.bat

這5個bat是針對exe添增額外執行參數的執行檔,是分別對應到:
解包中世紀2主程式
解包美洲風雲
解包英倫霸主
解包天國王朝
解包條頓悲歌
點下去之後,針對CA的問題連續給3個Y就會自動解包了

但我建議不要直接使用這5個bat檔!
但我建議不要直接使用這5個bat檔!
但我建議不要直接使用這5個bat檔!

Q.壞?⊙_⊙
直接解包的話多出的檔案總量很大,主程式要額外6.6GB,而王國擴充包要4.0GB。當你直接使用這些bat,解包出的檔案會出現在(主程式或王國MOD)安裝目錄的data裡,你為了節省空間而把不會用到的檔案刪除,可能會刪錯刪到原本就該在那裡的,這將導致遊戲無法正常運作(malfunction)。

Q.那最一勞永逸不會出錯的方法是?
那就不要直接解包到安裝目錄裡嘛。解包到外面一個隨便的位置,這樣子你想怎麼刪都不會出問題,只要把你要更改的檔案從那裡拔出來改,丟回(遊戲或MOD)安裝目錄對應的路徑就好了。右鍵編輯打開unpack_all.bat,你可以看到:

unpacker.exe --source=..\..\packs\*.pack --destination=..\..\ --verbosity=1

把他改成(當然建議備份或者新建一個):

unpacker.exe --source=..\..\packs\*.pack --destination=D:\M2TW_unpack --verbosity=1

這樣解包後的檔案就會被放到D槽下的M2TW_unpack資料夾內,當然這個路徑只是一個例子,你想解包到哪裡隨便你,但就是不要在遊戲或MOD的安裝目錄。

Q.我只想要其中一個檔案,一定要把全部的pack都拆開嗎?
當然是不用。雖然這個unpacker沒辦法解出你想要的特定資料夾(例如只解開data\unit_models\_Units),但還是有兩種方法可以用:

1.只解出特定的檔案。bat內容舉例:
unpacker.exe --source=..\..\packs\*.pack --destination=D:\M2TW_unpack --filter=export_descr_unit.txt
unpacker.exe --source=..\..\packs\*.pack --destination=D:\M2TW_unpack --filter=battle_models.modeldb
換成你需要的檔名就對了

" .... --filter=mtw2_LN_halfplate_hre.texture
這樣子你就可以解包出雙手劍士的材質檔加以修改成藍黑色了。至於要怎麼知道自己想找的檔案叫什麼名字不在這次的範圍內,所以考試不會考。"

2.只解出特定類型的檔案。bat內容舉例:
unpacker.exe --source=..\..\packs\*.pack --destination=D:\M2TW_unpack --filter=*.txt
unpacker.exe --source=..\..\packs\*.pack --destination=D:\M2TW_unpack --filter=*.texture
換成你需要的檔案類型就對了

Q.Windows跟我說缺少特定dll檔怎麼辦?
在中世紀2的安裝目錄下找到Windows跟你說缺少的.dll,複製進tools\unpacker就好了。對喇你懶得一個一個對可以全丟。

Q.解包顯示成功但找不到檔案怎麼辦?
先確定你有找對地方(destination後面的路徑)。如果還是沒有,檢查你的bat語法。如果檢查過了還是沒有,有可能是VirtualStore的鍋,請參考這裡

Q.解包顯示失敗怎麼辦?
你的遊戲檔案損毀了,重新安裝或是用steam驗證檔案完整性。



裡面有一個下載連結是幾個已經寫好的bat檔,不加以編輯的話會解包至C:\Unpack


引用網址:https://home.gamer.com.tw/TrackBack.php?sn=4217387
Some rights reserved. 姓名標示-非商業性 2.5 台灣

相關創作

同標籤作品搜尋:全軍破敵2 特別攻略版|全軍破敵 2:王國興起

留言共 2 篇留言

苦力怕十一世
謝謝大大詳細教學~馬上去試試看!

05-06 15:17

Alondite
欸欸真的有人在關注這個喔(¯―¯٥)我是不是該更新了05-06 15:22
苦力怕十一世
小弟最近才入坑中世紀2,想試試看MOD這才找到大大的文,大大照自己的節奏就好XD不過真D詳細,收藏個~

05-06 17:35

我要留言提醒:您尚未登入,請先登入再留言

3喜歡★ch70119 可決定是否刪除您的留言,請勿發表違反站規文字。

後一篇:中世紀2 modding...

追蹤私訊切換新版閱覽

作品資料夾

lemonade1120大家
歡迎來逛逛看看喔~ ^^看更多我要大聲說昨天08:48


face基於日前微軟官方表示 Internet Explorer 不再支援新的網路標準,可能無法使用新的應用程式來呈現網站內容,在瀏覽器支援度及網站安全性的雙重考量下,為了讓巴友們有更好的使用體驗,巴哈姆特即將於 2019年9月2日 停止支援 Internet Explorer 瀏覽器的頁面呈現和功能。
屆時建議您使用下述瀏覽器來瀏覽巴哈姆特:
。Google Chrome(推薦)
。Mozilla Firefox
。Microsoft Edge(Windows10以上的作業系統版本才可使用)

face我們了解您不想看到廣告的心情⋯ 若您願意支持巴哈姆特永續經營,請將 gamer.com.tw 加入廣告阻擋工具的白名單中,謝謝 !【教學】