查看完整版本: [-- 【讨论】【分享】Street Fighters 3 - 3rd 的修改 --]

【 浮游城 - Castle in the Sky | 开放邀请注册,PS|SS|WII|DC下载研究中心 】 -> 【 模拟器周边区 | Emulators Periphery 】 -> 【讨论】【分享】Street Fighters 3 - 3rd 的修改 [打印本页] 登录 -> 注册 -> 回复主题 -> 发表主题

sniperhgy 2007-07-07 16:05

        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。按照这个方法,就可以轻松的实现“练招模式”

    如果有看不懂的地方,可以用消息告诉我,我很愿意与大家交流方法,^_^

YZB 2007-07-07 20:40
好强啊~
有没找过人物ID在ROM里面的位置排列啊 [s:274]

sniperhgy 2007-07-08 20:51
^_^,对于hack rom,一点都不会,YZB版主能否指点一下?

YZB 2007-07-08 21:01
我都不会改SF游戏啊~


只能靠理论来说了~

在选人画面里面,人物ID也是有排列规律的,比如光标移在哪一个ID,移动一下又是另外一个ID,这样的话,把某个ID换成BOSS的ID就可以了选BOSS了。。。

当然这只是理论 [s:276]

卡卡白 2007-07-08 22:09
看看模拟器能有金手指功能吗,期待作者的更新.

xiao555 2007-07-08 22:13
[s:285] 就你那熊样还理论,别误导就好啦~

YZB 2007-07-08 22:16
[s:271]  [s:271]  [s:271]  [s:271] 我要TNJJTDK [s:271]

Triple-E 2007-07-08 22:26
yzb你6楼的贴是灌水,再这样考虑就给你增加1000FYB的债务 [s:276]

sniperhgy 2007-07-09 22:12
我想请教一下,怎样将内存里面找到的数据映射到rom里面?比如我找到一个HP的地址,怎样映射到Rom里面,从而作成一个HP不减的版本,总之就是类似的一些操作,麻烦几位版主教教我,我诚心求教,谢谢你们了,^_^

PJX8167 2007-07-09 22:35
这样算修改文件了...如果地址不可靠的话
有可能造成无法运行或者崩溃档机....

ryu1984 2007-07-11 11:54
MAME的模拟器不能直接修改吗?

YZB 2007-07-11 11:59
这些我也不会 [s:272]

需要懂点汇编之类的才行 [s:274]

Triple-E 2007-07-11 18:15
反汇编,把HP减少锁定为0就可以了。不过要用CE(没错是CE不是EC),来反汇编,有相当的难度。

sniperhgy 2007-07-11 20:53
^_^,谢谢版主,我倒是会改PC的反汇编,但是rom就不会了

dolphin 2007-07-16 10:33
引用
引用第13楼sniperhgy于2007-07-11 20:53发表的  :
^_^,谢谢版主,我倒是会改PC的反汇编,但是rom就不会了


PC和ROM本质上是一样的。
举一反三就可以了!
easy!!!

dolphin 2007-07-16 10:34
引用
引用第5楼Xiao555于2007-07-08 22:13发表的  :
就你那熊样还理论,别误导就好啦~


我悄悄的引用一下下!哈哈!

dflxxx 2007-07-20 22:20
不会 用 啊

finalcrasher 2007-08-30 22:00
嘿嘿,正好用的上。谢了楼主。


查看完整版本: [-- 【讨论】【分享】Street Fighters 3 - 3rd 的修改 --] [-- top --]


Powered by PHPWind Code © 2003-08 PHPWind
Gzip enabled

You can contact us