현재 Unity로 만든 게임에는 숨겨진 하드모드가 있다.
특정 웨이브 이상을 클리어하면 메인메뉴에 하드모드 진입 버튼이 드러나는 식으로 구성하였다.
오늘 해결해야 하는 문제는 랭킹을 보여주는 리더보드가 하나 뿐이라는 점이다.
즉, 하드모드에 진입한 유저간의 경쟁이 불가능하고, 리더보드 랭킹은 노말모드 점수와 하드모드 점수가 섞이는 문제가 생긴다.
다행히 GPGS에서 리더보드를 2개 만드는 것은 아주 간단하다.

기존 리더 보드를 만들 듯이 하나 더 만들어주면 끝. 그리고 리소스 보기를 눌러서 유니티 리소스를 붙여 넣는 곳을 업데이트 한다.

어려운 문제는 게임종료 후 점수 관리이다.
현재 유니티에서 게임씬에서 게임 플레이 후 게임오버씬으로 넘어가도록 해놓은 상태이고,
이 게임오버씬은 노말/하드 모드씬이 동일하게 사용 중이다.
게임오버씬은 노말 또는 하드모드의 게임씬에서 얻은 점수를 구글 리더보드에 보내는 방식인데,
이 부분부터 게임 모드별로 다른 리더보드에 보내도록 관리해야한다.
GPT에게 물어본 결과 아래와 같은 방식으로 진행했다.


PlayerPrefs에 각씬에서 LastMode 값을 저장하고,
게임오버씬에서 LastMode값을 확인한 후에 점수 및 최고점수를 모드별로 분리하여 저장/관리한다.
Lastmode값에 따라 위에서 만든 리더보드 중 어디로 보낼 지 정하여 점수를 전송한다.
생각보다 아주 간단히 끝났다.
오히려 하드모드 도입에 따른 재시작 버튼이나, 리더보드 열기 등 짜잘한 기능을
수정하는 것이 더 오래걸렸다. 물론 GPT에게 대부분 의존하기는 했지만..
여튼 이렇게 저렇게 리더보드 2개 만들기 끝!
'DOT Defense' 카테고리의 다른 글
| AI(Chat GPT)로 게임 코딩 시 기억해야 할 팁 (0) | 2025.04.23 |
|---|---|
| 안드로이드 앱개발 플레이스토어 리뷰 요청 팝업 띄우기 (1) | 2025.04.20 |
| GPGS 업적 시스템 만들기 (0) | 2025.04.06 |
| 3. Unity 구글 플레이 리더보드 안열리는 문제 (1) | 2025.04.05 |
| 2. 스킬 업그레이드가 바로 반영되지 않은 이유 (0) | 2025.04.04 |