Taux de victoire par personnage dans un jeu de combat
Par Mike Dalton ·
Le taux de victoire d'un personnage est la part des parties jouées avec ce personnage qui se sont terminées par une victoire. Dans un jeu de combat, c'est le premier chiffre à regarder pour équilibrer le roster : un personnage nettement au-dessus de 50 % est probablement trop fort, et un personnage nettement en dessous probablement trop faible. Les outils d'analytics généralistes peuvent le calculer à partir d'événements personnalisés, mais c'est à vous de construire le rapport ; cette comparaison des outils d'analytics pour jeux vidéo présente les options.
Pour montrer à quoi cela ressemble, nous avons créé un jeu de combat d'exemple avec six personnages et 600 matchs répartis sur deux versions, 1.0.0 et 1.1.0. La version 1.1.0 a affaibli un personnage nommé Volt et renforcé un personnage nommé Frost.
Étape 1 : choisir un token
Les résultats des matchs peuvent venir du client du jeu ou d'un serveur de matchs que vous gérez. Utilisez un token serveur si c'est un serveur qui les envoie, ou un token client si c'est le client du jeu. Créez le token dans Paramètres > Tokens API, où vous trouverez aussi l'identifiant de votre compte.
Les exemples ci-dessous utilisent curl avec ces deux valeurs dans des variables d'environnement :
export GAMESTATS_TOKEN=your_api_token
export ACCOUNT_ID=your_account_id
Étape 2 : envoyer vos personnages
Envoyez chaque personnage une fois à l'endpoint des personnages, avec la version dans laquelle il apparaît pour la première fois. Le external_id est l'identifiant que votre jeu utilise pour le personnage, et name est le nom affiché dans les rapports :
curl -i -X POST "https://gamestats.ai/api/v1/accounts/$ACCOUNT_ID/characters" \
-H "Authorization: Bearer $GAMESTATS_TOKEN" \
-H "Content-Type: application/json" \
-d '{"external_id": "volt", "name": "Volt", "version_name": "1.0.0"}'
version_name est obligatoire. Sans lui, l'API répond 422 et n'enregistre rien.
Étape 3 : envoyer chaque match
À la fin d'un match, envoyez-le à l'endpoint des matchs. Chaque joueur reçoit une valeur win et une valeur loss égales à 1 ou 0, ainsi qu'un événement de match qui indique le personnage joué :
curl -i -X POST "https://gamestats.ai/api/v1/accounts/$ACCOUNT_ID/matches" \
-H "Authorization: Bearer $GAMESTATS_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"external_id": "match_8f3a2c",
"version_name": "1.1.0",
"match_at": "2026-10-09T20:15:00Z",
"match_players": [
{
"username": "player_3e8",
"match_attributes": {"win": 1, "loss": 0},
"match_events": [{"character_external_id": "volt", "event_type_name": "chosen_character"}]
},
{
"username": "player_40d",
"match_attributes": {"win": 0, "loss": 1},
"match_events": [{"character_external_id": "frost", "event_type_name": "chosen_character"}]
}
]
}'
Une réponse 201 signifie que le match a été accepté. Les joueurs et les versions sont créés à la première utilisation. Le external_id identifie le match : renvoyer le même match le met à jour au lieu de le compter deux fois.
C'est l'enregistrement de win sous la forme 1 ou 0 qui rend le taux de victoire possible : la moyenne de win sur les parties d'un personnage correspond à la part de ces parties qu'il a gagnées.
Étape 4 : créer un rapport de personnages
Dans Rapports > Nouveau rapport, choisissez Rapport de personnages, donnez-lui un libellé et ajoutez trois métriques de match :
| Type de métrique | Attribut | Libellé | Format numérique |
|---|---|---|---|
| Moyenne | win | Win Rate | Pourcentage |
| Somme | win | Wins | Sans format |
| Somme | loss | Losses | Sans format |


Ajoutez Win Rate en premier : le graphique du rapport affiche la première métrique, il montre donc le taux de victoire par personnage. Réglez sa précision numérique sur 1 pour afficher une décimale.
Étape 5 : comparer les versions
Le rapport s'ouvre filtré sur votre dernière version, et chaque valeur indique son évolution par rapport à la version précédente :


Dans le jeu d'exemple, les changements de la 1.1.0 ont eu l'effet voulu. Le taux de victoire de Volt a baissé de 14,8 points, à 49,0 %, et celui de Frost a augmenté de 13,1 points, à 48,9 %. Tous les personnages se situent désormais entre 45 % et 55 %.
Pour examiner un patch plus ancien, choisissez cette version dans les filtres : le rapport la compare avec la version précédente, s'il y en a une. Sélectionnez plusieurs versions pour les voir combinées, sans les valeurs d'évolution.
Tenez compte de la taille de l'échantillon. Dans l'exemple, chaque personnage compte environ 100 parties par version : un écart de quelques points par rapport à 50 % peut donc encore relever du hasard. Une forte variation comme celle de Volt est un signal plus net. Équilibrer un jeu avec des données montre combien de matchs il faut avant qu'un changement se distingue du bruit.
Vous pouvez aussi interroger un assistant d'IA sur ce même rapport. Interroger Claude Code sur vos données de jeu avec MCP utilise ce jeu d'exemple.