• 您的当前位置:首页 > HACK教程 > [ 教程 ] 二次元KOF逆向 打造你自己的拳皇

[ 教程 ] 二次元KOF逆向 打造你自己的拳皇

  • 作者:分享
  • 2020-09-19 10:23:31

HI,各位HACK友,小编又来发教程了,当然,这编教程不是小编写的,是冰炎梦幻兄弟写的,对KOF97进行修改,过程非常详细,让小编体会到了很多,转载给需要的朋友收藏也体会下了。

MAME PLUS这东东一款强大的模拟器,在下口舌笨拙难以言传,有心者请---鼓歌,此次以最简单的拳皇97放大招加血作为主要内容。

拳皇97是SNK的一款游戏,只要是80年代后的几乎没有人不知道此款游戏!此游戏采用摩托罗拉的MC68000作为处理器,那么我们只需要了解简单的68K汇编指令集即可!

我们打开MAMEPLUS开启调试器功能,执行拳皇97 如图:(基本快捷键如常用调试器:F5--run,F9---设置/取消断点,F10---步进,F11---有子程序的步进)

控制台中可以直接调用help查看调试指令,修改的思路:放大招扣除能量点,在此处加入加血功能,我们开始游戏,假设无作弊码,那么我们需要自行搜索能量珠位置,并在其处下断点!

ci 初始化搜索引擎
cn eq,1 搜索内存为1的地址

此时我继续积攒能量珠到2和3,再次搜索,得出三个地址,经过测试:得到1082E3则是P1能量珠的数量,对其下坑:

wp 1082E3,1,w (当1082e3处被写入数据后中断,涉及长度为1)

放个大招 那么程序便会停止, 如图:

停下的上一句即使掉能量珠的语句,如果把其nop,则放大招不扣能量了,我们这里仍旧要扣掉能量,但是还要给自己回血, 那么就要知道血量的地址,不知道的情况下,仍旧进行搜索,为了方便:这里已知1P血量地址为108239。

此时1P的基址为:A4=108100,那么可得全局血量基址为A4+139,我们加1/10个血量(67H=103)。

我们所需要的就是把addi.b #a,($139,A4)插入这句话的前后即可,由于上下都被占了 那么只能跳到空白地方写入程序再跳回来了,比如我们需要跳转到:90000H这个空白处写程序就可以了。

那么指令jmp $90000的机器码则是:4EF9 0009 0000,一共六个字节,很明显也是挤不下了,那么我们可以先跳到短地址:比如jmp $400,机器码是:4EF8 0400,再跳到长地址,即可!(有人在这里就要问,可以直接在短地址那里写就可以,这样是可以,但是短地址是稀有资源,能少用就少用咯)

那么程序出来了:

以上代码可以使用easy68K进行编译得到机器码如图:

那么我们打开拳皇97的rom,找到程序文件232-P1.bin!(这个P1不是Player1哈,1P和P1不一样,就如3P和P3不一样)

汇编文件写入ROM教程:http://www.hackrom.cn/html/3/84.html

捣鼓好,P1文件扔回rom包,运行测试:

放大招之后:

由于血量大于67H,就会出现乱码,那么我们可以在以上程序90000H处设置判断语句,加血后如果大于67H,那么就限制为67H。

手残党边搞别写两个小时,终于弄好了,结尾不知道说什么。

*_*
互动小天地
点击加载更多...