Ga naar inhoud

Voorbereiding Analytics Systeem

Doelstelling

Wij willen analytics over onze spelers verzamelen zodat wij een beter begrip kunnen krijgen van hoe zij het spel spelen, en daarmee hoe wij het spel kunnen verbeteren.

Ook zal het analytics systeem los van het spel zelf zijn. Dus er mogen niet grote verschillen tussen nieuwe versies van de server en client zijn, anders zou bijvoorbeeld een oudere versie van het spel niet analytics kunnen versturen.


API Best Practices

JSON

Het is belangrijk om één gestandaardiseerde vorm van communicatie te hebben. Anders word het verwarrend en kan het gebeuren dat oude clients niet werken met de nieuwste server.

Http Methods

In plaats van veel losse pagina’s te hebben voor elke actie is het beter om voor een deel van het pad http methoden gebruiken. Zoals is gestandaardiseerd op het web. Daardoor begrijpen andere systemen, en de libraries gebruikt voor de analytics, beter wat je wilt doen.

Hiermee volgt dan dat de pagina pad een resource moet zijn zoals /orders, in plaats van een actie zoals /get-orders.

Error Handling

Het is belangrijk om errors op de server gracieus op te vangen, zodat de client niet een onverwachte antwoord ontvangt met mogelijk informatie dat de client niet mag weten. Ook als de client foutieve informatie stuurt moet niet de gehele server plat vallen. Hiermee moeten ook gestandaardiseerde http status codes gebruikt worden, zodat elke onderdeel in de communicatie begrijpt waar het over gaat.

Versioning

Het is beter om de apis achter versie nummers te zetten. Dan als je een nieuwere endpoint wilt maken, die compleet anders in elkaar zit, kunnen de oude endpoints nog gebruikt worden door oudere clients.

Dit is dan in de vorm van /v#/*/*.


Requirements Analytics Systeem

Welke informatie wij willen verzamelen over ons spel.

Categorieën

Het is belangrijk om niet informatie te veel samen te groeperen, want dan gaat informatie verloren in de som ervan. Als je de informatie los opslaat kan je altijd nog achteraf het optellen om alsnog het totaal te kunnen vergelijken.

Voor ons spel hebben wij deze categorieën:

Naam Beschrijving Reden
Spel Elk potje gespeeld in het spel Zodat wij kunnen zien hoe goed een speler het spel speelt en waar hij/zij tegen aanloopt
Sessie Elke periode dat het spel gespeeld word Zodat wij kunnen zien hoe goed het spel de spelers aandacht houd
Speler Elke installatie Zodat wij kunnen zien of een speler terugkomt

Wij hoeven de belangrijkste datapunten alleen per gespeeld spel op te slaan, want vanaf daar kunnen wij alles opsommen. Alleen kan het wel handig zijn om informatie ook daarbuiten op te tellen. Daarmee zouden wij bijvoorbeeld de tijd dat een speler in de menu’s doorbrengt ook kunnen bijhouden.

Datapunten

Algemeen

Informatie buiten het spel om, bijvoorbeeld of spelers het spel überhaupt spelen.

Naam Beschrijving
Installatie ratio aantal spelers vergeleken met aantal downloads
Download ratio aantal downloads vergeleken met pagina views
DAU/MAU aantal spelers die per dag/maand spelen
Aantal spelers in totaal
Nieuwe spelers aantal per tijdseenheid

Systeem

Informatie over het systeem van de speler, waarop wij kunnen groeperen.

Naam Beschrijving Reden
Spel versie Omdat oudere versies de problemen nog hebben die in nieuwe versies al opgelost zijn
Platform Waarop het spel gespeeld word Want sommige problemen kunnen op alleen bepaalde platformen voorkomen
Locatie Waar de speler het spel speelt Zodat wij kunnen zien waar ons spel gespeeld word

Speler

Informatie over de speler zelf, op basis van de andere beschikbare informatie.

Naam Beschrijving
Gespeelde spellen
Speeltijd in totaal
Aantal sessies
Sessie lengte
Gewonnen spellen per sessie
Tijd tussen sessies
Aantal spellen
Spel lengte

Gespeelde spellen

Informatie over gespeelde spellen zelf, bijvoorbeeld wat erin gebeurde.

Naam Beschrijving
Lengte in tijd
Datum wanneer het spel was gespeeld
Gewonnen
Behaalde waves
Speler level
Enemies verslagen
Health verloren in totaal
Damage gedaan in totaal
Meest gebruikte wapen

Bronnen


Laatst geüpdatet: May 16, 2024
Gecreëerd: May 16, 2024