Topplister for PlayDrop-spill
Deklarer topplister i catalogue.json, send poengsummer med sdk.leaderboards og vis toppen og spillerens naboer. Poengtyper, grenser og oppdateringsregler.
Topplister gir spillerne en grunn til å spille igjen og en plassering å dele. PlayDrop lagrer hver spillers beste poengsum per toppliste og viser den på spillet.
Deklarer en toppliste
Legg den til i appen i catalogue.json:
{
"leaderboards": [
{ "key": "high-score", "displayName": "High score", "description": "Most points in one run",
"scoreType": "INTEGER", "sort": "DESC", "unitLabel": "pts" },
{ "key": "best-time", "displayName": "Fastest run", "description": "Time to reach the flag",
"scoreType": "TIME_MS", "sort": "ASC" }
]
}key: 3 til 64 tegn, som begynner med en liten bokstav, deretter små bokstaver, sifre,_,.eller-.scoreTypeogsortkommer i to par:INTEGERmedDESC(høyest vinner, poengsummer på 0 eller mer) ellerTIME_MSmedASC(lavest vinner, positive millisekunder).unitLabeler valgfri visningstekst.
Når en nøkkel er publisert, kan den ikke fjernes, og scoreType og sort kan ikke endres. Slutt å bruke en toppliste med "status": "RETIRED". Topplister krever en pakke.
Send inn og les poengsummer
const result = await sdk.leaderboards.submitScore("high-score", 1200);
// { accepted, improved, previousBestScore, bestScore, rank, previousRank, bestScoreAt, leaderboard }
if (result.improved) showNewBest(result.bestScore, result.rank);
const { leaderboard } = await sdk.leaderboards.get("high-score", { top: 10, aroundMe: 3 });
// leaderboard: { definition, top, player, playerEntry, aroundPlayer }
const { leaderboards } = await sdk.leaderboards.list();- Poengsummer er sikre heltall. Bare en bedre poengsum erstatter rekorden.
topgodtar 1 til 100 oppføringer ogaroundMe1 til 20 på hver side av spilleren.list({ includeRetired: true })returnerer også avviklede topplister.
Send inn ved slutten av en runde, ikke i hvert bilde, og bare i play-fasen. Håndter avviste kall som ethvert nettverkskall; hold spillet spillbart.
Gjester og uten nett
Du kan sende inn uten å sjekke innlogging. Uten noen spillerøkt i det hele tatt fullføres en innsending uten å bli lagret. Verter som oppgir støtte for enhetsdata, som PlayDrop-apper som fungerer uten nett, tar vare på en poengsum oppnådd uten nett og synkroniserer den senere; når de leser uten nett, viser de bare spillerens egen rekord, uten plassering. Andre steder krever en innsending nettverkstilkobling.
Hva topplister ikke gjør
Det finnes ingen regioner, planlagte nullstillinger, sesonger eller automatiske ukentlige premier i SDK-en. For en ukentlig toppliste bygger du uken inn i ditt eget design, for eksempel med en ny nøkkel per sesong deklarert i en ny versjon.
Relatert: prestasjoner, skylagring, dele en poengsum.