|
|
本帖最后由 克罗诺亚 于 2010-11-17 23:05 编辑 + L1 w3 m. A, I" }
n+ _, b9 S5 A+ L/ f( J2 H街机游戏修改流程6 l: {3 A8 U0 ~$ L; E7 y) Q% Q5 F
最近闷得慌,没事研究起街机游戏,有点成效,也有好些问题。希望了解的人给予帮助与解答,十分感谢!
3 t1 m" k2 T; y; I, k. c下来就将我修改的流程放上来,大家可以共同研究。
9 d/ K6 i4 W. v工具:WinHex(16进制编辑器),cheat.zip;FBA Debugger,Mame Debugger(可以不用,但是个人喜欢).
2 R# O- g: z# B工具置顶帖里都有收集,http://forum.emu618.com/thread-20393-1-1.html。
2 ]% [% u+ {7 {4 ^FBA Debugger下载与使用说明By 疾风之狼http://forum.emu618.com/thread-95692-1-1.html。
3 U1 X2 n9 Q0 }( s; @% fCheat.zip:就是Mame的作弊文件,可以解压出来,直接找到要作弊的代码。(FBA支持作弊码查找,不过有现成的,何乐而不为呢)$ J# ^2 U' A4 ~, ]- o) Q: j
2 `/ d6 |5 L# e3 J
游戏:战国世纪(Samurai Aces)。1 O7 d7 P! v# x
修改目的:1P战机数不减。4 i0 X# T7 U0 E
流程 ①:找到cheat文件夹下的:samuraia.xml,找到作弊码无限生命:FE1B05=06。如图:
, c8 @4 H/ L2 y: T* R6 Q- x" Y
' j3 C9 @4 I8 p②:打开FBA Debugger,载入Samurai Aces。先查看游戏信息,点击Game—View Game info-Rom info,可以看到哪些文件是主程序,哪些是图形和声音数据。: K5 y) ?+ Y: e$ q: `- {( Q
! K& s5 Y, D4 y进入游戏,准备好自杀的时候。点击MISC,再点击Invoke Debugger,弹出FBA Debugger界面。在底下的框中,写断点:sb w 1 FE1B05
& o/ y& S7 L9 L, f0 Z注意空格。点击Execute,断点就被写入了。接下来,点击go,继续游戏。
* W) J( k; L8 ^6 d [! R& G% L0 L死一战机后,程序停止,来到这里;$ B4 F+ ?0 ^" t4 |# J2 v0 ~
6 ]7 I# U* z6 i% {2 W3 B: s
06CEE0 tst.w ($10,A2);往上看一行,06CEDC Subq.w #1, ($10,A2)
$ B/ ~3 j& X- A h这句语句的意思在明显不过了,就是使战机数地址的内容减去1,改掉这句,战机数就不减了(PS:这个游戏是68EC202汇编,自己看代码意会的,错了高手不要笑我)。( a/ v( ~% S3 U D! E9 G, `
③:打开Mame Debugger。(用FBA Debugger也可以,不过感觉字体小,而且不很方便)3 |1 ]- W+ H: n7 H5 O6 a
载入Rom,开始做第一步,同①。& X% P l( d/ b4 h
接下来,设置断点,这个断点和先前那个不一样,是PC断点(不知道说法对不对)。在底下的空白处,写:bp 06CEE0
1 _+ X7 @! n& l' k& U% {" D按Enter键写入断点;F5继续游戏,等到死一架战机时,停到这里:06CEE0,就是设置的断点地址。1 S' @8 _+ |/ ]4 `1 V1 v
+ T% d: \0 N# i" s
看右边,记下536A 0010 4A6A 0010 9 C! A! e% ?3 G5 f8 `# [/ x# O) [
$ v) k3 ^% e/ b( }5 R6 n K/ r
WinHex打开bin文件,在第②步中,一共有三个bin文件是主程序,查找6A53 6A4A,一个一个文件查,在4—u127中找到6A53 6A4A,找到后,将6A53改为6A4A。
" t* m4 Q4 B4 d8 {6 V& N: i
0 T% ?/ o6 @4 I& Z' k, H* XSubq.w #1, ($10,A2)改为了tst.w ($10,A2),不减1,直接送入战机地址,然后将4-u127替换原来的文件,压缩好后,进入游戏测试,果然命数不减了。" L3 l" H: e+ J. o0 g! X& J4 `/ u, Q
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
×
评分
-
1
查看全部评分
-
|