|
|
应网友YZB的要求,因此写了此篇文章,我也是菜鸟一个,PS也就改了两三个游戏,只会改简单的XX不减,+ A4 j) W" d) j
8 H4 x D# x. _5 q/ E( e有些只是经验之谈,对于MIPS汇编指令也不清楚,而且不一定每次修改都有效。旨在和大家交流下学习经验,
- ]( x z8 K1 N( o& i9 w8 O有什么错误及不足请多提出。7 T: ]& o& h* F+ i4 Z0 {
4 G+ L: k( `8 c9 B$ h8 x
需要工具:HexCmp[Ultra Edit]
! H4 x6 f4 w: `+ f) }PSX v1.13(Ps 调试器)) E- ^" Q2 o) ~
EmuCheat; _3 X6 r+ R- a4 q0 N0 ^
MIPS汇编指令。, s) y( w7 v$ H) Q6 a' \* e
7 P- B3 U6 O, G* O: Z3 }# x3 E! X5 b
洛克人X5 EC:
: {* A! ?. z! p4 p& ?! P1 @) {( U7 }人数:0d311d,2.
8 V' v- q% v( M# ]: w8 T) N; u+ r2 I5 m
步骤1:载入洛克人X5镜像文件。点击File,再点击Insert CD Image,选择游戏打开。3 s2 z+ ~8 q8 g
3 y9 J: K0 G+ y+ q( }. y
步骤2:设置断点。运行游戏,等到洛克人X血值快为0时,暂停游戏,点击Debug-Monitor-r3000。
1 x6 m: \+ {" p8 y会出现调试器界面。
* I: i! {- S/ N- h其中有两个小的,一个是设置断点的界面(Breakpoints),另一个是观察指令的 k: m+ b7 O6 I& g+ s% ?) R8 T5 z
界面(Disassembly)。
8 h8 k4 f4 s' g$ D8 d9 o+ j. \右击Breakpoints的空白地,出现了添加命令的方框,点Add。
' ?+ y8 P# j( F, L% }: [
; `) h' Y: b8 | x- q% |8 t% d3 j5 X6 D
然后在adress处写入命数地址。先点Memory,再将read前的对勾取消,再点OK。
( Z" w+ f9 P) K8 |* d然后点Edit,会发现adress处变为:0x00000000,将其改为0x000d311d。点OK。
9 p/ O& ]# R8 B- L
- ^/ k9 ~- p' H1 a: T+ [% g按F9,运行游戏。
& t" u2 |) j1 s死一条人后,来到了这里,看Disassembly。
" ^6 M* L4 z; u2 d2 \) |8 k) w z# C% R! e5 h
, M/ w8 J! n% C9 T# `3 n
步骤3:断到了00021cc8:sll>r2,r2,0x18 00021600
6 ^9 @* K% c7 E) J. B/ S' W上面的一条指令00021cc4:sb r2,0x0045(r6) 04410018.这个应该是减命的指令(自己猜测的,不过对. g# l! F4 j" a! r- t9 ]
3 g1 u% V( x) ^' u: u9 V' c/ e这个游戏是有效的,别的游戏一般也在断点附近,自己修改后测试)。
0 y4 h% I! a, l, V
, f( ~, ^9 C# z0 U步骤4:用HexCmp打开镜像文件(直接打开IMG,ISO,BIN等都行,总之是最大的那个,游戏的主体部分)
; \. Z, G$ s+ t) A# y
% z9 {. r) J! e- v" o搜索:ffff4224 4500C2a0 00160200 (将原来Disassembly里的数值倒着搜索)9 ?- B6 ~% o9 [3 ~# P
6 e7 @) i0 D6 b1 q1 M% c到了这里,201afdcc.
) W& f. q+ j: Q7 L! [$ x- i9 V! @$ G# l" O/ f/ Z2 f; Y+ E
- W* ?. m- h, s. H将45 00 c2 a0的指令改为NOP(00 00 00 00)就行了,游戏运行后,死一条命,其指令却不执行,这就
2 ~( H( T& h {/ T) j& C& M达到了不减命的目的。
& w9 r# X/ S- A, o+ L
+ F* m- x" E2 `; [3 Z( P- V7 J/ z0 U到此,就结束了。从头运行游戏看看,洛克人X和ZERO果然不减命了。' J2 n( x6 ?. w6 J$ I! H7 ^* T; ?
6 q- H2 V3 T0 j8 z8 i
说明一下,NOP并不是对所有游戏的修改都适用的,想真正的改好,还是得看看MIPS汇编指令。- e7 J+ N3 A2 N$ N/ F7 v
另外,本人也是菜鸟一个,MIPS也看不太懂。如果有什么跟汇编指令有关的问题,还请找高手来解决。' L' ^. [& K/ Y4 d
( W5 Q6 }0 g Q P! H6 r
注意:请将SCPH1001.bin放进调试器的BIOS文件夹里,这样才能正常运行。(一般EPSxe中就有,可以复制
& P6 H0 M; g5 A: q. `4 h( _& r1 Y2 c8 s- U" E% `6 d( y" G
过去)。另PS游戏较大,改之前最好先做好备份。6 [( k) w2 Q0 ] k% z; B
将改过的IPS补丁也放上来。:loveliness: ( ]( ?; e" m6 w2 g3 T. P, `" p
/ z' @% N5 c8 u, o8 }2 ^7 n
[ 本帖最后由 HeavenTrain 于 2009-5-1 22:40 编辑 ] |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
×
评分
-
1
查看全部评分
-
|