放弃破解Rayman2的海盗头。。

整整三天的时间,最后闹个束手无策。。为三天假期表示沉痛哀悼。。

本来破解补丁已经写好了,通过Hook贴图的代码过滤掉海盗头和相关文字,正高兴着呢,结果上去玩两分钟就哭了。。Ubi太坏了,这招绝不是简单的贴个影响游戏的图就完了,游戏元素也会受到影响,本该潜水的鱼缸里没了水,悬崖峭壁的尽头少了紫色抓环。。

至此算是束手无策了,因为整个过程,从判定到检验到耍花招,所有的代码都是游戏地图编译脚本实现的,也就是说我们面对的是一堆无法理解的字节码,和一个不知道原理的脚本虚拟机。众所周知分析一个虚拟机程序意味着什么(VMP,给你做广告呢,别忘了给广告费~~)。更具体地说,Rayman2中脚本系统几乎占了全部的比重,也就是说x86代码只负责提供一个底层图形接口,任何有关游戏的东西全部由脚本实现,Ubi把文件改一改,还用Rayman2.exe就是另外一个游戏了(《麻烦大了》?Maybe?)

不过也并非一无所获,至少懂得了开发一个游戏,脚本系统的重量。相比之下彩虹岛果真垃圾的一塌糊涂了,貌似比wow占内存还多?

EDIT: (2010-8-5)
昨天又想到一个点子,是找到比对校验码的地方,强行相等,经过一下午搞,找到了突破口,但是很奇怪还是会出现CD-Missing,有点怀疑是程序校验了自己的代码段,最诡异的是如果用硬盘版在Whale关出CD-Missing的瞬间会崩溃,所以不能简单的屏蔽显示贴图能搞定的,另外就是16关那个反弹子弹打开通道的地方怎么也过不去,怀疑是游戏元素受到了影响。Win7下总是会出现各式各样的问题,XP下虚拟光驱就工作的很好。这下看来是真的没救了。

Leave a Reply

Your email address will not be published. Required fields are marked *