Mark
Prijzen Aanmelden
← Alle artikelen

Vinden in welke levels spelers vastlopen

Mike Dalton Door Mike Dalton ·

Een rij leveltegels waarvan er één een waarschuwingsbord heeft, naast het Game Stats AI-logo, met een pijl naar een dashboardkaart met een staafgrafiek met één korte staaf.

Het voltooiingspercentage van een level is het aandeel van de pogingen op dat level dat spelers afmaken. Een level met een veel lager voltooiingspercentage dan de levels eromheen is waar spelers vastlopen, en vaak waar ze stoppen met spelen.

Om te laten zien hoe dat eruitziet, hebben we een voorbeeldpuzzelgame opgezet met acht levels en 120 spelers verdeeld over twee versies, 1.0.0 en 1.1.0. In versie 1.0.0 is Level 5 veel moeilijker dan de levels eromheen. Versie 1.1.0 maakt het makkelijker.

Stap 1: kies een token

Progressie-events kunnen uit de gameclient komen of van een gameserver die je zelf beheert. Gebruik een server-token als een server ze verstuurt, of een client-token als de gameclient dat doet. Maak het token aan bij Instellingen > API-tokens, waar je ook je account-id vindt.

De voorbeelden hieronder gebruiken curl met beide waarden in omgevingsvariabelen:

export GAMESTATS_TOKEN=your_api_token
export ACCOUNT_ID=your_account_id

Stap 2: verstuur een event wanneer een level begint

Stuur elke keer dat een speler een level begint een started-event naar het endpoint voor progressie-events. Elke start is één poging, dus een speler die een level opnieuw begint, verstuurt nog een started-event:

curl -i -X POST "https://gamestats.ai/api/v1/accounts/$ACCOUNT_ID/progression_events" \
  -H "Authorization: Bearer $GAMESTATS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "player_username": "player_3e8",
    "version_name": "1.0.0",
    "progression_type_name": "level",
    "progression_name": "Level 5",
    "progression_milestone_type_name": "started",
    "progression_milestone_name": "started",
    "started_at": "2026-10-02T14:03:10Z",
    "occurred_at": "2026-10-02T14:03:10Z",
    "time_elapsed": 0
  }'

progression_type_name groepeert de progressies die je wilt vergelijken, hier elk level. progression_name is het level zelf, en dat is de naam die het rapport toont. Het rapport vergelijkt mijlpaaltypes, dus gebruik voor elk level dezelfde twee, started en finished; progression_milestone_name mag de naam van het type herhalen. started_at markeert het begin van een nieuwe poging.

Een 201-antwoord betekent dat het event is geaccepteerd. Spelers, versies, levels en mijlpaaltypes worden aangemaakt bij het eerste gebruik, dus je hoeft niets vooraf te registreren.

Stap 3: verstuur een event wanneer een level is uitgespeeld

Wanneer de speler het level haalt, stuur je een finished-event voor dezelfde speler en hetzelfde level, zonder started_at:

curl -i -X POST "https://gamestats.ai/api/v1/accounts/$ACCOUNT_ID/progression_events" \
  -H "Authorization: Bearer $GAMESTATS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "player_username": "player_3e8",
    "version_name": "1.0.0",
    "progression_type_name": "level",
    "progression_name": "Level 5",
    "progression_milestone_type_name": "finished",
    "progression_milestone_name": "finished",
    "occurred_at": "2026-10-02T14:05:31Z",
    "time_elapsed": 141
  }'

Game Stats AI koppelt het event aan de meest recente poging van die speler op het level. time_elapsed is de tijd sinds het begin van de poging, hier 141 seconden. Gebruik elke eenheid die je wilt, zolang alle events dezelfde gebruiken.

Verstuur niets wanneer een speler een level verliest of opgeeft. Een poging zonder finished-event telt als niet voltooid.

Stap 4: maak een voortgangsrapport

Kies bij Rapporten > Nieuw rapport voor Voortgangsrapport, geef het een label en kies level bij Type, started bij Van en finished bij Tot:

Het formulier van het voortgangsrapport met het label Level completion, het type level, Van op started en Tot op finished.

Het rapport toont één rij per level, gesorteerd op naam zodat Level 2 vóór Level 10 komt, met drie waarden:

Waarde Betekenis
Completion Rate Het aandeel pogingen dat finished bereikte
Average Time Elapsed De gemiddelde tijd tussen started en finished voor voltooide pogingen
# of Instances Het aantal pogingen, inclusief nieuwe pogingen

Stap 5: vind het level waar spelers vastlopen

Kies versie 1.0.0 in de filters van het rapport. De grafiek toont het voltooiingspercentage van elk level:

Een voortgangsrapport voor versie 1.0.0. Level 5 heeft een voltooiingspercentage van 17%, terwijl de andere levels tussen 55% en 94% liggen.

In de voorbeeldgame valt Level 5 op drie manieren op:

  • Het voltooiingspercentage is 17%, terwijl alle andere levels tussen 55% en 94% liggen.
  • Het heeft 99 pogingen, meer dan elk ander level, omdat spelers het opnieuw probeerden.
  • Op Level 6 werden maar 19 pogingen gedaan. De meeste spelers die Level 5 bereikten, kwamen er nooit voorbij.

Voltooide pogingen duurden ook gemiddeld 141 seconden, het langst van alle levels.

Stap 6: controleer de aanpassing in de volgende versie

Versie 1.1.0 maakte Level 5 makkelijker. Kies 1.1.0 in de filters om alleen de pogingen in die versie te zien:

Hetzelfde rapport voor versie 1.1.0. Level 5 heeft een voltooiingspercentage van 54%, en op Level 6 werden 44 pogingen gedaan.

Het voltooiingspercentage van Level 5 steeg van 17% naar 54%, en het aantal pogingen op Level 6 steeg van 19 naar 44, dus meer spelers bereiken nu de rest van de game.

Elke poging hoort bij de versie in het started-event. Selecteer meer dan één versie in de filters om ze samen te zien.

Lees verder

© 2026 Rowhome Labs, LLC