PubNub과 에픽 온라인 서비스를 활용한 동적 매치메이킹 시스템 구축하기

2025년 8월 5일
이 글은 개발자가 에픽 온라인 서비스와 통합하여 동적 매치메이킹을 구현할 수 있도록 선택적으로 사용할 수 있는 제3자 제공업체 PubNub 팀이 작성한 블로그입니다.

게임 내 매치메이킹 시스템은 지난 수십 년간 지속적인 발전을 거듭해 왔으며, 이는 플레이어들에게 가장 흥미진진하고 즐거운 경험을 제공하기 위한 노력의 일환입니다. 현재 많은 게임들은 매치메이킹 시스템을 통해 소셜 경험을 조성하고 있습니다. 게임 내에서 친구 관계를 맺은 플레이어들이 게임을 오래 즐길 가능성이 훨씬 더 높다는 것을 알고 있기 때문입니다.

이러한 유대감은 절체절명의 순간에 나를 살려준 팀원, 엄청난 압박을 완벽한 협동력으로 버틴 팀, 어쩌다 우연히 만나 게임 동지로 거듭난 듀오 등 각종 플레이어들의 활약으로 언제든지 형성될 수 있습니다.  개발자 입장에서, 매치메이킹을 통해 사회적 참여와 의미 있는 상호작용을 조성하는 것은 플레이어들 사이에서 이러한 지속적인 순간들을 만들어내는 데 중요할 수 있습니다.

제3자 제공업체 PubNub은 에픽 온라인 서비스와 함께 작동하여 플레이어의 행동, 플레이 스타일, 사회적 신호에 따라 동적으로 적응하는 매치메이킹을 개발자가 사용할 수 있도록 지원합니다. 아래에서 자세한 내용을 확인하세요.
 

동적 매치메이킹 소개 

초기 매치메이킹 시스템은 주로 연결 기반이었습니다. 즉 핑이 안정적이라면 참여할 수 있었습니다. 스킬 기반 매치메이킹 시스템(SBMM)은 상대방 간의 눈에 띄는 기술 격차를 해소하기 위해 탄생했으며, 게임을 재미있고 경쟁적이며 몰입감 있게 유지합니다. 최근에는 참여 최적화 매치메이킹(EOMM)이 도입되어, 매치메이킹 기록부터 더 넓은 참여 패턴에 이르는 추가적인 신호를 활용해 더 개인화된 플레이 경험을 형성하는 데 기여했습니다. 게임과 플레이어 커뮤니티가 계속 성장함에 따라, 매치메이킹에 점점 더 동적인 로직을 도입함으로써 이러한 기반을 바탕으로 기회를 창출할 수 있는 가능성도 함께 확대되고 있습니다.

PubNub 및 에픽 온라인 서비스를 활용한 동적 매치메이킹은 세션마다 달라지는 여러 종류의 플레이어 피드백을 지원합니다. 먼저 플레이어를 정의할 수 있는 다양한 방법을 살펴보겠습니다.
 
  • 플레이 스타일 선호도 - 캐주얼 대 경쟁
  • 역할 성향 - 플레이 스타일 분류
  • 입력 방법 - 컨트롤러 대 마우스/키보드 
  • 시간대 및 참여 의도 - 플레이어가 게임에 잠깐 접속했다가 나가는가? 아니면 한 번에 오랜 시간 즐기는가?
  • 소셜 연결 - 친구 목록, 친구의 친구, 채팅 선호도

이 외에도 여러 가지가 있습니다. 플레이어가 상호작용할 수 있는 모든 방법을 생각해 보면 퍼즐을 맞추기 시작할 수 있습니다.
효과적인 매치메이킹을 위한 핵심 구성 요소를 설명하는 다이어그램
동적 실시간 시스템을 구축함으로써 개발자는 플레이어의 전체적인 특성을 고려한 매치메이킹을 제공할 수 있습니다. 

적극적으로 소통하는 플레이어들은 팀워크와 전략을 중시하는 플레이어들과 매칭됩니다. 전원이 대기 중인 친구들은 다른 팀과 마주하게 됩니다. 어떤 성향의 사람이든 자연스럽고 몰입감 넘치며 만족스러운 경험을 할 수 있습니다.
 

에픽 온라인 서비스와 PubNub Illuminate로 동적 매치메이킹 솔루션을 구축해 보겠습니다.

에픽 온라인 서비스를 통해 개발자는 다양한 플랫폼과 스토어에서 플레이어를 빠르게 게임에 참여시킬 수 있습니다. 또한, 에픽 게임즈 계정을 사용하면 플레이어들은 즉시 기존 친구들과 팀을 구성할 수 있습니다. 사용자들은 음성 채팅을 포함한 다양한 기능을 이용할 수 있으며, 개발자는 안티 치트와 플레이어 모더레이션 기능으로 커뮤니티를 건전하게 유지할 수 있습니다.

에픽 온라인 서비스 (EOS)는 매치 오케스트레이션(플레이어 신원 관리, 세션 관리, 로비 형성)을 담당하며, PubNub Illuminate는 개발자에게 위에서 언급된 플레이어 행동, 선호도 및 상황에 맞는 컨텍스트를 제공합니다. 

Illuminate는 개발자가 선택한 데이터 소스에서 실시간 신호만 수집합니다. 이는 게임플레이나 플레이어 메타데이터 등 플레이어 매칭 수단으로 사용하려는 어떤 측면이든 될 수 있습니다. 친구 목록, 플레이 시간/일, 선호하는 무기, 플레이 스타일 관련 메타데이터, 특정 유형의 스킨에 대한 선호도, 게임마다 전체 로비를 즉시 음소거하는 경향 등 선택한 실시간 신호를 활용해 플레이어를 그룹화할 수 있습니다. Illuminate는 특정 순간(실시간)의 데이터를 추적하든 계속 변화하는 트렌드를 추적하든 개발자가 선택한 모든 신호를 지켜보면서 플레이어가 정의한 맞춤형 매치메이킹 로직에 바로 공급할 수 있습니다.

그런 다음 에픽 온라인 서비스를 사용하면 이 실시간 매치메이킹 가이드를 활용해 세션 생성 과정을 효율적으로 관리할 수 있습니다. 즉, 함께 플레이하고 싶은 팀을 매치메이킹하는 작업을 자동화할 수 있습니다. EOS는 플랫폼, 지역, 또는 네트워크의 특수한 경우에 관계없이 적절한 플레이어들끼리 매칭합니다. Illuminate의 실시간 처리 기능을 통해 매치메이킹 규칙을 조정, 변화, 개선할 수 있으며, 플레이어에게는 해당 규칙이 즉시 적용되는 것을 확인할 수 있습니다.

이 스택을 사용하면 매치메이킹 로직을 게임 클라이언트에서 분리할 수 있습니다. 따라서 우선순위가 변경될 때마다 게임을 패치할 필요 없이, 서버 측에서 실시간으로 규칙을 업데이트할 수 있습니다. 

예를 들어, 솔로 큐 플레이어가 음성 통신을 사용하는 다른 플레이어와 더 쉽게 매치메이킹되도록 하거나, 비시즌 기간 동안 스킬의 우선순위를 실험적으로 잠시 낮춰보고 싶다면, 이러한 특정 시나리오에 가장 잘 맞는 방식으로 설계를 할 수 있습니다. 이것이 가능한 이유는 이러한 시나리오의 로직이 엔진 외부에서 관리되기 때문입니다. PubNub Illuminate로 플레이어 데이터를 전송하는 한, 게임 코드에 거의 또는 전혀 변경 없이 이러한 조정을 수행할 수 있습니다.

에픽 온라인 서비스가 인프라를 처리하고 Illuminate가 의사결정을 주도하기 때문에, 게임과 플레이어층이 변화함에 따라 매치메이킹 전략을 유연하게 발전시킬 수 있습니다. 그리고 Illuminate의 결정은 실제 사용 데이터와 트렌드를 기반으로 하기 때문에, 각 매치는 사용자에게 맞춤형으로 설계된 것처럼 느껴집니다.

결과적으로, 플레이어의 게임플레이 선호도를 이해하도록 최적화된 매치메이킹 경험이 제공됩니다.
 

매치메이킹이 플레이어에게 적응하는 방법: 실시간 의사결정을 위한 LiveOps 아키텍처

대부분의 매치메이킹 시스템은 로직이 하드코딩되어 있어, 게임 클라이언트나 서버에 내장되며 다음 패치 전까지는 고정된 상태로 유지됩니다. 이러한 프레임워크는 실험을 제한할 수 있으며, 개발자들이 플레이어 중심의 세밀한 매칭보다는 "예측 가능한" 매치메이킹 로직을 우선시하도록 합니다.

에픽 온라인 서비스와 PubNub Illuminate를 사용하면 아키텍처가 완전히 바뀝니다. 매치메이킹 로직이 게임 빌드 외부에서 플레이어 행동과 참여 패턴에 따라 지속적으로 발전하는 실시간 서버리스 규칙 엔진에서 작동합니다.

그 작동 방식은 다음과 같습니다.
  1. 게임 클라이언트 → 에픽 온라인 서비스 세션 및 PubNub Illuminate 원격 측정
플레이어는 게임 클라이언트를 통해 매치메이킹 요청을 시작합니다. 에픽 온라인 서비스는 ID 및 파티/로비 형성을 담당합니다. 동시에 게임은 세션 히스토리, 입력 방법, 시간, 음성 사용, 최근 행동 패턴 등 원격으로 측정한 상황별 데이터를 Illuminate에 전송하기 시작합니다. 
 
  1. 게임 → PubNub Illuminate API 호출
게임이 API를 통해 Illuminate를 호출하면, 개발자가 선택하고 구성한 백엔드 또는 게임 엔진 자체에서 관련 플레이어 및 게임 메타데이터를 전송합니다. Illuminate는 이 데이터를 PubNub 'App Context'에 저장하고, 실시간 지표 및 트렌드와 비교하여 평가할 준비를 마칩니다. 이 엔진은 매달 수조 개의 메시지를 수신하는 동일 인프라를 기반으로 작동합니다.
 
  1. PubNub Illuminate → 의사결정 엔진 및 규칙 세트 평가
Illuminate는 수천 또는 수백만 명의 사용자로부터 실시간 데이터를 처리합니다. 규칙 세트는 노코드/로우코드 환경에서 생성되므로 개발자가 전에 수집한 데이터 조합을 기반으로 어떤 종류의 매치메이킹 결정이든 내릴 수 있습니다. 예를 들어, 어떤 플레이어가 3연패 한 후 새로운 친구와 플레이하는 경우 엄격한 SBMM의 우선순위를 낮추게끔 '소프트 제약' 규칙을 구현할 수 있습니다.
 
  1. PubNub Illuminate → 에픽 온라인 서비스 매치메이킹 의사 결정
Illuminate는 세션 생성 로직을 안내하기 위해 게임에 일치 결정 결과를 반환합니다. 그러면 게임은 에픽 온라인 서비스를 사용하여 플레이어의 현재 행동 패턴과 일치하는 세션을 생성하고 세션 라이프사이클을 관리합니다. 이를 통해 매치메이킹 로직이 로비 로직으로 전환되어 이론적인 의도가 아닌 실제 동작으로 구현됩니다.
 
  1. 에픽 온라인 서비스 → 게임 세션
에픽 온라인 서비스 API는 플레이어를 적절한 세션으로 보내는 데 사용되며, 이 세션은 이제 단순히 스킬이나 지연시간에 따라 구성되는 것이 아니라, 더 깊은 의도로 매칭하는 로직으로 구성됩니다. 클라이언트가 로비 및 세션 데이터를 수신하면 게임이 시작됩니다.
 
  1. 세션 도중 → 지속적 피드백 루프
Illuminate는 게임이 진행되는 동안 사용자 행동에 대해 이전에 정의된 메타데이터와 지표를 계속 수집하여 향후 의사결정에 활용할 피드백으로 제공합니다. 
 

매치메이킹 시스템에서 벗어나 개발자들은 PubNub Illuminate를 활용해 게임플레이 중 실시간으로 LiveOps 기반 이벤트를 동적으로 트리거할 수 있으며, 이를 위해 새로운 빌드나 배포가 필요 없습니다.
Pubnub Illuminate 및 EOS 매치메이킹 워크플로 다이어그램
이 아키텍처는 개발사에 완전한 유연성을 부여합니다. 매치메이킹 가설에 A/B 테스트를 수행하고, 지역별 선호도에 따라 로비를 플레이어들에게 맞출 수 있으며, 플레이어의 정서에 따라 라이브 토너먼트 도중 실시간으로 매치메이킹을 조정할 수도 있습니다.

에픽 온라인 서비스는 인프라의 확장성과 신뢰성을 제공하며, 제3자 솔루션인 Illuminate는 개발자가 행동 기반의 적응형 매칭 시스템을 구축할 수 있는 옵션을 제공합니다. 이 두 가지를 사용하면 서로 완전히 분리되어 있으면서도 깊이 통합된 매치메이킹 시스템이 탄생합니다.

자세한 내용은 아래 비디오를 시청하시고, PubNub의 YouTube 채널에서 전체 튜토리얼 비디오를 확인해 보세요. 
 
 

    PubNub을 사용하여 동적 매치메이킹을 구축하는 방법을 알아보세요.

    행동 기반의 동적 매치메이킹을 살펴볼 준비가 되셨나요? 아래의 샘플과 문서를 확인해 보세요.