|
本帖最后由 克罗诺亚 于 2010-11-17 23:05 编辑 6 V& s/ V3 W* D, I
0 V5 F9 ]- `0 M8 X0 J% F4 G3 h, q0 v
街机游戏修改流程
/ ?$ B0 \! g* i* O4 @9 g9 G最近闷得慌,没事研究起街机游戏,有点成效,也有好些问题。希望了解的人给予帮助与解答,十分感谢!
! R" r: e6 _6 P- B! F" F5 `下来就将我修改的流程放上来,大家可以共同研究。
# c/ d/ C7 {6 f6 K; p. t, n工具:WinHex(16进制编辑器),cheat.zip;FBA Debugger,Mame Debugger(可以不用,但是个人喜欢).; j+ X% r6 y E9 w8 c+ Q0 D
工具置顶帖里都有收集,http://forum.emu618.com/thread-20393-1-1.html。2 H3 O% d* }: }/ T
FBA Debugger下载与使用说明By 疾风之狼http://forum.emu618.com/thread-95692-1-1.html。
7 C* \1 Q/ J0 e: q. B6 G5 ~2 r3 SCheat.zip:就是Mame的作弊文件,可以解压出来,直接找到要作弊的代码。(FBA支持作弊码查找,不过有现成的,何乐而不为呢)8 q% r; b6 ]: B; y' q
7 N3 G4 a8 E8 n" ]8 \- |
游戏:战国世纪(Samurai Aces)。. }$ T I0 Y: ?9 K
修改目的:1P战机数不减。
" M5 w& M4 ]. u5 s流程 ①:找到cheat文件夹下的:samuraia.xml,找到作弊码无限生命:FE1B05=06。如图:5 }3 A7 _# |9 t& Q# n) T: \
{; F: m& d j. `9 f9 Y; J8 }7 s
②:打开FBA Debugger,载入Samurai Aces。先查看游戏信息,点击Game—View Game info-Rom info,可以看到哪些文件是主程序,哪些是图形和声音数据。: y* H& d5 N, ?0 z- y1 ^( U
' |2 ?4 \# E7 V: b: ^) ?
进入游戏,准备好自杀的时候。点击MISC,再点击Invoke Debugger,弹出FBA Debugger界面。在底下的框中,写断点:sb w 1 FE1B05
% m* s7 t' u- D) e0 @9 ?注意空格。点击Execute,断点就被写入了。接下来,点击go,继续游戏。. p( M0 {% B9 L8 t
死一战机后,程序停止,来到这里;' H* P c8 K0 Z v# X4 ]: h8 l
- b# N+ F6 J4 g2 W; B
06CEE0 tst.w ($10,A2);往上看一行,06CEDC Subq.w #1, ($10,A2)0 o' O& h) `0 s5 k
这句语句的意思在明显不过了,就是使战机数地址的内容减去1,改掉这句,战机数就不减了(PS:这个游戏是68EC202汇编,自己看代码意会的,错了高手不要笑我)。
5 t3 N& i2 ^& x' Y③:打开Mame Debugger。(用FBA Debugger也可以,不过感觉字体小,而且不很方便)
q$ C0 u* ]$ R5 K4 H0 S5 v# \载入Rom,开始做第一步,同①。$ c7 K7 Q6 k6 ?
接下来,设置断点,这个断点和先前那个不一样,是PC断点(不知道说法对不对)。在底下的空白处,写:bp 06CEE0/ l( d( H6 \; E: R
按Enter键写入断点;F5继续游戏,等到死一架战机时,停到这里:06CEE0,就是设置的断点地址。+ s$ W* _9 S+ i2 m- I% m! G0 m
) f$ U6 ^0 X" w$ ^看右边,记下536A 0010 4A6A 0010 4 }1 j4 N; |, ~; S. h) F- I
' W' v& ?' P4 w% C6 Y/ k% pWinHex打开bin文件,在第②步中,一共有三个bin文件是主程序,查找6A53 6A4A,一个一个文件查,在4—u127中找到6A53 6A4A,找到后,将6A53改为6A4A。
4 c5 F" ^, m& u0 @ t0 F$ m8 t. p$ f0 E6 \
Subq.w #1, ($10,A2)改为了tst.w ($10,A2),不减1,直接送入战机地址,然后将4-u127替换原来的文件,压缩好后,进入游戏测试,果然命数不减了。& i' A/ l0 o5 d# W3 a
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
x
评分
-
1
查看全部评分
-
|