EMU618社区

 找回密码
 立即注册
搜索
查看: 1097|回复: 6

[求助] 如何hack成按一次键出一种功能,再按同样的键出另一种功能?

 关闭 [复制链接]

签到天数: 389 天

[LV.9]以坛为家II

发表于 2009-7-31 12:05:52 | 显示全部楼层 |阅读模式
拿FC的魂斗罗2为例,按一下选择键出散弹,再按一下出苹果弹,再按一下出激光。程序如何认别出,我第一次选择键后,执行散弹的代码,第二次按键后,执行苹果弹的代码,第三次执行激光的代码呢?

该用户从未签到

发表于 2009-7-31 13:38:47 | 显示全部楼层
输入累增或减的代码5 W: a( R5 i! N7 h8 C9 T  z' B
游戏中按一下选择键,武器地址累加或减,武器自然会变化
2 N% n2 d! [& T. K/ H  J" r
2 l/ b; B( D" o可以搜索高手的作品来分析

签到天数: 389 天

[LV.9]以坛为家II

 楼主| 发表于 2009-7-31 13:43:41 | 显示全部楼层
原帖由 湘西小人物 于 2009-7-31 13:38 发表
1 E. ^: n+ \- l, G% A$ i输入累增或减的代码; u; a6 u% G5 |
游戏中按一下选择键,武器地址累加或减,武器自然会变化9 j1 L" {5 s1 O, ?) d* ^1 F  |

$ g  N, {: K3 A可以搜索高手的作品来分析
# w* z# _" |; D9 F0 v/ s/ [. \
10表示普通子弹,如果是累加的话11表示散弹,12表示苹果弹,13表示激光,那么一直加上去的话,怎么样才能回到10?

该用户从未签到

发表于 2009-7-31 13:53:13 | 显示全部楼层
在加段指令7 G& e# a' @1 b1 G7 M' W( [
当到武器地址到达XX值的时候返回XX值

签到天数: 389 天

[LV.9]以坛为家II

 楼主| 发表于 2009-7-31 15:10:01 | 显示全部楼层
原帖由 湘西小人物 于 2009-7-31 13:53 发表 - `# T" y+ I5 J" A3 h
在加段指令, m* B5 D+ l" v& n7 F* c
当到武器地址到达XX值的时候返回XX值
/ O7 {1 M! G8 ]8 m1 j: o
谢谢啦:loveliness:

签到天数: 1 天

[LV.1]初来乍到

发表于 2009-7-31 19:28:02 | 显示全部楼层
pha  
$ U0 `! \8 X5 ]! ]8 j6 d2 @lda    按键内存% H9 N1 I$ m5 y
cmp  #$20        SELECT键' c+ ]- P% a  ~. ~
bne  end
; z' y- A3 B% Dinc   子弹内存3 O0 E1 w3 B7 C3 T
lda   子弹内存
2 v* ~9 I) T" a% I4 p6 w+ \cmp  #$06     假设有5种子弹,那么到了6就变0
4 _1 E& i4 n. ?6 \) qbne   end2 k* R. x; t) E; w% I! c1 i/ }
lda   #$00+ f9 _; _+ O. T4 W
sta  子弹内存
# T: O: C! T. p) Fend:
( Z# H- Q, `3 o, e- Ypla# \: t$ }8 u, l. j
rts7 Y. [+ a; ?1 Y& p% h
) M: q! O- N$ k& B- Z& l3 Y  N
魂斗罗这个游戏 子弹代码是 00 01 02 03............. 吃了加速后是 10 11 12 13.................. ! k# m# r1 V" `  S
这里的判断还要多判断几次
( @& J: U, Y) M+ u& o按键的映射内存有两个 一个是按一次后自动归0  这样的效果就是 即使按住也只运行一次# I# M1 h( o9 a1 ~4 e6 \
另一个内存是按住之后是每个周期都运行的,那样的话就是按一下就运行了N次了,基本选不到你要的武器, 效果就是 随机抽到某子弹,因为按一次就加了N次了& N; _9 o- P! ^/ l) ^6 p
两个内存是在一起的 中间隔开一个字节~~
; h& v, U8 p8 q. r当然也可以写程序处理这个问题,只是没必要兜圈子了

该用户从未签到

发表于 2009-8-1 00:35:42 | 显示全部楼层
感谢楼上提供的资料
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2025-9-15 05:02 , Processed in 1.119141 second(s), 19 queries , Gzip On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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