|
|
应网友YZB的要求,因此写了此篇文章,我也是菜鸟一个,PS也就改了两三个游戏,只会改简单的XX不减,
8 P$ q2 s$ v% J( \1 S! \
, i, a: h$ o8 k有些只是经验之谈,对于MIPS汇编指令也不清楚,而且不一定每次修改都有效。旨在和大家交流下学习经验,/ t( D/ d6 s2 m8 L' ^* y8 }
有什么错误及不足请多提出。' p5 D9 B$ `0 ^9 B6 K
" S; h, L7 |. V/ ]' D: b: R% G需要工具:HexCmp[Ultra Edit]
. i0 ?3 d5 d; j z2 l9 RPSX v1.13(Ps 调试器)
0 |7 B2 _6 M& _; ZEmuCheat3 q& P; p- S9 U H7 z' Q) Z1 x. |
MIPS汇编指令。' v" Y' G9 l& }7 o- a
% U9 L9 j9 w- P4 u: N; y5 m( }洛克人X5 EC:
" W0 L. x: m4 ^人数:0d311d,2.
/ x3 o! g' z$ h+ T7 t
" W' M. v3 o0 f步骤1:载入洛克人X5镜像文件。点击File,再点击Insert CD Image,选择游戏打开。$ P8 q1 B, J# j, k
- m# i$ }% {( F3 |" H步骤2:设置断点。运行游戏,等到洛克人X血值快为0时,暂停游戏,点击Debug-Monitor-r3000。+ E" s* M& y* n# H; |/ F, Z
会出现调试器界面。* X0 Z+ D# J) F' g
其中有两个小的,一个是设置断点的界面(Breakpoints),另一个是观察指令的
6 W2 K, j. E* B8 z界面(Disassembly)。
' M* N0 I' D! O% {1 l右击Breakpoints的空白地,出现了添加命令的方框,点Add。& |# b: m2 n1 t2 G
' C }' m+ j1 {, @4 D# m; x- S0 j) J# c! O3 x; J
然后在adress处写入命数地址。先点Memory,再将read前的对勾取消,再点OK。. k5 y! O2 o& M% C9 S
然后点Edit,会发现adress处变为:0x00000000,将其改为0x000d311d。点OK。/ Y0 d+ }8 {% }* h, A+ D
8 n5 [+ N1 U! B, X
按F9,运行游戏。
3 O3 k6 U5 ^: f/ W: g6 {; f死一条人后,来到了这里,看Disassembly。 t" q% e) s) A
& W" m! b) d9 }3 L1 A/ X! x6 H9 ~
b5 ~4 I8 _- G0 r
步骤3:断到了00021cc8:sll>r2,r2,0x18 00021600
0 j$ H# N% o2 ~0 b上面的一条指令00021cc4:sb r2,0x0045(r6) 04410018.这个应该是减命的指令(自己猜测的,不过对
) z$ Y% m; p- I% Q
( R8 U" s* u; a' q* o这个游戏是有效的,别的游戏一般也在断点附近,自己修改后测试)。
6 |" u( w) ~/ p7 N7 V& X
" r6 a& g. q/ U# l7 w! H/ J: N( ]步骤4:用HexCmp打开镜像文件(直接打开IMG,ISO,BIN等都行,总之是最大的那个,游戏的主体部分)1 x( N0 ?5 z G3 f7 k0 Y& q
& N* l1 W( Z2 D% W, {% ?$ [6 ]搜索:ffff4224 4500C2a0 00160200 (将原来Disassembly里的数值倒着搜索) G. k: @# z0 F
6 Q. q; L+ K1 G$ I; P! o
到了这里,201afdcc./ D0 d& E6 N! o2 b2 z
1 E: D1 F- n4 j3 }! q% L5 v8 v1 a
! w) E" q6 C, q1 v# i
将45 00 c2 a0的指令改为NOP(00 00 00 00)就行了,游戏运行后,死一条命,其指令却不执行,这就
& z9 Z/ t! n* g6 Q$ @2 ~6 ?达到了不减命的目的。) A: i8 Y: u" ^9 [1 T
1 t, y* e0 R: C
到此,就结束了。从头运行游戏看看,洛克人X和ZERO果然不减命了。, Z. I, J0 {! g3 B; r5 R& \
8 s& g! C9 ?. q) s说明一下,NOP并不是对所有游戏的修改都适用的,想真正的改好,还是得看看MIPS汇编指令。2 {. j8 A* l. u
另外,本人也是菜鸟一个,MIPS也看不太懂。如果有什么跟汇编指令有关的问题,还请找高手来解决。
) ?& O! J* ~. B$ H
) e1 X4 q) O0 U$ b! f( |注意:请将SCPH1001.bin放进调试器的BIOS文件夹里,这样才能正常运行。(一般EPSxe中就有,可以复制
+ a* x+ i1 C) t9 S& {1 V, M( K% e: G8 p7 A5 ^1 S
过去)。另PS游戏较大,改之前最好先做好备份。4 [5 K( R. r$ ^6 X: G4 o
将改过的IPS补丁也放上来。:loveliness:
+ N5 ]" N% k |$ P1 T- \
( K8 j$ L- V1 x% k' q% E0 E[ 本帖最后由 HeavenTrain 于 2009-5-1 22:40 编辑 ] |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
x
评分
-
1
查看全部评分
-
|