您的位置:首页 > 其它

SFC简单修改教程

2017-12-15 13:37 120 查看

SFC简单修改教程

作者:FlameCyclone(QQ:1490868135)

时间:2015.12.27

工具:

1.调试器:snes9x1.51.ep10r1;

2.试验品:sfc平台rom一个;

3.辅助工具Hxd(可以不用).

 

打开调试器,设置好按键:

 

载入ROM:

 

 

 

 

此时会弹出调试器窗口:

 

单击Run(运行)按钮,之后正常运行:

 

进行游戏后,打开作弊码查找工具:

 

 

接下来查找我们要修改的东西,比如生命不减.

先单击Reset(重置),再单击OK(确定)回到游戏,去死一下.

死后生命减少,然后打开作弊码查找工具:选择小于选项,

 

再单击Search(查找)按钮,此时查找的地址变少了,但还是很多,所以继续查找,建议使用S/L大法,死前存档,死后查找小于,再读档,再查找大于,反复循环,直到找到地址.

如图:

 

可以肯定生命地址就是7E1F8A,把它记下来,关掉查找窗口.接下来进入修改阶段.

回到调试器,单击Breakpoint(断点):

 

输入生命地址,把Write(写入)打钩,单击OK按钮,这样就设置了对生命地址的写操作断点:

 

 

回去游戏送死:

 

游戏暂停了,调试器下方的窗口出现的程序就是断点程序:

 

$01/9B91 DE 8A 1D    DEC $1D8A,x[$05:1F8A]   A:0000 X:0200 Y:0000 P:envmxdiZC

首先来讲讲该指令:

对1D8A执行递减操作(这里使用的是绝对X变址)由于X=0200,所以变址就是1D8A+0200=1F8A了.

接下来单击Show Hex,就打开了Hex编辑器:

 

Viewing(视区),选择ROM,然后分别输入819B90和819F00(只要包含调试器上断点程序就可以)

 

找到断点指令:

 

可以对其修改:

把它改为读取指令,比如BD 8A 1D(改第一个字节就可以了),再单击Save ROM(保存ROM).

 

单击Breakpoint按钮,取消写断点的钩,再单击OK:

 

然后单击Run(运行),然后进行游戏测试,看看生命会不会减少:

 

发现生命和预料一样,没有减少(注意,有些游戏可能存在多条指令对生命的写操作,本教程试验品的第2关就使用第二个指令来减少生命,只要去第二关做相同操作修改即可,这里不多叙述)

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  FC修改