|
应网友YZB的要求,因此写了此篇文章,我也是菜鸟一个,PS也就改了两三个游戏,只会改简单的XX不减,
. F# Q6 y$ @6 a% a- h, A' X# s* _: m0 ?7 b' s
有些只是经验之谈,对于MIPS汇编指令也不清楚,而且不一定每次修改都有效。旨在和大家交流下学习经验,% D# {0 \ L2 W* [0 q: w) a6 b* k
有什么错误及不足请多提出。$ d; R% n$ `8 e* m/ u4 b
- J2 R* R4 t1 O( l* e z/ l
需要工具:HexCmp[Ultra Edit]
9 c& s5 [0 P$ ~9 ^& @7 mPSX v1.13(Ps 调试器)
( R9 e- M3 A8 Z3 ?EmuCheat
/ Y$ J. H# _- I HMIPS汇编指令。
* q; q8 B0 V# t1 N8 m, d- ]' K" r. ^6 B, a: i2 u" z
洛克人X5 EC:1 ? a) {2 P+ u0 Y8 T- ~
人数:0d311d,2.
, e- d1 @2 g( G2 U6 ? k/ L0 I, b' |3 M# P% K9 T
步骤1:载入洛克人X5镜像文件。点击File,再点击Insert CD Image,选择游戏打开。
+ A& x$ P/ `( b! a' @; ]3 z& N* U9 o9 |; u
步骤2:设置断点。运行游戏,等到洛克人X血值快为0时,暂停游戏,点击Debug-Monitor-r3000。, G. N4 L# ?8 ?& E2 d& T
会出现调试器界面。) \! l2 K9 \+ `- J" D. y/ N' O
其中有两个小的,一个是设置断点的界面(Breakpoints),另一个是观察指令的0 l9 {7 ?! m* B
界面(Disassembly)。
7 ~9 }- {6 B* Y/ I右击Breakpoints的空白地,出现了添加命令的方框,点Add。
5 c% ^. W7 c3 ]5 T' [
+ w9 B; y: m/ t: Y. |
! J3 {/ h+ R D4 @- O) e然后在adress处写入命数地址。先点Memory,再将read前的对勾取消,再点OK。
" C1 T+ h4 j% t+ h$ e* {3 B然后点Edit,会发现adress处变为:0x00000000,将其改为0x000d311d。点OK。
4 C$ q! \8 _1 ]2 f
8 D! r8 V4 I! A! ]2 h {按F9,运行游戏。
! m$ ~; Y9 ~5 m( U0 Q! h死一条人后,来到了这里,看Disassembly。
4 X9 S1 s2 n- _* F; @' r
$ b: U% a- m+ f3 D* u/ g' k- R
& ^- }0 x8 G1 z步骤3:断到了00021cc8:sll>r2,r2,0x18 00021600
# H; z" d( Y, M* Y* B上面的一条指令00021cc4:sb r2,0x0045(r6) 04410018.这个应该是减命的指令(自己猜测的,不过对$ i. P5 c- a O+ k
4 V3 O" b6 s. ]
这个游戏是有效的,别的游戏一般也在断点附近,自己修改后测试)。
. }4 _2 a: ^/ G+ }: Y
; L W6 z$ [9 o步骤4:用HexCmp打开镜像文件(直接打开IMG,ISO,BIN等都行,总之是最大的那个,游戏的主体部分)! a# w$ v; M- {: r4 D& M1 ^! Q5 x
* R7 z/ [ ~! ^. l; K( a$ B
搜索:ffff4224 4500C2a0 00160200 (将原来Disassembly里的数值倒着搜索)
3 k2 c' Z2 p9 r6 G6 |! u3 S* D- F: T+ ~
到了这里,201afdcc.
) M) }! y5 d5 [; u/ n4 P" W- q' g
4 a& T* D) v" b7 R$ B5 O2 P4 P# d+ Y6 k
将45 00 c2 a0的指令改为NOP(00 00 00 00)就行了,游戏运行后,死一条命,其指令却不执行,这就6 y; m3 V0 B' ^, s y) x9 p# I
达到了不减命的目的。0 J* Z. q2 m5 I" T: E2 ^
6 T5 `7 S$ ~. m9 u) h1 ?! C& i
到此,就结束了。从头运行游戏看看,洛克人X和ZERO果然不减命了。
8 N9 Q% P; Z+ S# t7 l. s
: m* k; g1 a3 G$ o说明一下,NOP并不是对所有游戏的修改都适用的,想真正的改好,还是得看看MIPS汇编指令。
: F: J& X3 m8 p另外,本人也是菜鸟一个,MIPS也看不太懂。如果有什么跟汇编指令有关的问题,还请找高手来解决。
' @5 J' P6 c- S. M% X) c' ~. {2 o9 z, N1 U
注意:请将SCPH1001.bin放进调试器的BIOS文件夹里,这样才能正常运行。(一般EPSxe中就有,可以复制7 n6 N$ Y4 _/ q+ @4 V/ B
4 S" n4 @" @# S6 b' ^过去)。另PS游戏较大,改之前最好先做好备份。
- B3 s8 P3 K, u: p# A. z将改过的IPS补丁也放上来。:loveliness: ; E0 J7 n: A) l" }7 u3 \
' {! q/ [4 D/ h2 M* `- r5 G
[ 本帖最后由 HeavenTrain 于 2009-5-1 22:40 编辑 ] |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
x
评分
-
1
查看全部评分
-
|