|
|
应网友YZB的要求,因此写了此篇文章,我也是菜鸟一个,PS也就改了两三个游戏,只会改简单的XX不减," j4 {6 _& ?' ~+ k5 \
8 a( Y! ?: q% J有些只是经验之谈,对于MIPS汇编指令也不清楚,而且不一定每次修改都有效。旨在和大家交流下学习经验,, _+ D, i( e2 O, o3 r' \" r0 u4 A
有什么错误及不足请多提出。0 \' Q) x. i- a* O: I) C% l: s
' i' O7 `% t2 _9 Y o需要工具:HexCmp[Ultra Edit]& |0 U1 S" p8 n. }. }
PSX v1.13(Ps 调试器)6 m5 ~7 u. u/ t# T( p3 A r* X: T
EmuCheat& j, j, x5 x( n8 y# J7 m6 ]
MIPS汇编指令。
) W( j9 Z( e6 G& X+ W# E
! {3 S. T/ a% [7 ?洛克人X5 EC:
+ R% Y' O1 w7 \4 U6 H) u人数:0d311d,2.
8 @# a: R( l0 \ u% H, d( o
1 [0 d, ?! ]- E& k1 z) I Z步骤1:载入洛克人X5镜像文件。点击File,再点击Insert CD Image,选择游戏打开。# V1 z6 u( s- S) g7 f _) m
4 s4 p& E9 Y; _$ s, \2 Z
步骤2:设置断点。运行游戏,等到洛克人X血值快为0时,暂停游戏,点击Debug-Monitor-r3000。. W' [4 x0 G! h/ }" S5 t6 B
会出现调试器界面。: R3 c" A- V: R4 Z! c- Z
其中有两个小的,一个是设置断点的界面(Breakpoints),另一个是观察指令的
: ?4 p- N5 s" P1 \) Z I界面(Disassembly)。
1 k9 ?' d3 |. R: g8 Z' I' u右击Breakpoints的空白地,出现了添加命令的方框,点Add。
8 D4 f! U# B) u9 P& p4 `3 \1 y/ Y0 t; j4 N
: t1 T. ]! O. m: H1 X' T3 T
然后在adress处写入命数地址。先点Memory,再将read前的对勾取消,再点OK。, k0 B! d2 X9 O2 s% _
然后点Edit,会发现adress处变为:0x00000000,将其改为0x000d311d。点OK。
, g7 \$ w' Z/ ^" ~
; ~. j: s7 j" e" ]按F9,运行游戏。
; A @) X6 m! b: m5 e' c v死一条人后,来到了这里,看Disassembly。/ G2 c" [" \6 ]7 f* b9 P
+ x9 W* b4 o9 p# P: d9 E
" |6 L( I3 e2 `3 O/ e; ]步骤3:断到了00021cc8:sll>r2,r2,0x18 00021600& }" D" k+ H% i% g9 n7 q
上面的一条指令00021cc4:sb r2,0x0045(r6) 04410018.这个应该是减命的指令(自己猜测的,不过对
% d) l, e9 w$ }, j
i* P; J5 `( t* a& ~这个游戏是有效的,别的游戏一般也在断点附近,自己修改后测试)。: X" Z( G9 x0 ^4 g5 o
7 f( Y+ f% ?' g( \; s, `3 t步骤4:用HexCmp打开镜像文件(直接打开IMG,ISO,BIN等都行,总之是最大的那个,游戏的主体部分)4 j& k4 ~, P% i. I. m$ c) H
# I/ e" P9 F( } x3 j; p& J2 d搜索:ffff4224 4500C2a0 00160200 (将原来Disassembly里的数值倒着搜索)
' {3 v, X& u" o& v* k- `$ e5 |1 A! n# @% a+ n. m
到了这里,201afdcc.
, w; t& Q7 I& ]7 P+ x# C* x- _+ I& m5 T7 l7 ?' l* i
) X* K+ G& o+ a5 ~# g. z. v' E将45 00 c2 a0的指令改为NOP(00 00 00 00)就行了,游戏运行后,死一条命,其指令却不执行,这就. P) C% h/ r6 R+ s: f* z5 x( ^; S& ~
达到了不减命的目的。
. z2 \1 G% R. q/ V- k# \
! b0 X8 R+ |: m% M; _8 G到此,就结束了。从头运行游戏看看,洛克人X和ZERO果然不减命了。
8 @" h# Y: N# J5 G h n
) B8 O6 h9 l6 A4 d B+ Y说明一下,NOP并不是对所有游戏的修改都适用的,想真正的改好,还是得看看MIPS汇编指令。2 N" d# v3 t3 Z5 p v
另外,本人也是菜鸟一个,MIPS也看不太懂。如果有什么跟汇编指令有关的问题,还请找高手来解决。
3 o8 i; M+ D1 t2 Y7 Z, h: d1 I# S! }8 @+ i
注意:请将SCPH1001.bin放进调试器的BIOS文件夹里,这样才能正常运行。(一般EPSxe中就有,可以复制0 o0 L2 y) P" v) l
q# }- M1 s) Z9 O: d$ u5 N过去)。另PS游戏较大,改之前最好先做好备份。
3 `7 ~7 ?6 z/ R/ q将改过的IPS补丁也放上来。:loveliness: ! @. p% F$ T3 |8 e9 I& @
1 H! s( [4 }; C# j4 Z3 E* _
[ 本帖最后由 HeavenTrain 于 2009-5-1 22:40 编辑 ] |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
x
评分
-
1
查看全部评分
-
|