全国服务热线:400-0358-011

位置:深圳火星时代影视剪辑包装培训学校 > 学校动态 > 排队与掉线线上游戏的人口灾难

排队与掉线线上游戏的人口灾难

来源:深圳火星时代影视剪辑包装培训学校时间:2019/12/28 17:25:44

  近几天,每当我打开手机里的聊天讯息时,总会看到票《终幻想14》玩家的哀嚎。随着 5.0新版本的开启,这帮倒霉蛋饱受排队和掉线之苦已长达一周,等待六、七个小时进不了游戏的大有人在,以至于WeGame适时亮出了“二区新服排队少”的宣传口号,回想起来还有几分滑稽。

排队与掉线线上游戏的人口灾难

  根据以往的经验,只要一款线上游戏还有些名号,那么初期上线的过程往往伴随着一场“人口灾难”,玩家们蜂拥而至,超过服务器负载的用户连接,就像是持续不断的合法 DDOS 攻击,瞬间击垮那些以规模著称的公司和作品。《魔兽世界》如此,《命运2》如此,《终幻想14》也是如此。

  2004 年,暴雪配备了 40 台服务器迎接《魔兽世界》开服,但他们完全低估了用户的数量级,游戏几近崩溃。后来发展到扩充带宽也于事无补,不得不中断零售商的盒装游戏供应,以免情况进一步恶化。

  再就是不久前《命运2》的资料片“暗影要塞”上线,同样因服务器宕机而进行了一次紧急维护,期间还闹出了“Steam 好友超过 300 就会闪退”的笑话。有人在社交媒体上调侃到:工作辞了,婚也离了,孩子放学没去接,就为了履行“守护者”的职责,现在你居然不让我打游戏?

  上述这些问题,对很多人来说可能早已习以为常,但当自己不止一次的遭遇时,还是会感到疑惑。那么多资源殷实的大公司,那么多富有才华的游戏制作者,为何总是一错再错?

  搞不定的引擎

  早期的线上游戏很少会有排队系统,因为玩家数量有限,开发商和中间件的制作者也不太关心用户分流 —— 一个MMO内容比较泛用的引擎,Big World就有类似的缺陷。

  打造该产品的Micro Forté公司很有意思,他们在上世纪80年代给EA开发了几部作品后,就布局其它业务去了。直到1994年时重返游戏行业,从澳大利亚政府那弄了笔拨款,筹划着制作 MMOFPS的内容、开发引擎和工具,后来又顺利被微软看中,作为推广Xbox live服务的一部分,运气可以说相当不错。

  但财大气粗的微软,当时其实投资了好几家涉足FPS联机游戏的团队,他们后选择了Bungie 做的《光环》,Micro Forté只不过是个保底。于是在项目被终止后,这家公司因经营困难被迫裁员 70%。幸好开发引擎在资金链断裂前做完了,他们为了填补家用就直接打包拿出来卖,没想到销路不错。

  用 Big World 创造小镇

  这套MMO工具终商业化,并得名Big World是在2002年,有很多我们熟悉的企业都购买了授权,比如网易用来开发《天下2》和《天下3》,Wargaming 拿来支持《坦克世界》的服务,台湾的宇峻奧汀也是使用者之一。

  还有一个比较流行的说法,有人认为《魔兽世界》的一部分功能也是通过“自研 + Big World”引擎来实现的。理由很简单,当时暴雪的母公司维旺迪想要收购 Micro Forté,后遭到拒绝,退而求其次获得了引擎的使用权,而 Micro Forté 的公司介绍中又有这么一段耐人寻味的话:

  2001年底,在技术完工的后阶段,我们收到了的跨国互动娱乐公司的收购邀约。作为交易的一部分,这家跨国公司提出会将一个重要的IP,奇幻MMOG项目交由我方打造,但由于董事会认为出价太低,所以交易未能完成。

  不难发现,在很长一段时间内,Big World引擎都是线上游戏的一套设计范式。但正因为推出得太早,它在排队系统、以及用户分流方面是有所缺陷的。

  就拿角色建模来说,由于初定位于FPS游戏,相当一部分带宽和处理器资源都用在了3D空间的位置同步上。比如《坦克世界》里一炮打过去,履带、车头、车尾都有不同判定,对于绝大多数类型的MMO游戏而言,这套机制有些过于浪费性能了。

  坦克世界

  在排队系统的设计上,通常情况下可以单拿一组服务器出来当“连接服务器”,作为用户的入口。它们把汇集起的信息送到“心跳服务器”,由此转发到处理内容的“逻辑服务器”。当然有些小公司没钱、没条件,那也可以考虑利用多进程设计,把排队系统独立到一个进程里,负担过高时再分配到另一台物理机器上运转。

  但因为Micro Forté早根本没考虑这些,导致其它公司的程序员在给Big World添加代码时,只能把排队系统放到引擎框架内,结果就是没法提,很难和服务器的其它资源做隔离。

  再就是排队本身的逻辑,要求服务器短时间内接纳连接,并将这些连接进行分流和保持,以免玩家“重连”而增加服务器的负担。但 Big World 全部采取了不稳定的 UDP 通讯协议,导致连接很难保持(虽然游戏内使用 UDP 是一种合适的方式,参考《无尽的任务》)。

  如果观察近几年推出的线上游戏,会发现很多厂商都抛弃了老旧的Big World引擎,也有人在此基础上进行了二次优化。但有些古老的排队系统早已定型,重构需要耗费很多资源,有些设计思路也没有革新,一时半会还来不及做转型。

  不过,之所以Big World引擎能被线上游戏广泛应用,证明它还是有两把刷子。秘诀是它并不以地图的形式来分担负载,而是哪里聚集的玩家多,就给哪里分配服务器资源,比较灵活,因此理论上可以大限度的容纳角色数量。2011年时,《坦克世界》就创造了并发在线人数25万的成绩 。

  相比之下,有人猜测《终幻想14》的单区容量撑死10万人,肯定是架构方面有所不同。比如 1.0版本用的是Square Enix自研“Crystal tools”引擎,当时的设计非常愚蠢,几乎所有的页面交互都要过一道服务器,无法在本地进行,玩家们关个物品栏都要几秒钟,很容易导致服务器过载。

  归根究底,这些网络工程的技术,和制作游戏内容领域有别,也难怪那些的单机游戏开发团队频繁踩坑。反倒是现在比较流行的手游,服务器单区容量都是以几百万注册用户、几十万在线玩家为基准的。

领取试听课
每天限量名额,先到先得

尊重原创文章,转载请注明出处与链接:http://www.peixun360.com/2765/news/135846/违者必究! 以上就是深圳火星时代影视剪辑包装培训学校 小编为您整理 排队与掉线线上游戏的人口灾难的全部内容。

温馨提示:提交留言后老师会第一时间与您联系!热线电话:400-0358-011