|
应网友YZB的要求,因此写了此篇文章,我也是菜鸟一个,PS也就改了两三个游戏,只会改简单的XX不减,
4 I* Y& w. _# O2 K2 ^$ n6 T6 y+ a3 d" l. b
有些只是经验之谈,对于MIPS汇编指令也不清楚,而且不一定每次修改都有效。旨在和大家交流下学习经验,6 z! A: A1 U9 ? I& F
有什么错误及不足请多提出。
, ^( y, u* C: k" E0 B- }! C8 U9 u+ I& {/ H3 q
需要工具:HexCmp[Ultra Edit]5 V( f( j7 M: j. y! I7 B3 r
PSX v1.13(Ps 调试器)/ `2 T* X( o- U7 g; E
EmuCheat8 ^/ }4 c3 \, Z: p3 m0 J
MIPS汇编指令。
( j# V! Y9 F' c4 n
8 b4 O/ D0 \6 c2 Z0 l* \洛克人X5 EC:
7 b; C0 M( h8 q: I6 a: f+ ?人数:0d311d,2.* a, I# Z' V' T
+ p5 A i7 i$ o1 |9 v2 y. |
步骤1:载入洛克人X5镜像文件。点击File,再点击Insert CD Image,选择游戏打开。8 Q; O6 L7 I' s2 G
- a: f! F0 q, ]# D9 t, g) k
步骤2:设置断点。运行游戏,等到洛克人X血值快为0时,暂停游戏,点击Debug-Monitor-r3000。( L( B' P9 V0 G
会出现调试器界面。# v- ~2 v# ^/ B( [" h: H, {
其中有两个小的,一个是设置断点的界面(Breakpoints),另一个是观察指令的; G# I2 X4 `8 g( ^) R
界面(Disassembly)。9 r8 Z. I( ^% d" j
右击Breakpoints的空白地,出现了添加命令的方框,点Add。
6 {5 _$ ?& h* ?+ s# J) R. i$ L) Z; F: q
1 Y% [9 ^1 J' d
然后在adress处写入命数地址。先点Memory,再将read前的对勾取消,再点OK。
3 d* h; K' r+ g0 x4 d' G然后点Edit,会发现adress处变为:0x00000000,将其改为0x000d311d。点OK。
! P" J) u5 `% k* G5 o' @: Y. T% W' G
按F9,运行游戏。9 n( x! Y" ? X: z
死一条人后,来到了这里,看Disassembly。4 C( p( s: c) t# @
+ o7 P6 G/ l' g/ g# r6 t6 ]" t+ g7 v7 y( h( W5 i
步骤3:断到了00021cc8:sll>r2,r2,0x18 00021600
' s$ `" f$ \+ Y; s4 U B3 b' d上面的一条指令00021cc4:sb r2,0x0045(r6) 04410018.这个应该是减命的指令(自己猜测的,不过对
: y0 k- _! d3 S& K9 s! |1 o) k, ~& X G+ O0 b7 ~5 [
这个游戏是有效的,别的游戏一般也在断点附近,自己修改后测试)。
' i l6 C2 `: a8 J# B/ O8 q; E; l& `* F% N- A+ f1 y/ p
步骤4:用HexCmp打开镜像文件(直接打开IMG,ISO,BIN等都行,总之是最大的那个,游戏的主体部分)
- p4 N9 w3 ?3 N+ e+ U# d# G; H* a- o+ B9 D# U6 k& z2 j
搜索:ffff4224 4500C2a0 00160200 (将原来Disassembly里的数值倒着搜索); K- e$ ?1 F: F
% Z5 [+ g# P, n& q6 e2 @* N1 c) P5 L5 ^到了这里,201afdcc.
0 \4 ]" {% A3 s2 s+ N
. H& h" ~) |. j: W; {" t6 r+ L: w" B- t, ~ |$ V4 [
将45 00 c2 a0的指令改为NOP(00 00 00 00)就行了,游戏运行后,死一条命,其指令却不执行,这就
" }" V& R- m" F3 P' P- o达到了不减命的目的。
, Z% x- q1 r( c' [) I2 b6 ]3 a9 |
到此,就结束了。从头运行游戏看看,洛克人X和ZERO果然不减命了。
8 F. y" K- ?! }4 @; F% X' t: k6 t- O
说明一下,NOP并不是对所有游戏的修改都适用的,想真正的改好,还是得看看MIPS汇编指令。! \; P& G. ?: q/ D; N! M& ~' n
另外,本人也是菜鸟一个,MIPS也看不太懂。如果有什么跟汇编指令有关的问题,还请找高手来解决。
5 @9 C; }5 C1 P- p) `7 l1 p8 m( ~, [* \
注意:请将SCPH1001.bin放进调试器的BIOS文件夹里,这样才能正常运行。(一般EPSxe中就有,可以复制) ?# n/ x* L, p# m+ ]% d
8 p9 n- J! Y- o, f3 {8 H过去)。另PS游戏较大,改之前最好先做好备份。
6 m( R1 @0 j; ^* j' ^将改过的IPS补丁也放上来。:loveliness:
, M4 z: z; X5 o1 K
% m% K% q1 h# X' Q: s. }[ 本帖最后由 HeavenTrain 于 2009-5-1 22:40 编辑 ] |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
x
评分
-
1
查看全部评分
-
|