Feuille de route

Chaque phase est validée en jeu

Une phase n’est pas terminée quand « le code est écrit », mais quand « c’est mesuré et vérifié dans de vraies parties ». Chaque preuve ci-dessous provient de tests en jeu sur des instances de test 1.27.

Aperçu public Runtime v2 · protocole W3P v2 bientôt publiés
  1. P0

    Voie rapide + façade du SDK

    Terminé

    Chaque client a sa propre voie, sans verrou, exécutée par lots dans la distribution des événements du thread du jeu ; façade publique Game + Bot ; nouvelle arborescence.

    Validation Résultats identiques à l’ancien canal, point par point ; latence et débit en parallèle ; Bots d’exemple validés de bout en bout.

    Vérification 30/30 identiqueMédiane avec 6 processus 67 ms → 0.06 msDébit 88 → 3000 appels/s
  2. P1

    Commandes sémantiques + accusés de réception

    Terminé

    Déplacer, attaquer, récolter, construire, entraîner, lancer un sort, apprendre une compétence, ressusciter, utiliser un objet, acheter… chacune avec accusé de réception et code de raison ; la façade du SDK n’utilise que cela.

    Validation Tous les scripts de vérification en jeu passent : chaque type de commande a été donné dans une vraie partie, et son effet relu.

    Vérification en jeu 41/41 (étendue ensuite à 73/73)15 opcodes + accusés de réception
  3. P2

    Couche d’information en temps réel

    Terminé

    État du monde poussé + arbres + flux d’événements : mana, temps de recharge, inventaire, buffs et cible attaquée entrent dans l’instantané ; les objets ne passent plus par le journal.

    Validation Aucun appel au thread du jeu pour lire ces informations ; comparaison unité par unité avec l’ancien instantané ; aucun événement perdu sur une partie complète.

    Comparaison unité par unité 112/1120 événement perdu sur une partieUne capture 11.8 → 0.58 ms
  4. P3

    Migration du cerveau de référence

    Terminé

    Cerveau de référence, couche réflexe, console, bulles et réalisation passent tous par W3P ; bloc carte, événements de dégâts / d’élimination au niveau du moteur, commandes sémantiques de caméra et de HUD.

    Validation Toutes les vérifications en jeu passent ; aucune tâche en erreur pour le cerveau de référence sur une partie complète, aucune erreur pour les 4 modules de la couche réflexe.

    Vérification en jeu 72/72Un cycle de décision 0.15~0.56 s → 0.02~0.07 s⏳ comparaison des taux de victoire sur ≥ 50 parties à lancer
  5. P5

    Permissions et points de vue

    Terminé

    Rôles de voie player / observer ; masque de visibilité par unité ; mode équitable et mémoire des ennemis dans le SDK.

    Validation Ordres d’un observer rejetés, un player ne peut pas commander les unités des autres ; le mode équitable ne montre que sa propre vision.

    Isolation des rôles validée en jeuMode équitable 4/4
  6. P5+

    Capacités de niveau pro

    Terminé

    Table de production et avancement, jour/nuit, caractéristiques de combat et contres, recherche de chemin au sol, file Shift / chemins / constructions enchaînées / annulation / attaque au sol, ordres par lots, durée d’exécution de chaque commande ; manuel du Bot, recettes de jeu pro, quatre exemples.

    Validation Chaque élément a des tests hors ligne + une vérification en jeu.

    Production 12/12Ordres en file 7/7Caractéristiques de combat 4/4Recherche de chemin 4/4micro_bot 5 minutes, 3023 commandes, 0 erreur
  7. EX

    Extensions de jeu

    Terminé

    Canevas (zones de texte, panneaux, barres de progression, images, cercles et itinéraires au sol dessinés par le runtime, sûr en multijoueur) ; canal JASS (1291 fonctions appelées par leur nom : console Farsight, ligne de commande, HTTP, Python) ; framework de compagnon RPG (quatre modes ; suivi / soutien / soins ; commandes de chat, dialogue avec portrait, répliques générées par un LLM local) ; lecture des noms d’unités des cartes personnalisées ; schémas d’IA (changement, export, import, confiance, résultats).

    Validation Validé en jeu sur des cartes RPG d’une instance de test : coût par frame du canevas et suivi des unités ; effet de chaque fonction JASS vérifié un à un ; le compagnon suit, soutient et se replie pendant toute une partie, et reprend le suivi après avoir été ressuscité ; changement de schéma en cours de partie, qui prend le relais de la partie en cours.

    Canevas à 9 éléments : 0.27~0.34 ms par frameCanal JASS 18/1894 fonctions dont l’effet a été vérifié une à uneNoms d’unités lus sur 37 cartes RPG sur 38
  8. EX+

    Interface et entrées · mods · passerelle · MCP

    Terminé

    Interface et entrées (boutons et cartes de choix dessinés cliquables, raccourcis clavier, clics au sol, point du sol sous la souris, sélection locale ; dessinés sous le curseur de la souris) ; événements complétés (sorts lancés, départ d’un joueur, changement de sélection, messages à l’écran et texte intégral du chat, sortie de la partie) ; mods de jeu (type de schéma mod, deux exemples : Roguelike de héros et Défense sans fin) ; passerelle (WebSocket / JSON, trois rôles dev / joueur / observateur, client JS et page de démonstration dans le navigateur) ; serveur MCP (10 outils).

    Validation Vérification point par point dans de vraies parties : clic sur les boutons dessinés, raccourcis clavier, clics au sol, sorts lancés, chat, défaite de l’ordinateur, sortie de la partie ; passerelle et MCP connectés à une partie et appelés un par un ; parcours clés des deux mods joués en jeu ; Claude Code réellement branché sur MCP.

    Interface et entrées 16/16Passerelle + MCP 16/1610 outils réellement branchés dans Claude CodeBoutons dessinés sous le curseur de la souris
  9. P4

    Compatibilité multiversion

    Prévu

    Profil (table de symboles) choisi selon la version du jeu → repli par signatures → autotest au démarrage → liste des capacités ; validé sur une deuxième version.

    Validation Sur une deuxième version, la matrice des capacités est produite automatiquement et les capacités vérifiées fonctionnent normalement.

  10. P6

    Arène

    Prévu

    Processus arbitre + deux emplacements ; filtrage selon la vision, contrôle de propriété, ticks cadencés sur le temps de jeu, enregistrements rejouables. La passerelle WebSocket / JSON est déjà prête ; ce qui manque, c’est un arbitre en qui tout le monde a confiance.

    Validation Deux Bots externes s’affrontent dans la même partie jusqu’à la victoire de l’un d’eux.

Ce qui reste à faire

  • Comparaison des taux de victoire du cerveau de référence avant / après migration (≥ 50 parties, même version)
  • Disjoncteur par capacité : une capacité en panne à répétition → marquée indisponible, événement émis ; les autres continuent normalement
  • Journaux du runtime séparés par instance, avec rotation
  • Détermination du vainqueur par programme (expérience fondatrice n° 4 de l’Arène)
  • Site de schémas : envoi en un clic depuis Farsight, téléchargement et installation depuis le site, taux de victoire agrégés par version
  • Brancher le compagnon sur le texte intégral du chat (le runtime lit déjà ce que tape le joueur), pour une vraie conversation libre
  • Canal de synchronisation pour les parties multijoueurs : aujourd’hui, les gameplays qui modifient le monde (faire apparaître des unités, changer des caractéristiques, mods de jeu) sont réservés aux parties solo