[成吉] 成吉思汗4劇本修改彙總(3):國家與地區

作者: iamcrazyforu (愛吃糖的貓)   2018-04-05 23:47:07
這一篇將依序介紹劇本介紹、地區與國家的修改。
除了特別說明的例外,進行任何修改時請注意下列幾點事項:
1.請先預備修改所需的必要工具。(請參見:事前準備與各檔案功能篇 #1Qmtu68b (Koei))
2.進行修改時,請以您的hex編輯軟體打開檔案,並將軟體調整到hex編輯模式。
3.內文提到的「位址」全部以16進位表示。
4.在進行任何編輯後,請務必確認檔案的字元數和原本沒有差異。
劇本開始年度
在劇本檔SCEDAT1~4.ck一開始的兩個byte是該劇本的開始年度設定,數值是進入遊戲後顯
示的開始年度-1。
例如在SCEDAT1.ck中,可看到第一劇本的原始設定是A4 04(16進位的4A4,就是10進位的
1188)。
假設想要把第二劇本的開始時間改為1260年蒙哥死後忽必烈與阿里不哥爭位的時代,就要
將SCEDAT2.ck一開始的兩個byte改成EB 04(十六進位的4EB,就是十進位的1259)。
劇本顯示名稱
遊戲進入畫面中選擇劇本時顯示的名稱,位在SCEDAT1~4.ck劇本檔的開始年度後面的位址
0002~0012,共17 byte,最多可容納8個全形字,在最後一個字的後面一個byte要放入16進
位碼00,如果不到8個字,後面用空白(16進位碼20)填補。
劇本介紹文字
位處劇本檔SCEDAT1~4.ck的位址0013~0206,共有500 byte,在最後一個字的後面一個byte
要放入16進位碼00,後面用空白(16進位碼20)填補。
但須注意各個劇本檔在遊戲中會顯示的介紹文字長度也是在執行檔寫死的,所以更改後的
介紹文字長度必須要與原本相等或是字數更少,如果放入的文字比原版多,多出來的字實
際在遊戲中就無法顯示了。
各劇本的實際字數上限為:
第一劇本:157個全形字(314 byte);第二劇本:145個全形字(290 byte);第三劇本:110
個全形字(220 byte);第四劇本:163個全形字(326 byte)
在進入劇本後的國家選單中所出現人物跑馬燈的部分,會在武將介紹時一併介紹。
地區
地圖上每一格屬於哪一個地區由地圖設定檔決定,也就是地區的範圍在每個劇本中都會一
樣(地圖修改的部分在以後會有一篇專門介紹)。
不過地區在每個劇本中的名稱、所屬文化圈和氣候(不會顯示的隱藏數值,會決定農田和牧
場的產量,以及會發生的災難種類)都可以有不同的設定。
地區的資料在劇本檔SCEDAT1~4.ck中的位址0207~062E處,全部共有1064 byte,分為56個
地區,在武將與妃子資料中的出身地區編號,就是各地區的資料在劇本檔中排列的順序,
從00~37(就是十進位的55)。
每個地區的資料長度為19 byte,格式如下:
aa bb bb bb bb bb bb bb bb bb bb bb bb bb bb bb
cc dd ee
其中,
aa為地區固定編號(從00~37,就是十進位的55),同一個地區在各劇本檔內的固定編號都相
同。會影響與地區相關的事件(如統一某地區等)的觸發。
bb為地區名稱,共15 btye,最多可容納7個全形字,在最後一個字的後面一個byte要放入16
進位碼00,如果不到7個字,後面用空白(16進位碼20)填補。
cc為地區的海陸分布型態,其中00~14(十進位的20)為各海島、15為世界島、16為水域
dd為地區所屬文化圈,各文化圈代碼請參考上一篇的介紹
ee為該地區的氣候設定,在CKW95.exe執行檔的位址1D6920~1D69C7有遊戲中各氣候區的名
稱可供參考(不會在遊戲中顯示),由下至上分別為代碼00~0A的各氣候區:
00–熱帶雨林氣候
01–熱帶草原氣候
02–草原氣候(應是指乾草原)
03–沙漠氣候
04–地中海型氣候
05–溫暖冬季小雨氣候(大概是指溫帶季風氣候??)
06–溫暖濕潤氣候
07–西岸海洋性氣候(應是指溫帶海洋性氣候)
08–冷帶濕潤氣候(應是指溫帶大陸性與副極地氣候)
09–冷帶冬季小雨氣候(應是指溫帶濕草原)
0A–凍原氣候
例如冰島在劇本檔中的資料為:
34 A6 42 AE 71 00 20 20 20 20 20 20 20 20 20 20
10 06 08
顯示冰島的地區固定編號是34(10進位的52),接著是「冰島」的ANSII碼、表示結束的字元
00和相當於5個全形字的空白。冰島的海陸分布屬於海島10(十進位的16),並屬於文化圈06
(西歐)與氣候08(溫帶大陸性與副極地氣候)。
國家
各劇本內包含的國家數目,位於CKW95.exe執行檔內,最多80個,其位址依各劇本分別為:
第一劇本 90A4B
第二劇本 90A58
第三劇本 90A5F
第四劇本 90A66
例如第三劇本的原有國家數為33個(16進位為21),若想要增加為36個,就要將90A5F從21改
為25(就是十進位的36)。
這裡必須注意,劇本內的國家數與國家資料的長度必須與執行檔一致,否則會當機。
若有強者願意開發編輯器,建議可以在讀取劇本檔時先請使用者輸入劇本內國家與城市數
作為劇本檔案是否有效的檢查。
(國家的資料因為遊戲開始時不能有無法行動的空白國家,所以無法標準化)
國家的資料在劇本檔SCEDAT1~4.ck中的位址062F以後,各國的資料在劇本檔中排列的順序
,就是在武將和城市資料中的國家編號,編號從00開始。
因為劇本中國家資料的長度受國家的數目決定,所以國家資料的長度在各劇本不同,並且
可以依國家數的增減而變動,格式如下:
(每個國家的資料長度應為「22+2×劇本內國家數」byte)
aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa
aa aa aa bb cc cc de fd ...
在aa~cc間的22個 byte是國家的基本資料,其中:
aa為國家名稱,共19個 byte,最多可容納9個全形字,在最後一個字的後面一個byte要放
入16進位碼00,如果不到9個字,後面用空白(16進位碼20)填補。
bb為國家的固定編號,通常同一個政權在各劇本檔內的固定編號相同。會影響與國家相關
的事件的觸發,建議在同一劇本內不要重複。如果大於52(16進位的34),進入遊戲後會被
判定為是遊戲開始時才設定的新勢力。
cc為國家的君主,裡面的數值就是君主的武將編號。武將編號依照武將資料在劇本檔中的
順序,從0排到499(16進位的1F3,顯示為F3 01)。
例如第一劇本的葡萄牙王國的基本資料為:
B8 B2 B5 E5 A4 FA A4 FD B0 EA 00 20 20 20 20 20
20 20 20 2F 9F 00
前10個byte是「葡萄牙王國」的ANSII碼、表示結束的字元00和相當於4個全形字的空白。
葡萄牙在這個劇本的固定編號是2F(十進位的47),君主的武將編號是9F(十進位的159)。
de fd則是這個國家與其他國家的外交關係,在劇本內有幾個國家就會有幾組,第X組就是
這個國家與同劇本檔中國家編號X-1的國家的外交關係,其中:
e是這個國家與對方的友好度(從0~F,即十進位的15)
d是這個國家與對方的同盟期間(若無同盟則為0),第一個byte中的d是16進位下的個位數、
第二個byte中的d是16進位下的十位數。開始遊戲時同盟期間有一個由是否為同
文化圈、友好度與有無聯姻的函數設定的上限。
f是這個國家與對方是否有聯姻(有則為1,無則為0)
例如第二劇本的拜占庭帝國與伊兒汗國的外交關係顯示為2A 11,
表示拜占庭帝國與伊兒汗國的友好度為A(十進位的10),同盟期間為12(十進位的18),且兩
國之間有聯姻。
又假設原本的劇本有X個國家,現在想要再加入2國,這時就要使劇本檔內每個國家的資料
的長度從原本的22+2X變成22+2X+4 byte,也就是要:
1.將劇本檔內每個原有國家的資料再插入4個byte,並在新增的位址上加入原有國家與2個
新國家間的外交關係。
2.在國家資料的最後面插入2×(22+2X+4)個byte,並在新增的位址上加入2個新國家的基
本資料與和他國的外交關係。
隨機國名
電腦在遊戲中宣布獨立,以及在遊戲開始設定新勢力時會產生的隨機國名,其位址位於
NEWNAME.ck檔案的位址0~C87,隨機國名按照其所屬的地區編號排列,最前面是在編號00地
區會產生的國名,最後面是在編號55的地區會產生的國名。
華南、華北地區的隨機國名,則位於CLW95.exe執行檔的位址1DDB68~1DDB9D。
作者: Batou (小當家)   2018-04-06 00:43:00
作者: cito (シト)   2018-04-06 07:00:00
作者: Batou (小當家)   2018-04-07 13:23:00
請問執行檔修改了國家數之後 劇本檔要怎麼增加國家?
作者: CLawrence (L)   2018-04-07 14:29:00
推個
作者: iamcrazyforu (愛吃糖的貓)   2018-04-07 15:38:00
回Batou大,我在修文中加了一段說明
作者: MrHeat (熱火先生)   2018-04-07 17:03:00
喔喔喔再推再推!
作者: iamcrazyforu (愛吃糖的貓)   2018-04-07 18:38:00
補充華南、華北地區隨機國名
作者: Batou (小當家)   2018-04-07 19:18:00
感謝i大說明 那增加城市的話需要修改執行檔嗎?還是直接在劇本檔插入資料即可
作者: iamcrazyforu (愛吃糖的貓)   2018-04-07 21:55:00
城市部分請Batou大參閱下篇,有城市修改的完整說明

Links booklink

Contact Us: admin [ a t ] ucptt.com