리더보드는 준비된 순위 시스템입니다. 라운드가 있는 보드와 순위, 점수에 따른 보상. 점수, 순위, 보상은 서버가 계산합니다. 보드는 대시보드에서 설정하고, 게임은 결과를 제출하고 순위를 보여 줍니다.
플레이어가 보는 것
- 탭으로 된 보드: 각 보드에 플레이어의 점수, 순위, 라운드 종료까지의 시간이 나오는 카드가 있습니다.
- 상위 플레이어, 플레이어 강조 표시, 상위 3명 메달.
- 창으로 보는 순위 보상과 점수 보상. 점수 보상은 그 자리에서 받습니다.
- 지난 라운드 보상 창: 라운드가 끝나면 "받기" 버튼과 함께 저절로 뜹니다.
- 게임에 점수를 얻는 모드가 있으면 카드의 "플레이" 버튼.
- 보상이 기다릴 때 탭의 배지.
보드의 구조
- 라운드. 보드는 주기적으로(예: 매주) 반복되거나, 일정에 따라 돌거나, 라운드 체인으로 진행됩니다.
- 점수 계산 방식. 모든 결과의 합, 최고 결과, 최고 기록 시간, 마지막 값.
- 순위 보상: 라운드가 끝날 때 순위 구간별로. 1위, 2
3위, 410위 등. - 점수 보상: 라운드 안의 마일스톤. "이번 주에 1000점 얻기".
점수는 어디서 오나
점수는 보드에 설정한 출처에서 옵니다:
- 게임의 결과(
ClientScore). 게임이 숫자를 보냅니다. 예를 들어 달리기 점수. ⚠ 출처에 한도를 거세요. 제출당 최대치, 하루 최대치, 제출 사이의 간격. 이 출처가 없으면 보드는 게임의 숫자를 아예 받지 않습니다. - 서버가 직접 세는 이벤트. 예를 들어 구매나 끝낸 퀘스트. 이것은 게임에서 조작할 수 없습니다.
단계 01프로젝트에 리더보드 추가하기
AI 코더에게 말하세요: "최고 점수 기준 주간 리더보드를 추가해 줘". 준비된 시스템을 설치하고 게임이 결과를 제출하게 합니다. 대시보드에서 보드가 하나라도 켜지면 탭이 플레이어에게 보입니다.
단계 02보드 설정하기
대시보드를 열고 프로젝트를 고른 뒤 라이브 운영 → v2 → 리더보드로 가세요.
- 리더보드 추가를 누르고 ID를 정하세요. 예:
weekly_score. - 라운드 일정과 점수 계산 방식을 고르세요.
- 점수 출처를 추가하세요. 게임이 점수를 제출한다면 한도를 건
ClientScore를 쓰세요. - 순위 보상과, 원하면 점수 보상을 정하세요.
- 저장을 누르세요.
페이지의 AI 버튼은 어시스턴트를 엽니다. 보드를 말로 설명하면 변경을 제안하고, 확인한 뒤 저장하면 됩니다.
단계 03테스트하고 출시하기
테스트 버전에서 결과를 몇 번 제출하고 순위가 바뀌는 것을 보세요. 설정은 별도 작업으로 라이브 앱에 보내집니다. 공개와 링크를 참고하세요.
개발자용
리더보드는 @idosgames/core의 client.leaderboard로 작동합니다.
// 결과 제출: 서버가 계산 규칙과 한도를 적용합니다
const sub = await client.leaderboard.submitScore('weekly_score', 150)
if (!sub.ok) return showError(sub.error)
sub.data.NewScore // 계산 후의 점수
// 보드가 여러 개인 화면: 상위 목록과 플레이어 진행도를 한 번의 요청으로
const overview = await client.leaderboard.getOverviewBatch(['weekly_score', 'season_pvp'])
// 기다리는 모든 것 받기: 순위 보상과 점수 보상
await client.leaderboard.claimAllRewardsBatch(['weekly_score', 'season_pvp'])- SDK는 0 이하의 점수를 요청 없이 스스로 거부합니다.
- 새 점수는 응답의
NewScore에서 가져오세요. "최고 결과" 방식에서는 더 나쁜 결과가 점수를 바꾸지 않습니다. - 친구 순위는
getFriendsLeaderboard(leaderboardID)입니다.
모든 필드는 SDK의 MCP 서버가 제공하는 leaderboard-system 스킬에 설명되어 있습니다.
자주 묻는 질문
플레이어가 게임에서 엄청난 점수를 보내 속일 수 있나요?
보드를 제대로 설정하면 안 됩니다. 보드는 ClientScore 출처를 통해서만 게임의 숫자를 받고, 이 출처에는 한도가 있습니다. 제출당 최대치, 하루 최대치, 제출 사이의 간격.
게임에 리더보드가 몇 개까지 있을 수 있나요?
여러 개입니다. 켜진 보드마다 리더보드 화면의 별도 탭이 되며 자체 라운드와 보상이 있습니다.
친구 리더보드가 있나요?
네. SDK가 같은 보드를 플레이어의 친구로 걸러서 돌려줍니다.
함께 보기
- 게임 내 퀘스트: 일일 과제와 보상iDos Games의 준비된 퀘스트가 작동하는 방식: 일일, 주간, 1회성 과제, 상자가 있는 포인트 트랙, 과제 묶음 보너스, 그리고 대시보드에서 설정하는 방법.
- 게임 내 상점: 진열대, 상품, 가격iDos Games의 준비된 상점이 작동하는 방식: 상품이 바뀌는 진열대, 게임 재화나 실제 돈으로 매기는 가격, 무료 선물, 구매 한도, 그리고 대시보드에서 코드 없이 설정하는 방법.
- 새 프로젝트에 포함된 것iDos Games의 모든 새 프로젝트는 로그인, 로비, 준비된 시스템 여섯 개로 시작합니다. 상점, 리더보드, 이벤트, 멀티플레이 같은 시스템은 앱에 필요할 때 추가됩니다.
나만의 게임을 만드세요
아이디어를 한 문장으로 설명하면 AI 코더가 만들어 주고, 게임은 고유 링크로 바로 공개됩니다.