|
|
本帖最后由 克罗诺亚 于 2010-11-17 23:05 编辑
9 C, I3 \3 r- w! N1 {$ Z7 s: i1 x
街机游戏修改流程9 J6 w8 n$ S7 J/ J) q/ v K
最近闷得慌,没事研究起街机游戏,有点成效,也有好些问题。希望了解的人给予帮助与解答,十分感谢!
5 q8 {, o0 ^+ Z下来就将我修改的流程放上来,大家可以共同研究。
5 e9 j6 O- Z! M工具:WinHex(16进制编辑器),cheat.zip;FBA Debugger,Mame Debugger(可以不用,但是个人喜欢).4 t9 t. ]7 j/ x _$ ]
工具置顶帖里都有收集,http://forum.emu618.com/thread-20393-1-1.html。
1 D& V) j% W1 o. p* i/ I. yFBA Debugger下载与使用说明By 疾风之狼http://forum.emu618.com/thread-95692-1-1.html。! V# M$ r$ ]& u b4 F
Cheat.zip:就是Mame的作弊文件,可以解压出来,直接找到要作弊的代码。(FBA支持作弊码查找,不过有现成的,何乐而不为呢)
8 r# P7 m' z1 X, l- f) V5 ]2 |% g- n$ f- H9 y
游戏:战国世纪(Samurai Aces)。
8 S6 h: ~- t7 a0 y& d修改目的:1P战机数不减。+ s5 ]4 \) G% P0 K O
流程 ①:找到cheat文件夹下的:samuraia.xml,找到作弊码无限生命:FE1B05=06。如图:
& z5 b/ p6 g3 D: R0 H' @" c" m* ^' a% n7 _0 s; [% }) E
②:打开FBA Debugger,载入Samurai Aces。先查看游戏信息,点击Game—View Game info-Rom info,可以看到哪些文件是主程序,哪些是图形和声音数据。; W8 \! d6 ?: K3 m9 J+ F# G5 L6 c
) N5 H! o( J K% g
进入游戏,准备好自杀的时候。点击MISC,再点击Invoke Debugger,弹出FBA Debugger界面。在底下的框中,写断点:sb w 1 FE1B05 / E$ b; ]+ } q7 T/ ` A
注意空格。点击Execute,断点就被写入了。接下来,点击go,继续游戏。
2 Q, u1 }' c/ I5 ?- Z死一战机后,程序停止,来到这里;
, Q/ `" j3 {# V2 U1 w4 ^2 L8 ^5 R8 t! V5 m! w) e+ L
06CEE0 tst.w ($10,A2);往上看一行,06CEDC Subq.w #1, ($10,A2)
: c6 }2 |* F( u4 o$ }6 u5 W这句语句的意思在明显不过了,就是使战机数地址的内容减去1,改掉这句,战机数就不减了(PS:这个游戏是68EC202汇编,自己看代码意会的,错了高手不要笑我)。
* j3 q: f& {# d( G③:打开Mame Debugger。(用FBA Debugger也可以,不过感觉字体小,而且不很方便)* p) V, x: T' N7 ~/ d, `! R
载入Rom,开始做第一步,同①。 u. x. {) R( O( ]8 r
接下来,设置断点,这个断点和先前那个不一样,是PC断点(不知道说法对不对)。在底下的空白处,写:bp 06CEE0+ z; v$ y+ G- [2 d
按Enter键写入断点;F5继续游戏,等到死一架战机时,停到这里:06CEE0,就是设置的断点地址。
4 M- Z4 e! Z1 [
) o" Z2 O- l" y( Y看右边,记下536A 0010 4A6A 0010 ) q& u2 ^$ U" q/ O& T3 f- i( z
0 g! y1 _: `3 l8 k
WinHex打开bin文件,在第②步中,一共有三个bin文件是主程序,查找6A53 6A4A,一个一个文件查,在4—u127中找到6A53 6A4A,找到后,将6A53改为6A4A。9 N$ S/ ~" G0 s1 @
0 m2 i% O( J, h) T* WSubq.w #1, ($10,A2)改为了tst.w ($10,A2),不减1,直接送入战机地址,然后将4-u127替换原来的文件,压缩好后,进入游戏测试,果然命数不减了。
0 z+ ~" r% d, H; I) ]6 n( C |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
x
评分
-
2
查看全部评分
-
|