利用PubNub与Epic在线服务打造动态匹配系统

2025年8月5日
本客座文章由第三方供应商PubNub团队撰写,开发者可选择将PubNub与Epic在线服务集成,以实现动态匹配功能。

在过去几十年里,游戏中的匹配系统不断演变,力求为玩家提供最具吸引力和趣味性的体验。如今,许多游戏都通过匹配系统来促进玩家的社交体验,因为他们知道,在游戏中建立友谊的玩家更有可能长期存留。

这些情谊由一个个瞬间铸就,并由玩家们共同推动:比如那位在最后一秒将你复活的队友,在高压时刻配合得天衣无缝的小队,或是偶然组队却逐渐成为固定游戏搭档的两人。对于开发者而言,通过匹配系统来促进玩家的社交参与和有意义的互动,对于在玩家之间创造这些难忘瞬间至关重要。

第三方供应商PubNub正与Epic在线服务合作,为开发者提供一种选择,使他们能够根据玩家行为、游戏风格和社交信号动态调整匹配机制,从而为开发者提供一种全新的游戏内匹配方式。请继续阅读,了解具体方法。
 

引入动态匹配

早期的匹配系统主要基于连接状况:只要你的网络延迟稳定,就能加入游戏。为解决对手间显著的技术差距问题,基于技术的匹配系统(SBMM)应运而生,它有助于游戏保持趣味性、竞争性和吸引力。最近,参与度优化匹配系统(EOMM)也加入了这一行列,它纳入了从对战历史到更广泛的参与模式等额外信号,以塑造更个性化的游戏体验。随着游戏和玩家社区的不断发展,我们有机会在这些基础上更进一步,将越来越多样化的逻辑融入匹配系统之中。

PubNub与Epic在线服务携手打造的动态匹配系统能够根据玩家在每局游戏中反馈的多个类别信息(这些因素会随每局游戏而变化)进行匹配。首先,我们从思考如何从多维度定义玩家开始:
 
  • 游戏风格偏好:休闲还是竞技
  • 角色类型倾向:划分你的游戏风格类别
  • 输入方式:手柄还是鼠标/键盘
  • 游戏时段和单次游戏意图:玩家通常是频繁进出游戏,还是长时间鏖战?
  • 社交关系:好友列表、好友的好友、聊天首选项

等等。如果你开始思考玩家间的所有互动方式,就可以逐步拼凑出完整图景。
一张展示有效匹配关键要素的示意图
通过构建一个动态的实时系统,开发者能够为玩家提供更为全面的匹配服务,全面考量玩家的整体情况。

善于积极沟通的玩家会与那些重视团队合作和策略的玩家匹配。一起排队的好友将匹配到其他完整队伍。无论是谁,都能够获得一种自然、沉浸、有收获的体验。
 

让我们借助Epic在线服务和PubNub Illuminate,构建动态的匹配解决方案

借助Epic在线服务,开发者能够让玩家跨越平台和商店,快速进入游戏。此外,使用Epic Games账户,玩家可以立即访问现有好友并组队。他们还能使用包括语音聊天在内的丰富功能,而开发者则可以利用反作弊和玩家管理功能来维护社区的健康环境。

Epic在线服务(EOS)负责处理匹配流程的协调工作,包括玩家身份验证、会话管理以及大厅组建等;而PubNub Illuminate则向开发者提供上面提及的玩家行为、偏好及情境信息。

Illuminate仅从开发者选择的数据源中摄取实时信号。这些信号可以是你希望用作玩家匹配依据的任何游戏数据或玩家元数据。无论是好友列表、游戏时间/日期、喜爱的武器、游戏风格元数据、对特定皮肤类型的喜爱,还是每局游戏都倾向于立即静音整个大厅的习惯,你可以利用所选的各种实时信号将玩家分组。无论你是想监控瞬时(实时)数据,还是长期趋势,Illuminate都能捕捉到所有选定的信号,并将其直接输入到你自定义的匹配逻辑中。

随后,Epic在线服务可利用这些实时匹配指导,高效地管理会话创建过程,将你希望组队的小队匹配在一起。EOS将确保匹配结果正确路由,不受平台、地区或网络边缘情况的限制。借助Illuminate的实时处理能力,你可以调整、优化或改进匹配规则,并知道玩家会立即看到这些规则生效。

这种技术栈使你能够将匹配逻辑与游戏客户端分离,因此,当优先级发生变化时,你无需为游戏打补丁,而是可以在服务器端实时更新规则。

例如,如果你想举办一场活动,让单排玩家更有可能与使用语音通讯的其他玩家匹配,或在休赛期降低技能匹配的优先级,你可以针对这些特定场景进行设计,以更好地满足受众需求。这是可行的,因为这些场景的逻辑存在于引擎之外。只要将玩家数据发送至PubNub Illuminate,你就可以实现这类调整,而无需更改游戏代码,或仅需更改最少量的代码。

由于Epic在线服务负责处理基础设施,而Illuminate负责驱动决策过程,你可以随着游戏本身以及玩家群体的变化,不断调整匹配策略。并且,因为Illuminate的决策是基于实际使用数据和趋势,所以每次匹配都能让用户感受到量身定制的体验。

其结果是,匹配体验得到优化,能够更深入地理解玩家的游戏偏好。
 

匹配系统如何适应你的需求:一种用于实时决策的LiveOps架构

在大多数匹配系统中,逻辑是硬编码的,这意味着直接将决策写入游戏客户端或服务器,并且在下一次更新补丁发布之前,会一直保持不变。然而,这种框架可能会限制创新尝试,迫使开发者将“可预测的”匹配逻辑置于以玩家为导向的细微差异之上。

而借助Epic在线服务,开发者可以选择集成PubNub Illuminate,从而颠覆原有架构:匹配逻辑不再局限于游戏构建内部,而是置于一个基于实时、无服务器规则引擎之中,该引擎会根据玩家行为和参与模式不断进化。

以下是它的工作流程:
  1. 游戏客户端 → Epic在线服务会话与PubNub Illuminate遥测
玩家通过游戏客户端发起匹配请求。Epic在线服务负责管理玩家身份以及队伍/大厅的建立。与此同时,游戏开始将遥测数据和上下文数据发送至Illuminate,其中包括会话历史记录、输入方式、一天中的时间、语音使用情况以及最近的行为模式。
 
  1. 游戏 → PubNub Illuminate API调用
游戏通过API调用Illuminate,后端或游戏引擎本身会将开发者选定和配置的相关玩家与游戏元数据发送给Illuminate。Illuminate将这些数据存储在PubNub的“应用上下文”中,以便根据实时指标和趋势进行评估。该引擎由每月接收数万亿条消息的同一基础设施提供支持。
 
  1. PubNub Illuminate → 决策引擎与规则集评估
Illuminate可处理来自数千名甚至数百万名玩家的实时数据。规则集是在一个无代码/低代码环境中创建的,该环境允许开发者基于之前采集的数据组合,做出任何类型的匹配决策。例如,一条规则可能会实施一项“非硬性约束”,即如果玩家连续三次输掉比赛且正在与新好友一起游玩,则降低严格SBMM的优先级。
 
  1. PubNub Illuminate → Epic在线服务匹配决策
Illuminate将匹配决策返回给游戏,以指导会话创建逻辑。随后,游戏利用Epic在线服务创建与玩家当前行为特征相匹配的会话,并管理会话生命周期,这确保了匹配逻辑不仅仅是停留在理论意图层面,而是切实转化为大厅逻辑。
 
  1. Epic在线服务 → 游戏会话
随后,Epic在线服务API用于将玩家引导至合适的会话中,这些会话的分配不仅基于技能水平或延迟,还基于更深层次的意图匹配逻辑。客户端接收到大厅和会话数据后,游戏便正式开始。
 
  1. 会话期间 → 持续反馈循环
在游戏过程中,Illuminate会持续收集之前定义的关于用户行为的元数据和指标,以反馈给未来的决策。
 

除了匹配功能外,开发者还能进一步利用PubNub Illuminate,在游戏进行过程中动态触发基于实时运营的即时活动,而无需发布新版本或进行部署。
PubNub Illuminate与EOS匹配工作流程示意图
这种架构为工作室提供了全面的灵活性。你可以针对匹配研究假设进行A/B测试,根据地区偏好个性化定制大厅,甚至在现场赛事期间根据玩家情绪实时调整匹配机制。

Epic在线服务提供了基础设施的可扩展性和可靠性,而第三方解决方案PubNub Illuminate则为开发者提供了创建自适应、基于行为的匹配系统的选项。两者共同构成了一个完全解耦但又深度集成的匹配系统。

如需了解更多信息,请观看下方视频,并查看PubNub YouTube频道上的完整教程视频。
 
 

    了解如何使用PubNub构建动态匹配系统

    准备好探索基于行为的动态匹配了吗?请查看下方的示例和文档。