|
本帖最后由 克罗诺亚 于 2010-11-17 23:05 编辑 / i* I: I4 V4 v- N9 E( O
% |8 k) Q( h( B
街机游戏修改流程
) L0 d) v/ b: `) d最近闷得慌,没事研究起街机游戏,有点成效,也有好些问题。希望了解的人给予帮助与解答,十分感谢!
$ `8 I+ x: [) t9 B下来就将我修改的流程放上来,大家可以共同研究。
5 t+ U$ x/ Y3 W5 P; A. H0 G/ s6 v7 p6 O工具:WinHex(16进制编辑器),cheat.zip;FBA Debugger,Mame Debugger(可以不用,但是个人喜欢).5 R6 T/ j0 T: b# K: n3 g3 {# E
工具置顶帖里都有收集,http://forum.emu618.com/thread-20393-1-1.html。' ~* L( u9 d1 _
FBA Debugger下载与使用说明By 疾风之狼http://forum.emu618.com/thread-95692-1-1.html。
8 |# O# G# b1 W0 gCheat.zip:就是Mame的作弊文件,可以解压出来,直接找到要作弊的代码。(FBA支持作弊码查找,不过有现成的,何乐而不为呢)2 i6 a+ _ t; u8 }+ O% t
6 N* h- I# L- x) e
游戏:战国世纪(Samurai Aces)。
, Y, m* W6 a- H# m( M. Y+ n4 T修改目的:1P战机数不减。
9 y5 T1 e/ b6 ?: ?, a流程 ①:找到cheat文件夹下的:samuraia.xml,找到作弊码无限生命:FE1B05=06。如图:
; L! f# q7 H: e7 Q) J% V# l3 M6 E, X5 [2 ?. Y
②:打开FBA Debugger,载入Samurai Aces。先查看游戏信息,点击Game—View Game info-Rom info,可以看到哪些文件是主程序,哪些是图形和声音数据。# c/ N. N9 B7 n* R- G* h/ z7 V
2 a! g& u/ o5 q) n进入游戏,准备好自杀的时候。点击MISC,再点击Invoke Debugger,弹出FBA Debugger界面。在底下的框中,写断点:sb w 1 FE1B05
W, S( ~# H8 B, D; o; f6 d注意空格。点击Execute,断点就被写入了。接下来,点击go,继续游戏。
$ q- x, @: V' y" K. i8 S1 `死一战机后,程序停止,来到这里;- J5 o" ~5 G! ^5 O
: G$ I2 ^$ ]! P8 K% ~: D; b/ z2 \06CEE0 tst.w ($10,A2);往上看一行,06CEDC Subq.w #1, ($10,A2)8 ]) J1 a+ L' B4 i8 J
这句语句的意思在明显不过了,就是使战机数地址的内容减去1,改掉这句,战机数就不减了(PS:这个游戏是68EC202汇编,自己看代码意会的,错了高手不要笑我)。! s) n3 R3 }) v. h0 k+ C7 ^ ]; C
③:打开Mame Debugger。(用FBA Debugger也可以,不过感觉字体小,而且不很方便)
5 I1 N" ~! O" a g4 M/ V# u载入Rom,开始做第一步,同①。9 H8 q9 g# Y5 }
接下来,设置断点,这个断点和先前那个不一样,是PC断点(不知道说法对不对)。在底下的空白处,写:bp 06CEE0 I0 G& q. o; j) p6 c
按Enter键写入断点;F5继续游戏,等到死一架战机时,停到这里:06CEE0,就是设置的断点地址。! X! m, P# c/ S5 s$ X# `! B
7 _ i6 `) b2 h7 F- x" s' ]2 X
看右边,记下536A 0010 4A6A 0010 ) p5 S0 x: n8 v, `, K
$ |- e* Z7 e& c) A8 gWinHex打开bin文件,在第②步中,一共有三个bin文件是主程序,查找6A53 6A4A,一个一个文件查,在4—u127中找到6A53 6A4A,找到后,将6A53改为6A4A。
" U+ D; k7 n0 C( r3 R' f
' `$ l) r7 |) T( A" \Subq.w #1, ($10,A2)改为了tst.w ($10,A2),不减1,直接送入战机地址,然后将4-u127替换原来的文件,压缩好后,进入游戏测试,果然命数不减了。
6 y- \, F6 O" c: \) t7 k |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
x
评分
-
1
查看全部评分
-
|