|
|
应网友YZB的要求,因此写了此篇文章,我也是菜鸟一个,PS也就改了两三个游戏,只会改简单的XX不减,
4 f- ?9 `5 K- c; ]& l7 K0 J4 Z7 D0 X8 A" ]
有些只是经验之谈,对于MIPS汇编指令也不清楚,而且不一定每次修改都有效。旨在和大家交流下学习经验,8 k4 V* U3 j. z
有什么错误及不足请多提出。% t4 {. k( ?. t Z% R3 J" G+ m+ _5 z
* ]& S, W/ T! a+ P9 a. A
需要工具:HexCmp[Ultra Edit]
8 O8 B0 A3 O/ C/ [9 U% @/ YPSX v1.13(Ps 调试器)6 ?% |8 y7 y9 A, d! l* u, b; J+ F
EmuCheat3 d% J0 V; t/ a# d* L
MIPS汇编指令。
7 a6 a+ U. k1 p- b6 k. p6 | ^
6 K% H G# T) L: \洛克人X5 EC:
9 |3 Y& c0 P- I" A2 m人数:0d311d,2.
* s$ r% t/ i0 d3 c; `+ t. m6 @# X# `# e- ?- o$ e; @% K
步骤1:载入洛克人X5镜像文件。点击File,再点击Insert CD Image,选择游戏打开。8 {+ F6 d! q: J. ~8 b. R! {
+ c2 s Y I4 S _/ z- c' ?; _步骤2:设置断点。运行游戏,等到洛克人X血值快为0时,暂停游戏,点击Debug-Monitor-r3000。
# }' U! M: Y$ p; o k会出现调试器界面。2 ~2 h( L1 t2 _. U I3 V+ D
其中有两个小的,一个是设置断点的界面(Breakpoints),另一个是观察指令的' y; T* F$ O1 q% L/ f2 m
界面(Disassembly)。
, l$ ? N& s% J0 y- @: l5 ^- N/ `右击Breakpoints的空白地,出现了添加命令的方框,点Add。
$ e. }' G y9 L o' E; S! F
$ N! l9 ]& Z6 ?8 A8 l* H! q9 V$ C7 F/ X# b% j
然后在adress处写入命数地址。先点Memory,再将read前的对勾取消,再点OK。8 ^9 K2 y+ k5 M! Z
然后点Edit,会发现adress处变为:0x00000000,将其改为0x000d311d。点OK。
# y. O& [5 Z z5 ^
. t$ E9 a4 k4 i- g' L按F9,运行游戏。
3 M$ g8 z% |: a4 m- G* ~4 i, g2 w死一条人后,来到了这里,看Disassembly。! u7 d1 m, f+ ?3 J- X. o7 ?* w1 M
, M5 M& N, r! s# R! N) d- l8 V0 I4 u8 u& u% a; h9 b
步骤3:断到了00021cc8:sll>r2,r2,0x18 000216000 P* B! F' f3 D8 F
上面的一条指令00021cc4:sb r2,0x0045(r6) 04410018.这个应该是减命的指令(自己猜测的,不过对. B5 T) h) v' Z. }5 y
# x' r- C: @) D2 @- J+ d ~
这个游戏是有效的,别的游戏一般也在断点附近,自己修改后测试)。
, z- x% Y, ]+ L' S" B1 Q5 B+ N6 ~8 H; ~: j7 s
步骤4:用HexCmp打开镜像文件(直接打开IMG,ISO,BIN等都行,总之是最大的那个,游戏的主体部分); }5 d1 N4 ~# |: _
& c- V' r5 \0 a( E$ h
搜索:ffff4224 4500C2a0 00160200 (将原来Disassembly里的数值倒着搜索)0 G& j4 m6 W, w2 R1 @2 L w- E
! T/ L, E, H$ Q6 o+ i G$ |. b# e
到了这里,201afdcc., O2 J" ]/ C5 R% K( {' b9 b
0 H6 `& r( |/ H t. ?) }
& M/ @# ^+ n) ]; V7 i将45 00 c2 a0的指令改为NOP(00 00 00 00)就行了,游戏运行后,死一条命,其指令却不执行,这就0 N! g0 l8 i6 M7 B" n/ O
达到了不减命的目的。3 i; j: w+ Y( v! q
1 F2 _. B- ]. W- u6 K: f# `, ]
到此,就结束了。从头运行游戏看看,洛克人X和ZERO果然不减命了。$ S: a' \- Y$ v |1 \* W/ Z1 F
' n9 l: u2 L5 h说明一下,NOP并不是对所有游戏的修改都适用的,想真正的改好,还是得看看MIPS汇编指令。
9 N: `$ E/ I% s1 Z9 p6 ^& n另外,本人也是菜鸟一个,MIPS也看不太懂。如果有什么跟汇编指令有关的问题,还请找高手来解决。
8 e, r& y5 l+ l. J z4 X' V9 x/ c( Y5 `' J, V; X
注意:请将SCPH1001.bin放进调试器的BIOS文件夹里,这样才能正常运行。(一般EPSxe中就有,可以复制* T4 P- {2 g; F/ j4 S$ H* ]/ {7 V
E f/ u' R6 }
过去)。另PS游戏较大,改之前最好先做好备份。
1 p+ ~ c1 a' B将改过的IPS补丁也放上来。:loveliness: & h/ A7 S8 M; @
) s0 w% g& N& G8 d- R# t v[ 本帖最后由 HeavenTrain 于 2009-5-1 22:40 编辑 ] |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
×
评分
-
1
查看全部评分
-
|