|
应网友YZB的要求,因此写了此篇文章,我也是菜鸟一个,PS也就改了两三个游戏,只会改简单的XX不减,' j2 t% a( q) N7 F; x
+ G7 @: w- {1 J; L4 X, i, `3 d# m有些只是经验之谈,对于MIPS汇编指令也不清楚,而且不一定每次修改都有效。旨在和大家交流下学习经验,
+ ?$ G7 Y- f+ L# }# h' f# Q有什么错误及不足请多提出。
& \6 ~; Z7 g. p( e2 _
( ^( U7 O6 @) J1 N- w6 H需要工具:HexCmp[Ultra Edit]
& w2 ~* v; E2 ?+ M! @PSX v1.13(Ps 调试器)! f) l7 I7 j! A9 _& s
EmuCheat5 d2 U$ x) a$ I! W7 S' V5 S& S9 {
MIPS汇编指令。
3 h: r8 l5 [& ~7 n& [8 z/ g7 ]/ R6 C
洛克人X5 EC:9 J; T0 f3 p4 P$ V& i9 q5 L
人数:0d311d,2.
, M+ ^% @( H; w! n0 f# s2 ?: ~& Q4 f4 E% q3 X( o
步骤1:载入洛克人X5镜像文件。点击File,再点击Insert CD Image,选择游戏打开。
% s) H) j _6 R# {* ?
4 d7 ?$ e; u+ R步骤2:设置断点。运行游戏,等到洛克人X血值快为0时,暂停游戏,点击Debug-Monitor-r3000。
/ R6 c& l3 W- K* y" z" j' q2 ?会出现调试器界面。
6 D( D I$ v* s其中有两个小的,一个是设置断点的界面(Breakpoints),另一个是观察指令的- B- d s6 v5 }1 N) l
界面(Disassembly)。
; k ]+ D1 j) V! W/ B右击Breakpoints的空白地,出现了添加命令的方框,点Add。
3 W. L# h. U* V" d4 i
! D3 P( q" ]: |; i- b) s, @& e2 G
# w6 K |% M# l然后在adress处写入命数地址。先点Memory,再将read前的对勾取消,再点OK。9 N4 h! X/ ^# h* B4 Q9 M
然后点Edit,会发现adress处变为:0x00000000,将其改为0x000d311d。点OK。
6 C8 z3 _* K/ q- R+ H6 l. m5 b# a0 V$ _" ^( q7 E
按F9,运行游戏。2 d5 O7 o, }% C
死一条人后,来到了这里,看Disassembly。
$ z* e, C0 n$ {4 n4 ?% Q6 L
& X: `, g/ J7 f# } c
" I: s) E( h. C2 K* g2 E, i步骤3:断到了00021cc8:sll>r2,r2,0x18 00021600# ]0 h5 }) t% G1 x2 p# N; ^5 N3 p
上面的一条指令00021cc4:sb r2,0x0045(r6) 04410018.这个应该是减命的指令(自己猜测的,不过对: E7 u% e1 T( v5 P. `# ^
& ~# b% |+ r( c- Q: q+ r4 B
这个游戏是有效的,别的游戏一般也在断点附近,自己修改后测试)。! a8 I# \* H% M) x
6 `' q) k% r1 V# ^
步骤4:用HexCmp打开镜像文件(直接打开IMG,ISO,BIN等都行,总之是最大的那个,游戏的主体部分)2 V6 a, v F) `& a4 N, B
1 o0 u7 v6 n. a2 r4 x
搜索:ffff4224 4500C2a0 00160200 (将原来Disassembly里的数值倒着搜索): q% w* f1 S% ?$ \4 i; V
1 r9 x E% C$ Y到了这里,201afdcc.
; P# Q3 @6 O$ T$ ?1 Z8 ~5 e$ h' V5 Q2 g
" e9 _$ z8 s7 R% e1 t# b# o9 d& K将45 00 c2 a0的指令改为NOP(00 00 00 00)就行了,游戏运行后,死一条命,其指令却不执行,这就, \8 V u7 p4 ?: P' Q
达到了不减命的目的。4 Q) S( M/ l' R; x" d1 _
( d8 P! O: b x/ R6 X4 s
到此,就结束了。从头运行游戏看看,洛克人X和ZERO果然不减命了。
; S7 [& `5 t# H) [- f% B6 D. J, k
说明一下,NOP并不是对所有游戏的修改都适用的,想真正的改好,还是得看看MIPS汇编指令。
. H( W1 D- r- S) W& W+ |另外,本人也是菜鸟一个,MIPS也看不太懂。如果有什么跟汇编指令有关的问题,还请找高手来解决。2 E6 i9 ?! U9 _! c
( Z7 ~; L* h- P( {5 {, E
注意:请将SCPH1001.bin放进调试器的BIOS文件夹里,这样才能正常运行。(一般EPSxe中就有,可以复制
2 y: d* @" G* K! W' D! R2 D5 x2 w7 ]7 e, J5 V. n4 A
过去)。另PS游戏较大,改之前最好先做好备份。: N3 w( K# I' {+ n4 t0 a8 W; ?5 T
将改过的IPS补丁也放上来。:loveliness: , \2 @2 C7 _9 u/ n5 Y$ n
: |) y5 n3 `- z/ s u[ 本帖最后由 HeavenTrain 于 2009-5-1 22:40 编辑 ] |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
x
评分
-
1
查看全部评分
-
|