A9VG电玩部落论坛

 找回密码
 注册
搜索
查看: 9349|回复: 13

[应求][HACK]SFC/SNES《魔兽大战-虹色の魔石》金手指

[复制链接]

精华
0
帖子
478
威望
0 点
积分
629 点
种子
12 点
注册时间
2008-3-13
最后登录
2024-8-5
 楼主| 发表于 2012-8-31 16:18  ·  吉林 | 显示全部楼层 |阅读模式
本帖最后由 ly63 于 2012-8-31 16:23 编辑

平台:SFC/SNES
游戏:《魔兽大战-虹色の魔石》
           Little Master - Nijiiro no Maseki (Japan)
ROM大小:16Mbit(2MiB)
ROM类型:LowROM



这个修改是应超任兄(super.man)和其他几位坛友所求。
由于修改的内容很少(4字节或2字节),就不发HACK好的ROM了,各位请自行修改,方法在帖子最下方。或者直接当成金手指码使用(推荐)

金手指码:
获得1经验值即升级:
01C178 9C
01C179 58
01C17A 0E
01C17B EA
获得多少点经验就升多少级:
01C17A EA
01C17B EA

如何HACK到ROM中:

方法1:
  • 用我写的金手指转换程序计算出ROM文件地址,用HEX编辑器打开ROM,定位、写入数据。

方法2:
  • 用HEX编辑器打开ROM,搜索十六进制数值“070EAD070E",结果只有一个,紧随其后的“C9649010”就是需要修改的目标。
上面的2条金手指中不可一起写入,这样做会破坏游戏运行时数据,所以只能选择1条写入ROM。
使用第一条的话就把“C9649010”改为“9C580EEA”,使用第二条的话就把“9010”改为“EAEA”

本帖子中包含更多资源

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

x

精华
3
帖子
792
威望
3 点
积分
1876 点
种子
5 点
注册时间
2012-5-4
最后登录
2023-9-15
发表于 2012-8-31 17:53  ·  上海 | 显示全部楼层
这游戏很有爱  纯支持一下
该用户已被禁言

流放者(禁止发言)

♥ 正義聯盟 ♥

精华
1
帖子
40947
威望
2 点
积分
42917 点
种子
0 点
注册时间
2008-11-16
最后登录
2012-12-25
发表于 2012-8-31 18:29  ·  辽宁 | 显示全部楼层
  啥都不说了~~!!
  感谢!!感谢!!!!
  已经修改好了~~~~~~!!!
  ly63 兄帮我修改的这些ROM绝对值得珍藏啊~~~!!!

  
  打一仗升一级 就够用了~~    太好了~~!!!   这游戏以前都没玩过第6关~~~  
   

本帖子中包含更多资源

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

x

精华
0
帖子
37581
威望
0 点
积分
43639 点
种子
1713 点
注册时间
2010-9-9
最后登录
2025-1-15
发表于 2012-8-31 19:00  ·  湖北 | 显示全部楼层
感谢最喜欢HACK ROM了无敌了

精华
0
帖子
371
威望
0 点
积分
390 点
种子
12 点
注册时间
2010-5-10
最后登录
2024-11-14
发表于 2012-8-31 19:39  ·  上海 | 显示全部楼层
ly63兄的动作真是快,万分感谢
该用户已被禁言

流放者(禁止发言)

♥ 正義聯盟 ♥

精华
1
帖子
40947
威望
2 点
积分
42917 点
种子
0 点
注册时间
2008-11-16
最后登录
2012-12-25
发表于 2012-8-31 22:29  ·  辽宁 | 显示全部楼层
问下~~
怎么才能破译 把 金手指 码转换成 十六位编辑器用的 代码~~~???!!??

比如:

获得1经验值即升级:
01C178 9C
01C179 58
01C17A 0E
01C17B EA

使用第一条的话就把 “C9649010”改为 “9C580EEA”

这个“ 9C 58 0E EA ” 就是 4条金手指码的 4个 尾数~~  这是结果~~
而 “C9649010” 从何而来~~????

   如果知道怎么 把 金手指 码转换成 十六位编辑器用的 代码  的问题解决,那么以后修改ROM 找对应游戏的金手指 就OK了~~

   不过这个需要编程 C语言 什么的专业知识的话,那我也就放弃了~~~
   我根本不通啊~~~  
该用户已被禁言

流放者(禁止发言)

♥ 正義聯盟 ♥

精华
1
帖子
40947
威望
2 点
积分
42917 点
种子
0 点
注册时间
2008-11-16
最后登录
2012-12-25
发表于 2012-8-31 22:33  ·  辽宁 | 显示全部楼层
   而且有很多金手指 根本不是 4条数据啊~~~
      

精华
0
帖子
478
威望
0 点
积分
629 点
种子
12 点
注册时间
2008-3-13
最后登录
2024-8-5
 楼主| 发表于 2012-8-31 23:35  ·  吉林 | 显示全部楼层
9C580EEA这几个字节是2个CPU指令,翻译成汇编语言就是:
STZ $0E58
NOP

C9649010是未修改之前的程序,不给出的话你如何知道修改哪些数据呢?
翻译成汇编语言就是:
CMP #$64
BCC $10

这些指令1字节也不能多,1字节也不能少,否则整个程序就失调了。

C 语言是高级语言,在这里一点也用不上,不过学习语言过程中的知识是必要的。
在ROM里的程序都是机器码,调试器可以反汇编,有经验的话也可不借助汇编助记,直接机器码编程。

精华
0
帖子
478
威望
0 点
积分
629 点
种子
12 点
注册时间
2008-3-13
最后登录
2024-8-5
 楼主| 发表于 2012-8-31 23:41  ·  吉林 | 显示全部楼层
金手指码的前半部分是地址,后半部分是数据,一条金手指
AAAAAA DD
的作用就是把地址为AAAAAA的位置的数据改为DD

在SFC CPU寻址范围中从7E????至7F????的区域是内存,所有运行时的数据都在这里,这样的金手指码就俗称“动态修改”的金手指,这类金手指不可在磁碟机上使用。

ROM地址就复杂了,ROM分为HiROM和LowROM以及ExHirom、ExlowROM地址范围多变,不过还好了,没有像FC那样普遍的BANK SWITCH。
该用户已被禁言

流放者(禁止发言)

♥ 正義聯盟 ♥

精华
1
帖子
40947
威望
2 点
积分
42917 点
种子
0 点
注册时间
2008-11-16
最后登录
2012-12-25
发表于 2012-8-31 23:45  ·  辽宁 | 显示全部楼层
ly63 发表于 2012-8-31 23:35
9C580EEA这几个字节是2个CPU指令,翻译成汇编语言就是:
STZ $0E58
NOP

   看起来太深奥了~~~
   我肯定是搞不定了~~

   最近麻烦你帮我修改了很多游戏ROM ~~!!再次表示感谢~~~!!!
   十六位编辑器 我也会简单的使用了~~~
   真好~~~
   以后的一段时间终于可以尝试以前没有通关的游戏了~~~  太高兴了~~~!!
   感谢 ly63兄 ~~~!!!


                     
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|A9VG电玩部落 川公网安备 51019002005286号

GMT+8, 2025-1-17 03:47 , Processed in 0.205783 second(s), 15 queries , Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

返回顶部