|
本帖最后由 克罗诺亚 于 2010-11-17 23:05 编辑
: G$ e- D! v+ O5 `- |- p; J4 V3 R" x# _: h/ t" ~ n2 l
街机游戏修改流程& C) [1 N9 V( ~
最近闷得慌,没事研究起街机游戏,有点成效,也有好些问题。希望了解的人给予帮助与解答,十分感谢!
7 w9 P) M# n& w3 _下来就将我修改的流程放上来,大家可以共同研究。
6 e6 T/ J6 X* a工具:WinHex(16进制编辑器),cheat.zip;FBA Debugger,Mame Debugger(可以不用,但是个人喜欢).
: j2 m2 z5 g& `. t" p工具置顶帖里都有收集,http://forum.emu618.com/thread-20393-1-1.html。2 |1 b& n- q5 l* I/ l+ W6 g7 t$ z
FBA Debugger下载与使用说明By 疾风之狼http://forum.emu618.com/thread-95692-1-1.html。
6 _' A# j# U* X4 j( U H" }9 oCheat.zip:就是Mame的作弊文件,可以解压出来,直接找到要作弊的代码。(FBA支持作弊码查找,不过有现成的,何乐而不为呢)
1 C9 x. a( o4 I1 J
1 ^9 \2 E7 [8 X8 `& K% c$ F游戏:战国世纪(Samurai Aces)。. e' a, X, x( A1 e, f/ X' g) I! @1 u
修改目的:1P战机数不减。4 F( d! B0 @: D: D
流程 ①:找到cheat文件夹下的:samuraia.xml,找到作弊码无限生命:FE1B05=06。如图:) Y) G0 J2 V: t0 ^
+ B9 h- _0 d) L
②:打开FBA Debugger,载入Samurai Aces。先查看游戏信息,点击Game—View Game info-Rom info,可以看到哪些文件是主程序,哪些是图形和声音数据。) E. |# Y: U* o/ Z; I' I. b, {
* \- h. l; A+ S) O6 [进入游戏,准备好自杀的时候。点击MISC,再点击Invoke Debugger,弹出FBA Debugger界面。在底下的框中,写断点:sb w 1 FE1B05 ' C. s6 j, D" @$ J; T9 `- t
注意空格。点击Execute,断点就被写入了。接下来,点击go,继续游戏。
5 {# \9 F9 l) z# U死一战机后,程序停止,来到这里;
2 o) \, @, _; s/ e! V7 L" ^) [8 r5 f, \8 }8 a4 w6 w0 S
06CEE0 tst.w ($10,A2);往上看一行,06CEDC Subq.w #1, ($10,A2); O9 X/ L& e. [# t2 V
这句语句的意思在明显不过了,就是使战机数地址的内容减去1,改掉这句,战机数就不减了(PS:这个游戏是68EC202汇编,自己看代码意会的,错了高手不要笑我)。( F( n7 v- h& a6 T8 d
③:打开Mame Debugger。(用FBA Debugger也可以,不过感觉字体小,而且不很方便)3 c2 Z- m8 ~0 a4 y" m3 q
载入Rom,开始做第一步,同①。
0 A6 b; {2 A$ o: d0 G接下来,设置断点,这个断点和先前那个不一样,是PC断点(不知道说法对不对)。在底下的空白处,写:bp 06CEE0
- v& _9 h- M: i% \ f: A按Enter键写入断点;F5继续游戏,等到死一架战机时,停到这里:06CEE0,就是设置的断点地址。
" q. w7 b4 q, e2 ?
3 ^6 Q# [3 t( I( j4 q/ ]看右边,记下536A 0010 4A6A 0010
! s3 b2 T1 h [1 }+ }. P+ K( Y. X7 E
5 r9 _$ {$ {) C1 e* e3 MWinHex打开bin文件,在第②步中,一共有三个bin文件是主程序,查找6A53 6A4A,一个一个文件查,在4—u127中找到6A53 6A4A,找到后,将6A53改为6A4A。6 a5 K) h; D5 I- p
1 M8 O/ T7 J4 CSubq.w #1, ($10,A2)改为了tst.w ($10,A2),不减1,直接送入战机地址,然后将4-u127替换原来的文件,压缩好后,进入游戏测试,果然命数不减了。
3 ~) i+ F2 e* @ |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
x
评分
-
1
查看全部评分
-
|