리더보드
리더보드는 각 플레이어의 순위와 최고 점수를 저장하고 관리하는 기능을 제공하는 모듈입니다.
리더보드를 생성하려면 ProjectSettings → Zepeto → ZepetoLeaderboard 메뉴에서 [리더보드 정보 가져오기] 버튼을 선택하세요.

[리더보드 추가]를 선택하여 새 리더보드를 추가하세요.
이미 존재하는 리더보드가 있다면, 설정 화면에 리더보드가 나타납니다.

[리더보드 추가] 버튼을 선택하면 아래에 표시된 팝업 창이 나타납니다. 각 매개변수 값을 조정할 수 있습니다.

매개변수 | 설명 |
---|---|
이름 | 리더보드 이름 |
업데이트 규칙 | 점수 업데이트 규칙 |
최대 점수 | 사용자의 최고 점수를 기록합니다. |
최소 점수 | 사용자의 최저 점수를 기록합니다. |
점수 누적 | 사용자의 점수를 추가하고 기록으로 저장합니다. |
ResetInfo(s) | 점수가 초기화될 기간을 설정할 수 있습니다. - 이는 리더보드가 매 시즌 업데이트되어야 할 때 유용합니다. - 점수는 기본적으로 초기화되지 않지만, 초기화 기간(매월, 매주, 매일)을 설정하여 조정할 수 있습니다. |

점수 초기화 규칙은 다음과 같습니다:
기간 | 설명 |
---|---|
없음 | 점수가 초기화되지 않습니다 |
일 | 점수는 설정된 시간에 매일 초기화됩니다 (예: 일일 순위) |
주 | 점수는 설정된 날짜와 시간에 매주 초기화됩니다 (예: 주간 순위) |
월 | 점수는 설정된 날짜와 시간에 매월 초기화됩니다 (예: 월간 순위; 최대 일 값은 31이지만, 해당 월에 31일이 없으면 자동으로 해당 월의 마지막 날로 조정됩니다) |
ZEPETOScript와 리더보드를 사용하려면 리더보드 ID 정보가 필요합니다.
리더보드 정보를 액세스하려면 설정으로 이동할 수 있습니다(프로젝트 설정 메뉴에서 편집 아래 Zepeto → Zepeto 리더보드 → 편집으로 이동) 또는 ZEPETOScript API에서 로드할 수 있습니다.
📘 다음 가이드를 참조하십시오. [리더보드 세부정보 검색]


- 재설정 규칙이 설정되면 리더보드를 수정할 수 없습니다.
- 재설정 규칙을 변경하려면 새 리더보드를 만들어야 합니다.
- 재설정 시간은 UTC+0를 기준으로 합니다. 오프셋이 제공되어 향후 시간대를 변경할 수 있습니다.
LeaderboardAPI.SetScore()는 사용자의 점수를 리더보드에 기록하는 API입니다. 리더보드 ID, 점수 값, 완료 포인트 및 오류 포인트가 인수로 전달됩니다.
점수에 대한 사용자 정보는 자동으로 저장됩니다.
다음은 LeaderboardAPI.SetScore 함수를 로드하는 예입니다.
다음은 사용자의 점수를 리더보드로 가져오는 코드 템플릿입니다.

LeaderboardAPI.GetRangeRank() 함수를 사용하여 특정 범위의 순위 세부정보를 로드합니다.
리더보드 ID, 시작 순위, 마지막 순위, 리셋 규칙 및 지난 시즌의 순위 정보를 검색하기 위한 불리언 값과 완료 시점 및 오류 발생 시점의 콜백 함수가 인수로 전달됩니다.
순위 정보를 문의하는 사용자 정보가 자동으로 입력되며, 한 번의 문의로 최대 100개의 순위 정보를 처리할 수 있습니다 (예: 1로 페이지 매김100, 101200 형식으로 구현)
❗️ 주의 한 번에 100개 이상의 데이터가 로드되면 API 부하 문제 및 속도 제한으로 인해 제대로 작동하지 않을 수 있습니다.
LeaderboardAPI.GetRangeRank() 함수를 호출하는 예제는 다음과 같습니다:
다음 코드는 특정 범위의 순위 정보를 로드하는 예제입니다. OnResult에서 Member 값을 사용하여 프로필 사진을 로드할 수 있습니다.
📘 다음 가이드를 참조하십시오. [유저 정보]

LeaderboardAPI.GetAllLeaderboards 함수를 사용하여 지정된 월드의 모든 리더보드 정보를 로드합니다. 완료 시점부터 오류 발생 시점까지의 콜백 함수가 인수로 전달됩니다.
LeaderboardAPI.GetAllLeaderboards 함수를 로드하는 예는 다음과 같습니다:
다음은 전체 리더보드 정보를 로드하는 예입니다.

LeaderboardAPI.GetLeaderboards 함수를 사용하여 특정 리더보드 정보를 로드합니다. 리더보드 ID, 완료 시간, 오류 발생 시간에 대한 콜백 함수가 인수로 전달됩니다.
LeaderboardAPI.GetLeaderboard 함수를 로드하는 예는 다음과 같습니다:
다음은 특정 리더보드 정보를 로드하는 예입니다.

- 다음은 공식 ZEPETO 월드 슬라임 파티에 적용된 리더보드의 예입니다.
- 특정 범위 내에서 순위를 가져오기 위해 API 호출을 설정하고 읽고 활용함으로써 UI에서 다음과 같이 구조화할 수 있습니다.
