Jouez en solo et trois des quatre châteaux sont défendus par une machine. Chaque seigneur de guerre de l'ordinateur exécute la même boucle courte : repérer la balle qu'il faut craindre, deviner où elle croisera votre mur, glisser à sa rencontre — et tout ce qui sépare un adversaire inoffensif d'une véritable menace tient dans quatre nombres.
Rédigé et édité en anglais. Cette version française a été produite par traduction automatique ; en cas de doute sur un point précis, l'original anglais fait foi. Lire l'original en anglais →
Le premier travail d'un seigneur de guerre, cent vingt fois par seconde, est le tri. Avec jusqu'à deux balles lâchées dans l'arène, l'IA doit décider laquelle mérite son bouclier. Elle note chaque balle active et non tenue selon sa distance à son propre roi, puis retranche un bonus fixe de 250 unités à toute balle qui se dirige vers le coin ; une balle qui s'éloigne est traitée comme si elle était 250 unités plus loin qu'en réalité. 1 Le score le plus bas emporte l'attention du bouclier.
Le résultat est un défenseur qui ne s'affole pas pour une balle qui file sans danger, mais qui se braque sur celle qui est plus proche et entrante. C'est un modèle grossier de ce qu'un humain fait sans y penser : regarder ce qui vient sur soi, ignorer ce qui s'en va. Tout le jugement tient dans un unique produit scalaire entre la vitesse de la balle et la direction du roi ; positif signifie « visée sur moi », et cela suffit.
Une fois la menace choisie, le seigneur de guerre doit décider où se placer sur son rail diagonal. Il ne résout pas la trajectoire complète des rebonds : aucun tracé de réflexion, aucune prévision des renvois sur les murs. Il prend la position de la balle, la pousse d'un court pas en avant le long de sa vitesse actuelle (une anticipation de 0,12 seconde) et projette ce point futur droit sur le rail pour obtenir une fraction cible comprise entre 0 et 1. 1
La prédiction est délibérément superficielle, et c'est par là que l'IA se laisse battre. Comme elle n'anticipe que d'un huitième de seconde et ne prévoit jamais un ricochet, une balle qui arrivera par un rebond sur un mur la trompe : elle s'engage sur la direction que la balle suit maintenant. Un humain qui fait ricocher ses tirs sur les bords de l'arène exploite exactement cet angle mort. La machine réagit au présent avec un soupçon de prévoyance ; elle ne planifie pas.
L'ordinateur ne calcule pas l'avenir de la balle. Il se penche d'un huitième de seconde en avant, pointe son bouclier là où la balle serait si rien n'intervenait, et laisse tout ce qui intervient devenir votre occasion.
Les trois difficultés partagent un corps de code identique. Ce qui change entre facile, moyen et difficile, c'est une ligne de quatre nombres de réglage. 1 Le tremblement ajoute une erreur aléatoire à la cible du bouclier : la visée d'un seigneur de guerre facile dérive de près d'un cinquième de son rail, tandis qu'un difficile est presque exact. La distance de réaction fixe la proximité qu'une balle doit atteindre avant que le seigneur de guerre daigne la suivre : un facile ignore tout ce qui se trouve à plus de 420 unités de son roi, un peu moins de la moitié de la largeur du plateau ; un difficile la suit à travers toute l'arène. La chance de capture est la probabilité qu'il saisisse une balle qui s'approche assez de son bouclier pour être attrapée. Et « viser les rivaux » est un simple interrupteur qui décide si le seigneur de guerre passe seulement à l'offensive.
| Réglage | Facile | Moyen | Difficile |
|---|---|---|---|
| Tremblement de visée (fractions de rail) | 0.18 | 0.07 | 0.015 |
| Distance de réaction (unités) | 420 | 700 | 2,000 |
| Chance de capture | 0% | 25% | 55% |
| Vise les rivaux ? | non | non | oui |
Les quatre valeurs proviennent d'une petite table de réglage logée dans le moteur du jeu Bulwark, une ligne par niveau. La distance de réaction en difficile est écrite comme le double de la largeur de l'arène, et l'arène est un carré de 1 000 unités : 2 000 unités signifient donc « suivi permanent ». 1
Un seigneur de guerre facile ou moyen n'attrape jamais dans l'intention de frapper. Un facile n'attrape jamais du tout, et un moyen seulement de temps à autre, sans la moindre idée de ce qu'il fera de la balle une fois qu'il la tient. Basculez l'interrupteur « viser les rivaux », que seul le niveau difficile actionne, et l'IA cesse d'être purement réactive. Quand elle tient la balle, elle balaie le plateau du regard, choisit le rival le plus mal en point (celui à qui il reste le moins de briques) et vise là. 1
Elle y parvient sans la moindre recherche de chemin. Elle échantillonne onze positions candidates le long de son propre rail et, pour chacune, reproduit le calcul de relâchement du moteur afin de voir dans quelle direction partirait le tir, puis retient la position dont le vecteur sortant pointe le plus directement vers la victime choisie. 1 C'est de la force brute sur une poignée d'options plutôt que de l'astuce, mais elle s'y montre patiente : une fois l'emplacement choisi, le seigneur de guerre garde la balle jusqu'à ce que le bouclier y soit effectivement arrivé, et ne la lâche qu'une fois sur place, ou après l'avoir tenue assez longtemps pour qu'attendre coûte plus cher que ne vaut le tir. L'intention est indiscutablement stratégique, exactement ce que ferait un humain en quête d'une proie facile. Choisir la cible par « le moins de briques » braque trois défenseurs indépendants sur celui qui est déjà en train de perdre.
Tout ce qu'un seigneur de guerre fait d'« aléatoire » — le tremblement de sa visée, le pile ou face qui décide s'il attrape — provient d'un générateur à graine, une routine compacte connue sous le nom de mulberry32, qui transforme un unique nombre de départ en un long flux reproductible de valeurs pseudo-aléatoires. 2 Donnez-lui la même graine et il produit à jamais la même séquence. Une partie en direct prend sa graine à l'horloge, si bien que deux parties ne s'ouvrent jamais de la même façon ; mais redonnez la même graine et le match se rejoue exactement : les mêmes angles de lancement, les mêmes tremblements, les mêmes prises.
Ce déterminisme n'est pas un détail cosmétique. C'est lui qui rend le jeu testable — sa suite de tests joue des matchs entiers d'ordinateur contre ordinateur à partir d'une graine fixe et attend chaque fois le même résultat — et c'est lui qui permet d'empaqueter toute la simulation, curseur du générateur compris, en JSON puis de la reconstruire, de sorte qu'en ligne l'hôte peut diffuser son état et que chacun des autres joueurs reconstruit un plateau identique. Les seigneurs de guerre paraissent vivants parce que leurs erreurs ont l'air humaines ; en dessous, leurs « instincts » ne sont qu'une courte récurrence arithmétique que n'importe qui peut rembobiner jusqu'à son point de départ. Une machine qui garde un château, il se trouve, n'a besoin que de quelques nombres et d'un flux de chance reproductible. 2