|
本帖最后由 克罗诺亚 于 2010-11-17 23:05 编辑 5 L+ v+ S* `4 S! r% [7 L( I7 D
/ D8 T( i- @0 @0 j" J街机游戏修改流程
: ]9 K6 [" E; m* v' q" ^最近闷得慌,没事研究起街机游戏,有点成效,也有好些问题。希望了解的人给予帮助与解答,十分感谢!4 F# w' @; i3 r; d: `5 q) n
下来就将我修改的流程放上来,大家可以共同研究。5 g6 T+ Q4 B5 _
工具:WinHex(16进制编辑器),cheat.zip;FBA Debugger,Mame Debugger(可以不用,但是个人喜欢).
8 }0 _ Z& R# R. I工具置顶帖里都有收集,http://forum.emu618.com/thread-20393-1-1.html。5 W' j3 a }1 v5 U$ i4 c
FBA Debugger下载与使用说明By 疾风之狼http://forum.emu618.com/thread-95692-1-1.html。4 A- K r# F; n! a# z
Cheat.zip:就是Mame的作弊文件,可以解压出来,直接找到要作弊的代码。(FBA支持作弊码查找,不过有现成的,何乐而不为呢)
9 O0 t$ c7 z" M3 u
4 g N- S2 A, y9 }6 [; ?游戏:战国世纪(Samurai Aces)。
' m1 E# Z9 c9 ^/ ~. e+ k9 \6 j修改目的:1P战机数不减。$ s0 Y* [# `- A+ i/ p
流程 ①:找到cheat文件夹下的:samuraia.xml,找到作弊码无限生命:FE1B05=06。如图:. o5 x& q4 h# s6 D0 Z
, t2 E# [$ Q! [②:打开FBA Debugger,载入Samurai Aces。先查看游戏信息,点击Game—View Game info-Rom info,可以看到哪些文件是主程序,哪些是图形和声音数据。
$ g1 y( X! d' C8 D
: p7 q% O( n3 i4 K7 {; \# h进入游戏,准备好自杀的时候。点击MISC,再点击Invoke Debugger,弹出FBA Debugger界面。在底下的框中,写断点:sb w 1 FE1B05 8 N* c/ p5 U# h5 f
注意空格。点击Execute,断点就被写入了。接下来,点击go,继续游戏。
& U/ I7 X1 P# S$ R8 S2 I死一战机后,程序停止,来到这里;$ s. [6 `* q: Z8 I2 r! l
7 f* Y% B& C2 }! m) u06CEE0 tst.w ($10,A2);往上看一行,06CEDC Subq.w #1, ($10,A2)7 F+ E& x4 ~: g
这句语句的意思在明显不过了,就是使战机数地址的内容减去1,改掉这句,战机数就不减了(PS:这个游戏是68EC202汇编,自己看代码意会的,错了高手不要笑我)。" w0 d8 L! ?! A# s% D- K
③:打开Mame Debugger。(用FBA Debugger也可以,不过感觉字体小,而且不很方便)% Y9 ]. x" f' v+ o" m$ H' Z# N
载入Rom,开始做第一步,同①。
, A8 {6 j* O$ {接下来,设置断点,这个断点和先前那个不一样,是PC断点(不知道说法对不对)。在底下的空白处,写:bp 06CEE0
7 f& q e7 f: g- H! k( m4 z按Enter键写入断点;F5继续游戏,等到死一架战机时,停到这里:06CEE0,就是设置的断点地址。
, g6 z5 h2 q) V% C4 l3 A: b# v. m
1 `% J' c: P; h( D9 q看右边,记下536A 0010 4A6A 0010 7 ^5 |9 ^ H1 c9 ? J* R! T
3 r6 H" s/ X4 ]+ C& p6 A$ NWinHex打开bin文件,在第②步中,一共有三个bin文件是主程序,查找6A53 6A4A,一个一个文件查,在4—u127中找到6A53 6A4A,找到后,将6A53改为6A4A。- P8 i; l, V' F0 ]" J* S8 m
8 [- ~0 l5 p/ A; E) RSubq.w #1, ($10,A2)改为了tst.w ($10,A2),不减1,直接送入战机地址,然后将4-u127替换原来的文件,压缩好后,进入游戏测试,果然命数不减了。
+ q3 u! v, ?: F9 O |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
x
评分
-
2
查看全部评分
-
|