|
|
应网友YZB的要求,因此写了此篇文章,我也是菜鸟一个,PS也就改了两三个游戏,只会改简单的XX不减,' Q: F* k. Y0 W' H! t
% S; B5 s+ G/ ?
有些只是经验之谈,对于MIPS汇编指令也不清楚,而且不一定每次修改都有效。旨在和大家交流下学习经验,
. Z- U) n2 _/ b2 s4 z% H有什么错误及不足请多提出。
8 X/ I3 g- N' T7 A" i7 T9 i6 D" H* h! |- s( c8 B
需要工具:HexCmp[Ultra Edit]6 v8 C6 ^+ f" x" t
PSX v1.13(Ps 调试器)
9 t: E3 Y+ ? B# y) D1 fEmuCheat: U' _, Y1 h* n6 P. g
MIPS汇编指令。
6 s* ^2 s" n1 f r5 Q
/ @5 v' m/ ~ u( o4 i. X6 p洛克人X5 EC:, F" E1 ]0 O# F$ h. f# `
人数:0d311d,2.
`" ?. V6 {6 ~; E ?: [% I
6 f2 i' Y0 i! U& i8 K( ]! |, L9 \步骤1:载入洛克人X5镜像文件。点击File,再点击Insert CD Image,选择游戏打开。, T/ E; ~3 \3 e$ f, D, O
# B% }. m6 i6 Y9 m2 O
步骤2:设置断点。运行游戏,等到洛克人X血值快为0时,暂停游戏,点击Debug-Monitor-r3000。
; d5 P% w* M E* c( z0 r& Y( x会出现调试器界面。
|( |* p$ O2 R0 J其中有两个小的,一个是设置断点的界面(Breakpoints),另一个是观察指令的
0 k. Y. U2 J7 O6 `6 K界面(Disassembly)。! R% z4 M$ |2 L( R& B8 c9 H9 P# r
右击Breakpoints的空白地,出现了添加命令的方框,点Add。
& C) q/ E% ~: N; @/ G$ M% w% |% e3 r
' X, \! N0 J' f$ \然后在adress处写入命数地址。先点Memory,再将read前的对勾取消,再点OK。
8 ]! a9 U3 X& J% O" b2 X然后点Edit,会发现adress处变为:0x00000000,将其改为0x000d311d。点OK。' B$ x1 f5 @$ w9 m( E
* @* [: L7 ?2 `6 k: [1 w! K0 b
按F9,运行游戏。& S, L, Z( T, R4 a
死一条人后,来到了这里,看Disassembly。2 U8 W6 e4 p% x/ W1 ~$ E8 M! Z# }$ a9 T
+ ^0 J; r9 P8 i6 o% R' ^! \- E; }, N# C# o
步骤3:断到了00021cc8:sll>r2,r2,0x18 00021600
% i* R% @; j r! ^上面的一条指令00021cc4:sb r2,0x0045(r6) 04410018.这个应该是减命的指令(自己猜测的,不过对) R4 G0 U2 J& o
W/ m0 ^$ D( p5 X6 o
这个游戏是有效的,别的游戏一般也在断点附近,自己修改后测试)。0 k3 l( \& {6 j- R! H
$ z9 r. {4 X1 a6 g4 \步骤4:用HexCmp打开镜像文件(直接打开IMG,ISO,BIN等都行,总之是最大的那个,游戏的主体部分)
" _6 Z) J' p0 c; o: f1 r8 k! _; l \8 [" |; E& Z- {: ], K
搜索:ffff4224 4500C2a0 00160200 (将原来Disassembly里的数值倒着搜索)
) B' ]$ N0 j, A0 n5 N* x+ ]1 t8 q
/ N; k/ p1 J4 _: M5 K2 p到了这里,201afdcc.
7 k. B" e' D6 i* I- C9 H) V( g; [/ Z2 ]
5 }1 {8 l1 V9 v6 ]# E& J) s" u
将45 00 c2 a0的指令改为NOP(00 00 00 00)就行了,游戏运行后,死一条命,其指令却不执行,这就
U( s7 V D9 T+ a* l. S达到了不减命的目的。2 d/ Y0 x( b7 _0 }6 S
, F7 n4 z* h/ J, B
到此,就结束了。从头运行游戏看看,洛克人X和ZERO果然不减命了。- c% q* n& O6 W' F
5 y" W1 l6 o1 e' E/ O0 H说明一下,NOP并不是对所有游戏的修改都适用的,想真正的改好,还是得看看MIPS汇编指令。
, ]3 G0 O& w! z- t另外,本人也是菜鸟一个,MIPS也看不太懂。如果有什么跟汇编指令有关的问题,还请找高手来解决。3 ?4 U; V+ y, w: i" B& {4 L9 N
# O" c' {, J, Q4 a7 B注意:请将SCPH1001.bin放进调试器的BIOS文件夹里,这样才能正常运行。(一般EPSxe中就有,可以复制# q5 N1 y8 n+ d. W! d' N5 V
! o! O: D# ]; W+ M& P, I
过去)。另PS游戏较大,改之前最好先做好备份。
' }: }8 ~0 I+ K: ]9 e6 `. T将改过的IPS补丁也放上来。:loveliness: , i7 d2 f/ M6 f+ Y; v4 ~9 U
" V. w9 M7 h5 _& }* w
[ 本帖最后由 HeavenTrain 于 2009-5-1 22:40 编辑 ] |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
x
评分
-
1
查看全部评分
-
|