一篇关于DNF"PVF"文件的文章(转的,这个MS是胡须公写的)关于钩子文件

社区服务
高级搜索
猴岛论坛DNF地下城与勇士一篇关于DNF"PVF"文件的文章(转的,这个MS是胡须公写的)关于钩子文件
发帖 回复
正序阅读 最近浏览的帖子最近浏览的版块
6个回复

一篇关于DNF"PVF"文件的文章(转的,这个MS是胡须公写的)关于钩子文件

楼层直达
nizdwsma

ZxID:2142160

等级: 列兵
举报 只看楼主 使用道具 楼主   发表于: 2009-03-30 0
这个是一个论坛上胡须公写的,大家都知道吧?不知道就真的没用过G咯,(老G友,新手除外)
他写的那个是400WW的看不到,只能靠一个朋友转来的,
因为作者不想被早和谐,400WW只有很少人看到。。
下面是他的原话:

首先明确一些问题:
1.可以断定:这个pvf文件是存放游戏数据的文件——攻击范围、技能数据、装备数据等都存在这里
2.一些链接关系也是存在这里的,比如说游戏里,在什么位置应该显示哪张图片,这样的链接关系也是放在pvf文件里的。

3.可以把pvf文件理解成一个压缩过的文件夹,里面也有树状目录结构,也有文件等等……这些文件中,就有一个或者多个文件对应影响一个技能/物品,或者多个技能/物品,只需要修改这些文件,就能达到修改技能效果、物品效果的外挂作用。记得曾经出过一个挂,就是把这个pvf文件解压了,取出里面的几个关键文件进行修改,然后根据pvf的目录树,在DNF文件夹下新建了同样的目录结构,而DNF.EXE文件读取数据的时候,优先读取真实目录,再读PVF解压目录,由此导致被修改垸的文件先读取,从而达到修改效果。当然,这个BUG已经被修正,现在的DNF不会优先读真实目录。
4.把目录结构这样压缩并且达到加密效果的,DNF并不是首创。BLZ才是首创,最先用到D2上,后来的WAR3中的MPQ文件也是同样的压缩原理,当然,压缩算法应该是不一样的。MPQ解压工具网上全是,而PVF的……没有。


根据以上4点。想在PVF上做文章,最先要解决的问题就是如何推算解压算法。既然有人改出有全屏攻击的Script.pvf文件了,说明已经有人解决这个问题了,只不过这等商业机密是没人会白给你的=。= '
那么只好靠自己了。
1.直接通过分析pvf文件的二进制形式来得出解压算法么……嗯,能这样算出来的强人顺手再做个挂给我们吧…… |
!2.二进制比对。

我认为,二进制比对的方法看似更靠谱一点……具体方法是:先找到目前我们已有的这个修改过的Script.pvf文件的未修改版——这是一个问题,因为我们不知道作者是修改哪个版的PVF得到的,不过可以确定的是,肯定是出物品“冒险者的指引”那一版之前的某个版本。因为目前这个修改版的script.pvf不能正确显示这个物品,或者说目前这个修改版的pvf里面还没有代表这个物品的文件)。好吧,假设我们找出了Script.pvf文件的原版和修改版。接下来如何分析?
首先是两个文件的相同点……呃……很多,好吧,看不同点:
A.普通攻击,初始两个技能的攻击范围变大了。

B.初始技能的攻击值变大了。

C.攻击时处于无敌状态。
D.攻击时,如果HP过低,会自动使用精灵补血。
综上4点,两个版本的SCRIPT.PVF估计会有至少6处的不同。嗯,看来不不是很多,对于一个90MB的文件而言。
然后使用工具Araxis Merge进行二进制的比对,看一下到底有多少处不同点,再根据这些不同点进行分析,也许可以找到各种技能、物品文件所对应的“代码”或者说是对应关系。根据这些对应关系也许就能改出适应目前版本的Script.pvf文件。
xiaohei00fa

ZxID:1615553

等级: 准尉
恶心妈妈抱着恶心哭,因为恶心死了- -
举报 只看该作者 6楼  发表于: 2009-03-30 0
好贴
一个人..两个人....-  -
佐手

ZxID:99

等级: 元老
配偶: 佐手
举报 只看该作者 5楼  发表于: 2009-03-30 0
貌似转了很多次了还是`~?~?`
nizdwsma

ZxID:2142160

等级: 列兵
举报 只看该作者 4楼  发表于: 2009-03-30 0
。。。。。。。。。。。。。。。
没人看么?
nizdwsma

ZxID:2142160

等级: 列兵
举报 只看该作者 地板   发表于: 2009-03-30 0
顶上去,
nizdwsma

ZxID:2142160

等级: 列兵
举报 只看该作者 板凳   发表于: 2009-03-30 0
发帖子的人怎么这么多?
nizdwsma

ZxID:2142160

等级: 列兵
举报 只看该作者 沙发   发表于: 2009-03-30 0
沙发自己的。
« 返回列表
发帖 回复