DNF游戏信息

当前位置:7k7k小游戏 > 资讯频道 > DNF > 综合经验 > 装备研究

从网络传输角度剖析DNF仇恨BUG

责任编辑:老A原作者:老A2011-06-11 09:06:35

    首先以下猜想都是建立在一个基础上的,那就是,dnf是一个需要上传游戏数据的单机游戏。

  这一点我想很多朋友都发现了,比如有时候一个人刷图时出现的白尸体就是这个的最好证明 ,因为在出白尸体之前事实上网络连接已经中断或者堵塞了,但是即便如此怪还是可以进行走位和攻击,而人物也同样可以移动和攻击并且还能互相造成伤害。这就是因为dnf的大多数运算都是在本地进行了,然后将运行结果上传服务器进行处理之后发回结果。说白了,白尸体要么是怪物死亡的信息没能正常上传,就是服务器让怪消失的指令没有正常下载。

  因此我认为dnf就是一个需要上传游戏数据的单机游戏。

  那么这和所谓的仇恨有什么样的关系呢?让我们想一想另一款名叫山口山的游戏,那个游戏里处在一个队伍里的成员,做出攻击,恢复等动作的同时,会让怪和人物之间的一个数值增加,而这个数值就是仇恨值,怪会优先攻击仇恨最高的目标直到其死去或者另一个目标的仇恨值比这个高10%以上。

  那么我们的dnf和那个所谓山口山的仇恨是一回事么?

  我的猜想从这里开始。

  首先,山口山作为一个纯服务器运算网游,每一次运算都是会经过服务器的,通俗点说就是玩家一旦与服务器出现连接问题,怪就立刻停止行动,而此时很有可能你与这个怪的战斗还在服务器端继续进行,于是很可能造成你看怪在,实际上怪已经死了。

  这就是两个游戏的最大不同,这也就是这两个游戏仇恨值得最根本差别。

  玩过山口山的人都知道,那是一个很需要配合的游戏,仇恨值作为其中的关键一环起着至关重要的作用,所以山口山里的仇恨值是明确的数值并且遵循确定而可计算的规律。而这在dnf里是不存在的。

  于是就有了一个问题,为什么dnf会有仇恨这个概念呢?很简单,原因就是dnf的服务器不进行战斗的计算,那么就造成组队的时候同一时间如果两个队员同时对怪进行攻击怪很可能产生很暧昧的情况,这也就是为什么我们组队的时候经常会因为一个人卡而全队都卡。

  为什么呢?因为据我推测,dnf在组队之前,会在所有队员之间建立相互的数据连接比如ABCD四个人组队时,A对某个怪M进行了攻击,那么A的机器会把这个伤害数值发送给BCD三个人BCD的客户端对这个伤害数值做出反应,体现为看到怪被攻击减血。

下一页:什么事仇恨