|
本帖最后由 克罗诺亚 于 2010-11-17 23:05 编辑 . I9 B* x( B( o+ W+ l( i* `) k
. ~1 C/ Q6 F- Q, I. l街机游戏修改流程
1 v1 X* _5 V3 C最近闷得慌,没事研究起街机游戏,有点成效,也有好些问题。希望了解的人给予帮助与解答,十分感谢!
3 ^3 w# }, C& c0 Z( v# U下来就将我修改的流程放上来,大家可以共同研究。; Q' P! U+ h$ a( P h9 P
工具:WinHex(16进制编辑器),cheat.zip;FBA Debugger,Mame Debugger(可以不用,但是个人喜欢).
' V2 G, x) |' t/ e/ _& u工具置顶帖里都有收集,http://forum.emu618.com/thread-20393-1-1.html。, O; R9 _# m! B4 X* q8 T
FBA Debugger下载与使用说明By 疾风之狼http://forum.emu618.com/thread-95692-1-1.html。
9 I% L9 G6 X. v" H3 ~Cheat.zip:就是Mame的作弊文件,可以解压出来,直接找到要作弊的代码。(FBA支持作弊码查找,不过有现成的,何乐而不为呢)! \: ^& y7 R3 d& X
4 ^ C2 ]2 z/ J. V* g5 v @- r
游戏:战国世纪(Samurai Aces)。
6 d I" g1 y, e! v6 f修改目的:1P战机数不减。, v9 U0 D( y9 f3 G+ J' U l
流程 ①:找到cheat文件夹下的:samuraia.xml,找到作弊码无限生命:FE1B05=06。如图:$ Z5 _* @. p: x5 W
" @6 o _$ s: ?/ D8 L5 {' b% z& ]②:打开FBA Debugger,载入Samurai Aces。先查看游戏信息,点击Game—View Game info-Rom info,可以看到哪些文件是主程序,哪些是图形和声音数据。8 v. l- ^* ^1 I
; Q/ K% W# ?( w0 Y
进入游戏,准备好自杀的时候。点击MISC,再点击Invoke Debugger,弹出FBA Debugger界面。在底下的框中,写断点:sb w 1 FE1B05
' Z% Q1 `+ a. ?$ X注意空格。点击Execute,断点就被写入了。接下来,点击go,继续游戏。# y/ P3 Q/ S" V7 X( g7 h
死一战机后,程序停止,来到这里;
# p( N, Z* J" ~& A- h1 x" {+ a' g6 [! D$ I2 M
06CEE0 tst.w ($10,A2);往上看一行,06CEDC Subq.w #1, ($10,A2)- |: r" n. X2 k
这句语句的意思在明显不过了,就是使战机数地址的内容减去1,改掉这句,战机数就不减了(PS:这个游戏是68EC202汇编,自己看代码意会的,错了高手不要笑我)。
: T& V) `4 o+ w; o+ N y) F) K③:打开Mame Debugger。(用FBA Debugger也可以,不过感觉字体小,而且不很方便)
) e( @9 I7 x! Y8 P, d载入Rom,开始做第一步,同①。
/ ~1 y! N6 B+ b0 G; D1 r% u* p接下来,设置断点,这个断点和先前那个不一样,是PC断点(不知道说法对不对)。在底下的空白处,写:bp 06CEE0* [- y# h2 E4 T
按Enter键写入断点;F5继续游戏,等到死一架战机时,停到这里:06CEE0,就是设置的断点地址。0 f7 k) q7 U4 }' `7 }
7 f6 `( k8 D5 k( M# ^看右边,记下536A 0010 4A6A 0010 2 z4 f$ h! t. K. m* @' ]4 ], m* E0 I
7 O* t# j% `9 u+ z% u1 e. E
WinHex打开bin文件,在第②步中,一共有三个bin文件是主程序,查找6A53 6A4A,一个一个文件查,在4—u127中找到6A53 6A4A,找到后,将6A53改为6A4A。, {4 q: W2 O& m( Z" N
$ }. H4 z) ^1 p+ c
Subq.w #1, ($10,A2)改为了tst.w ($10,A2),不减1,直接送入战机地址,然后将4-u127替换原来的文件,压缩好后,进入游戏测试,果然命数不减了。
; M, A; t V, f) s- W |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
x
评分
-
2
查看全部评分
-
|