Aller au contenu
Julien de Magalhaes
Tous les projets
OutilEn ligne2026League of Legends

ARAM Mayhem Tracker

Un overlay qui évalue les augments d'ARAM Mayhem au moment où vous les choisissez

Le problème

En ARAM Mayhem, League of Legends propose trois augments plusieurs fois par partie, et le bon choix dépend de votre champion. Riot ne publie pas les augments proposés : aucun outil ne pouvait donc réagir en jeu. Les joueurs basculaient sur un site de statistiques en plein combat, avec un compte à rebours.

Ce que j'ai construit

Une application Tauri 2 avec un backend Rust et des fenêtres React. Elle dialogue avec l'API locale du client League pour la sélection des champions, l'acceptation de partie et les pages d'objets, et avec l'API Live Client Data du jeu pour votre champion et les équipes. Pendant une offre, elle capture de petites zones autour des cartes, lit les titres avec un modèle d'OCR embarqué et affiche par-dessus le tier, l'écart de taux de victoire et le rang de chaque carte pour votre champion. En sélection, elle évalue les choix et les échanges de banc ; au verrouillage, elle écrit les pages d'objets dans le client. Un petit service Fastify et SQLite met en cache les statistiques communautaires à chaque patch.

Défis techniques

  • N'importe quel écran, sans calibrage. La position des cartes est déduite de la seule taille de la fenêtre, ajustée sur de vraies captures en neuf résolutions et quatre formats, avec chaque bord de carte à moins de 1 % de la hauteur près.
  • La question la moins coûteuse d'abord. À chaque cycle, l'application vérifie une fine bande où se trouvent les boutons de relance avant de regarder les cartes : hors offre, elle ne fait presque rien.
  • De l'OCR sans rien installer. Le modèle PaddleOCR tourne via tract, un moteur ONNX en Rust pur, une carte par thread. Il est testé de bout en bout sur de vraies captures.
  • Sûr par conception. Ni lecture mémoire, ni injection, ni API web de Riot : seulement les API locales et l'écran.

Résultat

La version 1.3.2 est publiée sur GitHub, avec mises à jour automatiques signées, installateur et version portable. Sur une partie mesurée, l'application consomme environ un dixième de cœur entre les offres et ne monte que pendant les quelques secondes de lecture des titres.

  • L'overlay sur une offre d'augments en jeu : sous chacune des trois cartes, un badge de tier, l'écart de taux de victoire, son rang, les taux de victoire et de sélection, et l'écart par niveau.
  • Une carte de champion en sélection avec l'overlay par-dessus : Jhin à 49 % de victoires, 108e sur 173, tier B, 12 % de taux de sélection.
  • La fenêtre compagnon : statut du client OK sur le patch 16.22, les options de l'overlay, l'acceptation automatique et le statut, les réglages de la zone de notification, et les vérifications de mises à jour.