真三國無雙4 招式的基本動作文件mot的替換辦法
作者:佚名 來源:本站 時間:2023-08-24 點擊:次
大家知道,MOV的04H所指定的動作都是包含在MOT內的,只有MOT內有了這個動作,才可以通過修改MOV讓人物使用出相應招式來。所以,只有替換了MOT才能根本上改變一個人物的招式。比如我們可以用關羽的ATK1MOT和呂布的ATK2MOT,組合一個擁有關羽C4和無雙,又擁有呂布C3,C6的角色。。。
不過354S的MOT都是打包在LINKDATA.BIN內的,這給我們替換MOT帶來很大的不方便,修改時仔細備份一下是必要的。目前的方法還不是很完善,本貼也是本著拋磚引玉的目的,希望大家能發現更好的辦法。
以呂布為例,我們可以進入到它的ATK內,拖到底,看見下一個文件頭幾個字節是42 50 4B 30(這是打包文件開頭的標志)這個文件就是呂布的NORMALMOT,再用WINHEX的搜索功能,沿著這里往下搜“42 50 4B 30”,1012C350這行也有個42 50 4B 30,這是ATK1MOT;再往下1018F310行,這是ATK2MOT;再往下101E4000,這是PLAYMOT。 擁有大眾招式關聯的人(比如劉備,馬超)每個人都只有ATK2MOT和PLAYMOT(PLAYMOT在后),而其他人在ATK之后按順序依次擁有NORMALMOT,ATK1MOT,ATK2MOT,PLAYMOT,每個MOT的結尾是后一個MOT的第一個字節的前一個字節。這樣我們就可以把全部人物的全部MOT找到了。。。
找到了MOT,下一步就是替換了。一般來說,NORMALMOT和ATK1MOT盡量不要改變,只通過替換ATK2MOT,就可以實現不同人物的招式之間的不同組合了。但由于每個MOT的長度不一,所以一般我們只能用較小的MOT來替換較大的MOT,否則原來的較小的MOT的空間是裝不下較大的新MOT的,會影響到后面的文件。比如馬超可以裝下呂布的ATK2MOT,但是呂布卻裝不下馬超的,(會影響到后面的PLAYMOT)這給我們的修改造成了一些限制。
如果遇到這種“裝不下”的情況,可以換個方法(燕子啟發的。。。)。把光標拖到整個BIN文件的底部,然后把第一個人的MOV(包含MOV的前兩行,也就是42 50 4B 30開頭那兩行)-ATK和除了PLAYMOT外的3個MOT全部復制到BIN文件尾部,也就是擴容了。。。然后把第2個人的ATK2MOT覆蓋到相應位置,再次擴容就可以了。然后,我們再進入IDX文件內,把相應人物的IDX代碼指向新的擴容后的地址即可。
IDX代碼的前三個字節與BIN的對應關系為:(第3個字節*10000+第2個字節*100+第1個字節)*800=BIN文件內該文件的行地址。比如香香MOV的IDX在第1760行,其前三個字節為4B 04 02 ,那么可以算出其BIN地址為(02*10000+04*100+4B)*800=10225800 ,如果我們在BIN文件末尾擴容了,那么可以通過BIN地址反算IDX代碼。擴容前的BIN的最后一行的下一行(也是擴容后新的MOV的地址)的地址是8E822800,8E822800/800=11D045,那么我們只需要把香香的IDX的前三個字節改為450D11,就可以讓香香使用新的擴容后的招式。
附武將MOV的BIN地址和IDX地址列表:(感謝蜉蝣和涼宮的破解工作)
BIN地址 /角色/IDX地址
0F193000 趙云 15C0
0F2DF800關羽 15E0
0F413000張飛 1600
0F562000侯惇 1620
0F6B3800典韋 1640
0F7E1800 許楮 1660
0F947800周瑜 1680
0FA82800陸遜 16A0
0FBCB800 太史慈 16C0
0FD0C800 貂蟬 16E0
0FE49800 諸葛亮 1700
0FF80000 曹操 1720
100C6800 呂布 1740
10225800 孫尚香 1760
10382000 劉備 1780
103FF800 孫堅 17A0
1047A000 孫權 17C0
104FD000 董卓 17E0
1057D800 袁紹 1800
105F5000 馬超 1820
106A0000 黃忠 1840
1071A000 夏侯淵 1860
10797800 張遼 1880
10827000 司馬懿 18A0
1095E000 呂蒙 18C0
109CF000 甘寧 18E0
10A4F800 姜維 1900
10ADE000 張角 1920
10C15000 徐晃 1940
10D6B800 張頜 1960
10EB5800 甄宓 1980
10FEA000 黃蓋 19A0
1111D000 孫策 19C0
11263000 魏延 19E0
113BA000 龐統 1A00
114F9800 孟獲 1A20
11651000 祝融 1A40
117A4000 大喬 1A60
118E8000 小喬 1A80
11A36000 曹仁 1AA0
11B68800 周泰 1AC0
11CC7000 月英 1AE0
11E1C800 曹丕 1B00
11F90000 龐德 1B20
120EB000 凌統 1B40
1225A000 關平 1B60
123C7800 星彩 1B80
12524000 左慈 1BA0
126D2000 大劍 1BC0
12826800 細劍 1BE0
1296F800 立志劍 1C00 (這個地址徒弟寫錯了。。。)
129ED000 立志槍 1C20
12A7B800 立志戟 1C40(這3個招式也有大眾關聯性)
以上所有人物在IDX內都占據2行,其中第一行是MOV的地址(包含ATK和除了PLAYMOT之外的其它MOT),第2行是PLAYMOT的地址,所以我們可以方便地互換兩個人的PLAYMOT從而改變他們的勝利動作,而不用影響到他們本身的招式。
以下角色都沒有PLAYMOT,所以每個角色只對應1行IDX:
12AEC800 槍護衛 1C60
12B89000 杖護衛 1C70
12C17800 弩護衛 1C80
12CA2800 劍護衛 1C90
12D2F000 扇護衛 1CA0
12DBB000 弓護衛 1CB0
12EA3800 弓兵 1CE0
12F06000 劍兵 1D00
12F44000 武官劍大眾 1D10
1301C800 文官劍大眾 1D20
13155800 女兵 1D30
13198000 槍兵 1D40
131DB800 槍大眾臉 1D50 (這家伙居然有ATK2MOT,所以一般人可以直接使用這套招式)
13333000 戟兵 1D60
1337A000 戟大眾臉 1D70
13440800 投爆兵1D80
13446800 攻擊據點兵 1D90
13512800 防御據點兵 1DA0
除了直接相互替換ATK2MOT之外,我們也可以用一個人的ATK2MOT來替換另外一個人的PLAYMOT,這樣新人物就相當于獲得了3個ATK MOT ,招式修改起來的發揮空間就更大了。。 具體方法是:將A角色的ATK2MOT復制到BIN文件的尾部,然后修改B角色的IDX的第2行(也就是PLAYMOY這一行)讓它指向新的ATK2MOT的地址,這樣A角色的ATK2MOT就變成了B角色的PLAYMOT了。。注意此方法有個缺點,就是B角色內與PLAYMOT有關的動作會受到牽連,不過我們可以盡量彌補這個缺點,畢竟PLAYMOT在戰斗中使用到的時候不多。。。比如可以把射箭相關動作全部改為0E,00 ;(反正射箭是第一視角,看不出破綻來),反擊啟動動作可以改為10,00(格擋)或者1A,00(鍔破勝),上馬動作用0D,00(跳躍)代替吧~ 至于勝利失敗動作,那就可以自由發揮來修改了,完全不用拘泥于原有的動作。
- 上一篇: 騎馬與砍殺 心得體驗
- 下一篇: 騎馬與砍殺 拿火槍的辦法