|
|
本帖最后由 克罗诺亚 于 2010-11-17 23:05 编辑 5 w2 U4 W+ t% r& c6 b
S' f+ X7 X: T. ^; ^" A街机游戏修改流程, T B# K+ H9 f
最近闷得慌,没事研究起街机游戏,有点成效,也有好些问题。希望了解的人给予帮助与解答,十分感谢!
" u3 g) G0 [( ?( m: N0 @1 r5 N下来就将我修改的流程放上来,大家可以共同研究。
9 t) c9 \) S! \; e工具:WinHex(16进制编辑器),cheat.zip;FBA Debugger,Mame Debugger(可以不用,但是个人喜欢).9 k* s2 K1 _+ {2 F* w
工具置顶帖里都有收集,http://forum.emu618.com/thread-20393-1-1.html。
# o. \; U {& I# e9 ]FBA Debugger下载与使用说明By 疾风之狼http://forum.emu618.com/thread-95692-1-1.html。+ c& r1 q; o5 X6 @9 T8 C$ I
Cheat.zip:就是Mame的作弊文件,可以解压出来,直接找到要作弊的代码。(FBA支持作弊码查找,不过有现成的,何乐而不为呢)5 T6 r/ |3 l; ?! M. J
2 N# K. g: g" [. I游戏:战国世纪(Samurai Aces)。
& v4 [+ h* y4 e3 s修改目的:1P战机数不减。) O/ _8 O4 y0 a& t5 O
流程 ①:找到cheat文件夹下的:samuraia.xml,找到作弊码无限生命:FE1B05=06。如图:
; t/ g1 X: q9 H" H K
, M9 K# g# [0 X& m2 ?9 j②:打开FBA Debugger,载入Samurai Aces。先查看游戏信息,点击Game—View Game info-Rom info,可以看到哪些文件是主程序,哪些是图形和声音数据。* C1 O0 x% h: f% N8 R6 q% A1 X
7 Q# l( u- B1 R/ [1 ^4 z# b进入游戏,准备好自杀的时候。点击MISC,再点击Invoke Debugger,弹出FBA Debugger界面。在底下的框中,写断点:sb w 1 FE1B05
7 m# z$ z8 K0 F Q; E0 D注意空格。点击Execute,断点就被写入了。接下来,点击go,继续游戏。! [" }$ P y% P. @' C; h
死一战机后,程序停止,来到这里;( T) G2 X4 ? e8 Z" q
' B2 U" [+ D( r0 j
06CEE0 tst.w ($10,A2);往上看一行,06CEDC Subq.w #1, ($10,A2)# b) L# D# }+ U0 Z
这句语句的意思在明显不过了,就是使战机数地址的内容减去1,改掉这句,战机数就不减了(PS:这个游戏是68EC202汇编,自己看代码意会的,错了高手不要笑我)。
3 W; D- i, t* u" T③:打开Mame Debugger。(用FBA Debugger也可以,不过感觉字体小,而且不很方便)
/ j% o' ~2 k2 | T载入Rom,开始做第一步,同①。0 s9 y P! z/ l9 J9 k7 y
接下来,设置断点,这个断点和先前那个不一样,是PC断点(不知道说法对不对)。在底下的空白处,写:bp 06CEE0
+ r3 B. h3 A2 ?- f: q; ^0 Q; y2 w按Enter键写入断点;F5继续游戏,等到死一架战机时,停到这里:06CEE0,就是设置的断点地址。) Y0 p3 O6 i0 b# Z
: |7 G$ B( |; R ]' k1 G; E
看右边,记下536A 0010 4A6A 0010
7 V* U# n$ L; u, B: S7 \7 S& e- C7 q3 m2 V) L* M7 O; r0 C8 c3 g. q% ]
WinHex打开bin文件,在第②步中,一共有三个bin文件是主程序,查找6A53 6A4A,一个一个文件查,在4—u127中找到6A53 6A4A,找到后,将6A53改为6A4A。8 [ D; J! m5 m& {* t
# W# [* D: p4 s( X8 I0 ySubq.w #1, ($10,A2)改为了tst.w ($10,A2),不减1,直接送入战机地址,然后将4-u127替换原来的文件,压缩好后,进入游戏测试,果然命数不减了。
7 S7 M$ N2 S# f& G |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
×
评分
-
1
查看全部评分
-
|