EMU618社区

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

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

 关闭 [复制链接]

签到天数: 389 天

[LV.9]以坛为家II

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

该用户从未签到

发表于 2009-7-31 13:38:47 | 显示全部楼层
输入累增或减的代码3 Z  A1 e- s4 q4 x2 `, Z3 t9 _
游戏中按一下选择键,武器地址累加或减,武器自然会变化
0 w8 T. V; E- z3 ^
2 s9 p1 P% [/ s. e* r/ ]) f可以搜索高手的作品来分析

签到天数: 389 天

[LV.9]以坛为家II

 楼主| 发表于 2009-7-31 13:43:41 | 显示全部楼层
原帖由 湘西小人物 于 2009-7-31 13:38 发表
) ]: O$ Y$ p- I  n1 k输入累增或减的代码
$ Y0 t! ^8 i3 r9 }1 o& ~& o游戏中按一下选择键,武器地址累加或减,武器自然会变化
* F3 c$ C9 U0 P) m! P2 T: G5 v
: v- I6 ]- M9 D/ `; l/ Q可以搜索高手的作品来分析
! _9 L  C" G$ O" ?
10表示普通子弹,如果是累加的话11表示散弹,12表示苹果弹,13表示激光,那么一直加上去的话,怎么样才能回到10?

该用户从未签到

发表于 2009-7-31 13:53:13 | 显示全部楼层
在加段指令
& @. K9 u3 r; T) U8 j# o0 \' K4 I当到武器地址到达XX值的时候返回XX值

签到天数: 389 天

[LV.9]以坛为家II

 楼主| 发表于 2009-7-31 15:10:01 | 显示全部楼层
原帖由 湘西小人物 于 2009-7-31 13:53 发表 1 i* N$ r! X! E& D* b
在加段指令7 I  x$ x9 y6 B1 w  I1 k
当到武器地址到达XX值的时候返回XX值

! l7 S! A* b' {; T5 Q% x谢谢啦:loveliness:

签到天数: 1 天

[LV.1]初来乍到

发表于 2009-7-31 19:28:02 | 显示全部楼层
pha  1 k2 [. t# s" r3 S# r
lda    按键内存, N& T2 k9 W! P: r/ ?% V0 e
cmp  #$20        SELECT键
  d" Z" ~$ d& B6 i% m$ W# tbne  end
9 L6 R2 j: ^8 p. ^+ finc   子弹内存6 T0 o/ p, N8 \8 k# m
lda   子弹内存
" W/ S% F5 b$ P4 f" Acmp  #$06     假设有5种子弹,那么到了6就变0: [' T! {+ s* U& v0 @7 L
bne   end
6 G  k  m% Q& Clda   #$00
- @& p: J7 r, h0 U6 esta  子弹内存: C" p; X( s% j2 I% U) A& f
end:
5 l1 R7 r6 V* b# H  Jpla% ]0 o2 k( {; l, A- a4 W/ F! w1 ^
rts! u. ~4 V% r# t6 i8 j: _

8 \( ~( \+ x; t% D0 J) o魂斗罗这个游戏 子弹代码是 00 01 02 03............. 吃了加速后是 10 11 12 13..................
& L" O9 t) P" N这里的判断还要多判断几次$ z7 T$ B8 `5 R( J
按键的映射内存有两个 一个是按一次后自动归0  这样的效果就是 即使按住也只运行一次+ S$ _- v4 s$ |, N8 y
另一个内存是按住之后是每个周期都运行的,那样的话就是按一下就运行了N次了,基本选不到你要的武器, 效果就是 随机抽到某子弹,因为按一次就加了N次了
7 B/ f$ l/ F% m/ |5 U两个内存是在一起的 中间隔开一个字节~~
  f3 e) G4 I9 g: x4 d当然也可以写程序处理这个问题,只是没必要兜圈子了

该用户从未签到

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

本版积分规则

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

GMT+8, 2026-2-24 16:04

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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