|
|
本帖最后由 克罗诺亚 于 2010-11-17 23:05 编辑 0 h5 u0 `* N8 G7 m7 g
3 e% ^& z7 F0 H4 |街机游戏修改流程
7 z9 ?5 m: `; O- D. }6 v2 O4 \6 n最近闷得慌,没事研究起街机游戏,有点成效,也有好些问题。希望了解的人给予帮助与解答,十分感谢!
4 X8 J. g; c" t; b; e* k下来就将我修改的流程放上来,大家可以共同研究。; `0 y- |2 R6 v, V9 J. t
工具:WinHex(16进制编辑器),cheat.zip;FBA Debugger,Mame Debugger(可以不用,但是个人喜欢).( J5 j; ?7 }. `+ }( y
工具置顶帖里都有收集,http://forum.emu618.com/thread-20393-1-1.html。
/ u/ F- |' Z( ]/ n3 a! A/ C7 A# vFBA Debugger下载与使用说明By 疾风之狼http://forum.emu618.com/thread-95692-1-1.html。
d5 ?7 O$ t4 Y8 aCheat.zip:就是Mame的作弊文件,可以解压出来,直接找到要作弊的代码。(FBA支持作弊码查找,不过有现成的,何乐而不为呢). V+ Y) o! T; O
- o* A) j2 {5 p) t
游戏:战国世纪(Samurai Aces)。5 K% M! I! q8 E
修改目的:1P战机数不减。
5 b& d( G1 M( P; ] ^ }4 t流程 ①:找到cheat文件夹下的:samuraia.xml,找到作弊码无限生命:FE1B05=06。如图:
5 L- F% c: u% R; V( c# A( H5 l
+ J( f2 e6 k; k1 o②:打开FBA Debugger,载入Samurai Aces。先查看游戏信息,点击Game—View Game info-Rom info,可以看到哪些文件是主程序,哪些是图形和声音数据。
7 q1 \+ E" M: e. p: m1 `* h" z: g% W* |
进入游戏,准备好自杀的时候。点击MISC,再点击Invoke Debugger,弹出FBA Debugger界面。在底下的框中,写断点:sb w 1 FE1B05 7 O4 n5 a+ p6 G1 O) x
注意空格。点击Execute,断点就被写入了。接下来,点击go,继续游戏。/ [, M: [6 W( A0 o
死一战机后,程序停止,来到这里;
: q2 t% T, g& Z* V! }# u
: I9 W: z' `- H1 O$ H3 ~# H06CEE0 tst.w ($10,A2);往上看一行,06CEDC Subq.w #1, ($10,A2)
4 Q9 J6 _" |6 ]这句语句的意思在明显不过了,就是使战机数地址的内容减去1,改掉这句,战机数就不减了(PS:这个游戏是68EC202汇编,自己看代码意会的,错了高手不要笑我)。2 p/ _6 c/ M& T: ]7 z
③:打开Mame Debugger。(用FBA Debugger也可以,不过感觉字体小,而且不很方便)
/ g) I. V$ f( G8 d载入Rom,开始做第一步,同①。
& F) z+ o9 o) W* _; X接下来,设置断点,这个断点和先前那个不一样,是PC断点(不知道说法对不对)。在底下的空白处,写:bp 06CEE0
# B1 w' c3 r7 G2 Q按Enter键写入断点;F5继续游戏,等到死一架战机时,停到这里:06CEE0,就是设置的断点地址。# [) y! Q; ?) T) a8 ?5 X' }
2 j8 |. T/ h7 h) j' T0 o看右边,记下536A 0010 4A6A 0010 & M9 @3 q8 a: [- L
% }& }8 {, W0 T: C/ i7 Z7 \WinHex打开bin文件,在第②步中,一共有三个bin文件是主程序,查找6A53 6A4A,一个一个文件查,在4—u127中找到6A53 6A4A,找到后,将6A53改为6A4A。
Z3 ^7 X% a3 y' ^: W- V* W2 i" g% c) \' U1 C
Subq.w #1, ($10,A2)改为了tst.w ($10,A2),不减1,直接送入战机地址,然后将4-u127替换原来的文件,压缩好后,进入游戏测试,果然命数不减了。' s L* A( i1 x& C Y' E
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
×
评分
-
1
查看全部评分
-
|