|
|
本帖最后由 克罗诺亚 于 2010-11-17 23:05 编辑
. ]% D% r' L; A! a6 g# f. W+ A; X0 @/ ?# m6 y# Z4 ]9 k
街机游戏修改流程
! }+ W- w" Q+ w最近闷得慌,没事研究起街机游戏,有点成效,也有好些问题。希望了解的人给予帮助与解答,十分感谢!# N/ [# w5 I4 o7 k2 p1 o
下来就将我修改的流程放上来,大家可以共同研究。
8 s0 d# e N5 b7 e工具:WinHex(16进制编辑器),cheat.zip;FBA Debugger,Mame Debugger(可以不用,但是个人喜欢).; C$ b! O' k7 f, `
工具置顶帖里都有收集,http://forum.emu618.com/thread-20393-1-1.html。
; r7 x' Z. r- s/ v2 ^/ `4 lFBA Debugger下载与使用说明By 疾风之狼http://forum.emu618.com/thread-95692-1-1.html。, G" c1 I ~2 q* x6 O, X
Cheat.zip:就是Mame的作弊文件,可以解压出来,直接找到要作弊的代码。(FBA支持作弊码查找,不过有现成的,何乐而不为呢)0 E7 e+ c8 {; q1 ` j& F
L, o& S- n+ H* A' o游戏:战国世纪(Samurai Aces)。0 q# B8 ?6 [$ {/ i. D2 v1 R; o+ e
修改目的:1P战机数不减。
* s! h' x: q$ \ t8 F# `$ r流程 ①:找到cheat文件夹下的:samuraia.xml,找到作弊码无限生命:FE1B05=06。如图:* O# l% t l. |; N7 f- M. y0 o: n
7 ~) \0 }; `3 c
②:打开FBA Debugger,载入Samurai Aces。先查看游戏信息,点击Game—View Game info-Rom info,可以看到哪些文件是主程序,哪些是图形和声音数据。
/ o" }8 \4 a+ [5 w3 r8 I( u8 s) b! h
进入游戏,准备好自杀的时候。点击MISC,再点击Invoke Debugger,弹出FBA Debugger界面。在底下的框中,写断点:sb w 1 FE1B05
3 v* D4 ~ l, D" [注意空格。点击Execute,断点就被写入了。接下来,点击go,继续游戏。
4 D0 E' j1 Z; k1 K% B死一战机后,程序停止,来到这里;
- X2 G, h; X$ A, n! Y* C- S- }1 ^) i
5 w% S% _- p) ^! U c, V, `$ n* F5 N06CEE0 tst.w ($10,A2);往上看一行,06CEDC Subq.w #1, ($10,A2)
1 Q2 K5 n$ P! t这句语句的意思在明显不过了,就是使战机数地址的内容减去1,改掉这句,战机数就不减了(PS:这个游戏是68EC202汇编,自己看代码意会的,错了高手不要笑我)。& b% l' H" K: c' R" d/ o, h
③:打开Mame Debugger。(用FBA Debugger也可以,不过感觉字体小,而且不很方便)
6 L7 |7 s; _" G+ C$ E载入Rom,开始做第一步,同①。
6 v$ f2 U K' U+ w. |接下来,设置断点,这个断点和先前那个不一样,是PC断点(不知道说法对不对)。在底下的空白处,写:bp 06CEE0
, a' X! N, k: D' O# {按Enter键写入断点;F5继续游戏,等到死一架战机时,停到这里:06CEE0,就是设置的断点地址。) _- ]' c1 V$ F
1 x$ y& y6 B, v& x* k$ Q看右边,记下536A 0010 4A6A 0010
+ J' F1 t3 _0 F! O0 J9 R
6 `9 N% Y, T0 ^! nWinHex打开bin文件,在第②步中,一共有三个bin文件是主程序,查找6A53 6A4A,一个一个文件查,在4—u127中找到6A53 6A4A,找到后,将6A53改为6A4A。
6 p7 W# ?2 \6 k/ C, Y/ ^' _1 ]
( w- k3 g+ K* A3 ^! ?" dSubq.w #1, ($10,A2)改为了tst.w ($10,A2),不减1,直接送入战机地址,然后将4-u127替换原来的文件,压缩好后,进入游戏测试,果然命数不减了。! c2 ?* N: V' F
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
x
评分
-
2
查看全部评分
-
|