|
应网友YZB的要求,因此写了此篇文章,我也是菜鸟一个,PS也就改了两三个游戏,只会改简单的XX不减,
7 l7 D9 G' S+ P1 g9 N. r: A2 q: i+ _& _7 v. t" B$ m
有些只是经验之谈,对于MIPS汇编指令也不清楚,而且不一定每次修改都有效。旨在和大家交流下学习经验,
' g7 G7 e# M U) _/ M% u有什么错误及不足请多提出。1 W' }, h3 x, o) v
2 ?7 O; _; P7 n; a& Q4 I/ F: S- Q需要工具:HexCmp[Ultra Edit] [* l3 Z- Y: \) @) o
PSX v1.13(Ps 调试器)
/ w! X+ C% K W+ u7 v; y3 n( ?EmuCheat
3 K+ @4 l5 L! Z ?0 C& t3 NMIPS汇编指令。3 ]: K0 {* D2 O' z" U& d! w3 `/ A
0 z' n; [# x* B洛克人X5 EC:
1 O6 f8 z- d3 V4 s& u) ?* M& g. Y6 P人数:0d311d,2.& D# L2 f2 I, Z! e+ M
! l N+ q" m; @* k# {* d0 s
步骤1:载入洛克人X5镜像文件。点击File,再点击Insert CD Image,选择游戏打开。3 t5 o) ]7 M% R! `% V7 A
4 W# ?9 ?- y% ~/ L; x步骤2:设置断点。运行游戏,等到洛克人X血值快为0时,暂停游戏,点击Debug-Monitor-r3000。, e) X/ J8 S) \
会出现调试器界面。
) m* f' R' \( K# x+ E a其中有两个小的,一个是设置断点的界面(Breakpoints),另一个是观察指令的
, A9 @( k. A- T) U界面(Disassembly)。6 f5 g8 \! q; J4 f V! j
右击Breakpoints的空白地,出现了添加命令的方框,点Add。
( N' l+ ~* U2 ]. P5 L. h1 ^6 U% y& L) t! E8 q7 Q
# n+ G( v/ O, b6 Y然后在adress处写入命数地址。先点Memory,再将read前的对勾取消,再点OK。
0 p) h. V0 p8 u8 q然后点Edit,会发现adress处变为:0x00000000,将其改为0x000d311d。点OK。
. t3 B6 @+ a, j
( A3 w: O* k$ t$ d# C n: D% C按F9,运行游戏。
0 |, j4 ~5 F+ m( _' t死一条人后,来到了这里,看Disassembly。# K/ I8 J, L# ~+ @1 [3 k+ |/ n
% Q, s, S2 ~* [& C4 s/ u( r+ S/ y b, p
步骤3:断到了00021cc8:sll>r2,r2,0x18 00021600
! e$ M% h* E3 _. q% t/ m上面的一条指令00021cc4:sb r2,0x0045(r6) 04410018.这个应该是减命的指令(自己猜测的,不过对6 u3 L& ~- J4 s+ g: |1 C* x7 T
! }7 H, @0 j. \/ j8 I, L
这个游戏是有效的,别的游戏一般也在断点附近,自己修改后测试)。: ?0 T. m: N- Q3 H/ C" R9 }* P% R
% H1 ?1 }5 j$ f+ ^; u& z步骤4:用HexCmp打开镜像文件(直接打开IMG,ISO,BIN等都行,总之是最大的那个,游戏的主体部分)
- n$ S3 |1 {( Q/ ]# a; q6 j
5 Z1 ^. b7 _ }) t8 Q9 W搜索:ffff4224 4500C2a0 00160200 (将原来Disassembly里的数值倒着搜索)9 D6 F5 x' U: q+ J+ p
, Q _/ Q# x2 u l' C3 T
到了这里,201afdcc.
$ S) k) M' A' Z6 M' M# }
2 d9 s) u( `. {% `2 `& X8 }7 k
5 r* \2 k- N. ~7 F, f# N/ B将45 00 c2 a0的指令改为NOP(00 00 00 00)就行了,游戏运行后,死一条命,其指令却不执行,这就
6 _' {# p/ \6 A) F达到了不减命的目的。5 H0 e1 J0 D. P! r
* Q! Y! K% g" {到此,就结束了。从头运行游戏看看,洛克人X和ZERO果然不减命了。6 J' e% z$ z; \0 j! d. r
& b, y8 p: ?" }9 P) J ]& t$ [
说明一下,NOP并不是对所有游戏的修改都适用的,想真正的改好,还是得看看MIPS汇编指令。7 y3 H" j* y S. Y* `, |
另外,本人也是菜鸟一个,MIPS也看不太懂。如果有什么跟汇编指令有关的问题,还请找高手来解决。
3 I: ~8 ]- p" c0 m8 U- }0 L. q3 L% q: L& |% g* z% t
注意:请将SCPH1001.bin放进调试器的BIOS文件夹里,这样才能正常运行。(一般EPSxe中就有,可以复制0 e3 b+ P+ Z- q) P* p: b4 J
) S& l" G E% B& V: R8 \* B( C2 ]过去)。另PS游戏较大,改之前最好先做好备份。
& ]( U7 d \9 ^& M将改过的IPS补丁也放上来。:loveliness: 7 p) S1 s- F% i2 i( c, x5 a
0 i% X8 l, Z2 ]7 j! Y
[ 本帖最后由 HeavenTrain 于 2009-5-1 22:40 编辑 ] |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
x
评分
-
1
查看全部评分
-
|