|
|
本帖最后由 克罗诺亚 于 2010-11-17 23:05 编辑
! Q$ |9 s$ _$ u5 m# a* h! w+ {5 B- _" x3 L
街机游戏修改流程
3 \9 b+ S' m5 e! d9 {' W; J最近闷得慌,没事研究起街机游戏,有点成效,也有好些问题。希望了解的人给予帮助与解答,十分感谢!
3 n7 F" Q7 q( i& N+ D% A7 a下来就将我修改的流程放上来,大家可以共同研究。
5 R6 I- E6 D5 [, m工具:WinHex(16进制编辑器),cheat.zip;FBA Debugger,Mame Debugger(可以不用,但是个人喜欢).
9 j, t! L# s% y0 y9 c" V9 r工具置顶帖里都有收集,http://forum.emu618.com/thread-20393-1-1.html。
+ H/ ^: T5 d0 h6 U+ r0 AFBA Debugger下载与使用说明By 疾风之狼http://forum.emu618.com/thread-95692-1-1.html。# o2 r; h7 L Y* `& V7 M
Cheat.zip:就是Mame的作弊文件,可以解压出来,直接找到要作弊的代码。(FBA支持作弊码查找,不过有现成的,何乐而不为呢)
2 ~+ b1 B* N. G6 O- p, c
: @1 Z$ i6 a' u5 V" c游戏:战国世纪(Samurai Aces)。2 r5 {( j d6 v5 N
修改目的:1P战机数不减。
+ S; w' n: C. U' H流程 ①:找到cheat文件夹下的:samuraia.xml,找到作弊码无限生命:FE1B05=06。如图:# C3 G: U: A! m
6 L# N& c; l0 h9 [0 K+ U. L z
②:打开FBA Debugger,载入Samurai Aces。先查看游戏信息,点击Game—View Game info-Rom info,可以看到哪些文件是主程序,哪些是图形和声音数据。$ t$ r4 N4 W/ _* ? A8 H/ O
* [0 m( s3 y8 Q# u. S3 @; e( l
进入游戏,准备好自杀的时候。点击MISC,再点击Invoke Debugger,弹出FBA Debugger界面。在底下的框中,写断点:sb w 1 FE1B05 6 V+ v j! e% V0 B6 S
注意空格。点击Execute,断点就被写入了。接下来,点击go,继续游戏。+ R9 u0 O5 r7 N$ ?# A5 F8 |
死一战机后,程序停止,来到这里;
9 N' H" \3 J+ ?
% M' z) U! ]& m2 `# }1 x( C06CEE0 tst.w ($10,A2);往上看一行,06CEDC Subq.w #1, ($10,A2)
1 l' z7 R% c' |! Z3 f0 Q这句语句的意思在明显不过了,就是使战机数地址的内容减去1,改掉这句,战机数就不减了(PS:这个游戏是68EC202汇编,自己看代码意会的,错了高手不要笑我)。
& Y( X/ l* A$ J5 b③:打开Mame Debugger。(用FBA Debugger也可以,不过感觉字体小,而且不很方便)
& ^4 A/ A, b8 B- I; C7 L) Z3 d' Z5 A载入Rom,开始做第一步,同①。
9 V& J$ t5 x! r! b( @1 @接下来,设置断点,这个断点和先前那个不一样,是PC断点(不知道说法对不对)。在底下的空白处,写:bp 06CEE0
, H: x0 ~ ~+ ?按Enter键写入断点;F5继续游戏,等到死一架战机时,停到这里:06CEE0,就是设置的断点地址。
" q& y0 o% W1 }. k3 `2 `0 r3 g" v; }2 E; m, B
看右边,记下536A 0010 4A6A 0010
3 {+ q+ p0 s4 c; w8 v
& A, K' ^8 K0 e& @+ I8 X7 _2 wWinHex打开bin文件,在第②步中,一共有三个bin文件是主程序,查找6A53 6A4A,一个一个文件查,在4—u127中找到6A53 6A4A,找到后,将6A53改为6A4A。6 W; k. H8 P* p T
5 t' E; H3 p8 g9 RSubq.w #1, ($10,A2)改为了tst.w ($10,A2),不减1,直接送入战机地址,然后将4-u127替换原来的文件,压缩好后,进入游戏测试,果然命数不减了。
3 T& c8 [7 x) n3 S/ A* K |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
×
评分
-
1
查看全部评分
-
|