![]() |
| ||
| 新浪首页 > 游戏世界 > 游民论谈 > 文章内容 |
关于DF3中网络传输(高ping值)问题的思考
游民部落网友水星_saver
大家一直在习惯中认为在网络游戏,尤其是df3中,ping值越低越有利,越高越难打。事实上是这样的吗??我个人认为不是这样,首先我先提出五个问题,请大家判断一下。 一,首先我们应该判断游戏中究竟在何处进行了击中与否的判断,这里存在有3种可能 1. 在本地机,对方的坐标和你子弹的坐标在你自己的计算机上进行对比,如果一致,判断对方被你击中,并将信息反馈到主机然后传输到对方机器。 2. 在对方的机器,你的子弹的坐标传输到对方的计算机上和对方的坐标进行对比,如果一致,判断被你击中,并将信息反馈到主机然后传输到你的计算机上。 3. 在服务器,你的子弹的坐标传输到服务器,和对方同时传输到服务器上的坐标进行对比,如果一致,判断被你击中,信息反馈到你和对方的计算机。 二,我们再来看看传输率的问题。这里又有5种可能。 1. 主机必须接收到了你回复的信号才继续发送新的信号。 2. 主机按时发送信号,不管有没有接到你的回复信号。 3. 你的计算机必须接收到主机的信号才发送你的信号给主机。 4. 你的计算机不管是否收到主机的信号,依然按时发送信号给主机。 5. 第3和低5同时存在,你和主机均按时发送信号,不管有没有接收到对方的信号 三,我们在看看信号传输的连续性问题,这里有2种可能 1. 每一个信号都必须是完整的,如果不完整,必须等到完整的信号传输到主机才进行判断,或者必须等到完整的数据到达你的计算机才将数据显示出来。 2. 每一个信号可以不完整,如果接收不到信号,那么本地计算机或者主机会自行修补数据,使之完整。一旦接收到了正确的信号,将进行修正。但是超过单位时间无法接收到数据就开始读秒。 四,数据的效验问题,有3种可能。 1. 所有数据必须得到反馈确认。 2. 所有数据可以不反馈确认。 3. 重要数据必须反馈确认 五,你的计算机发送和接收的数据的流量比 1. 一样的。 2. 不一样,因为你的计算机只向主机传送你一个人的数据,而主机必须向你传送15个人的数据。 问题提完了,现在我来说明一下。大家也许会注意到,当一个人读秒的时候,并不是静止不动的,而是会自动延着他的最后一个动作自动前进或者静止,当读秒停止时,这个人会飞快的消失,并且从另外一个地方出现。读秒的时候信号是无法接收和传送的,因此可以判断主机在没有接收到对方的退出信号,而无法接收对方信号的时候,会自动接管游戏者的控制权,也就是会自动修补数据,当然这种接管是相当弱智的。这个时候他是可以被你打死的,也就是说你的子弹坐标和他的位置坐标在主机效验同一时间内重合后,主机判断对方被你击中。这就是为什么有人读秒结束就发现自己被击毙了的原因。同时,对那个读秒的人来说,在他那里是可以自由的控制方向的和做各种动作的,所有的队员都在奔跑,当然那是假的,是你的计算机自动修补了无法收到数据。他可以象任何一个人开枪,子弹会减少,但是他绝对无法击毙任何一个人,包括自己,击毁任何一个树木和建筑。这说明,没有主机判断和确认,客户机上任何击中目标的动作都不会视为有效。如果他运气好,在读秒的时候未被打死,那么对他来说,不会感觉到自己的坐标有任何不正常的变化,读秒中产生的一切子弹数目的变化依然保留,除了读秒中不能打死人,不能破坏建筑,其他的东西读秒和不读秒没有任何区别。 因此,这个例子至少可以说明第一个问题中,第1种显然是不会成立的。只有最后一种才能合乎逻辑(当然第二种也是存在可能的)。同时也说明第三个问题,只有第2个可能才成立。
|