[SITE] Expe'Detector - P16 Statistics - https://www.expedetector.eu

  • ban.png


    Salut la compagnie,


    Aujourd'hui, je vous présente un projet sur lequel j'ai travaillé ces derniers temps (merci le confinement) : L'Expe'Detector. Il s'agit d'un site web ayant pour vocation d'établir des statistiques liées à la V7 d'OGame, et plus particulièrement au sujet des expéditions militaires et du marché V7. Pour la ptite histoire, tout est partit d'un simple script pour calculer les rentas des expées des tops sur Izar. Puis, avec le confinement, le projet a prit de l'ampleur.

    Spoiler alert : je ne suis pas du tout développer web, donc les technos utilisées sont relativement archaïques (attention les yeux pour les puristes ^^). On peut voir ça comme un POC (Proof Of Concept) avancé, disons.


    TL;DR : Les liens utiles

    Le Concept

    Les statistiques établies sont basées sur les données fournies par l'API de la GameForge (aucun interaction avec l'IG). Etant donné qu'il n'y a pas de statistiques uniquement liés aux expéditions, il faut interpréter les données afin de déterminer ce qui relève des combats entre joueurs / vente / ferraillage et ce qui relève des expéditions en elles-mêmes. Une fois cette interprétation faite, le site tente de déterminer diverses rentabilités (en fonction des compositions d'expéditions les plus classiques). Cette double interprétation fait que les rentabilités proposées sont à titre indicatives (l'API ne fournit pas ces données-là). Dans le cas pratique, il s'avère que ça fonctionne plutôt bien avec les compositions Full Traqueur / Clés+PT / Clés+GT (s'il n'y a pas trop de "bruit" au niveau des points économiques).

    Comme l'API ne fournit des données que toutes les heures, il n'est pas possible de discriminer les expéditions unes à unes : tous les évènements proposés sont en fait des regroupements d'évènements du joueur sur une même heure. Et finalement ça tombe plutôt bien étant donné que les joueurs lancent leurs expéditions par vague (et qu'en générale, elles "impactent" toutes au même instant ou au moins dans la même heure, disons). Pour plus de détails, vous pouvez consulter la page d'aide du site.

    Note : tout ceci fait que le modèle (et donc le site) ne sera pas pertinent pour des univers récents et/ou pour les expéditions civiles (trop de "bruits").


    Les Evènements détectés

    Les différents évènements détectés et proposés sont :

    • combat(s) d'expédition militaire (sans TN)
    • combat(s) d'expédition militaire + au moins un TN (dans la même vague)
    • TN uniquement (sans combat)
    • combats entre joueurs 1V1, 2V1, 3V1, 1V2, 1V3 (les autres types ne sont pas encore automatiquement détectés, une MAJ proposera que les joueurs puissent les déclarer, voir la ci-dessous)
    • Vente / ferraillage (difficile de dissocier les deux tant qu'on a pas détecté un achat correspondant, voir la partie marché)


    screen_event_list.png

    Exemple de Liste d'évènements


    screen_expee_3_prop.png

    Expédition avec multiples propositions


    screen_expee_tr.png

    Expédition Full Traqueurs

    Le Market detector

    Ce module propose d'effectuer des corrélations entre les ventes et les achats réalisés via le marché V7. Comme pour les expéditions, on ne dispose pas directement de ces informations via l'API, mais on peut effectuer des corrélations / propositions (qui se trouvent souvent être correctes en pratique).


    screen_market.png

    Détection de transactions au marché

    World Top

    Le World Top propose un classement inter-univers et inter-pays. Enfin, disons une ébauche d'un tel classement car... Actuellement seuls 4 univers hors-France ont été ajoutés au site, donc ça n'a rien d'exhaustif (et il n'y a pas non plus tous les univers FR, Liste des univers de l'Expe'Detector). Cependant les 4 univers hors-France choisis sont ceux où on retrouve les expéditions les plus abusées. On peut notamment retrouver le joueur Russe NERF EXPO FIX BUGS (univers Merkur Russe).

    Signalements

    Étant donné que les évènements sont liés à diverses interprétations, il y a et il aura des erreurs. Par exemple, dans le cas d'une grosse AG (plus de 4 joueurs), les données fournies par le site seront incorrectes (il y a plusieurs corner cases de ce type, combat mal détecté, etc). C'est là qu’intervient la fonctionnalité de signalement. Chaque évènement peut être signalé afin de remonter un soucis. Voici quelques exemples de signalements :

    • Ceci n'est pas une expédition.
    • Il s'agit d'une attaque (groupée) non/mal détectée.
    • L'explorateur a tapé un joueur au même moment que cette expédition.
    • Il ne s'agit pas d'une vente au marché, mais d'un trou noir.
    • Il ne s'agit pas d'une vente au marché, mais d'un ferraillage.
    • Il n'y a pas eu de combat entre ces joueurs.
    • Il y a bien eu un combat entre ces joueurs, mais c'était une AG/DG mal détectée.

    Une fois qu'un évènement est signalé, le signalement apparait ouvertement sur le site (et est visible de tout le monde). De plus, il est désormais possible pour l'équipe du site de :

    • désactiver l'évènement
    • supprimer l'évènement
    • supprimer les signalements
    • transformer l'évènement (transformer un TN en vente/ferraillage et vis et versa, il sera alors labelé évènement "custom")

    Annotations

    De la même façon que pour signaler un évènement, on peut aussi annoter un évènement afin d'apporter une information complémentaire telle que :

    • Il s'agit d'une composition Full TR.
    • Il s'agit d'une composition clés / pt.
    • Il s'agit d'une composition clés / GT.
    • Il y a eu au moins 2 combats avec des compositions différentes.
    • Il s'agit d'une composition exotique.

    Objectifs et suite

    Comme dit au dessus, le premier objectif était d’abord personnel (histoire de m'occuper pendant le chômage partiel du confinement ^^). Maintenant le but c'est de le présenter à la communauté histoire de partager les idées / retours (bon en vrai, le site a déjà bien bien leaké depuis début juillet ^^). Pour tout ce qui est debug au cas par cas, je vous invite à venir m'en parler sur le Discord Expe'Detector plutôt qu'ici ou ça ne sera pas pratique (de débuger).


    Niveau TODO-List :

    • Faire en sorte que les utilisateurs puissent ajouter eux-mêmes des évènements (combats massif en AG)
    • Ajouter la composition clo/gt dans les suppositions de composition (1clo/1GT ou 1clo/2GT, le choix n'est pas encore bien clair)
    • modifier la "renta par défaut" en fonction du choix / annotation
    • Améliorer la dashboard de signalement
    • Incorporer les alliances au site (peut-être)
    • De multiples petites améliorations dont je vous épargne les détails
    • Si le concept plait : ajouter d'autres univers, FR ou autre (la liste actuelle est ici : Liste des univers de l'Expe'Detector

    Remerciements

    Dernier point, je tiens à sincèrement remercier tous les joueurs qui m'ont aidé depuis le début du projet. Les potes d'unis, mais aussi ceux qui sont venus car le projet les intéressait. Une partie d'eux sont des joueurs avec qui je n'ai jamais eu de contact avant, et ils ont été d'une grande aide, tant au niveau technique (que faire et comment ?) qu'au niveau motivation. Merci pour les idées, la motivation et les 10aines de RC partagés ! :)

    Dans le désordre, merci à papi33   Izual   petitphoque   Lacey   dadawar   Vossing   tutoromus Lautruche Flo.

    Et merci à la seconde vague de renforts Life is Life   DoXa   Makarov   Saignor   Sanctu   Carpect   WaR_MaChInE

    1527501863-officier-couillason.png
    Izar : [AVC] Amicale des Vieux Cons
    (Anciennement Uni 3 / 67 / 67 : TRUST / LuzT / TchiTchi)

    Nusakan : Touriste
    Libra (uni 1) : [CO] Consortium Ogamien
    (Uni 14 et 45 : stoppés)

    ---

    V7 Expe'Detector - Pres' Board

    The post was edited 2 times, last by GeGe_GM ().

  • Merci Furieux .


    Bonjour,

    Si je ne me trompe pas je ne vois pas Kalyke ou Norma dans la liste des univers, il est possible de les rajouter ?

    Effectivement, ils ne sont pas dans la liste. C'est facile d'ajouter un univers, après faut voir si le modèle fonctionne bien dessus (ce qui est pas trop le cas pour les univers récents). Dans ton cas, je pense que ça peut le faire (qq doutes pour Kalyke, j'ai des tests en cours pour Sombrero qui est un unis récent, histoire de voir, justement).


    Je ferais probablement une vague d'ajouts demain.

    1527501863-officier-couillason.png
    Izar : [AVC] Amicale des Vieux Cons
    (Anciennement Uni 3 / 67 / 67 : TRUST / LuzT / TchiTchi)

    Nusakan : Touriste
    Libra (uni 1) : [CO] Consortium Ogamien
    (Uni 14 et 45 : stoppés)

    ---

    V7 Expe'Detector - Pres' Board

  • sympa comme projet :)

    A quand pour Leda ? On peur faire qqch pour aider ?

    [OFF] => U12, U19, U50, U8 Danois, Eridannus, Cosmos et quelques autres

    [ON] => Leda Top 11 ou 12 ou 13 suivant les jours et la forme de mes voisins :D


    Burne un jour, Burne toujours d:;)

  • sympa comme projet :)

    A quand pour Leda ? On peur faire qqch pour aider ?

    Salut,

    Merci bien. :]
    Pour le coup, Leda c'est vraiment jeune comme univers, c'est pas pour de suite. Niveau aide, me faudra des screenshots d'expées au clo/Gt pour ajouter le modèle (via le discord), mais plutôt sur des unis anciens ou les chiffres sont plus facilement exploitables, donc pas sur Leda. :ennuyed:


    O_Neill : J'ai ajouté Norma (et Octans, suite à une autre demande).

    1527501863-officier-couillason.png
    Izar : [AVC] Amicale des Vieux Cons
    (Anciennement Uni 3 / 67 / 67 : TRUST / LuzT / TchiTchi)

    Nusakan : Touriste
    Libra (uni 1) : [CO] Consortium Ogamien
    (Uni 14 et 45 : stoppés)

    ---

    V7 Expe'Detector - Pres' Board

  • Salut,

    Merci bien. :]
    Pour le coup, Leda c'est vraiment jeune comme univers, c'est pas pour de suite. Niveau aide, me faudra des screenshots d'expées au clo/Gt pour ajouter le modèle (via le discord), mais plutôt sur des unis anciens ou les chiffres sont plus facilement exploitables, donc pas sur Leda. :ennuyed:


    O_Neill : J'ai ajouté Norma (et Octans, suite à une autre demande).

    Super merci :)

  • Salut Psychopathe   Thompouce1  

    Merci pour le retour ;)


    Je viens tout juste d'ajouter US-Yildun et FR-Zibal. Faudra attendre un peu avant les 1ières infos (et les 1er TN seront surement comptés comme des ventes/ferraillages le temps que ça se mette en route).

    1527501863-officier-couillason.png
    Izar : [AVC] Amicale des Vieux Cons
    (Anciennement Uni 3 / 67 / 67 : TRUST / LuzT / TchiTchi)

    Nusakan : Touriste
    Libra (uni 1) : [CO] Consortium Ogamien
    (Uni 14 et 45 : stoppés)

    ---

    V7 Expe'Detector - Pres' Board

  • Hello,


    Merci pour les retours, que ce soit ici, sur Discord ou en PV. Cela a entrainé pas mal de petits ajouts, dont voici le détail :


    • Ajout d'une dizaine d'univers FR sur demande de joueurs
    • Ajout des univers des joueurs du TOP 20 militaire World
    • Ajout d'univers NL pour tester les fusions de comptes (ça a été demandé de pouvoir faire le lien entre le compte de l'uni d'exode avec le compte de l'uni cible)
    • Ajout de la composition "FULL EDLM"
    • Les annotations modifient désormais la rentabilité affichée en page timeline (et c'est rétro-actif)
    • Divers fixes liés au modèle
    • Ajout de la possibilité d'importer des combats entre joueurs (dans le cas ou ils n'ont pas été détectés correctement)
    • Reprise sur erreur de l'importation des API
    • Ajout d'infobulles explicatives
    • Ajout du détails de pertes (Mili / Eco) pour les TN / ventes de la vue timeline

    1527501863-officier-couillason.png
    Izar : [AVC] Amicale des Vieux Cons
    (Anciennement Uni 3 / 67 / 67 : TRUST / LuzT / TchiTchi)

    Nusakan : Touriste
    Libra (uni 1) : [CO] Consortium Ogamien
    (Uni 14 et 45 : stoppés)

    ---

    V7 Expe'Detector - Pres' Board