EMU618社区

 找回密码
 立即注册
搜索
查看: 15191|回复: 15

[原创]FC魂斗罗2 日版 (命不减HACK)

 关闭 [复制链接]

该用户从未签到

发表于 2007-7-24 11:15:00 | 显示全部楼层 |阅读模式
非常感谢疾风之狼的HACK教程,我学到了很多。也感谢疾风之前帮我HACK的机械战警3$ f: ?! f$ L2 C8 A
: I/ H6 ]! b/ j  j; a) n3 T
在一翻努力之后,我终于成功HACK出魂斗罗2命不减,初始的3个勋章(人的命),在人物跳下后,不减,以后也不减,就等于是无限命了,但是修改为某个数值我不会。所以命数还是默认的了。只是不减了。游戏经过测试,可以打下去。如果中间有BUG可以告诉我。:loveliness:

# R) z$ D$ J+ C8 D) `. R0 Y5 u- k& e; U5 T2 |( e! H4 D
我主要是有问题要问,所以才没有发到置顶帖里。# n. M7 I9 {5 O$ I7 R

5 H% u; L( X; U+ D1 i两个问题:5 ^/ r7 v# j+ G) a7 g1 a
1.请问疾风,我只修改了1P的命数,为什么2P也不减了?难道1P和2P是共用一个地址的?但是EC码里似乎是53和54这两个地址啊。
3 W5 Z0 p' o! B+ T2 ~* i0 m: x
. s  M! `" H5 ^+ d2.在修改双截龙3时,我想改成血不减,但是找到1P地址后
1 X2 f: e4 x  ~. T9 n
0 \, G) @# O: @" x4 i' v, i/ w0 E数据是这样的,我抄了下来,9D是命令,045D是血的地址/ e! a3 x" a! D9 J: ?; ]

, t6 o6 ^5 u- l+ E% O; Z, y% bA9 00 9D 5D 04 60 A6 12 0
" V2 X# `# t9 s; G. K- d8 S2 O- d+ u
# o1 s  U2 O0 w5 u: M在我把9D改为BD之后,1P和2P都不减血了,本来以为成功了,但是却发现敌人打不死,小兵用抓住头用脚踢他的方式才能打死,不然就打不死。难道也是1P和2P共用地址?但是小兵却死不掉了。恳请疾风能找个机会解释一下给我听。# U; `2 Y& |" |0 U1 J# W' l, Z% N

8 S- Q5 H- n+ T& Y! F' w

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x

评分

1

查看全部评分

签到天数: 2072 天

[LV.Master]伴坛终老

发表于 2007-7-24 12:02:08 | 显示全部楼层
偶下载看看.........+ N3 x" o& T, [
* H/ j6 h7 }  ^% e
偶说一下9D 5D 04这一条命令,这条命令作用是把寄存器A的数据写到045D地址,你知道这条指令不是单变化,也就是说这可能会影响其他数据,如果单单做指令修改,会有问题产生。当你把9D修改为BD,变成BD 5D 04,意思是把045D读入寄存器A,造成会出现你说敌人打不死的情况。貌似你双截龙3血不减不是这样修改,双截龙3应该是这样修改:寻找连续储存的0xFF或者0x00的地址,要先测试这个地址是否可用,如果可以使用,就把9D 5D 04这条指令修改为4C xx xx,意思跳转到某个有连续储存0xFF0x00xxxx地址,然后在有连续储存0xFF或者0x00xxxx地址添加以下指令:9D 5D 04 A9 5E 9D 5D 04 4C 19 B09D 5D 04指令作用是把寄存器A的数据读入045D地址,A9 5E指令作用是把数值5E读入寄存器A9D 5D 04指令作用是把寄存器A的数据读入045D地址,4C 19 B0指令作用是跳回到B019处继续运行,修改空毕.....这个就是利用无条件跳转指令4C再添加指令,偶教程里有说......% Y& r6 r3 O$ N! o4 R4 R

% [4 D; c% v& |! Z( v  n0 {偶测试了,魂斗罗2 1P和2P的命数是共用一条指令.......所以你修改了1P命数不减等于把1P和2P命数修改成不减........

签到天数: 2072 天

[LV.Master]伴坛终老

发表于 2007-7-24 19:08:57 | 显示全部楼层
原帖由 zhoubinne 于 2007-7-24 18:57 发表
2 _8 M: }. h/ n2 f哪个主机上的游戏啊

6 n" [' \+ |8 ^4 S* D/ @6 H9 Q3 [; {, d; |  v& x2 V& ]
FC上的游戏,请使用FC模拟器玩......! [' @5 @$ H$ N" u6 H7 K

! l3 Q4 f; \0 }7 Y" e1 b; M- GFC模拟器下载页面:http://www.emu618.com/tools/home.htm

签到天数: 1303 天

[LV.10]以坛为家III

发表于 2007-7-24 19:15:53 | 显示全部楼层
可能是因为你修改为勋章数锁定为3个" f/ _( U7 y! b, Z! I- X1 i
就和修改某些游戏中体力不减一样的道理吧,锁定在这个数字就达到不减的目的

该用户从未签到

 楼主| 发表于 2007-7-24 20:54:51 | 显示全部楼层
原帖由 疾风之狼 于 2007-7-24 12:02 发表
( e% e5 m4 O2 n+ P, P偶下载看看.........% K# }& y2 o4 `: a+ ^2 J; c

+ p/ [: X$ C9 S! w0 _9 N% d7 z3 b' t偶说一下9D 5D 04这一条命令,这条命令作用是把寄存器A的数据写到045D地址,你知道这条指令不是单变化,也就是说这可能会影响其他数据,如果单单做指令修改,会有问题产生。当你把9D修改 ...
. ~! }' g* U5 `% F! X  {1 K* t
非常感谢疾风,我明白了。4 d$ [: _% o/ b0 l: h$ Q
其实那个无条件跳转我也实验过,你那个教程里有的,意思我也看懂了。但是我使用无条件跳转修改后(5E这个地址我也知道),修改出来和直接改了效果一样,可能是我自己哪里搞错了吧。总之非常感谢,你这么一解释我就更清楚了。回头我再试试。:loveliness:

签到天数: 6 天

[LV.2]偶尔看看I

发表于 2007-7-24 20:58:28 | 显示全部楼层
不错,不错~!!! z# e& g" J+ U& T7 k& ^8 \2 c
支持一下,感谢分享~!
" L. N; v; M+ @" y* X辛苦了。。。

该用户从未签到

 楼主| 发表于 2007-7-24 22:35:45 | 显示全部楼层
4C 19 B0指令作用是跳回到B019处继续运行
* Z5 K& u: O4 o- m* B+ F1 {! p
0 ]7 E* r: p( y8 C' r3 s

3 X$ f. k; {9 M  Z& b# V7 R9 q最后问一下,为什么是跳转到B019呢,你那个教程最后跳到什么地方去了?' \3 z: q$ V+ [5 K8 O" m' B

0 }% g$ j, B& a, Y! KPS:最初找到体力数据时,位置确实是B019,也就是说最后那个4C指令跳转到我最初找到的这个地址是吗

签到天数: 2072 天

[LV.Master]伴坛终老

发表于 2007-7-24 23:20:08 | 显示全部楼层
原帖由 李小狼 于 2007-7-24 22:35 发表
( X7 G6 R; j/ ?6 D  {! W) a2 P! ?; W1 P& h
# x/ v) b4 B& x/ ]9 C2 e$ V
3 n: P8 n  d5 Y: ]
最后问一下,为什么是跳转到B019呢,你那个教程最后跳到什么地方去了?
) A* l, `- U. a; o8 Z( D* g% t$ M6 e
PS:最初找到体力数据时,位置确实是B019,也就是说最后那个4C指令跳转到我最初找到的这个地址是吗
  d& o1 q: F2 w6 j" m! ]2 p6 k0 e* B

" Q+ S' |7 K# X; I* P) N偶截获到双截龙3的指令地址:(偶不知你截获到双截龙3指令是否和偶一样): {8 [6 }% k" V8 S
B00F:38
. [: H7 }4 Z) DB010:E5 2B
% ]. e( x+ P8 i% UB012:B0 020 r" y: h& y6 ]* p1 E2 _0 i6 p
B016:9D 5D 04->修改为4C CD FE(假设偶查到连续储存0xFF地址是FECD,这个是假设)
2 F& z6 R: z4 k- B8 |; A0 PB019:60                         (60是返回主程序处继续运行)
- D, V) R8 I$ C# ^& B- W7 i4 L* E/ _! }
在连续储存0xFF地址添加指令:
4 L; w( h  p: \8 ~" ?1 ~7 ?FECD:9D 5D 04 A9 5E 9D 5D 04 4C 19 B01 g; V" t( x$ x
1 u1 j5 p  v7 U& a  K" G
4C 19 B0是跳回原来程序B019处继续运行,就是原来程序9D 5D 04后面的B019:60,由于原程序B012:9D 5D 04后面指令是60,当然你也可以把4C 19 B0修改为60也可以,变成:9D 5D 04 A9 5E 9D 5D 04 607 x5 t4 V) V2 W9 b- G$ b0 Q
  h0 B7 C) N) Y- ]# R' W6 u* a8 a
这样看起来就完成在B016和B019之间添加指令.......

该用户从未签到

发表于 2007-7-25 08:27:49 | 显示全部楼层
楼Z加油哪 咱也学习下

签到天数: 2 天

[LV.1]初来乍到

发表于 2007-7-31 21:47:33 | 显示全部楼层
原来修改游侠这么复杂啊~~~

该用户从未签到

发表于 2007-8-1 23:17:48 | 显示全部楼层
感谢分享,下了看看怎么样

该用户从未签到

发表于 2007-8-6 15:48:47 | 显示全部楼层
支持啊!!!!
: @( b" S; |/ s" n修改的喜欢

该用户从未签到

发表于 2007-8-17 16:05:24 | 显示全部楼层
,......佩服佩服。。十分佩服。。
1 {5 M7 M" Q0 [+ z. G请问,真的是无敌?:chongbai:

该用户从未签到

发表于 2007-8-22 17:28:50 | 显示全部楼层
任天堂的经典之作,支持

该用户从未签到

发表于 2007-8-24 22:22:12 | 显示全部楼层
好贴,
. h& O# ]9 X/ c1 C我顶啊

签到天数: 4 天

[LV.2]偶尔看看I

发表于 2007-9-10 11:43:24 | 显示全部楼层

好厉害

太羡慕啦,我也想学学
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|国治模拟精品屋 ( 沪ICP备15012945号-1 )

GMT+8, 2025-9-16 20:17 , Processed in 1.067383 second(s), 22 queries , Gzip On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表