2021. 10. 22.개발자 블로그

[개발 인사이드] 대전 검색 이해하기

대전 검색과 랭크는 와일드 리프트의 핵심 요소입니다. 하지만 이 요소들이 어떻게 작동하는 걸까요? 리드 게임 기획자 조시 멘키가 MMR과 ‘패배자 대기열’에 대해 설명해드리고 가끔 골드와 에메랄드 플레이어가 같은 게임에 배정되는 이유에 대해 말씀드립니다.

글쓴이
  • 조시 멘키

와일드 리프트에서 실력을 어떻게 측정하나요?

저희는 플레이어의 실력을 측정하기 위해 평가 시스템을 활용합니다. 역량 시스템이 플레이어가 대전에서 승리하는 능력을 가장 정확하게 예측하기 위한 숫자를 생성하죠. 저희는 이 숫자를 해당 플레이어의 대전 검색 점수(matchmaking rating) 또는 줄여서 MMR이라고 부릅니다. 플레이어의 MMR을 보면 해당 플레이어가 다음 대전에서 어떻게 플레이할 것인지를 ‘예상’할 수 있죠.

현재 와일드 리프트에서는 두 개의 MMR 시스템이 가동되고 있습니다. 랭크 게임은 원래 시스템을 사용하고 일반 게임은 저희 데이터를 활용해 누가 대전에서 승리할지를 훨씬 더 정확하게 예측하는 업그레이드된 버전을 사용합니다. 저희는 랭크 게임에서도 MMR 시스템을 업그레이드할 계획이지만, 플레이어의 랭크는 MMR과 크게 연관되어 있기 때문에 신규 시스템을 통합하는 데는 시간이 걸릴 것입니다.

MMR은 어떻게 작동하나요?

MMR의 복잡한 세부사항은 이 글에서 논할 대상이 아니지만, MMR은 단순하게 보자면 아르파도 엘로의 시스템 등 실력을 결정하는 데 흔히 사용하는 시스템의 발전된 버전입니다. 큰 차원에서 보자면, 각 대전이 끝나면 해당 대전이 얼마나 치열했느냐에 따라 승자는 점수가 올라가고 패자는 내려갑니다. 막상막하인 대전에서는 모든 플레이어의 올라가고 내려가는 정도가 거의 같지만, 일방적인 대전에서는 결과가 예상대로였는지 여부에 따라 올라가고 내려가는 정도가 달라집니다.

예상대로 결과가 나온다면 MMR은 크게 바뀌지 않지만, 결과가 예상 밖이라면 승자의 MMR이 약간 더 높아야 하고 패자의 MMR이 약간 더 낮아야 하죠. 그래서 이 경우에는 점수 변동이 더 큽니다. 여러분의 MMR은 여러분과 실력이 대등한 플레이어의 MMR과 동등한 수치로 수렴됩니다. 그래서 여러분과 실력이 비슷한 플레이어와 여러분이 같은 대전에 배치되도록 하려는 것이죠.

대전은 어떻게 구성되나요?

대전 검색의 목표는 플레이어를 아래 기준으로 봤을 때 최선의 대전에 배치하는 것입니다.

  • 나와 실력이 비슷한 좋은 팀원 (아군의 MMR이 내 MMR과 비슷함)
  • 양 팀의 승리 확률이 동일한 공평한 대전 (적팀의 MMR도 내 MMR과 비슷함)
  • 낮은 지연 (핑)
  • (해당하는 경우) 포지션 선호도 고려

    ‘대전 찾기’ 버튼을 누르면 같은 게임 모드에서 대전을 찾고 있는 플레이어 그룹에 합류합니다. 대전 검색 시스템은 매초 아래 과정을 계속해서 반복해 모든 플레이어의 대전을 찾아주죠.

    1. 가장 오래 기다린 플레이어나 파티를 대전 검색 대상으로 지정합니다.
    2. 해당 플레이어의 MMR이나 파티의 평균 MMR 기준으로 허용 가능한 범위 내에 대전을 구성할 만큼 충분한 플레이어가 있는지 확인합니다. 수가 충분하지 않다면, 시스템은 이번에는 해당 플레이어의 대전을 성사시키지 않고 거의 즉각적으로 다시 시도합니다. 이 시스템은 점수가 가장 비슷한 플레이어들을 선호합니다. 가능하면 모두에게 실력이 비슷한 팀원을 배정하기 위해서죠.
    3. 충분한 수의 팀원을 찾았다면 시스템은 양 팀의 MMR이 균형을 이루도록, 그리고 포지션 선호도를 고려해 예비 팀을 생성합니다. 양 팀의 MMR이 같도록 배치해 양 팀의 승리 확률이 동일해지도록 합니다. (즉, 50%에 가까워지게 합니다.)
    4. 팀이 구성되면, 일방적인 대전을 방지하기 위해 대전 검색 시스템은 두 팀의 MMR 차이가 일정 기준치 이하인지 마지막으로 확인합니다. 기준치 이하가 아닌 경우, 대전은 성사되지 않고 시스템은 2번으로 돌아가 해당 플레이어/파티의 다른 팀을 찾습니다. (후보가 바닥날 때도 있죠.)
    5. 대전이 준비되면 플레이어에게 이를 알리고 게임 전 단계가 시작됩니다. 대전 검색 시스템은 다시 1번으로 돌아가 그다음으로 오래 기다린 플레이어를 대전 검색 대상으로 지정합니다.

      2번 단계에서 대전 검색 시스템은 MMR과 랭크 차이가 특정 범위 이내인 플레이어만 서로 매칭시킵니다. 이 차이는 처음에는 작지만 매초 일정량만큼 늘어나죠. 이 과정이 2분간 계속됩니다. 2분이 지나면 허용되는 랭크 및 MMR 격차가 최대 범위에 달하고, 시스템은 확대된 범위로 18분간 대전을 검색해, 총 20분간 대전을 검색하게 됩니다. 20분이 지나면 검색이 종료되고 다시 검색을 시작하게 되죠. 그래서 대전 검색을 시작한 후 20분 이내에는 검색을 다시 시작하지 않고 계속해서 기다리면 언제나 더 빨리 대전을 찾을 수 있습니다. 대전 검색을 다시 시작할 때마다 랭크 및 MMR 허용 격차를 2분에 걸쳐 확대해야 하기 때문이죠.

      내가 안 좋은 대전에 배치되는 이유는 뭔가요?

      특정 대전이 좋지 않은 대전이라고 느껴지는 이유에는 몇 가지가 있습니다.

      • 스노우볼 효과: 와일드 리프트는 PC에서 진행되는 리그 오브 레전드와 스노우볼 효과에 대해 다음의 동일한 원칙을 지니고 있습니다. “기획 측면에서 봤을 때, 저희는 리그 오브 레전드가 작은 이득을 굴려 승리할 수 있는 게임이 되었으면 합니다. 아무리 사소한 성공이라도 스노우볼을 굴리면 초반에 우세한 게임을 할 수 있고, 때로는 이러한 우세를 게임 끝까지 가져갈 수 있어야 하는 거죠.” 그래서 실제로 양 팀의 대전은 잘 구성되었지만 게임의 진행 상황에 따라 대전이 잘못 구성되었다는 느낌이 들 수 있습니다.
      • 팀 조합: 암살자와 마법사 같은 챔피언들은 찰나의 순간에 엄청난 피해를 줄 수 있습니다. 그래서 내 상대인 렝가가 아이템 몇 개로 무장하고 하단 공격로에서 더블 킬을 가져간다면 렝가 상대로 이기기 힘들다고 느껴질 수 있지만, 플레이어 간 실제 실력은 동일한 수준일 수 있습니다.
      • 허용 가능한 MMR 격차 확대: 대전 검색 시스템은 플레이어 간 MMR 차이를 원하는 수준 이내로 유지하지 못했습니다. (대전 검색 시스템 작동 방식의 2번 단계를 참고해주세요.) 일부 플레이어가 대전을 찾을 수 없는 경우가 발생해 이들을 위해 전반적으로 허용 가능한 점수 격차를 늘려야 했죠. 일부 플레이어들이 게임을 플레이할 수 있도록 모든 플레이어에 대한 허용 가능한 MMR 격차를 넓혀야 했다는 의미입니다. 이로 인해 팀 내 MMR 차이가 저희가 원하는 수준보다 큰 대전이 있을 수 있습니다. 근래에 이러한 격차를 모든 플레이어에 대해 늘리는 대신에 각 플레이어에 맞춰 더 동적으로 조정할 계획입니다. 이를 통해 대부분의 대전에서 접전이 벌어지게 될 것입니다.
      • 부정확한 MMR 예측: 역량 시스템이 대전에 참여한 플레이어의 실력을 잘못 파악하는 경우도 있습니다. 역량 시스템이 특정 플레이어가 실제 실력보다 더 잘하거나 못하는 것으로 파악하게 되면 대전 검색 시스템이 제대로 작동해도 대전이 예상만큼 제대로 구성되지 않습니다. 위에서 말씀드린 것처럼 일반 게임에서 사용 중인 MMR 업그레이드를 통해 이런 일이 발생할 확률이 훨씬 낮아집니다. 새로운 시스템이 각 대전에서 어떤 팀이 승리할지 얼마 정확하게 예측해내는지를 보면 업그레이드가 효과가 있음을 알 수 있죠. 이 개선사항은 랭크 게임에도 적용되어 전반적으로 대전이 더 잘 구성되었다는 느낌을 받으실 수 있을 것입니다.
      • 운이 없는 게임: 단순히 평소보다 게임이 잘 안 될 때가 있습니다. 모든 게임에서 똑같은 수준의 실력을 보여주는 사람은 없죠. 어떤 대전에서는 에메랄드급 실력을 보여주다가도 다른 대전에서는 골드급 실력을 보여줄 수 있습니다. 이로 인해 공평해 보였던 대전이 스노우볼 효과 없이도 일방적인 게임으로 변모할 수 있습니다.

      랭크 게임과 일반 게임이 다른 이유는 뭔가요?

      대전 검색 시스템은 일반 게임의 대전 검색 시 랭크 게임을 전혀 고려하지 않습니다. 저희는 플레이어가 일반 게임과 랭크 게임을 다른 방식으로 플레이한다고 보고 있으며, 그래서 일반 게임과 무작위 총력전에는 랭크 게임과는 별도의 MMR이 있습니다. 예를 들어, 일반 게임 모드를 즐기는 플레이어는 특이한 플레이 스타일이나 빌드로 재미있게 플레이하거나 새로운 챔피언을 시험해볼 수 있죠. 이러한 MMR 구분을 통해 개별 게임 모드에서 달라지는 플레이어들의 의도에 따라 MMR이 결정되게 할 수 있습니다.

      내 팀에 랭크가 낮은 플레이어가 있는 이유는 뭔가요?

      요즘 발생하는 문제는 저희가 MMR과 랭크 모두를 고려해 대전을 구성하기 때문에 플레이어들이 공평한 게임을 하기 위해서 필요 이상으로 오래 기다려야 한다는 것입니다. 예를 들어, 랭크는 실버지만 MMR은 다이아몬드에 가까운 플레이어는 대전을 찾기가 힘듭니다. 랭크가 실버인 플레이어 중에 MMR이 다이아몬드 수준인 플레이어가 적기 때문이죠. 모든 플레이어가 대전을 찾을 수 있도록 저희는 허용 가능한 랭크 격차를 늘려야 했는데, 이로 인해 팀원 간 랭크 격차가 더 커지게 되었습니다.

      하지만 MMR이 정확하고 양 팀 간 MMR 격차가 적다면 대전은 여전히 공평할 것입니다. 위에서 말씀드렸다시피 근래에 더 정확한 MMR 시스템이 랭크 게임에 적용될 예정이니 랭크 격차가 더 커진 것 같다고 해도 랭크가 낮은 플레이어가 여러분과 비슷한 수준의 실력을 보여줄 거라고 기대하실 수 있습니다.

      저희 MMR 시스템이 더 정확해짐에 따라 저희는 랭크 기준으로 대전을 검색하는 방식은 완전히 중단하고 MMR에 초점을 둘 것입니다. 이를 통해 대기 시간이 대폭 줄어들고 더 공평한 경기를 할 수 있게 되죠. 랭크가 낮은 플레이어들과 같은 팀에 배정되었지만 해당 플레이어들의 MMR이 같은 대전에 배정된 다른 플레이어들의 MMR과 비슷한 경우는 해당 플레이어들 옆에 특별 아이콘이 표시될 것이며, 해당 플레이어들은 평균적으로 좋은 실력을 보여줄 것입니다. 그렇지 않다면 그 이유는 위에서 말씀드린 좋지 않은 대전을 야기하는 요인들 때문일 것입니다.

      내가 ‘패배자 대기열’에 배치된 이유는 뭔가요?

      짧은 답변은 저희는 그러한 의도가 없다는 것입니다. ‘패배자 대기열’이라는 것은 없습니다. 대전 검색 시스템은 플레이어가 연승/연패 중인지 알 수 없습니다. 대전 검색 시스템은 플레이어의 현재 연승/연패 여부, 그리고 심지어 승률과 관계없이 작동합니다. (연승/연패 여부와 승률은 고려 대상이 아니죠.)

      완벽하게 공평한 시스템에서조차 연승/연패는 특별한 일이 아니라는 것을 알아주셨으면 합니다. 긴 연승/연패를 기록할 확률은 더 낮긴 하겠지만, 10연패도 100 게임에서 거의 10% 확률로 발생합니다.

      더 자세히 말씀드리자면, 구 MMR 시스템에서는 플레이어의 MMR이 잠시 과대평가되어 몇 번의 추가적인 패배를 야기하는 경우가 있었습니다. 하지만 이 영향은 아주 약하며, 2.6 패치에 적용되는 MMR 시스템 업그레이드를 통해 완전히 사라질 것입니다. 다시 한번 말씀드리자면, 일반 게임에서의 연승/연패는 ‘일반’적입니다.

      다이아몬드 이상 랭크에서 예상보다 승리 포인트를 적게 주는 이유가 뭔가요?

      다음의 경우 (둘 다 해당하는 경우 포함) 승리 포인트 획득량이 줄어들 수 있습니다.

      • MMR이 같은 적을 상대로 랭크가 비슷한 플레이어보다 내 승률이 낮다면 내 MMR이 내 랭크의 평균 MMR보다 떨어지게 됩니다. 내 MMR이 떨어졌기 때문에 내 상대방도 내 랭크 평균보다 더 상대하기 쉽고, 그래서 더 쉬운 대전에서 승리했기 때문에 승리 포인트가 더 적게 지급되는 것입니다.

        이 상황을 해결하는 방법은 일정 기간 50% 이상의 대전에서 승리하는 것입니다. 이렇게 하면 MMR이 현재 랭크 (또는 그보다 높은) 수준으로 올라가서 더 많은 승리 포인트가 지급될 것입니다. 이렇게 되면 올라가기 위해 더 이상 50% 이상의 대전에서 승리할 필요가 없습니다. 내 MMR이 내 랭크에 있는 대부분의 플레이어의 MMR보다 훨씬 높다면 50%의 대전에서만 승리해도 아주 빨리 올라갈 수 있습니다.

        참고: 이러한 현상은 새로운 랭크로 올라갔을 때 자연스레 발생합니다. 내 MMR은 마스터 수준 플레이어치고는 높을 수 있지만, 그랜드마스터에서는 평균밖에 안 될 수도 있죠. 내 랭크가 MMR이 나와 비슷한 대부분의 플레이어와 가까워지면 승리 포인트 획득/손실량은 15 정도로 안정화됩니다.

      • 내 랭크에 있는 플레이어들의 MMR이 내 MMR보다 높아질 때도 승리 포인트 획득량이 감소합니다. 시즌 중에 내 랭크의 다른 플레이어들의 실력이 내 실력보다 빨리 올라가면 내 MMR이 내려가지 않더라도 주변 모든 플레이어들이 올라간 상태가 되죠. 이로 인해 위에 말씀드린 상황과 같은 상황이 발생하게 되며, 이 상황에 대한 해결책도 승리 포인트 획득량이 안정화되거나 그보다 더 커질 때까지 50% 이상의 대전에서 승리함으로써 내 MMR을 끌어올리는 것입니다.

      랭크와 MMR 두 개를 사용하지 않고 하나의 수치만 사용하면 안 되나요?

      이에 대한 짧은 답변은 MMR은 앞으로 일어’날’ 일에 대한 최선의 지표이고 랭크는 실제로 일어’난’ 일에 대한 보상이라는 것입니다. 저희는 플레이어가 얼마나 잘 플레이할지 예측할 수 있지만, 예상한 대로 플레이하기 전에는 랭크를 부여하지 않을 것입니다. MMR에 기반한 예상보다 플레이어가 더 많이 패배한다면, 더 낮은 랭크가 부여될 것이고, 더 높은 랭크를 획득할 자격이 있다는 것을 증명해야 더 높은 랭크를 획득할 수 있을 것입니다. 마찬가지로 플레이어가 예상보다 더 많이 승리해 MMR이 틀렸다는 것을 증명한다면, 실력에 맞는 더 높은 랭크를 획득할 수 있을 것입니다.
      • Josh_Menke_-_Rakan.jpg

        조시 멘키

        수석 게임 기획자

        조시 “Nextdoor” 멘키 님은 와일드 리프트 플레이어 활성화 팀의 수석 게임 기획자입니다. 지난 17년 동안 블리자드, 콜 오브 듀티, 헤일로를 위해 대전 검색과 랭크 경험을 만드는 일을 해왔으며 이제 와일드 리프트를 위해 최선을 다할 수 있게 되어서 행복해합니다!