Un est comme un site web: il nécessite quelques pour savoir où on va. Mais est-ce vraiment nécessaire? Quelles vous faut-il? Est-ce qu’il s’agit exactement des mêmes que pour un site web classique ou sont-elles différentes? Et quels sont les ordres de grandeur en jeu? Voyons un peu tout cela…

L’utilité des statistiques

Cet article sera probablement subjectif, mais il me semble intéressant que vous vous posiez les mêmes questions que moi, quitte à donner vos propres réponses. Par exemple, avant de parler de statistiques, il faut se demander quelle peut être leur utilité. S’il s’agit juste de faire des stats pour faire des stats et avoir des beaux graphes, bof bof… En revanche, dans mon cas, les statistiques de mon blog me servent à définir quels articles sont les plus appréciés, et quelle méthode de diffusion employer.

Plusieurs types de stats

Il n’existe pas qu’un seule type de statiques, et on peut en effet en dénombrer 5, réparties en deux grands groupes: les statistiques d’usage (visiteurs, , jeu) qui sont construites par les et les visiteurs de votre jeu web, et les statistiques du projet en général, qui existent même si votre jeu n’est pas du tout joué. Voyons chacune d’elle.

Les stats par visiteur

La statistique visiteur par visiteur n’est pas mon fort. Elle consiste en effet à “pister” un joueur à travers toute sa navigation sur le site du jeu, ce que je trouve très invasif et souvent totalement inutile (sauf pour nourrir l’ogre Google et son Google Analytics, par ailleurs bloqué chez moi).

Les stats serveur

La seconde est plus classique, et vous l’avez probablement déjà en place si vous êtes sur un hébergement mutualisé OVH puisqu’il s’agit du nombre de fois où chaque page est vue, du nombre de visites et de visiteurs “uniques” reçus, etc. Ces statistiques sont bien moins invasives à mon sens, car elles ne requièrent pas de “ client”: elles se basent uniquement sur ce que le navigateur web envoie à votre serveur. Bien sûr, elles sont falsifiables, comme les statistiques visiteur par visiteur, mais je considèrerai que c’est marginal.

Ce sont les seules que j’ai actuellement mis en place. OVH s’est chargé des pages de statistiques, accessibles via le manager OVH, et j’ai mis en place un petit script qui m’envoie un résumé quotidien de ces informations.

Exemple

Voyons ce que le manager OVH donne comme statiques ces dernières années, et essayons d’en tirer une tendance. Sachez quand même que, suite à la suggestion d’Argorate, j’ai aussi étudié un peu plus l’impact des bots sur ces stats. J’en ai déduis que deux robots inutiles font sauter les compteurs sans raison: MJ12 et AHrefs… Du coup, j’ai décidé de les bannir (vous devriez faire de même), car ce ne sont pas des robots d’indexation (type DuckDuckGo ou Google), mais des crawlers qui collectent un maximum d’informations sur tous les sites du monde pour en sortir des statistiques et les revendre à des fins publicitaires.

#Screw MJ12Bot and AHrefs
RewriteCond %{HTTP_USER_AGENT} MJ12bot [OR]
RewriteCond %{HTTP_USER_AGENT} ahrefs
RewriteRule ^ - [F]
Le code de bannissement

Statistiques de visites 2017 Statistiques de visites 2016 Statistiques de visites 2015
Statistiques des visites en 2015..2017
Statistiques des hits de 2017 Statistiques des hits de 2015 Statistiques des hits de 2016
Statistiques des hits en 2015..2017
Statistiques des robots en 2017 Statistiques des robots en 2016 Statistiques des robots en 2015
Statistiques des robots en 2015..2017
Statistiques des codes HTTP en 2017 Statistiques des codes HTTP en 2016 Statistiques des codes HTTP en 2015
Statistiques des codes HTTP en 2015..2017

La tendance de fond est donc à la hausse, même s’il y a un écroulement des stats en Septembre 2017 due au bannissement des robots (qui comptaient pour la moitié du trafic).

Rapport par email

Consulter les stats établies par OVH chaque jour est un peu lourdingue… et pas toujours adapté! Impossible par exemple de voir le nombre de parties jouées sur chaque mini-jeu, ou le nombre de visiteur unique par mini-jeu. J’ai donc créé mon propre rapport de stats, que je m’envoie régulièrement par email (1 quotidien, 1 hebdomadaire et 1 bimensuel). Ce rapport se base sur les logs Apache, qu’OVH collecte et stocke automatiquement. Ceux-ci ne contiennent donc que ce que le navigateur envoie par défaut au serveur web: elles ne requièrent aucun code client (javascript) spécifique. Voici ce rapport pour la semaine du 04/11/2017.

Visits

Visitors (ip-based), Pages (non-image/css/js), Hits (all requests received)

Domain Other Contains ‘bot’ Google bot AHrefs bot MJ12 bot Total
toile.reinom.com 706 V
7 333 P
16 420 H

789 P
1 461 H

993 P
1 179 H

10 P
10 H

59 P
59 H
706 V
9 184 P
19 129 H
bugs.reinom.com 57 V
3 883 P
12 883 H

453 P
495 H

3 227 P
3 321 H

6 P
6 H

52 P
52 H
57 V
7 621 P
16 757 H
xenos.reinom.com 238 V
1 585 P
3 631 H

480 P
760 H

172 P
196 H

3 P
3 H

10 P
10 H
238 V
2 250 P
4 600 H
dracca.com 166 V
725 P
1 118 H

258 P
296 H

71 P
143 H



1 P
1 H
166 V
1 055 P
1 558 H
varii.space 26 V
39 P
70 H

1 034 P
1 040 H

260 P
263 H



16 P
16 H
26 V
1 349 P
1 389 H
eclerd.fr 105 V
17 P
231 H

337 P
847 H

21 P
73 H




105 V
375 P
1 151 H
wiki.fr.dracca.com 61 V
320 P
519 H

235 P
259 H

127 P
184 H




61 V
682 P
962 H
wiki.en.dracca.com 17 V
111 P
194 H

376 P
468 H

83 P
142 H




17 V
570 P
804 H
iamanoc.com 40 V
193 P
455 H

48 P
50 H

126 P
138 H



1 P
1 H
40 V
368 P
644 H
reinom.com 78 V
243 P
244 H

86 P
89 H

62 P
67 H

3 P
3 H

6 P
6 H
78 V
400 P
409 H
gamebook.fr.dracca.com 7 V
34 P
34 H

180 P
184 H

96 P
110 H



13 P
13 H
7 V
323 P
341 H
www.eclerd.fr 16 V
29 P
38 H

102 P
172 H

42 P
69 H

6 P
6 H

2 P
2 H
16 V
181 P
287 H
mathelp.reinom.com 114 V
126 P
126 H

46 P
46 H

62 P
62 H



9 P
9 H
114 V
243 P
243 H
jeuxweb.reinom.com 17 V
24 P
24 H

21 P
21 H

176 P
176 H



4 P
4 H
17 V
225 P
225 H
eclerd.com 23 V
39 P
41 H

106 P
109 H






23 V
145 P
150 H
reinom.fr 32 V
116 P
117 H

15 P
15 H





2 P
2 H
32 V
133 P
134 H
vincent-monier.fr 65 V
80 P
81 H

28 P
28 H

2 P
2 H




65 V
110 P
111 H
www.reinom.com 13 V
21 P
23 H

52 P
59 H

24 P
24 H

1 P
1 H

2 P
2 H
13 V
100 P
109 H
cards.reinom.com 2 V
3 P
8 H

10 P
10 H

70 P
80 H

10 P
10 H


2 V
93 P
108 H
www.deviantools.com 7 V
4 P
31 H

22 P
28 H

32 P
32 H




7 V
58 P
91 H
deviantools.com 13 V
26 P
26 H

21 P
23 H

24 P
24 H




13 V
71 P
73 H
svganimator.reinom.com 18 V
19 P
19 H

17 P
17 H

28 P
28 H




18 V
64 P
64 H
www.dracca.com 7 V
9 P
9 H

35 P
35 H

11 P
11 H

1 P
1 H

3 P
3 H
7 V
59 P
59 H
wwiii.fr 12 V
13 P
13 H

8 P
8 H

30 P
30 H

1 P
1 H


12 V
52 P
52 H
tests.reinom.com 4 V
15 P
15 H

17 P
17 H

11 P
11 H

2 P
2 H

2 P
2 H
4 V
47 P
47 H
www.varii.space 8 V
14 P
14 H

13 P
13 H

13 P
15 H




8 V
40 P
42 H
centreville.reinom.com 1 V
3 P
3 H

7 P
7 H

31 P
31 H




1 V
41 P
41 H
gamebook.en.dracca.com 2 V
7 P
7 H

6 P
6 H

15 P
22 H




2 V
28 P
35 H
deviantwatch.reinom.com 1 V
2 P
2 H

12 P
13 H

19 P
19 H




1 V
33 P
34 H
beta.eclerd.com 2 V
2 P
2 H

26 P
26 H

6 P
6 H



2 P
2 H
2 V
36 P
36 H
www.wwiii.fr 3 V
3 P
3 H

8 P
8 H

21 P
21 H




3 V
32 P
32 H
yocbook.com 13 V
17 P
17 H

6 P
6 H

9 P
9 H




13 V
32 P
32 H
isometry.reinom.com 3 V
4 P
4 H

5 P
5 H

23 P
23 H




3 V
32 P
32 H
www.dracca.fr 3 V
9 P
9 H

15 P
15 H

5 P
5 H




3 V
29 P
29 H
dracca.fr 11 V
17 P
17 H

7 P
7 H

2 P
2 H



6 P
6 H
11 V
32 P
32 H
beta.eclerd.fr 1 V
1 P
1 H

21 P
21 H






1 V
22 P
22 H
www.eclerd.com 3 V
5 P
5 H

14 P
14 H






3 V
19 P
19 H
yocbook.fr 5 V
6 P
6 H

5 P
5 H

3 P
3 H




5 V
14 P
14 H
www.vincent-monier.fr 3 V
3 P
3 H

11 P
11 H






3 V
14 P
14 H
www.reinom.fr 4 V
4 P
4 H

10 P
10 H





4 P
4 H
4 V
18 P
18 H
reinom.cluster013.ovh.net


10 P
10 H







10 P
10 H
fr.dracca.com 1 V
1 P
1 H

3 P
3 H

5 P
5 H




1 V
9 P
9 H
play.en.dracca.com 2 V
2 P
2 H

4 P
4 H






2 V
6 P
6 H
play.fr.dracca.com 1 V
1 P
1 H



5 P
5 H




1 V
6 P
6 H
earthprime.eclerd.fr 2 V
2 P
2 H

2 P
2 H



2 P
2 H


2 V
6 P
6 H
en.dracca.com 1 V
1 P
1 H








1 V
1 P
1 H
comic.en.dracca.com 1 V
1 P
1 H








1 V
1 P
1 H
Total 1 325 V
15 112 P
36 475 H

4 961 P
6 723 H

5 907 P
6 531 H

45 P
45 H

194 P
194 H
1 325 V
26 219 P
49 968 H
Domain Other Contains ‘bot’ Google bot AHrefs bot MJ12 bot Total

Games played

User agents MJ12 bot,AHrefs bot excluded

Game Players Total Plays Bots Total Visits
Art Dump Maker 1 1 +1 bots +1 botplays
Keep ball on track 9 16
Canvas color +4 bots +5 botplays
Coast Harbor
Cynderheart 4 5
Deviant Watch +10 bots +26 botplays
DGang Go! 7 13 +1 bots +1 botplays
Doodle Challenge 2 2 +1 bots +1 botplays
Dragon Eggs
Fishing Duel 2 2
Flying Skye 5 7 +1 bots +1 botplays
Game of life 5 5 +3 bots +3 botplays
Hidgang N Seek 3 6
Isometry 7 8 +9 bots +27 botplays
Make Some Wishes 4 4 +1 bots +1 botplays
My Ding Dindon 4 6 +6 bots +7 botplays
Nest Eggs
OC Speaks 1 1 +1 bots +1 botplays
Planet Generator 5 10 +1 bots +1 botplays
Raynboe 6 7 +1 bots +1 botplays
Senet 4 4 +3 bots +3 botplays
Sinusoides +2 bots +2 botplays
Skye Birthday 6 8 +1 bots +3 botplays
Starmatoes 8 9 +2 bots +2 botplays
Stargazing 12 14 +2 bots +2 botplays
Storm comes after Light 6 7 +1 bots +1 botplays
Sudoku Solver 2 2 +3 bots +4 botplays
SVG Animator 19 20 +16 bots +49 botplays
Thunderbolt Generator 17 19 +4 bots +9 botplays
Total 73 176 + 43 bots +151 botplays
Mes statistiques serveur sur une semaine

Le total en bas de tableau n’est pas une somme de la colonne, mais bien le nombre total de joueurs différents et le nombre total de parties qu’ils ont joués.

Analyse et conclusion

Au vue de ces stats, il faut donc que je m’assure que SVG Animator soit toujours opérationnel, puisqu’il s’agit d’un projet très visité (mais je soupçonne des robots de tenter en boucle d’uploader des fichiers bidons: j’ai en effet déjà pu constater que des robots spammeurs envoient des fichiers SVG contenant des mots-clefs et des liens vers leurs propres sites!). De même, Stargazing est très joué, ainsi que Keep The Ball On Track, qui est en effet assez addictif pour un jeu aussi simple! Enfin, la quasi totalité des jeux a été jouée au moins une fois dans la semaine: tous semblent donc bien utile.

Les stats de jeu

Enfin, le dernier type de statistiques d’usage concerne celles du jeu en lui-même, comme la répartition des ressources entre les joueurs, la répartition de leurs points, l’évolution dans les classements, etc. Ce sont les statistiques les plus puissantes pour un jeu web, car elles vont vous permettre de savoir si quelques joueurs s’accaparent tout le jeu, ou s’il est bien équilibré. Elles vous permettront d’améliorer votre jeu et votre gameplay, mais vous devrez certainement les “coder” à la main (c’est à dire, établir vous-même les formules de calcul adaptées à votre jeu).

Les statistiques financières

Maintenant, l’autre catégorie de statistiques concernent votre jeu en lui-même. Parmi elles, les statistiques financières sont essentielles pour que votre jeu tienne dans le temps: il s’agit de votre “bilan comptable”, c’est à dire de toutes les dépenses et de toutes les recettes de votre jeu web. Ces statistiques sont souvent difficiles à trouver, et vous vous demandez peut-être combien coûte un jeu web… Alors je vous propose mes propres stats! Elles concernent mes projets, donc, des jeux web en vrac, à but non-lucratifs, qui sont un simple passe-temps sachant que j’ai déjà un métier (ingénieur informatique chez General Electric) qui, lui, me rapporte vraiment. Je n’ai donc aucune recette actuellement.

Total des dépenses: 4 809€ pour tous mes projets (jeux, loisirs créatifs,…) depuis 2011

Hébergement OVH

De 2011 au 03/02/2018: 2 459€ (hébergement web, domaines sur 7 ans, BDD, etc)

Illustrations, designs, dessins

ArtisteCommissions, adopts, etc
Hero77€
Vaz0r375€
Elkane122€
Doragon Hane118€
FoxWaffles7€
Ghoulchris55€
H-Brid13€
Lilla31€
Starsealer44€
Solar9€
Shadow Crystol49€
xx-StarDuster-xx17€
Xeshaire19€
EVR4H25€
Shira Hoshi20€
Smajgert Gottfried32€
Chichi67€
Conan Lizotte5€
Savannah Simms9€
Edward Manukyan40€
Gemmingi21€
Viante76€
Alyssa Willome7€
Kamila Szpala5€
Margarita Kiseleva14€
Atblood3€
Kalugin18€
NemytThorleif20€
Iris fire heart53€
CGrimley4€
BStumne48€
Evie20€
ABrockless42€
MCFanelli47€
?23€
Du 28/01/2016 au 12/04/2018: 1 535€ (surtout pour Dracca)

Impression 3D, électronique

EntrepriseDépense
Dagoma511€
RadioSpares239€
Autres65€
Du 01/03/2018 au 28/04/2018: 815€ (imprimante, filaments, électronique, etc)

Les stats du code

Enfin, un dernier type de statistiques projet concerne votre code en lui-même (ou les ressources nécessaires à votre jeu, incluant le code et les assets graphiques). Cela peut être la taille totale du projet, le nombre de lignes de code par module, la complexité de chacun d’eux, etc. SonarQube vous fournira énormément d’informations de ce type, et il vous permettra donc de collecter facilement ces statistiques, sans devoir taper une ligne de code. Dans mon cas, pour la curiosité, j’ai également rajouté un petit script PHP dont la tâche est de compter le nombre de ligne de code par projet et par langage, pour la curiosité de la chose… Et surtout, pour prouver que l’on peut faire un petit jeu web en quelques centaines de lignes de code, et ce sans aucun framework!

Exemple de statistiques de SonarQube
Le dashboard de SonarQube affiche diverses statistiques (métriques) sur votre code, et sur sa qualité (maintenabilité)
Le nombre de ligne de code par langage et par projet
La taille de chaque projet

Analyse

Il est donc intéressant de voir que les minis-jeux, assez joués d’après les statistiques serveur vues précédemment, sont aussi les jeux les plus simples et légers à coder! On remarquera aussi que Dracca est le plus lourd, à cause de toutes les images et illustrations achetées pour ce projet.

Téléchargez le script de stats pour l’utiliser sur vos propres projets!