【声明】本站不运营或出版任何游戏产品,仅为各种经典单机游戏爱好者提供交流场所,为游戏的联网功能提供免费辅助服务
流星 罗马 帝国 征服者 魔兽 星际 红警 突袭 灌水 直播频道 下载平台 会员 互币

互动游戏对战平台官网

 找回密码
 注册互动平台帐号

QQ登录

只需一步,快速开始

刷抖音,看视频,还能赚现金特玩游戏网文字广告位招商广告联系QQ6199940
查看: 1480|回复: 1
打印 上一主题 下一主题

[技术心得] 讨论:互动流星主机优势和延迟引起的异常现象分析

讨论:互动流星主机优势和延迟引起的异常现象分析 http://hdbbs.fxt365.com/thread-56444-1-1.html
【点击复制/分享】

77

主题

1

好友

1901

积分

论坛等级: 下士

Rank: 4

UID
9029
帖子
649
互币
796
平台军衔
中校
登录次数
1346 次
平台在线
112天12时
大厅马甲
跳转到指定楼层
楼主
发表于 2017-3-7 22:03:58 来自手机 |显示全部楼层 |倒序浏览
小白爱折腾
互动流星数据如何传输,怎么判定攻击,主机为什么有优势,暴气暴不开,无效,高空被定下来,速度为什么有些人慢有些人又显得快,能躲的招躲不掉能追加的追加不了,打不中的又打中了能反的却又反不了,各种奇怪现象是什么原因
有的人有时间写篇帖子吧,多多少少来说点
我现在最想知道的是互动数据如何传输,有些网络游戏是服务器收发各玩家数据并判定攻击
发帖请遵守法律,遵守论坛规则,文明用语。请理性发言,珍惜自己的帐号!
手机端二维码

微信扫一扫 品牌产品5折随便挑

77

主题

1

好友

1901

积分

论坛等级: 下士

Rank: 4

UID
9029
帖子
649
互币
796
平台军衔
中校
登录次数
1346 次
平台在线
112天12时
大厅马甲
沙发
发表于 2017-3-7 22:05:25 来自手机 |显示全部楼层 |楼主
转发太平洋游戏网的一篇文章
关于游戏延迟引起的一些异常现象简单分析
2010-11-10 02:10 zhaoli  A+

  当大家在游戏中遇到一些不可思议的现象时,往往会认为,这是对方玩家使用了第三方辅助软件。而事实上,这些莫名其妙的现象,绝大多数都是由网络延迟,也就是大家平时所说的“卡”引起的。在这里,我简单地给大家分析一下大多数由于延迟而引起的各种情况。

  本文的针对对象为《真·三国无双online》玩家群体,文章中所涉及的内容,如非特别指明,都是以《真·三国无双online》为参考环境。鉴于并不是所有玩家都接触过网络技术方面的知识,我在正文里将大部分技术名词、技术原理都口语化、简单化了。

  一、游戏延迟的分类

  单个的玩家要连接游戏,大致的连接是通过这样的路径来实现的:

  玩家电脑 - 玩家宽带 - 玩家所在城市电信运营商路由器 - 服务器所在城市电信运营商路由器 - 服务器机房 - 服务器

  在这条路径里的任何一个环节出了问题,都有可能造成游戏延迟。而游戏延迟可分为网络延迟和非网络延迟两种,我们可以把主要的延迟大致归纳如下。

  非网络延迟

  1. 玩家电脑性能引起的延迟:主要由玩家电脑的CPU、内存、显卡等硬件设备不能满足客户端需求所引发的延迟,其主要表现为:

  内存不足:游戏场景切换、进入战斗画面时读取数据的时间特别长,最典型的就是在进入战斗读取数据时非常慢,而进入战斗后基本正常。

  显卡性能:当游戏画面复杂到达一定程度时,会出现游戏画面丢祯的情况,也就是画面一闪一顿,俗称“慢动作”的情况。

  CPU性能:一些电脑的CPU散热性能不好导致温度过高,或者CPU占用量太大时,也会短时间出现“慢动作”的情况,典型表现是不少玩家都遇到过的,在据点附近或者兵多的大地图会特别卡。

  此外,也可能会出现某个版本的客户端因素,导致原本能正常运行游戏的玩家电脑,不能满足游戏运行需要,从而出现以上情况;而且随着版本的提高,对电脑的硬件需求也是会逐渐提高的,尤其是一款3D格斗游戏。

  2. 服务器性能引起的延迟:主要由游戏服务器硬件性能不足而导致玩家出现的延迟。

  造成服务器延迟的原因,主要是因为某个局部场景内的玩家过多,或者整个服务器登陆的玩家数量过多。其主要表现为:

  网速正常(开启个人属性界面、读取个人信息、聊天信息、地图切换速度均正常),自己身边的玩家形象迟迟不能刷新。典型表现为不久前的统一庆典。

  除此之外,由于服务器性能而引起的延迟可以说几乎没有。

  网络延迟

  3. 玩家网络引起的延迟:由玩家本人或局域网的网速限制、下载、病毒而引起的网速迟缓,“迅雷党”就是其中的典型。

  4. 电信运营商引起的延迟:由玩家所在城市电信运营商、服务器所在城市电信运营商这一条线路中造成的网络延迟。

  如电信用户登陆网通服务器,延迟问题主要就是出在电信网络和网通网络的信息传输上。

  又如电信2区近一段时间的大范围延迟,问题主要出在服务器所在城市电信运营商:四川(绵阳)电信的线路问题上。

  5.服务器网络引起的延迟:由服务器所在机房的网络原因引起的延迟,比如游戏服务器受到大规模DDOS攻击。当然,目前还没有遇出现过类似问题。

  总的来说,大家遇到的游戏延迟主要都属于第1、3、4这三种情况。而我们这里主要针对的,是网络延迟的情况分析。

  二、数据传输的基本流程

  通俗的讲,游戏信息在网络传输的时候,上行和下行使用着不同的通道。大家双击自己的“本地连接”就可以看到,发送出去的数据包和接收到的数据包是分开的。

  真三这款游戏在运行时,是本地运行和接收服务器指令同时进行的,游戏内自己的人物动作由本地产生并提交到服务器,服务器通过攻击判定后计算出损血情况并同步给玩家电脑。

  我们以两个人单挑为例,简单分析一下真三的数据传输过程。

  参与对象:玩家A、玩家B、服务器。

  玩家A出招:电脑A生成“出招”的相关数据包,发送给服务器,同时在玩家A的游戏界面内产生出招动作。

  玩家B出招:电脑B生成“出招”的相关数据包,发送给服务器,同时在玩家B的游戏界面内产生出招动作。

  服务器同时收到双方出招数据:根据招式的强硬度,计算攻击判定和双方的体力损失。

  服务器先收到玩家A的出招数据:判定玩家A攻击有效,计算玩家B的体力损失。

  服务器将攻击判定,及体力损失返回给玩家A、玩家B。

  根据攻击判定,在双方本地电脑内各自产生后续效果(吹飞、倒地等等)。

  我在这里要强调的是:玩家A和玩家B产生的后续效果并不是完全一致的。当玩家A和B的延迟不一致时,如果差距过大,就可能会出现这样的情况:

  服务器将攻击判定,及体力损失返回给玩家A、玩家B。

  玩家B收到服务器返回数据(玩家B后仰),于是等待后仰消失(这是玩家B本地产生的动作),发起“跳跃”指令并向服务器提交新的数据包。

  服务器收到玩家B的跳跃数据,开始进行指令判定,并判定跳跃有效,并发送给玩家A和玩家B

  玩家A这时才收到服务器返回数据(玩家B后仰),于是等待后仰消失(这是玩家A本地产生的动作),再次发动攻击并向服务器提交新的数据包。

  服务器判定玩家A的攻击为浮空攻击并返回相关数据,此时玩家A看到的情况是:玩家B被砍但是不掉血。

  玩家B收到服务器返回的浮空攻击相关数据,被砍飞并受身……(后续省略)

  玩家A收到服务器返回的浮空攻击相关数据,发现玩家B本来正受地面攻击,却突然受身跑掉。

  这里只是举一个例,具体的各种延迟引起的情况,我将在后面做详细分析。

  三、各种延迟引发的典型现象分析

  1. 瞬移

  现象:玩家A看到玩家B瞬移

  产生原因:1.玩家B网速不稳定,主要是玩家B网络上行速度受限

  2.玩家A网速不稳定,主要是玩家A网络下行速度受限

  分析:

  玩家B面朝玩家A移动,提交数据到服务器;

  服务器将数据传递给玩家A,玩家A看到玩家B向自己移动;

  玩家B转身反方向移动,提交数据,但是由于玩家B的上行网速受限,服务器没有及时收到该信息;

  因为服务器没有返回玩家B的后续动作,玩家A在本地看到玩家B仍然根据先前的指令,一直朝自己的方向跑;

  玩家A攻击玩家B,提交数据;

  服务器因为没有获得玩家B的数据,因此判定攻击无效;

  玩家A收到服务器返回的攻击无效判定,看见自己砍玩家B无反应;

  服务器这时才收到玩家B提交的的一大堆新数据(包括玩家B的本地坐标),返回给玩家A;

  玩家A看到玩家B突然瞬移到了另一个位置(玩家B的实际位置)。

  不光是瞬移,当玩家A攻击玩家B到了一半,却发现自己被玩家B反攻;或者砍玩家B不掉血,玩家B砍自己却掉血,都是属于同样的原理。

  在hub连接的局域网模式下,短时间拔掉网线并不会导致游戏立刻掉线。当遇到对方玩家时短时间拔掉网线再插回去,就可以看到对方瞬移了。

  2. 带着冰冻效果到处跑

  现象:玩家A看到玩家B身上带着冰冻效果移动

  产生原因:信息传输过程中丢失了数据包。

  分析:

  玩家B被冰冻,服务器和玩家A、B均收到相关数据;

  玩家B解冻,服务器将该数据发送给玩家A、B;

  玩家B收到解冻指令,开始移动并提交给服务器;

  服务器发送给玩家A的玩家B解冻数据包丢失;

  服务器收到玩家B的移动指令,转发给玩家A;

  玩家A收到B的移动指令,看到玩家B移动;

  由于解冻数据包的丢失,玩家A看到B身上仍然带着冰块,并且该现象会一直持续到下一次玩家B的形象数据更新。

  在网络传输中,丢失数据包是很正常的事情。如果对时间要求不高,可以采取丢包重发机制在保证数据包的安全性;但是对真三这样重视实时性的游戏来说,丢包重发显然是不可能的。

  有时候看见玩家死亡后躺在地上移动、带着其他玉效果乱跑,都是属于同样的原理。只要对方离开自己视野范围后再接触,就正常了。

  3. 追杀

  现象:玩家A甲刀无双追杀玩家B,砍飞了却发现对方不掉血

  产生原因:1.玩家B网速不稳定,主要是玩家B网络上行速度受限

  2.玩家A网速不稳定,主要是玩家A网络下行速度受限

  分析:

  玩家A,B均朝同一方向移动。

  玩家A甲刀放无双;

  服务器收到玩家A的无双指令,传递给玩家B;

  玩家B跳起并向服务器发送数据包;

  服务器向玩家A转发玩家B的跳跃指令;

  由于延迟,玩家A没有收到B的跳跃指令,因此撞上本地看到的玩家B,向服务器发送攻击指令。

  服务器判定玩家B跳起,因此玩家A的无双攻击无效;

  玩家A没有收到攻击无效指令,看到B发出惨叫并被割飞,但是不掉血;

  玩家A收到B的跳跃指令、攻击无效指令、B的新位置指令。

  于是玩家A看到的是:B被自己的无双割飞后不伤血,继续跑路。

  由于延迟程度的不同,产生的后续现象也不同:

  玩家A还可能看到:B发出惨叫,然后出现在空中(延迟程度较低);

  B直接跳起来,躲开自己的无双(没有延迟);

  B被撞飞并且躺地上,守着尸体却发现B突然消失(延迟非常高);

  跑D撞到对方听到惨叫声,对方却在继续跑,也是属于这样的情况。

  4. 其他。。

  因为我暂时想不起来,所以等我想到了或者大家提到了,再进行更新。

  如果大家有觉得其他的疑问也可以在回复里说明,是属于延迟引起的问题我也会在这里更新。
回复

使用道具 举报

亲,当您能看到这句话时,说明您屏蔽了论坛展示的广告(┬_┬),维持平台运营需要高昂的带宽费用,我们的生存需要您的支持,您懂的!

小黑屋|手机版|使用帮助|VIP 办理|免责声明|广告合作|赞助我们|平台官方QQ总群:8820761|粤ICP备18006390号-1
Copyright © 2004 - 2024 互动游戏对战平台 HD.Fxt365.Com  版权所有
互动对战平台目前已通过金山安全中心、360安全中心、QQ电脑管家、百度杀毒等多家杀软的安全认证。
在腾讯软件管家、百度软件、各大软件下载网站中可直接下载安装。
绿色游戏,公平竞技;文明聊天,和谐交流。游戏请勿作弊,切勿沉迷!
抵制不良游戏 拒绝盗版游戏 注意自我保护 谨防受骗上当。 合适游戏益脑 沉迷游戏伤身 合理安排时间 享受健康生活。
用户言论纯属发表者个人意见,与本站立场无关。发表者完全独立承担其发表内容导致的一切法律责任。发表内容请遵守国家法律。
【特别声明】本站不运营或出版任何游戏产品,仅为各种经典单机游戏爱好者提供交流场所,为游戏的联网功能提供免费辅助服务。
申请增加新游戏支持,请到 事务区发帖。
互动游戏对战平台
官方公众号
互动游戏对战平台官方公众号
微信扫一扫
关注公众号
[点此进行举报投诉]
投诉举报邮箱
admin@fxt365.com
Discuz! X3.2  技术支持: Comsenz Inc.      GMT+8, 2024-5-4 15:24, Processed in 0.135212 second(s), 28 queries , Gzip On.
回顶部