|
本帖最后由 克罗诺亚 于 2010-11-17 23:05 编辑
: V; g3 F2 }& q" T2 t9 V3 Q0 b" x) o. b4 G8 @" T( U
街机游戏修改流程: V% B) q$ u1 b+ G# |- W
最近闷得慌,没事研究起街机游戏,有点成效,也有好些问题。希望了解的人给予帮助与解答,十分感谢!/ b) @; K8 ?- _9 r, X
下来就将我修改的流程放上来,大家可以共同研究。2 D5 I' `- \; A' [
工具:WinHex(16进制编辑器),cheat.zip;FBA Debugger,Mame Debugger(可以不用,但是个人喜欢).- O) {, E6 K$ s/ h) n* b* ]
工具置顶帖里都有收集,http://forum.emu618.com/thread-20393-1-1.html。
5 N; p9 B7 r% l3 j+ {3 G# MFBA Debugger下载与使用说明By 疾风之狼http://forum.emu618.com/thread-95692-1-1.html。
; P' @* e. L i6 W7 e% ^+ @6 nCheat.zip:就是Mame的作弊文件,可以解压出来,直接找到要作弊的代码。(FBA支持作弊码查找,不过有现成的,何乐而不为呢)
7 f8 q; J9 Z8 h ]1 s
: i; D6 {; R9 V L# Y6 y' z8 F/ F4 I游戏:战国世纪(Samurai Aces)。9 u! P2 E3 j- l' {- h* A: k
修改目的:1P战机数不减。
+ S- N/ ^' ]6 u: |' ~% v# {流程 ①:找到cheat文件夹下的:samuraia.xml,找到作弊码无限生命:FE1B05=06。如图:& D' [2 L* p4 A1 L
) J4 f4 ~- x% a! M6 o3 F% z% ~2 S②:打开FBA Debugger,载入Samurai Aces。先查看游戏信息,点击Game—View Game info-Rom info,可以看到哪些文件是主程序,哪些是图形和声音数据。
2 n* L9 d0 h, M6 _1 }% ?- C2 q5 G: d+ q
进入游戏,准备好自杀的时候。点击MISC,再点击Invoke Debugger,弹出FBA Debugger界面。在底下的框中,写断点:sb w 1 FE1B05
4 k d# P- C" L) v: f# p注意空格。点击Execute,断点就被写入了。接下来,点击go,继续游戏。. [7 q$ @% w/ l
死一战机后,程序停止,来到这里;
* K0 v c. ^3 b! }1 c: e/ y
/ q" C: A. D# p8 ~1 W% f06CEE0 tst.w ($10,A2);往上看一行,06CEDC Subq.w #1, ($10,A2)" \$ U0 M# Q! f: P
这句语句的意思在明显不过了,就是使战机数地址的内容减去1,改掉这句,战机数就不减了(PS:这个游戏是68EC202汇编,自己看代码意会的,错了高手不要笑我)。
- E! u: N' R* [2 q③:打开Mame Debugger。(用FBA Debugger也可以,不过感觉字体小,而且不很方便)
# \/ m' p; |9 E载入Rom,开始做第一步,同①。2 z" C$ \) f# y1 D6 e
接下来,设置断点,这个断点和先前那个不一样,是PC断点(不知道说法对不对)。在底下的空白处,写:bp 06CEE0
$ C( A+ k j" [8 N0 {按Enter键写入断点;F5继续游戏,等到死一架战机时,停到这里:06CEE0,就是设置的断点地址。
- i2 }6 D8 w* B
, n7 r! z3 ^( ~2 X! a看右边,记下536A 0010 4A6A 0010
! X/ n- X3 g. k% k1 e5 t2 G/ V: X Y
7 N; |$ [% s3 a: v3 YWinHex打开bin文件,在第②步中,一共有三个bin文件是主程序,查找6A53 6A4A,一个一个文件查,在4—u127中找到6A53 6A4A,找到后,将6A53改为6A4A。
5 R; i7 {5 w1 Q W1 m1 w
$ X1 ?8 s; U2 L5 p eSubq.w #1, ($10,A2)改为了tst.w ($10,A2),不减1,直接送入战机地址,然后将4-u127替换原来的文件,压缩好后,进入游戏测试,果然命数不减了。' Q7 n+ U$ E5 @( ?$ b: \- U
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
x
评分
-
1
查看全部评分
-
|