Skip to main content

리더보드를 사용한 수동 계층

이 튜토리얼에서는 리더보드 서비스 내의 몇 가지 속성을 활용하여 플레이어를 위한 계층 시스템을 만드는 방법을 배웁니다. 서비스 속성에 기반한 수동 계층 시스템을 만드는 방법을 이해하기 위해 예시로 시작해 봅시다. 좀비를 처치하는 게임이 있다고 상상해 보세요. 이 게임에서 플레이어는 제한된 시간 안에 가능한 한 많은 점수를 얻어야 합니다. 더 많은 점수를 얻기 위해 다양한 전략을 사용할 수 있으며, 데미지를 받지 않는 것에도 점수가 부여됩니다. 이 예시에서 플레이어는 매치별 성과에 따라 경험치를 얻습니다. 최상위 플레이어는 “Saviors” 랭크로 식별하는 계층 시스템을 만들고, 나머지 플레이어는 Bronze, Silver, Gold, Platinum, Diamond와 같은 여러 랭크로 분포시키려 합니다.

리더보드 만들기

첫 번째 단계는 플레이어 순위를 매기기 위한 주요 요소를 포함하는 리더보드 정의를 만드는 것입니다. 좀비 게임에서는 여러 점수를 사용할 것입니다. 다음 예시는 C# SDK를 사용하여 리더보드 정의를 만드는 방법을 보여줍니다.
여기서는 세 개의 서로 다른 점수를 가진 리더보드가 정의되어 있습니다. 리더보드를 만들거나 동점 처리가 어떻게 작동하는지에 대한 자세한 내용은 다음 가이드를 확인하세요: 리더보드 더 활용하기.

수동 계층 구분

리더보드가 제대로 생성되었으므로 이제 계층을 어떻게 만들지 정의할 수 있습니다. 먼저 플레이어 집단을 어떻게 나눌지 정의해야 합니다. 일반적으로 랭크가 높아질수록 플레이어 수가 줄어듭니다. 이러한 개념을 바탕으로 계층을 다음과 같이 정의하겠습니다.
  • Bronze: 플레이어의 0 - 35%.
  • Silver: 플레이어의 35% - 60%.
  • Gold: 플레이어의 60% - 80%.
  • Platinum: 플레이어의 80% - 90%.
  • Diamond: 플레이어의 90% - 99.5%.
  • Saviors: 상위 0.05%의 플레이어.
이 과정은 계층 시스템에 대한 수동 접근 방식이므로, 플레이어의 분포는 개발자가 적절하다고 생각하는 방식으로 저장해야 합니다. 데이터를 검색하기 위해서는 다음 예시를 사용합니다.
이 예시는 리더보드에서 데이터를 검색하는 여러 방법 중 하나입니다. 응답의 Result 속성에서 리더보드에 현재 몇 개의 행이 있는지 알려주는 EntryCount 속성을 확인할 수 있습니다. 이 수치는 리더보드의 최대 행 수를 나타내는 SizeLimit과는 다릅니다. 플레이어의 계층을 결정하려면, 리더보드 내 위치를 EntryCount 속성으로 나누어 정의된 계층 중 어디에 속하는지 확인합니다. 간단한 예시:
  • 하위 플레이어: 10,000명 중 8500위에 있는 플레이어는 인구의 85%에 속하며 Bronze 계층에 해당합니다.
  • 중간 플레이어: 10,000명 중 3500위에 있는 플레이어는 상위 35% 내에 있으며 Gold 계층에 해당합니다.
  • 상위 플레이어: 10,000명 중 50위에 있는 플레이어는 상위 0.5% 내에 있어 “Savior”가 됩니다.

결론

이 튜토리얼에서 우리는 다음 작업을 수행하는 방법을 배웠습니다.
  • 리더보드 만들기.
  • 리더보드에서 데이터를 쿼리하는 방법 학습.
  • 백분위를 기반으로 한 수동 계층 분포 만드는 방법 학습.
  • 플레이어의 위치 결과를 실제 계층에 매핑하는 방법 학습.

함께 보기

마지막 수정일 2026년 8월 13일