|
|
应网友YZB的要求,因此写了此篇文章,我也是菜鸟一个,PS也就改了两三个游戏,只会改简单的XX不减,' s* u& a |8 h6 [8 u) s
7 p4 v3 O, M: A+ V5 w, R有些只是经验之谈,对于MIPS汇编指令也不清楚,而且不一定每次修改都有效。旨在和大家交流下学习经验,
% y. M% C8 ^+ P* P' F有什么错误及不足请多提出。; E# l/ R/ Y2 N, K. i
" e. |3 I" e$ x0 E
需要工具:HexCmp[Ultra Edit]* o# e a) Y/ B+ W. V$ T* r
PSX v1.13(Ps 调试器); {4 m" r9 l! n0 P+ A5 L0 J
EmuCheat/ n) z c$ M0 ?* I1 l
MIPS汇编指令。
" Y: w/ v, n* R' H
+ w# V% k! q" k. b X3 n3 [洛克人X5 EC:
' [" i/ e* B/ Y人数:0d311d,2.
k8 J. ?: X( i. O
' x+ L. [! l/ z* N: W! T5 e+ g步骤1:载入洛克人X5镜像文件。点击File,再点击Insert CD Image,选择游戏打开。! U# g" B" c& O* v. |
# L- B* l2 ]& H: U$ `0 A- u步骤2:设置断点。运行游戏,等到洛克人X血值快为0时,暂停游戏,点击Debug-Monitor-r3000。" _! J+ Q. N/ m. P8 G" b5 ^
会出现调试器界面。
" [4 a; {6 a7 a其中有两个小的,一个是设置断点的界面(Breakpoints),另一个是观察指令的+ Q7 t4 R- H, F, o5 @" ~. M
界面(Disassembly)。3 ]3 g& V* y6 h! j3 Z; e; c& W& D
右击Breakpoints的空白地,出现了添加命令的方框,点Add。. q: O4 |4 x; e
% d, H4 E4 P* W0 U D% m3 Y7 }
7 {" U- N; w# s3 k3 u然后在adress处写入命数地址。先点Memory,再将read前的对勾取消,再点OK。
2 l" i: r) i2 x" C2 K然后点Edit,会发现adress处变为:0x00000000,将其改为0x000d311d。点OK。
4 |, y' c+ P4 E% U% |- i" V% O" s1 b8 A- |
按F9,运行游戏。# @* {9 W. T8 j
死一条人后,来到了这里,看Disassembly。
' C, L- j' t& Z8 W' V( Y* _& e/ q/ C* a" F z
$ P$ D* K9 p4 C. v, H: a. U步骤3:断到了00021cc8:sll>r2,r2,0x18 00021600% S \( G$ a+ ?/ u: R |' I
上面的一条指令00021cc4:sb r2,0x0045(r6) 04410018.这个应该是减命的指令(自己猜测的,不过对
4 r# I M% n3 t% K+ G1 s- G
" Z) t- I# ?% n7 i9 z, q! K这个游戏是有效的,别的游戏一般也在断点附近,自己修改后测试)。# P- s! k$ E" E. [, T n4 y% l- L
% f3 [% c s/ o步骤4:用HexCmp打开镜像文件(直接打开IMG,ISO,BIN等都行,总之是最大的那个,游戏的主体部分)2 O, y" h5 p- X+ r+ G* B
; b/ {8 q4 ~% d* |, f# W, D搜索:ffff4224 4500C2a0 00160200 (将原来Disassembly里的数值倒着搜索)
0 Z4 Q% Z5 h' s% |# P
4 w) i' c$ V; x) k0 G+ \到了这里,201afdcc.
; `, P0 E; ~! z: I7 c3 K7 L$ V0 Y/ [. \
! ^! Z/ {5 [" ~
将45 00 c2 a0的指令改为NOP(00 00 00 00)就行了,游戏运行后,死一条命,其指令却不执行,这就# u8 S& i2 B& a& _
达到了不减命的目的。( ?3 z& M# Y, q1 [! \
% V/ }5 I$ a; @# d/ s8 \4 @
到此,就结束了。从头运行游戏看看,洛克人X和ZERO果然不减命了。; W/ ~5 o- C$ s, M! w
* Y8 \1 @# W/ R% f i0 i
说明一下,NOP并不是对所有游戏的修改都适用的,想真正的改好,还是得看看MIPS汇编指令。
# h. w" ]7 o5 V( L另外,本人也是菜鸟一个,MIPS也看不太懂。如果有什么跟汇编指令有关的问题,还请找高手来解决。
% M$ K' q6 Z8 w2 R9 o9 t0 B
4 B$ O+ e/ z4 n/ g( w! H注意:请将SCPH1001.bin放进调试器的BIOS文件夹里,这样才能正常运行。(一般EPSxe中就有,可以复制
. N% [0 b" ~! |3 q
5 n \- Z# C6 @; m) t! m5 E过去)。另PS游戏较大,改之前最好先做好备份。- }' Q) d# L% X8 N- q7 l4 I) ?
将改过的IPS补丁也放上来。:loveliness:
+ ?6 I+ M: P8 Q8 P |! G
2 [) Q4 y; I5 e2 }5 C[ 本帖最后由 HeavenTrain 于 2009-5-1 22:40 编辑 ] |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
×
评分
-
1
查看全部评分
-
|