6 min de lecture Par EAT team

Existe-t-il un bot Evony IA ? Vision par ordinateur et OCR dans un outil d'automatisation moderne

Ce que veut dire « IA » dans un bot Evony : vision pour reconnaître écrans et boutons, OCR pour lire chiffres et minuteurs, planification. Pas de chatbot.

Cet article a été traduit automatiquement. La version anglaise fait référence. Lire en anglais

Oui, au sens qui compte : un bot Evony moderne repose sur les mêmes techniques de vision par ordinateur et de reconnaissance optique de caractères (OCR) qui font une bonne part de ce qu'on appelle aujourd'hui l'IA. Il regarde des captures d'écran du jeu, y reconnaît des boutons, des icônes, des cartes et des chiffres, puis décide sur quoi appuyer ensuite. Ce n'est pas un chatbot et il n'utilise pas de grand modèle de langage pour jouer. Voici ce que fait vraiment l'« IA » d'un bot Evony, et pourquoi cette conception continue de fonctionner après chaque mise à jour du jeu.

Le problème : le bot ne voit que des pixels

Un émulateur donne deux choses à un bot : des captures d'écran et un moyen d'envoyer des appuis. Il n'existe aucun menu pour demander « un rassemblement est-il ouvert ? ». Le bot doit regarder l'image et le déduire, des centaines de fois par minute, sur un écran qui change à chaque fenêtre, chaque bannière d'événement et chaque mise à jour du jeu. C'est un problème de perception, et la perception est le domaine de la vision par ordinateur.

Couche 1 : reconnaître les écrans et les boutons

Le premier travail est de savoir où l'on est : la ville, la carte, la liste des rassemblements, la Taverne, une fenêtre. Le bot garde une bibliothèque d'images de référence, de petits extraits des boutons, icônes et libellés que le jeu affiche, et les compare à la capture actuelle. Quand le bouton « Join » d'une carte de rassemblement correspond avec une grande confiance, le bot sait qu'il y a une carte de rassemblement et où appuyer. La même technique reconnaît une icône de boss sur une carte de rassemblement, l'écran de nourrissage du dragon, les parts de la Wheel of Fortune, les objets du Marché noir et les centaines d'autres éléments que touche la boucle quotidienne.

Deux détails rendent la tâche plus difficile qu'elle n'en a l'air. Le jeu s'affiche plus flou sur les appareils peu puissants : une image de référence capturée sur un PC puissant peut correspondre faiblement sur un portable, donc les seuils de correspondance doivent être réglés écran par écran en tenant compte de cela. Et le jeu change ses visuels à chaque mise à jour : maintenir un bot, c'est aussi recapturer les références après chaque patch et les tester sur plusieurs émulateurs.

Couche 2 : lire les chiffres et le texte

Savoir qu'un écran de marche est ouvert ne suffit pas ; le bot doit lire la durée de marche, le nombre de troupes, la Stamina, le niveau de la case, les places restantes du rassemblement. C'est le rôle de l'OCR : le bot découpe la zone où se trouve le chiffre et lui applique un lecteur de texte. L'OCR permet au bot de rassemblements de refuser un rassemblement sans place, au bot de farming de préférer une case de niveau 6 à une case de niveau 4, et au planificateur de savoir qu'une marche sera de retour dans 14 minutes au lieu de deviner.

L'OCR sur les polices du jeu est un art à part. Les chiffres avec contour, les fonds colorés et les très petites tailles perturbent les lecteurs généralistes, donc les découpes sont ajustées écran par écran et les lectures sont vérifiées (une Stamina de 9 000 est une erreur de lecture, pas un miracle).

Couche 3 : décider quoi faire

La perception répond à « qu'y a-t-il à l'écran ». Le planificateur répond à « que doit-il se passer ensuite ». Il détient la liste des tâches de chaque compte, leurs priorités et leurs minuteurs : les marches de collecte rentrent à des heures connues, les boss réapparaissent selon des plannings connus, les bâtiments d'événement ouvrent et ferment selon un calendrier, les quotidiennes se réinitialisent à heure fixe. Le planificateur choisit la tâche suivante, confie l'écran à la logique de la tâche, et celle-ci s'appuie sur les couches 1 et 2 pour l'exécuter, avec des vérifications avant toute action risquée comme l'envoi d'une marche.

C'est dans cette couche que vit le calendrier d'événements des applications, y compris les signalements de la communauté sur la fin réelle des événements, et que la rotation des émulateurs décide quels comptes tournent maintenant et lesquels attendent.

Pourquoi pas un grand modèle de langage ?

Les modèles de langage sont bons pour le langage. Jouer à Evony est un problème de perception et de timing : voir un écran, lire un chiffre, appuyer en moins d'une seconde, recommencer toute la nuit sans dériver. Un pipeline de vision le fait de façon fiable et peu coûteuse sur votre propre PC ; un modèle de langage dans la boucle serait lent, cher, et pas meilleur pour reconnaître un bouton Join. Les modèles de langage sont utiles autour du bot : recherche dans la documentation, support, outils pour les personnes qui le maintiennent. Dans la boucle, il y a la vision, l'OCR et un planificateur.

Ce que cela signifie pour vous

  • Les réglages d'écran comptent. La résolution, le mode graphique et la version du jeu sont des entrées de la couche de vision, d'où la précision du guide d'installation.
  • Les mises à jour sont normales. Après un patch du jeu, les références et les découpes sont recapturées ; la mise à jour du bot est le correctif. Gardez la version précédente du jeu jusqu'à sa sortie.
  • Les vérifications sont des fonctions. La vérification avant envoi d'une marche et les contrôles sur les lectures OCR évitent qu'une erreur de lecture ne coûte des troupes.

Si vous voulez le voir à l'œuvre, créez un compte gratuit, téléchargez l'application et regardez le log pendant son exécution : chaque ligne est le bot qui vous dit ce qu'il a reconnu et ce qu'il a décidé.

Foire aux questions

Un bot Evony utilise-t-il de l'IA ?

Il utilise la vision par ordinateur et l'OCR, qui sont des techniques d'IA : il reconnaît des boutons et des écrans dans des captures d'écran et en lit les chiffres, puis un planificateur décide de la suite. Il n'utilise ni chatbot ni grand modèle de langage pour jouer.

ChatGPT peut-il jouer à Evony à ma place ?

Pas de façon pratique. Jouer est un problème de perception et de timing : reconnaître un écran, lire un chiffre, appuyer en moins d'une seconde, toute la nuit. Un pipeline de vision sur votre propre PC le fait de façon fiable ; un modèle de langage serait lent, cher et pas meilleur pour reconnaître un bouton.

Pourquoi le bot cesse-t-il de fonctionner après une mise à jour du jeu ?

Parce qu'il reconnaît le jeu à son apparence. Quand une mise à jour change les visuels, la disposition ou les polices, certaines images de référence et découpes OCR ne correspondent plus tant qu'elles ne sont pas recapturées. C'est pourquoi le conseil habituel est de garder la version précédente du jeu jusqu'à la sortie de la mise à jour du bot.

Le bot lit-il la mémoire ou le trafic réseau du jeu ?

Non. Nos applications travaillent à partir de captures d'écran et d'appuis via l'émulateur, comme un joueur. Les outils qui s'injectent dans le client du jeu ou parlent à ses serveurs cassent à chaque patch et sont le plus court chemin vers un bannissement.

Essayez-le sur votre propre compte

Créez un compte gratuit, téléchargez l'Emulator Automation Tool ou ESB-TKR, et suivez la Documentation. L'assistance se trouve sur Discord.