|
|
本帖最后由 克罗诺亚 于 2010-11-17 23:05 编辑 4 _/ q6 s) Z: V
* y5 k3 R! r. u) e4 e! X7 r
街机游戏修改流程
' ?" s% m4 V" S7 V* r最近闷得慌,没事研究起街机游戏,有点成效,也有好些问题。希望了解的人给予帮助与解答,十分感谢!
9 a& O( ^) \, t2 v3 ^: l下来就将我修改的流程放上来,大家可以共同研究。3 l* t7 {( {- i* ^1 G
工具:WinHex(16进制编辑器),cheat.zip;FBA Debugger,Mame Debugger(可以不用,但是个人喜欢).
& ?, J7 S/ l0 u" V. d6 w工具置顶帖里都有收集,http://forum.emu618.com/thread-20393-1-1.html。. J: z0 p$ x: P6 W" n H$ \
FBA Debugger下载与使用说明By 疾风之狼http://forum.emu618.com/thread-95692-1-1.html。
* `/ G A3 a9 ?/ d; ~& ^1 ICheat.zip:就是Mame的作弊文件,可以解压出来,直接找到要作弊的代码。(FBA支持作弊码查找,不过有现成的,何乐而不为呢)* F* [2 X7 r+ m
( ]" v, O% a% @8 q% N游戏:战国世纪(Samurai Aces)。, x) c9 q; b4 F- X, I8 Z! ^* x, k
修改目的:1P战机数不减。
2 j$ q5 z' J4 O8 F3 Q( p7 E5 V流程 ①:找到cheat文件夹下的:samuraia.xml,找到作弊码无限生命:FE1B05=06。如图:% {. [1 W V4 B+ k- I6 {
, r2 l! h1 U# @
②:打开FBA Debugger,载入Samurai Aces。先查看游戏信息,点击Game—View Game info-Rom info,可以看到哪些文件是主程序,哪些是图形和声音数据。
/ D/ I h; @8 K: H
( p* C% X0 |! i. D$ V, D5 r I进入游戏,准备好自杀的时候。点击MISC,再点击Invoke Debugger,弹出FBA Debugger界面。在底下的框中,写断点:sb w 1 FE1B05 9 [* W6 U& R# }
注意空格。点击Execute,断点就被写入了。接下来,点击go,继续游戏。
5 d Y- j4 T9 B F死一战机后,程序停止,来到这里;7 V2 }$ S8 r0 }! X4 q2 e% P
4 i0 m9 W% d( R8 p) ]' S* i06CEE0 tst.w ($10,A2);往上看一行,06CEDC Subq.w #1, ($10,A2)- e6 U. c7 H, P" |
这句语句的意思在明显不过了,就是使战机数地址的内容减去1,改掉这句,战机数就不减了(PS:这个游戏是68EC202汇编,自己看代码意会的,错了高手不要笑我)。+ o _& N' b$ S4 K$ W
③:打开Mame Debugger。(用FBA Debugger也可以,不过感觉字体小,而且不很方便)( b; c; H1 f1 D2 K" B/ g
载入Rom,开始做第一步,同①。* \$ C# ]! |8 W- r/ ^7 U
接下来,设置断点,这个断点和先前那个不一样,是PC断点(不知道说法对不对)。在底下的空白处,写:bp 06CEE0
+ e6 _: p$ N4 ^. T! |1 e& P; r1 W/ b按Enter键写入断点;F5继续游戏,等到死一架战机时,停到这里:06CEE0,就是设置的断点地址。% x; {$ ?. v; i% p1 |* A$ E
5 h+ [( v1 Q, p+ b. c+ n
看右边,记下536A 0010 4A6A 0010
# V4 z; L( M7 F. b8 _! H* \) T$ W, w" I' P8 \7 [
WinHex打开bin文件,在第②步中,一共有三个bin文件是主程序,查找6A53 6A4A,一个一个文件查,在4—u127中找到6A53 6A4A,找到后,将6A53改为6A4A。
; j3 o6 Y( }& F' X; W* r' a1 e% P, ], I1 ?+ ~$ c/ V
Subq.w #1, ($10,A2)改为了tst.w ($10,A2),不减1,直接送入战机地址,然后将4-u127替换原来的文件,压缩好后,进入游戏测试,果然命数不减了。
) o% O4 P5 c7 f; o |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
×
评分
-
1
查看全部评分
-
|