排行榜
问题反馈
推荐:腾讯手游助手最新更新lol客户端下载
当前位置:下载首页 > 同时容纳近万名“玩家”,这款多人游戏是如何实现的?

同时容纳近万名“玩家”,这款多人游戏是如何实现的?

时间:2021-06-28 来源:互联网

  GameRes在此前推送的文章《多人撞上直播,当代游戏的热销秘诀?》中曾谈到一款名为《Scavengers》的游戏,它是一款结合了PvEvP玩法与生存要素的多人合作射击游戏,每局游戏中可同时容纳60名玩家以及上百个AI生物。

  前段时间,游戏进行了一项名为“Winter Sports”内部测试,在新开发的ScavLab游戏模式中,1700名真实玩家被聚集到同一场景,地图中同时还存在着近8000名虚拟玩家,他们如山崩海啸般席卷地图上的各个角落,有幸参与此次测试的PCgamer的编辑记录了这一盛况:

  1700名玩家用凡胎肉身从雪山上滑行而下,又借着弹跳机关飞回原点,雪白山坡上的人群宛若一条奔腾不息的黑色河流。

同时容纳近万名“玩家”,这款多人游戏是如何实现的?

  来源:PCgamer

  它象征着一种新型的多人游戏或者是虚拟世界形态。

  该游戏的开发团队Midwinter Entertainment成立于2016年,团队人数不足50人。这么一支团队如何做出一款3A级别乃至具备革新意义的多人游戏?

  《Scavengers》背后的“黑科技”——英礴IMS

  Midwinter Entertainment的联合创始人Josh Holmes的来头并不小,他曾是《光环》系列开发商343 Industries的负责人及创意总监,团队中也有不少人曾供职于343 Industries。

  在Midwinter Entertainment创立初期,他们就在构思一款大型PvEvP沙盒游戏的可能性,并将“依托现有技术来推动游戏开发”视为指导理念,由此可以专注于游戏玩法的打磨而非自行研发一套核心技术。

  与英礴(Improbable)的合作,促成了《Scavengers》的真正落地。

同时容纳近万名“玩家”,这款多人游戏是如何实现的?

  Josh Holmes坦言,“第一次接触 SpatialOS 网络层引擎时,我们看到了它的潜能并为之振奋。SpatialOS 能将游戏会话的规模和保真度扩展到超单个服务器可以达到的水平,这远非一个小团队能做到的。”

  SpatialOS是英礴所研发的一个基于云端的游戏开发环境,一个后端网络解决方案,同时它也是英礴多人游戏服务(简称“IMS”)的构成之一,官方对其的描述是“一个开放的、不断拓展的技术&服务生态系统”,这一系统涵盖了从开发到上线的全部环节,旨在为不同的工作室提供适配的解决方案。

同时容纳近万名“玩家”,这款多人游戏是如何实现的?

  目前阶段,这一系统主要分成两个部分:开发侧的SpatialOS与运营侧的zeuz。

  不妨先拿文章开头所说的游戏实验来说明SpatialOS是什么。

  《Scavengers》的“Winter Sports”测试包含了数个特性,千人以上的真实玩家,即时游戏,3D模型,物理碰撞。

  网络游戏发展至今,支持千人同屏、实时互动的3D网络游戏并不多见,除了硬件渲染上的压力,服务器技术也是难点之一。

  玩家在本地输入的指令需要上传至服务器,处理后发送给指令发出者以及相关的玩家,最终客户端根据返回的数据将结果显示在屏幕上。在这一过程中,交由服务器处理的数据种类,发送的频率等,都会增加服务器的运行压力,而同屏的玩家数量将会使这一问题更加复杂。

  为了实现《Scavengers》“千人同屏”的效果,必须对网络层进行革新,在此情况下SpatialOS呼之欲出。

  SpatialOS采用的可扩展性架构突破了传统单服务器的限制,它相当于将不同的DS(Dedicated Server,专用服务器)串联起来,在所有DS上还有一个网络层来负责所有游戏状态的管理。在玩家眼中,它看起来就是一个无缝的单一游戏世界。除此之外,SpatialOS还自带网络层同步实现方案,便于跨服活动以及物理碰撞处理的实现。

同时容纳近万名“玩家”,这款多人游戏是如何实现的?

  这绝对是多人网络游戏史上的一项壮举,一些MMORPG虽然也能达到千人对战的效果,但前提是将游戏效果拉到最低,而且它并不能保证玩家不卡、服务器不崩;《EVE Online》虽然保持着6557名并发玩家的记录,但却是基于“时间膨胀”机制实现的,玩家与玩家之间的互动频率、数量并没有实际上显示的那么多。

  而容纳更多的玩家,解决大规模、高密度的交互性问题,只是《Scavengers》运用SpatialOS的一方面,在另一方面,它让Midwinter Entertainment得以打造一个庞大、复杂的动态世界。

同时容纳近万名“玩家”,这款多人游戏是如何实现的?

  Josh Holmes带领343 Industries团队在开发《光环5》战区模式时,就受限于服务器承载量上限的阻碍,他们不得不限制玩家、AI数量,简化AI逻辑来保证游戏体验。而在《Scavengers》中,场内存在的AI生物多达上百个。

  SpatialOS采用“AI负载拆分”的方法实现了这一游戏需求。据官方介绍,AI逻辑属于CPU计算密集型、但对延迟不太敏感的业务,像这些与核心系统耦合度不高的模块都能拆分出来放在另一台服务器上。

同时容纳近万名“玩家”,这款多人游戏是如何实现的?

  此次《Scavengers》所进行的“Winter Sports”实验中,测试服务器能够同时承载AI数量上限也是实验指标之一,就结果而言,Midwinter Entertainment最终实现了“1700名玩家+8000个AI”的庞大规模。

  一个庞大、“持久”的动态世界是《Scavengers》的另一个游戏特色,在游戏中,玩家与AI行走在雪地上都会留下痕迹,这些痕迹是持久性的,除非它们被新落下的雪所覆盖,它让玩家根据脚印追踪“猎物”成为了可能。甚者,AI能够对游戏中发生的动态事件作出反应,比如根据环境变化重新设计前进路径。

同时容纳近万名“玩家”,这款多人游戏是如何实现的?

  这些功能的实现同样基于SpatialOS这一平台,它将游戏状态“实时”存储在一个高吞吐量的数据库中,该数据库接收有关游戏更改的更新,以确保游戏的每个细节都能持续存在。《Scavengers》中玩家行为对环境产生的影响甚至在他们登出游戏后依旧存在。

  “ 两名网络工程师足矣 ”

  这样复杂的游戏世界、这般庞大的玩家规模,想必背后有着一支经验丰厚、数量可观的网络技术团队。然而Midwinter Entertainment却说“两个(工程师)就够了”。

  2019年Josh Holmes接受媒体采访时曾如此表示,虽然到了2021年团队规模翻了近一倍,但依旧没超过50人,这意味着游戏后台管理、数据库集成、服务器托管等大部分网络业务都是由SpatialOS一手操办的。

  “花越少的时间搭建技术,就可以把更多的时间投入在为玩家创造更具价值和影响力的事情上——比如更丰富的游戏玩法和更酷的游戏体验。”Josh Holmes如是说道。

  在实际的开发过程中,SpatialOS提供的帮助不仅在于包办了大量的网络后端工作,它对于主流商用引擎的适配也能帮开发者省去不少麻烦。

  《Scavengers》使用的是虚幻引擎,而SpatialOS为其开发了专门的GDK,做到了无缝对接,开发者无需改变他们熟悉的工作流程,就可以直接使用SpatialOS内置的集成开发套件。除了虚幻引擎,Unity甚至是自研引擎同样适用这套方案,“灵活性”可以说得上是SpatialOS最大的特色。

  SpatialOS中还配备了内置日志、测量和检查工具,帮助开发者分析及排除故障,无论开发何种类型的游戏,SpatialOS都能够帮助开发者进行更快的游戏迭代,并简化游戏创意的实现过程,哪怕开发者在中途突然想要改变游戏的核心玩法,他们也无需变更底层架构。

  这一技术的实现或将改变目前的游戏开发格局乃至游戏开发流程,大型网络游戏对于中小团队来说不再是不可想象的,大公司的多人游戏项目也能摆脱“立项定生死”的困局。

  诚如Josh Holmes所说的,“如果没有SpatialOS的话,我们必须要在开发流程一开始就做出某些决策,例如玩家数量、AI密度等,并且要让这些决策落地,因为到了后期这些都将无法更改。”

  Midwinter Entertainment的创意多人玩法与小团队开发理念在英礴的支持下得以实现,二者之间的合作关系也在2019年迎来了新顶点——2019年9月,英礴宣布收购Midwinter,Midwinter正式成为英礴旗下的自研游戏工作室。除了Midwinter,英礴还在加拿大埃德蒙顿和英国伦敦设立了两个自研游戏工作室。

  这些内部工作室积累起来的实战经验,也能为英礴IMS的服务对象提供更多的支持。

  英礴 IMS:一站式解决方案

  如果说SpatialOS 帮助 Midwinter解决了网络后端的开发问题,那么zeuz则是为他们解决了运营维护的问题。

  zeuz是一种裸机+混合云的服务器托管方案,其最大的特色是“灵活”。

  玩家人数少时提供相对便宜的裸机服务器,玩家数量暴涨时则使用云服务器,这种极具弹性的托管框架大幅减少了托管成本。《Scavengers》在规模测试阶段,就受益于英礴提供的运维解决方案,成功渡过了压力测试。到了抢先体验版本(early access)上线后,zeuz的混合托管策略则帮游戏抗住了持续涌入的大规模玩家。

  不仅是《Scavengers》,《流放者柯南》、《逃离科塔夫》、《糖豆人终极淘汰赛》、《SCUM》等诸多热门游戏背后均有zeuz的支持,其中《Heroes & Generals》更是将托管、运营成本压缩到了预估的50%,游戏MAU增加了200%。

同时容纳近万名“玩家”,这款多人游戏是如何实现的?

  SpatialOS加上zeuz,英礴成功搭建起了一套全方位的多人游戏服务,可以为不同规模的游戏工作室提供相应的解决方案,它的效率更高、成本更优、风险更低。迄今,英礴已与全球40多家游戏工作室建立合作关系,通过英礴IMS帮助开发者解决开发乃至运维上的障碍。

  在国内,同样有大厂为其背书,2018年网易斥资5000万战略收购英礴少数股权,2020年英礴联手腾讯,借助腾讯云让SpatialOS成功在国内落地,同时推出了“礴云计划”,成功吸引了悠米互娱等知名开发商入驻。

同时容纳近万名“玩家”,这款多人游戏是如何实现的?

  开放世界MMO游戏《代号:奥德赛》

  这对于一些有出海需求但经验不足的开发商来说同样有所帮助,海外渠道对接、出海合作开发、规模化测试等业务也囊括在英礴IMS服务之内,它的服务器布局覆盖了全球主要游戏区域,同时提供7x24小时监管和支持服务,延迟控制、DDOS保护、在线热更、容灾等全方位的服务进一步解决开发商的后顾之忧。

  多人游戏的新形态

  对于希望降低技术风险、财务风险的游戏开发商来说,英礴IMS的灵活性无疑能帮助他们简化开发流程、削减运营成本,避免重复造轮子,在全球化运营的潮流中增加游戏胜算。

  不过,英礴IMS更大的意义在于它提供了一个想象空间。

  从某种程度上来说,多人游戏的发展反映了网络技术的发展。从回合制游戏到实时交互游戏,是帧同步算法带来的变化;《火箭联盟》的多人物理模拟玩法,是物理同步方案的优化;《绝地求生》、《堡垒之夜》等百人竞技玩法的实现,是DS的深度优化。

  而当英礴IMS突破了传统单服务器的限制、将多个DS串联起来后,多人游戏又会发生什么样的变化?

  《Scavengers》只是英礴IMS运用的案例之一,Midwinter的想法是打造一个多元化的游戏世界,让PvP与PvE能够摩擦出更猛烈的火花,让玩家与玩家之间、玩家与游戏世界之间能够发生更多的意外。

  它贯彻了英礴的“保真”理念。对于英礴联合创始人Herman Narula来说,所谓“保真”并不是指游戏画面的高级,而是指游戏的质量,比如游戏的复杂性、游戏的帧率,多人射击游戏就是这种“保真”理念的体现,它试图让网络射击游戏也能具备与单机游戏一样的高质量体验,让多人游戏在保证“保真度”的前提下不断扩大规模、创新玩法。

  而英礴的终极目标是创造一个持久性的、沉浸的虚拟世界,这听起来与当下的元宇宙(Metaverse)有些类似,不过Herman Narula早在2017年便有如此想法。

同时容纳近万名“玩家”,这款多人游戏是如何实现的?

  来源:2017年《连线》杂志采访英礴联合创始人

  这个世界依托于庞大的计算力,大量的用户,大量的AI,以及彼此交互时产生的各种复杂状况,那些突发的、持久性的事件在这里都是被允许的。

  现在,《Scavengers》的“Winter Sports”迈出了坚实的一步,它让数千人同时聚集在一个虚拟世界中,而不是分散在一张巨大的地图上或分散在一个游戏的“平行世界”中。

  这些多人游戏未来构想的建造者,是否也会有正在阅读这篇文章的你的一份子?

热门推荐