如何准备游戏以移植到PC和控制台

长期以来,跨平台游戏的好处已在游戏界引起了广泛的讨论,但在开发人员中却很少涉及。关于创建跨平台游戏所需的基本知识的文章并不多。

但是,跨平台现在正在兴起。此属性有越来越多的游戏。 Fortnite,《使命召唤》,《街头霸王》-它们都是不同的流派,以不同的方式实现,但是在某种程度上,它们具有跨平台的功能。

安德森·霍洛维茨 Andersen Horowitz 他的博客写道,游戏历来是按不同平台细分的,但是现在随着跨平台的普及,多人游戏的数量也越来越多。

为什么需要使游戏跨平台?

这对玩家非常有用:您不必选择在哪个设备上运行游戏-您可以与朋友自由玩耍而不必担心他们是否在玩家数据库中。

对于游戏开发人员来说,这也很棒,因为现在用户群没有按不同的平台进行细分-相反,您可以组织一个庞大的玩家群,并通过更完整的游戏会话来创建更丰富的多用户体验。



太好了,让我们将游戏移植到多个平台上!

当然听起来很酷,为什么不呢。那只是...

在《指环王》中,如果您还记得,英雄们也在Elrond的建议下进行了讨论,他们说,让我们做我们应该做的,Boromir说:



所有这一切都是因为Boromir知道:创建成熟的跨平台游戏并不是那么简单。

因此提出了为准备考虑创建自己的跨平台游戏的用户准备材料的想法。

如果您以前已经发布过游戏,则意味着您已经处理了将游戏发送到各种平台的过程,并且知道每个游戏的功能,这将成为当今材料的良好基础-此外,还将在准备工作的初始阶段提供帮助。


创建跨平台游戏之前需要考虑的9件事


提示1:熟悉术语

与跨平台相关的概念很多,但首先我们将介绍最必要的概念:跨平台,跨进程和跨购买。

有什么区别?

平台游戏(跨平台游戏或跨平台游戏)就是人们听说跨平台游戏时的想法:将在不同平台上玩游戏的用户组合到一个多用户会话中。也就是说,当Xbox玩家可以与PlayStation或Steam玩家发生游戏冲突时。

交叉进展(或交叉保存,交叉保存)称为在一个平台上开始播放,保存进度并在另一个平台上继续播放的功能。这可以在单人游戏和多人游戏中找到。

交叉购买(或交叉商业,交叉购买)是在一个平台上进行的购买,然后在另一个平台上显示在您的图书馆中。她的近亲是BOPA(可在任何地方购买一次游戏:一旦购买-可以在任何地方游戏),但我们稍后再讨论。

提示#2:创建自己的在线域

在不同平台上发布游戏时,每个平台的特殊辅助服务对您都可用,它们确实非常方便。



不幸的是,如果您想制作一个跨平台的游戏,则不能使用其中的大多数服务,因为例如Steam上的统计数据与Xbox或PlayStation上的统计数据不匹配。您必须拥有自己的服务集:统计,识别系统,婚介等等,这些服务将把来自各种平台的数据链接在一起。



那么,您首先需要什么?

  1. 识别系统和账户
  2. 电子商务系统(尤其是如果您打算通过应用内购买将游戏货币化);
  3. 根据认证要求的其他所需服务。

例如,即使您拥有自己的配对系统,Xbox认证也要求您使用MPSD(多人游戏会话的目录),因为您存储在MPSD中的所有信息随后都将用于在Xbox仪表板中启用Rich Presence。

提示#3:详细了解您的播放器

请考虑一个示例。

假设某位玩家拥有:

  • Steam账户;
  • 史诗商店帐户
  • Xbox帐户
  • PlayStation帐户
  • 切换帐户
  • 等等。

游戏如何知道这是同一个人?

所谓的帐户绑定系统就是在这里进行救援的。

关联帐户允许您将共享帐户与各种平台的帐户关联。

如果您玩《使命召唤》,您可能知道特许经营的最后一部分是跨平台的。如果要在系统中查找朋友,则需要使用Activision ID。因此,如果您在Xbox上玩游戏,您将无法找到在PlayStation上玩游戏的朋友,因为这两个玩家基础并不相交-但同时,两个平台上所有玩家的数据都存储在Activision ID中。



这个统一的识别系统不仅将成为当前游戏的基础,而且还将成为您未来所有项目的基础。是她将您与其他平台联系在一起。

这是另一个提示。请密切注意GDPR和CCPA的要求:必须尽早考虑其标准,以避免造成不愉快的后果。此外,迟早会有新平台出现,您是否希望能够在可用时将其添加到您的游戏中?

以下是如何实施Steam帐户绑定的示例。



因此,需要一个识别系统才能将Steam令牌交换给您自己的令牌。然后,玩家可以使用此令牌激活他需要的服务。

提示4:让用户一起玩

现在,您已经使用帐户关联系统成功识别了玩家,下一步就是让用户一起玩。



因此,现在是进行交叉游戏的时候了。

为了使玩家和所有好友都可以在同一个多人游戏会话中建立联系,您需要组织一个配对系统,管理游戏会话和许多服务-完整列表取决于特定游戏的需求。因此,首先您要识别用户并将他们聚集在一起,而不管他们在什么平台上玩游戏,然后进行配对将他们组织到游戏环节中。



有关多人游戏和连接质量的一些注意事项。

如果您自己选择游戏引擎,那么请跨平台友好:这样的引擎已经具有用于执行客户端-服务器同步的内置机制。当然,如果您决定创建自己的引擎,则有权这样做,但请记住以下几点。

当您希望用户开始与其他播放器建立连接时,最好不要使用直接P2P路由。鉴于您不能使用内置的平台库(如Xbox安全设备关联),此任务变得非常混乱,尤其是当我们谈论将控制台连接到PC时。提示:使用专用服务器或中继对等方来创建网格。

最后一点:由于您现在正在处理不同容量的平台-PC,控制台-让您的仿真使用固定的每秒30帧的频率。同时,渲染可以保持原样。

提示5:让玩家在其他平台上继续游戏

与其他许多人一样,作者在《巫师3》中花费了数百小时,首先在PlayStation上玩,然后决定切换到Switch,因此我不得不从头开始。 《巫师》无法在另一个平台上继续游戏。随着时间的推移,开发人员仍然在Steam和Switch之间进行了交叉保存。没错,这是关于PlayStation 4的。但是,CD Projekt RED迟早可能会在它们之间建立跨平台-主要是已经设置了正确的方向。

如何存储数据完全是您的选择:您可以将其以blob的形式存储在云中,可以将其作为统计信息,也可以作为配置文件属性中的字符串来存储。不管您是在Switch,PlayStation还是PC上玩游戏,主要的目的就是要确定自己仍然是您。

同样,谈到跨平台,人们不禁提到SPOP和MPOP。

流行音乐(单个存在点)表示在任何给定时间仅允许一个帐户连接到一个帐户时的单一存在点,并且在一个平台上进入游戏意味着自动注销到另一个平台。因此,SPOP可以保护您避免同时出现在来自不同平台的同一位置。这是避免数据停滞的最简单,最安全的实现方法。

流行音乐(多个存在点)是一种完全不同的行为方式。它使您可以拥有多个逻辑上指向同一帐户的连接。组织它可能非常困难,因为MPOP应该在用户同时登录同一帐户时创建一个来宾帐户,这可能会导致确保正确保存进度的问题。

尽管在大多数情况下使用SPOP更为方便,但您自己还是必须仔细考虑游戏特定方法的优缺点。

提示6:统一您的贸易

让我们来谈谈主要商店和辅助商店之间的区别。



主商店是您必须在平台上配置的商店,在该平台上可以用真钱进行操作,而辅助商店是您在游戏中控制的商店。

必须首先在每个单独的平台上设置主商店,然后再转到不同的区域,这已经是一项艰巨的任务-尤其是因为跨平台游戏没有任何API可以做到这一点。这是您需要为每个平台执行的艰苦的手动过程。因此,最好将主商店组织得尽可能简单,并以所需的方式为游戏内商店配备装备。



以上是系统工作方式的示例,玩家可以在Steam上进行购买,并且这些购买的安全性由单个电子商务系统确保。

以下是Steam购买流程图。



提示7:要注意跨平台系统的其他认证要求

,您可以保证三件事:

  1. 死亡;
  2. 税收
  3. 发行修补程序时,平台之一上的认证失败。

如果您之前已经通过了认证,那么您会知道这可能会很困难。它包括许多方面,并且此列表因平台而异。在创建跨平台游戏时,请记住,在这种情况下,还有其他认证要求。

建议:为自己创建一个安全气囊,以便了解成功通过认证并采取适当措施所需的条件。

提示#8:将发布内容与发布

内容分开, Fortnite有一个临时事件,将英雄从第一个季节转移到第二个季节:根据剧情,整个世界突然开始崩溃并陷入黑洞。

有趣的是,此事件与更新的激活无关。发布游戏更新时,无法将其与所有平台上的配置更改同步,这是一个非常耗时的过程:您需要联系客户经理,经历认证过程并执行许多其他操作。

但这不是您可以更改游戏的唯一方法。

游戏更改通常通过以下方式进行:

  1. 游戏更新;
  2. 数据替换补丁;
  3. 服务器端开关(服务器端切换)。

服务器端开关是您首先在服务器上定义的服务器变量,然后强制游戏客户端和服务器响应这些变量中的更改。它们对于安排游戏事件,平衡游戏,激活Kill-Switch和功能标志很有用。

使用示例:

  • 在某些平台上打开/关闭功能;
  • 限制对游戏中某些功能的访问以进行质量检查。



上图显示了如何安排一个系统来响应游戏客户端和服务器,以响应服务器上的更改变量。在这种情况下,推送通知非常方便,但不是必需的,您可以使用池来代替它们。

提示#9:一旦购买,就可以在任何地方玩(BOPA)

警告:这是未知领域,作者无法保证数据的绝对准确性。

BOPA(随时随地购买)可以使用户在一个平台上购买游戏,然后该游戏就会出现在其他平台上的购买交易中。

它为什么如此重要?



玩家不再需要担心要购买哪个平台,他们只需购买游戏即可。对于游戏开发者来说,好处是他们可以将玩家聚集在一个基地中,扩大品牌并吸引商店的流量。

我们列出了BOPA要求的三个要素:

  1. 统一识别​​系统;
  2. 授予访问权限并具有跟踪权限的统一系统;
  3. 无需输入密钥即可在跨平台商店中授予访问权限:调用另一个平台的API可以为当前平台提供权限的能力。

值得注意的是,后一种选择并不广泛可用,只有某些平台支持它。

以下是BOPA实施的一些示例。

场景1:在商店中购买商品后,游戏就会出现在Steam库中。



注意:此处使用的API并非公开可用,因此您需要与客户经理联系。

场景2:在Steam上购买时,游戏会出现在您的商店中。



在这种情况下,您将无法在Steam上跟踪购买过程,因此您必须依靠播放器。

关键点

跨平台是具有长期项目支持计划的游戏的理想选择。正如您可能已经了解的那样,创建此类游戏非常简单:您将需要一个庞大的团队,大量的时间和金钱来拥有合适的基础架构来支持它。

从哪儿开始?

就像游戏引擎一样,您可以使用多种解决方案来实现跨平台,因此无需从头开始创建它们-当然,如果您自己不想这样做的话。其中一些:GameSparks,Photon,AccelByte,PlayFab。

每个都有优点和缺点-这取决于您的需求。它们可能因以下因素而异:

  1. 成本;
  2. 维护各种平台;
  3. 定制和可扩展性选项
  4. SDK质量;
  5. 可靠性;
  6. 可扩展性。

本文讨论了在创建跨平台游戏时可能遇到的最基本的问题。要对此方面进行进一步研究,您可以加入例如Discord中的Online Gamedev [BaaS]主题

All Articles