Osiągnięcia w grach PlayDrop
Zadeklaruj osiągnięcia standardowe i przyrostowe z ikonami w catalogue.json, odblokowuj je i zgłaszaj postęp przez sdk.achievements.
Osiągnięcia wyznaczają cele w twojej grze, z ikoną i opisem, które gracze widzą w PlayDrop. Działają dla gości i zalogowanych graczy.
Zadeklaruj osiągnięcia
{
"achievements": [
{ "key": "first-win", "displayName": "First flag", "description": "Reach the flag once",
"kind": "STANDARD", "icon": "achievements/first-win.png" },
{ "key": "collector", "displayName": "Collector", "description": "Collect 100 stars",
"kind": "INCREMENTAL", "maxProgress": 100, "icon": "achievements/collector.png" },
{ "key": "secret-room", "displayName": "Secret room", "description": "Find the hidden room",
"kind": "STANDARD", "hidden": true, "icon": "achievements/secret-room.png" }
]
}keyma ten sam format co klucze rankingów.kindtoSTANDARD(odblokowywane raz) lubINCREMENTAL(odblokowywane, gdy postęp osiągniemaxProgress, czyli dodatnią liczbę całkowitą).iconto plik PNG w pakiecie. Użyj wyraźnego, kwadratowego obrazu, który jest czytelny w małych rozmiarach.hidden: trueutrzymuje nazwę i opis w tajemnicy aż do odblokowania.
Opublikowanych kluczy nie można usunąć, a kind, maxProgress i hidden nie mogą się zmienić. Wycofaj osiągnięcie za pomocą "status": "RETIRED".
Odblokowuj osiągnięcia i zgłaszaj postęp
await sdk.achievements.unlock("first-win");
await sdk.achievements.setProgressAtLeast("collector", starsCollected);
const { achievements } = await sdk.achievements.list();
const { achievement } = await sdk.achievements.get("collector");setProgressAtLeastprzyjmuje dotychczasową łączną wartość, nigdy przyrost. Postęp tylko rośnie, jest ograniczony domaxProgressi po osiągnięciu tego progu odblokowuje osiągnięcie.- Oba wywołania zwracają
{ accepted, changed, unlocked, progress, unlockedAt, achievement };changedma wartość false, gdy nic nowego się nie wydarzyło, więc własne powiadomienie pokażesz tylko raz. list({ includeHiddenDefinitions: true, includeRetired: true })uwzględnia ukryte i wycofane definicje.
Odblokowuj osiągnięcia tylko podczas prawdziwej gry, nigdy w podglądach ani przechwytywaniach. Bez żadnej sesji gracza wywołania kończą się powodzeniem, ale nic nie zostaje zapisane.
Dobre osiągnięcia
Łącz wczesne osiągnięcia, które uczą gry, z celami długoterminowymi. Nazywaj akcję, a nie nagrodę: „Wygraj bez otrzymania obrażeń” mówi, co trzeba zrobić. Tuzin przemyślanych osiągnięć jest lepszy niż sto błahych.