Epic的跨平台之旅

2021年6月16日
在最近几年兴起的跨平台联机已经成为游戏业的决定性趋势之一。
 
不久以前,让主流平台运营方允许其用户与竞品平台上的好友无缝联机的设想还像是白日做梦。而如今,它不仅成了现实,还成为业界常态,而Epic Games一直站在倡导这一变革的第一线。

这场业界变革在2018年9月迈出了一大步,当时《堡垒之夜》率先在移动设备、PC和所有主流主机平台上解锁了全面跨平台联机功能。2019年1月,就在Psyonix加盟Epic前夕,《火箭联盟》也效仿了这一做法。

Epic在《堡垒之夜》中想要达成的跨平台联机目标是,为这款将会登上世界第一宝座的游戏创造一个统一的社区,并借此机会扩展可以用于游戏开发的工具种类。

“我们现在通过Epic在线服务免费分享我们这些年通过虚幻引擎积累的专业知识和取得的成果,以此回报开发社区。”Epic首席执行官Tim Sweeney说,“在我们要通过Epic在线服务提供的服务中,跨平台联机占据非常重要的地位,它的基础就是我们把《堡垒之夜》开发成如今这样非凡的游戏所积累的经验。”

在2021年,Epic希望用新的功能扩展Epic在线服务工具集,不过还是让我们先从头说起。

大多数人不知道的是,Epic实现跨平台兼容性的历程并非始于《堡垒之夜》,而是始于它的多人在线竞技场对战游戏《虚幻争霸》。

在2017年,《虚幻争霸》仅支持PC和PS4。这种较小的规模可以大大降低跨平台联机早期研发的管理难度。团队成功利用了《虚幻争霸》的实时环境来测试跨平台对战匹配和跨平台身份验证,还通过一套概要系统测试了跨平台升级。他们还打造了实时服务监视系统,从而能够在实际运行环境下发现对战匹配时间过长和安全漏洞等问题。

“我们亲身体验过使用图表和遥测技术跟踪游戏表现。”Epic Games的首席软件工程师Josh Markiewicz说,“为什么游戏崩溃了?为什么有些人一直找不到匹配的对手?对代码进行遥测是关键,如果不这么做,你实际上就是闭着眼睛飞行。更何况在《虚幻争霸》中,我们是第一次尝试基于游戏水平的对战匹配。要让那些超一流的电竞高手快速匹配到对手,我们就必须非常透彻地了解对战匹配代码的性能。”

对于玩家群体中的戾气,他们也获得了具体的经验。Epic发现,如果人们可以和不同平台的好友一起游玩,就能创造产生积极游戏体验的更强大基础,从而减少整个玩家群体中的戾气。
大约在《虚幻争霸》上线一年以后,团队开始积极准备《堡垒之夜》的上线。

“就底层而言,《堡垒之夜》的在线后端和《虚幻争霸》是一样的,只不过有更多功能。”工程主管Greg Latcovich回忆说,“因为《堡垒之夜》可以在多种平台上运行,所以也要实现更大规模的跨平台联机。平台多了,玩家也多了,于是就产生了新的问题,其中首要的问题就是为跨平台升级提供便利,让玩家可以在多种设备和平台上随时玩游戏。”

这两个游戏采用了相同的联机技术,《堡垒之夜》起初用的还是同样的代码,但随着《堡垒之夜》的发展,很快就改了代码。如今作为Epic在线服务的一部分提供的服务就是这一代码库演化的结果。

在《堡垒之夜》中,涉及跨平台升级的挑战就是要给玩家提供一个在所有平台上通用的身份来升级和与朋友联谊。这要从玩家登录或新建Epic帐户开始。
“如果玩家是第一次登录《堡垒之夜》,游戏会竭尽所能来确定玩家是否已经有了帐户,从而限制不必要的帐户创建。”Epic Games的首席UI程序员Don Eubanks说,“对于大多数平台来说,这是很简单的,只要把帐户与平台的专有帐户系统关联起来就好。”
 
对于移动平台和基于Web的登录,Epic选择了支持其他跨平台登录方法,例如通过Facebook、Google、通用的电子邮件与密码组合等方法,而帐户关联的所有逻辑都由Epic的后端服务处理。如今Epic在线服务为使用Epic帐户服务的跨平台登录提供现成解决方案。
 
允许玩家跨平台与好友组队一起玩游戏是另一个自然呈现的挑战。
“大多数平台通常会提供自己的组队形式。”Eubanks对我们说,“但是利用其中任何一种都会带来限制。主机上的组队往往是和游戏无关的,只提供语音聊天,而且不允许其他主机、电脑或移动平台上的用户加入。至于移动平台,它们不一定提供组队支持,也不一定会说明如何组队或玩家为什么需要组队。”
 
《堡垒之夜》的组队系统以基于XMPP的方法为起点,因为它在当时是被广泛采用的标准。它是开源的,可以通过插件扩展,先在《虚幻争霸》中得到应用,后来又被《堡垒之夜》采用。但是,虽然团队花了很大功夫来定制它与Epic的授权、聊天和好友服务的集成,随着时间的推移,它还是暴露出不少弱点。
 
“它使用星型模式进行常规通信,这是一种点对点对点的结构。所以,当用户在本地进行某些更改时,必须向所有其他用户发送消息,把更改通知他们。在人数较少的时候,这种模式运行得相当好,但是当人数变多,它就会崩溃。”Eubanks说。
 
在2019年,Epic的组队服务应运而生,支持16名玩家组队。这套新系统全面改革了《堡垒之夜》实现安全性、客户端权限、持久性和扩展的方法。该系统控制成员信息,而且与主机API完全集成,因为这是支持可引导邀请和在本机仪表板的好友列表中显示正确信息所必需的。这一组队服务将在2021年下半年作为Epic帐户服务的一部分推出。

下一个挑战是语音聊天。语音聊天终究是人们玩多人游戏时最重要的工具之一,不仅是为了与好友对话,也是为了有效进行协调和共同游戏。
 
Epic目前已免费向所有游戏开发者提供语音聊天服务。目前该服务正在《堡垒之夜》中进行封闭测试,支持本地静音和仅允许来自已授权队员的语音连接等功能。

从《虚幻争霸》和《堡垒之夜》的早期开发中产生了一套功效强大的工具,它们成为Epic在线服务的基础。
 
正如《虚幻争霸》为《堡垒之夜》铺平了道路,Epic也将继续利用其在《堡垒之夜》中的工作为Epic在线服务创造和验证新的功能,并在彻底测试后发行到开发者社区。我们获得的经验将指引Epic在线服务的未来,而随着它的发展,面向所有开发者免费提供的工具数量也将持续增加。
 
你可以立即在dev.epicgames.com注册并试用这些服务。

    其他Epic在线服务

    获取包括语音聊天、成就、匹配、实时运营在内的各种免费服务。游戏服务支持你选择的任意引擎、所有平台以及所有的身份验证服务——包括你自研的系统。