|
应网友YZB的要求,因此写了此篇文章,我也是菜鸟一个,PS也就改了两三个游戏,只会改简单的XX不减,
* }, N9 \ |8 x1 g
/ x6 A8 l7 n3 j, {有些只是经验之谈,对于MIPS汇编指令也不清楚,而且不一定每次修改都有效。旨在和大家交流下学习经验,0 ]) V1 W$ `' v" g
有什么错误及不足请多提出。
5 t ]8 b1 \% o- Z# g9 e* D
7 v6 D5 ]& _) H3 Z3 Y4 i0 n; C) {需要工具:HexCmp[Ultra Edit]
t4 R# I& a& \/ ?PSX v1.13(Ps 调试器)
6 ]* M. E4 X+ l( `& T; q# NEmuCheat
' R& A9 ?1 T: N) pMIPS汇编指令。
# T% W2 `, n5 U5 Y. q H# s& s4 q8 n6 J; r4 ]/ F
洛克人X5 EC:: p+ z+ S) \1 J8 R( M9 M% K! `
人数:0d311d,2.9 R k1 ~6 `7 T7 T& ~
0 V) U& [4 x- S$ D: W步骤1:载入洛克人X5镜像文件。点击File,再点击Insert CD Image,选择游戏打开。
# K, V1 P1 \! g2 U! n
i( w" ^3 S; V3 Q4 v步骤2:设置断点。运行游戏,等到洛克人X血值快为0时,暂停游戏,点击Debug-Monitor-r3000。9 H& _7 C- }. ^4 [
会出现调试器界面。
: f8 ]7 A- k- w v其中有两个小的,一个是设置断点的界面(Breakpoints),另一个是观察指令的8 P; E; F6 w% Z
界面(Disassembly)。2 w, ]4 h5 K4 P
右击Breakpoints的空白地,出现了添加命令的方框,点Add。! @& n5 R: Y% W, e& H5 i* e7 t
( s' L+ N$ A- l
' c! g/ b5 Z, C* O8 a- a然后在adress处写入命数地址。先点Memory,再将read前的对勾取消,再点OK。
; u" n) v. c! k( f然后点Edit,会发现adress处变为:0x00000000,将其改为0x000d311d。点OK。
' [9 v+ [' N: V. l% [ L) c+ @' Y+ w+ q5 h7 G2 @5 i. i
按F9,运行游戏。, J9 t" k3 ]* N3 I3 U p, t
死一条人后,来到了这里,看Disassembly。0 U' ?, i3 X3 x2 `) W2 T- u
5 _! r# C( ]4 |; j, Y
, J' b$ i0 b% q* a步骤3:断到了00021cc8:sll>r2,r2,0x18 00021600- p3 ~ j4 `5 i
上面的一条指令00021cc4:sb r2,0x0045(r6) 04410018.这个应该是减命的指令(自己猜测的,不过对9 D, W; V! n* ]
: F- j' G, k2 e6 u( B
这个游戏是有效的,别的游戏一般也在断点附近,自己修改后测试)。4 i6 w" c; s2 K& C
0 g7 O# C0 I0 L/ I
步骤4:用HexCmp打开镜像文件(直接打开IMG,ISO,BIN等都行,总之是最大的那个,游戏的主体部分)' V3 B/ S1 r! y
5 L* [9 N7 t# ~. G! W% h6 ?搜索:ffff4224 4500C2a0 00160200 (将原来Disassembly里的数值倒着搜索)
; ~* r3 h4 t' D: q1 T \2 q& R* u) \- ]
到了这里,201afdcc.$ \& k6 t4 p6 K6 b# R9 Q
7 M) \) I6 R( Q, F0 G# W5 c
; N" |- M! z8 c. v将45 00 c2 a0的指令改为NOP(00 00 00 00)就行了,游戏运行后,死一条命,其指令却不执行,这就) T3 }( K, j: ^9 \
达到了不减命的目的。 i! o$ `1 B1 L8 o ]3 j# H
6 _! x; Y) U( ]1 l; N9 C到此,就结束了。从头运行游戏看看,洛克人X和ZERO果然不减命了。4 q ]9 J: \% w4 u% Q
9 K! ^( R" P. _( L
说明一下,NOP并不是对所有游戏的修改都适用的,想真正的改好,还是得看看MIPS汇编指令。
[8 |, z) P, n另外,本人也是菜鸟一个,MIPS也看不太懂。如果有什么跟汇编指令有关的问题,还请找高手来解决。
) @5 h' O2 q4 L3 D. T% M5 ?
3 u( Y& E, y1 o) v$ B& {8 V注意:请将SCPH1001.bin放进调试器的BIOS文件夹里,这样才能正常运行。(一般EPSxe中就有,可以复制
6 X# ^# [; p' l* o' |
N: ` G) ^6 Y1 X' P4 M7 L过去)。另PS游戏较大,改之前最好先做好备份。
8 j+ S5 B+ f! Z: s1 m" V! t将改过的IPS补丁也放上来。:loveliness: - x$ ]: ~; R/ o4 x7 v9 \ E
3 {' G3 H K+ M/ K7 {) Q[ 本帖最后由 HeavenTrain 于 2009-5-1 22:40 编辑 ] |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
x
评分
-
1
查看全部评分
-
|