🎮 유니티 게임 서비스와 리텐션 개념

-
유니티 게임 서비스는 약 30가지의 다양한 서비스를 통합하여 라이브 게임 운영을 위한 플랫폼을 제공하며, 멀티플레이어 백엔드와 인게이지먼트를 위한 기능이 포함된다.
-
리텐션은 플레이어가 게임에 계속 참여하는 정도를 측정하며, 높은 리텐션율은 수익화 기회를 증가시킨다.
-
효과적인 리텐션을 위해서는 정기적인 콘텐츠 업데이트가 중요하며, 다양한 플레이어 유형에 맞춘 수익화 전략이 필요하다.
-
라이브옵스는 게임을 원격으로 수정하고 콘텐츠를 관리하는 시스템으로, 지속적인 데이터 수집과 피드백을 통해 게임을 개선하는 순환 과정이다.
🎮 배틀패스 구축과 유저 참여 유도

-
배틀패스는 무료 티어와 유료 티어로 구성되며, 게임을 플레이하거나 도전 과제를 완료하면 경험치를 얻어 다양한 티어를 잠금 해제할 수 있다.
-
많은 배틀패스는 시간 제한이 있으며, 시즌별로 업데이트되는 형태로 운영된다.
-
배틀패스는 유저가 직접 보상을 수령하는 구조로 되어 있으며, 이는 유저가 게임을 지속적으로 플레이하도록 동기를 부여하는 효과가 있다.
-
서버 권한을 통해 클라이언트를 신뢰하지 않고 서버에서 모든 결정을 내릴 수 있으며, 새로운 클라이언트 빌드 없이 업데이트가 가능하다.
-
A 플레이어 여정 예시로, 유료 티어를 구매할 경우 이전 티어에서 얻은 보상을 제공해야 하며, 이 과정이 유저의 참여를 촉진하는 역할을 한다.
🛠️ 배틀패스 구현 및 초기화 작업

-
배틀패스를 구축하기 위해 다섯 가지 솔루션을 활용하고, 각 서비스의 연결 관계를 설명하고 있다.
-
초기화 단계에서는 패키지 설치, 인증 과정 진행, 아날리틱스 활성화 및 CLI 환경 구성을 포함한다.
-
사용자 인증은 게임 시작 시 익명 로그인을 통해 이루어져, 플레이어 아이디를 할당하여 동일한 경험을 제공한다.
-
아날리틱스 패키지를 설치하면 일별 신규 사용자 및 리텐션율과 같은 주요 데이터를 손쉽게 추적할 수 있다.
-
유니티 게임 서비스의 UGS CLI 설치는 반복 작업에서 발생할 수 있는 휴먼 에러를 줄이고 설정 정보의 변경 사항을 추적하는 데 도움이 된다.
-
배틀패스를 구축하기 위해 다섯 가지 솔루션을 활용하며, 각 서비스의 연결 관계를 시각적으로 이해할 수 있는 다이어그램을 제공한다.
-
첫 번째 단계는 초기화로, 패키지를 프로젝트에 설치하고 인증 과정을 진행해야 하며, 아날리틱스를 통한 사용자 행동 분석을 활성화한다.
-
유니티 인증 서비스를 통해 플레이어의 인증 정보를 생성하고 로그인하며, 익명 로그인 방법을 사용하여 플레이어 아이디를 할당할 수 있다.
-
아날리틱스 패키지를 설치하여 플레이어 행동을 추적하고, 데이터 수집을 위한 스타트 데이터 컬렉션 함수를 호출함으로써 기본적인 매트릭을 추적할 수 있다.
-
설정 정보 파일을 코드 저장소에 커밋함으로써 개발 과정에서 변경 사항을 추적하고, CI/CD 환경에서 업데이트할 수 있다.
-
배틀패스의 각 티어별 획득 조건과 보상 정보를 구성하는 것이 필수적이다.
-
리모트 컨피그를 통해 설정 정보를 실시간으로 제공함으로써, 게임 클라이언트가 시작될 때 이를 가져와 적용할 수 있다.
-
JSON 객체로 경험치와 보상 정보를 저장하고, 보상 아이템을 GUID(UUID)로 입력하면 다양한 참조가 가능하다.
-
티어별 구성 정보에서 보상이 해제되는 시점과 같은 정보는 관리되며, 모든 보상 정보가 포함된 목록을 리모트 컨피그로 구성해야 한다.
-
새로운 아이템이 추가될 경우, 리소스 로드 정보를 기입하여 클라이언트가 동적으로 로드하여 사용할 수 있다.
-
유니티는 클라우드 콘텐츠 딜리버리(CDN 배포 시스템)을 제공하여 게임 내 에셋을 클라우드에서 배포하고, 클라이언트가 자동으로 에셋을 가져오도록 한다.
-
이 시스템은 새로운 클라이언트를 배포하지 않고도 콘텐츠를 실시간으로 업데이트할 수 있는 기능을 제공한다.
-
플레이어의 진행 상황을 저장하고 추적하는 방법으로 클라우드 세이브 서비스를 활용할 수 있다.
-
클라우드 세이브는 각 플레이어의 상태를 기록하며, 주요 정보를 저장하고 로드하는 데이터베이스 역할을 한다.
-
게임 내에서 플레이어의 경험치, 진행 상황, 청구 가능한 보상을 트래킹하는 시스템이 존재한다.
-
플레이어는 배틀패스를 통해 각 티어를 잠금 해제하고, 이에 대한 보상을 청구할 수 있는 기회를 가지지만, 보상을 실제로 요청하기 전까지 소유하지 않은 상태로 유지된다.
-
이 방법은 플레이어가 배틀패스를 확인하고 상호작용하게 만들어 참여도를 높일 수 있다.
-
청구된 보상은 보상 가능한 리스트에서 제거되어 청구된 보상 리스트로 이동하며, 이는 중복 청구를 방지하는 데 도움이 된다.
-
청구가 완료되면 보상은 플레이어의 인벤토리 목록으로도 이동할 수 있다.
🔒 플레이어 데이터 보호 및 배틀패스 관리 방법

-
서버 권한 환경을 통해 플레이어 데이터 보호를 위해 게임 클라이언트의 쓰기 접근을 차단해야 하며, 클라우드 코드를 이용해 데이터 변경을 관리한다.
-
게임 서버는 매치 결과를 제출하여 경험치를 계산하고, 플레이어가 아닌 게임 서버만 호출할 수 있는 엔드포인트를 설정하는 것이 필수적이다.
-
경험치가 변경되면 즉시 배틀패스의 레벨 및 보상 목록을 업데이트하므로, 클라우드 코드의 트리거 기능을 활용하여 자동으로 상태를 재계산하는 시스템을 구성할 수 있다.
-
클라이언트를 신뢰할 수 없기에 보상을 청구할 때는 백엔드 API를 통해 진행하여, 보상이 청구 가능한지 확인한 후 인벤토리에 추가하는 방법을 사용한다.
-
프리미엄 배틀패스를 구매할 경우, 클라우드 코드에서 구매 처리를 하며, 해당 플레이어의 상태 정보를 업데이트하고 청구 가능한 보상 목록을 설정하는 과정을 수행한다.
📊 A/B 테스트 및 업데이트 방법

-
실험을 통해 다양한 설정을 측정하는 것이 중요하며, 데이터 기반의 접근이 필요하다.
-
리모트 컨피그를 활용하여 기존 배틀패스 티어에 새로운 티어를 추가할 수 있으며, 100번째 티어까지 구성된 데이터에서 101번째 티어를 추가하는 방식으로 업데이트가 가능하다.
-
A/B 테스트는 두 가지 구성(A, B)을 생성하고 플레이어를 무작위로 할당하여, 각 변형의 결과를 비교함으로써 인사이트를 얻는 방식으로 진행된다.
-
타겟 설정에서는 전체 사용자, 특정 세그먼트, 그리고 사용자 행동에 따라 매우 구체적인 오디언스를 설정할 수 있으며, 여러 메타데이터를 기준으로 할 수 있다.
-
리텐션 메트릭을 포함해 다양한 메트릭을 통해 실험 결과를 평가하여, 더 나은 성과를 보인 설정을 모든 플레이어에게 확대 적용할 수 있다.