|
|
应网友YZB的要求,因此写了此篇文章,我也是菜鸟一个,PS也就改了两三个游戏,只会改简单的XX不减,9 ?7 s) ?! c. s. H7 e: u) x
0 s0 A) G s% o- o* S# l- _有些只是经验之谈,对于MIPS汇编指令也不清楚,而且不一定每次修改都有效。旨在和大家交流下学习经验,
8 ?& l: x# z1 q9 f d' G有什么错误及不足请多提出。( D- g& P" b# ?9 w- x/ x% k
* w% D7 ~. c1 i+ ]0 i# {3 }6 s需要工具:HexCmp[Ultra Edit]
( J5 ]8 ?) g* j0 R: ]PSX v1.13(Ps 调试器)9 E p7 i( Q+ _6 M! ^
EmuCheat- {# s4 e1 x( [6 |/ O/ h* S
MIPS汇编指令。 w+ o, m* M: J' m1 a; r
5 p) g8 V& o* ?
洛克人X5 EC:
. _5 C2 V$ t+ o2 R1 o( r6 A人数:0d311d,2.
% h! Z6 \5 Q: N8 I5 y7 Q! i* W9 |4 D! y- t/ }# O- W- Q
步骤1:载入洛克人X5镜像文件。点击File,再点击Insert CD Image,选择游戏打开。: q q, n( q" l' B* M" l' u$ a
; G4 n. L+ @, V$ R. s
步骤2:设置断点。运行游戏,等到洛克人X血值快为0时,暂停游戏,点击Debug-Monitor-r3000。& y# U) c& d p( [, {1 o; |% s3 v
会出现调试器界面。
: |" { z1 G9 \其中有两个小的,一个是设置断点的界面(Breakpoints),另一个是观察指令的
s1 z7 A6 Q5 F1 H" ]界面(Disassembly)。% j7 |: ~/ L# G# G
右击Breakpoints的空白地,出现了添加命令的方框,点Add。
, ^ R3 ?" v$ h+ U. n
* D3 u! [7 @. f1 U/ U. \' H! R- }5 k' R3 b7 f8 h0 S* D
然后在adress处写入命数地址。先点Memory,再将read前的对勾取消,再点OK。" k& M9 H. U3 e! Z" ?& ^
然后点Edit,会发现adress处变为:0x00000000,将其改为0x000d311d。点OK。
4 C9 |' \' l5 s7 B0 K: h6 K: h# z- \4 k7 z
按F9,运行游戏。
' N6 I( ?: K4 m# |7 a% |死一条人后,来到了这里,看Disassembly。
1 Q" Y" ^$ q- C, G# O9 M; ] i* X3 t( X2 y" j0 G6 Z7 |! U) m
4 E0 n, f$ W: m8 P步骤3:断到了00021cc8:sll>r2,r2,0x18 00021600: E* F6 y* D' ~' v- V) s0 S
上面的一条指令00021cc4:sb r2,0x0045(r6) 04410018.这个应该是减命的指令(自己猜测的,不过对" i9 {8 H( E% ^& x6 x2 P
0 x7 B0 @; W$ X+ U. x这个游戏是有效的,别的游戏一般也在断点附近,自己修改后测试)。
3 f$ S$ ~/ A5 g$ D6 w/ Z( ~6 m" t4 L' C- c* i$ X
步骤4:用HexCmp打开镜像文件(直接打开IMG,ISO,BIN等都行,总之是最大的那个,游戏的主体部分)6 t$ m7 o1 s% v4 k5 M
0 _: F1 q8 `+ Q5 ^搜索:ffff4224 4500C2a0 00160200 (将原来Disassembly里的数值倒着搜索)
% A9 u( O$ K! j# q9 S6 {9 x* y) k% ^0 c- I( T& V
到了这里,201afdcc.# P; N, O! s2 Z. x8 \6 O# G& I
x0 [" J P" u% m) L
& ^- s5 {( C6 B7 ~* J/ A; [
将45 00 c2 a0的指令改为NOP(00 00 00 00)就行了,游戏运行后,死一条命,其指令却不执行,这就
( [7 S# `8 v& V) _达到了不减命的目的。
# X- Z5 C+ ^: c- [& A1 g; p
7 R8 W3 J/ E2 m2 X到此,就结束了。从头运行游戏看看,洛克人X和ZERO果然不减命了。
! b, m" t) q7 `5 k0 l% v& B- {/ F2 P8 _4 m
说明一下,NOP并不是对所有游戏的修改都适用的,想真正的改好,还是得看看MIPS汇编指令。) D% C2 }6 x) z1 d- J8 k0 R
另外,本人也是菜鸟一个,MIPS也看不太懂。如果有什么跟汇编指令有关的问题,还请找高手来解决。( S1 @; p4 @' i F
% E% @# M+ N+ Q" R5 ?注意:请将SCPH1001.bin放进调试器的BIOS文件夹里,这样才能正常运行。(一般EPSxe中就有,可以复制
2 D8 M# P8 [! l! o3 z& n s" F' t" a0 w# z8 v, r
过去)。另PS游戏较大,改之前最好先做好备份。
9 U/ A# C4 t9 d; v. P" z# O' K将改过的IPS补丁也放上来。:loveliness:
2 a* z0 _( X7 G) B: {6 @" a; s2 A$ M
[ 本帖最后由 HeavenTrain 于 2009-5-1 22:40 编辑 ] |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
×
评分
-
1
查看全部评分
-
|