EMU618社区

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

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

 关闭 [复制链接]

该用户从未签到

发表于 2007-7-24 11:15:00 | 显示全部楼层 |阅读模式
非常感谢疾风之狼的HACK教程,我学到了很多。也感谢疾风之前帮我HACK的机械战警3
- R& @; s" X" O9 z6 C/ r$ o9 a  ]7 ~& Z( @1 G5 \/ _4 L/ ?* R; Z1 N
在一翻努力之后,我终于成功HACK出魂斗罗2命不减,初始的3个勋章(人的命),在人物跳下后,不减,以后也不减,就等于是无限命了,但是修改为某个数值我不会。所以命数还是默认的了。只是不减了。游戏经过测试,可以打下去。如果中间有BUG可以告诉我。:loveliness:
' `* A9 Q  W6 c8 W; X1 l
. x9 t1 d# T5 J% H, p5 ^  f( f& w
我主要是有问题要问,所以才没有发到置顶帖里。
  I3 R; r# K8 \7 m: o# v( K+ M& l8 t2 U1 z4 ?
两个问题:9 ~' C: V7 ~( d- l# ?" s1 r
1.请问疾风,我只修改了1P的命数,为什么2P也不减了?难道1P和2P是共用一个地址的?但是EC码里似乎是53和54这两个地址啊。
! r: }) g2 C- I8 ^9 J1 d6 r4 A7 E7 u$ L6 s' B
2.在修改双截龙3时,我想改成血不减,但是找到1P地址后0 D6 G3 Y, V8 P3 ^" Z8 P3 d' L
. h# g4 z7 k2 f  B5 s# v
数据是这样的,我抄了下来,9D是命令,045D是血的地址: k$ l+ c$ `! A

/ o. o3 d# G8 |A9 00 9D 5D 04 60 A6 12 0
% u8 I) n* a  \* i2 R
- q+ R$ l2 G) t% f5 g" C" u在我把9D改为BD之后,1P和2P都不减血了,本来以为成功了,但是却发现敌人打不死,小兵用抓住头用脚踢他的方式才能打死,不然就打不死。难道也是1P和2P共用地址?但是小兵却死不掉了。恳请疾风能找个机会解释一下给我听。
$ D2 ^. L4 y* t- W- @& e0 F( O1 ^
# ?$ m4 i1 ?) r* ~( `

本帖子中包含更多资源

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

x

评分

1

查看全部评分

签到天数: 1972 天

[LV.Master]伴坛终老

发表于 2007-7-24 12:02:08 | 显示全部楼层
偶下载看看.........  F' \3 r1 }$ B

0 j! Z) c9 B( G8 U( K1 M2 W3 }偶说一下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再添加指令,偶教程里有说......
, d7 h/ e8 m; F; g$ G. ?+ C& K+ C# o9 s! Y; e
偶测试了,魂斗罗2 1P和2P的命数是共用一条指令.......所以你修改了1P命数不减等于把1P和2P命数修改成不减........

签到天数: 1972 天

[LV.Master]伴坛终老

发表于 2007-7-24 19:08:57 | 显示全部楼层
原帖由 zhoubinne 于 2007-7-24 18:57 发表
7 V! |/ R2 f; y& X: H  O哪个主机上的游戏啊
+ \7 ~, K$ S+ T
" g3 _0 B1 P' J7 y" ?
FC上的游戏,请使用FC模拟器玩......
% h3 ]' n6 h+ y* ]$ X
3 [0 O2 x6 Q+ s' DFC模拟器下载页面:http://www.emu618.com/tools/home.htm

签到天数: 1303 天

[LV.10]以坛为家III

发表于 2007-7-24 19:15:53 | 显示全部楼层
可能是因为你修改为勋章数锁定为3个  M1 i( ~! w. ^4 F6 ]' v, j
就和修改某些游戏中体力不减一样的道理吧,锁定在这个数字就达到不减的目的

该用户从未签到

 楼主| 发表于 2007-7-24 20:54:51 | 显示全部楼层
原帖由 疾风之狼 于 2007-7-24 12:02 发表
; n: L. U: _( K" C9 o% W# |偶下载看看.........
# y. \' Z2 @# L& m4 D
. s6 s: E  O% A+ J9 j偶说一下9D 5D 04这一条命令,这条命令作用是把寄存器A的数据写到045D地址,你知道这条指令不是单变化,也就是说这可能会影响其他数据,如果单单做指令修改,会有问题产生。当你把9D修改 ...

* f8 q6 D* r7 {7 S4 e- Z5 u非常感谢疾风,我明白了。" f! Q( _- a0 W% S0 {
其实那个无条件跳转我也实验过,你那个教程里有的,意思我也看懂了。但是我使用无条件跳转修改后(5E这个地址我也知道),修改出来和直接改了效果一样,可能是我自己哪里搞错了吧。总之非常感谢,你这么一解释我就更清楚了。回头我再试试。:loveliness:

签到天数: 6 天

[LV.2]偶尔看看I

发表于 2007-7-24 20:58:28 | 显示全部楼层
不错,不错~!!
; k3 E% m0 ~/ \8 L6 ]7 L; \支持一下,感谢分享~!4 ]( e  ^/ t! R; ~
辛苦了。。。

该用户从未签到

 楼主| 发表于 2007-7-24 22:35:45 | 显示全部楼层
4C 19 B0指令作用是跳回到B019处继续运行
# H! m* N3 P) B0 t" f2 ]
0 U4 o8 _0 p! L& l
; _5 R1 p# t! g
最后问一下,为什么是跳转到B019呢,你那个教程最后跳到什么地方去了?. G5 Z: S, q" h3 U

3 b# f; E$ n: Y, v  P5 x8 YPS:最初找到体力数据时,位置确实是B019,也就是说最后那个4C指令跳转到我最初找到的这个地址是吗

签到天数: 1972 天

[LV.Master]伴坛终老

发表于 2007-7-24 23:20:08 | 显示全部楼层
原帖由 李小狼 于 2007-7-24 22:35 发表
$ E  ^, h4 l1 _$ H: e3 X
9 a& ~& `' {( g7 S: q0 ~
* W/ r2 t. D& \* w6 k3 X/ ^. N: ?7 t1 h$ }3 M8 y, g9 Z% ^3 V
最后问一下,为什么是跳转到B019呢,你那个教程最后跳到什么地方去了?" H6 M- F- {2 ~5 W/ q. O( E
; q# @7 R8 L# K+ _' O8 R
PS:最初找到体力数据时,位置确实是B019,也就是说最后那个4C指令跳转到我最初找到的这个地址是吗
2 M! y1 ?8 `- m  h- v0 r6 L' I
( _) {# i7 R! O/ r
偶截获到双截龙3的指令地址:(偶不知你截获到双截龙3指令是否和偶一样)
* S- }: S& d' Q. mB00F:38$ J2 \% a$ S& H0 E* P' \
B010:E5 2B) u7 t7 P, ?' V; Z: G
B012:B0 020 U) P8 A6 h' U9 D
B016:9D 5D 04->修改为4C CD FE(假设偶查到连续储存0xFF地址是FECD,这个是假设); E- s; M; J" {7 Z+ m
B019:60                         (60是返回主程序处继续运行)% k# y6 g5 l9 W& s/ z4 F
& |& l0 l9 t. k& q7 R3 C$ Y/ m3 ~' q; a
在连续储存0xFF地址添加指令:1 o6 T/ G# R1 W9 F6 K, C
FECD:9D 5D 04 A9 5E 9D 5D 04 4C 19 B0
$ j9 X' b$ s4 |, _! J' R* K9 s& I
. W7 ?6 s3 s( g' r  z, k6 o" A4C 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 603 c/ g2 ~0 M+ g, n
" K( f% _5 v6 u6 W0 p+ C
这样看起来就完成在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 | 显示全部楼层
支持啊!!!!
6 }. x1 r0 p- v. o6 c修改的喜欢

该用户从未签到

发表于 2007-8-17 16:05:24 | 显示全部楼层
,......佩服佩服。。十分佩服。。
" x9 J. R9 q9 N6 r+ y6 d: O请问,真的是无敌?:chongbai:

该用户从未签到

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

该用户从未签到

发表于 2007-8-24 22:22:12 | 显示全部楼层
好贴,$ J. _* O, g3 |* I; o4 L- G
我顶啊

签到天数: 4 天

[LV.2]偶尔看看I

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

好厉害

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

本版积分规则

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

GMT+8, 2025-6-8 11:59 , Processed in 1.125000 second(s), 25 queries , Gzip On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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