CPS3的破解是很多人接触到了街机上面的sf3.3这款作品,我也是受益者之一。拿到rom和模拟器之后编投入了苦练之中,但是街机上面是没有连招模式的,要想有,只能考修改内存或者hack rom,对于hack,我是一窍不通,那就只能考修改内存来实现了。
在此之前,网上面流出了一些修改文件(game master 8.0所用的和mame所用的作弊文件),我用CPS3emulator,因此下载了GM的那个版本,但是加载之后发现无效,有人说可能是机器配置不一样,导致模拟器基址有所改变。这样的话,咱们就要靠自己的力量来实现了。
第一种方法:(直接查找发)
我用FPE,GM,金山都改过,方法是一样的,就是用低阶搜索,包括HP,SA,Time,以及人物代码,但是这种方法费时费力。
第二种方法:(间接查找发)
在说方法之前,我要说一个概念:“虽然程序运行时基址可能不相同,但是数据间的相对地址是不变的”,利用这个原理,就可以很轻松的修改sf3.3的内存数据。
在sf3.3所有要素里面,Time是最好修改的,只要搜索显示出来的时间即可,比如在Time显示97的时候,搜索97,然后等过一会,比如86,搜索一下,一般2到3次即可找到2个内存地址,其中第一个是正确的。所得结果就是咱门所有数据的基础(比如是0x0FB21397),然后利用相对地址不变的原理,这里有一个公式,是我总结出来的:
1P HP - Time = 57994(hex) 2P HP - 1P HP = 498(hex) Time : 直接搜索数字显示即可
1P SA - 1P HP = 8AA(hex) 2P SA - 2P HP = 43E(hex) Time + 10(hex) =1P character 1P Charcter + 1 =2P Character
按照公式,时间地址+10(十六进制)的就是1P的人物代码地址,在咱们这个例子里面,就是0x0FB213A7,只要将其锁成0,就可以使用总boss Gill,0x0FB213A8就是2P的人物代码。0x0FB78D2B就是1P的HP,只要锁成160(10进制),就是满血,0x0FB795D5就是1P的SA,也是160。按照这个方法,就可以轻松的实现“练招模式”
如果有看不懂的地方,可以用消息告诉我,我很愿意与大家交流方法,^_^