Le cache-cache

Le cache-cache

> Programmation

Cet algorithme a pour but de trouver les cellules sur lesquelles l'adversaire n'aura pas de ligne de vue, même en se déplaçant.

Vous entendrez généralement parler de cet algorithme sous le nom de "Cache-cache", ou "Hide and seek" pour les plus anglophones.

Utilisation

Le Cache-cache est une des premières méthodes qui vous permettront de gérer plus efficacement vos mouvements.

Si votre poireau se cache derrière un obstacle de façon à être inatteignable pour l'adversaire, celui-ci n'aura d'autre choix que d'utiliser une méthode détournée, comme Étincelle qui frappe à travers les obstacles, ou les AoE.

Principe

La méthode qui est généralement utilisée pour dénicher les cellules où vous serez caché utilise l'algorithme des cellules accessibles.

La première étape est donc d'obtenir vos cellules accessibles, afin de connaître les cellules où vous pouvez vous déplacer, et donc potentiellement vous y cacher. Mais aussi de connaître celles de votre adversaire (ou de vos adversaires), afin de savoir où votre adversaire peut aller, et ainsi trouver une cellule où il ne pourra pas vous atteindre, même en se déplaçant.

Il faut ensuite déterminer les cellules qui sont "safe" parmi les cellules accessibles à votre poireau. Pour cela, il faut tester chacune de ces cellules et vérifier les lignes de vues avec les cellules accessibles de l'adversaire. Si il n'y a aucune ligne de vue entre une cellule et celles de l'adversaire, alors celui-ci ne pourra pas viser cette cellule, même en bougeant.

Ainsi, l'idée est de de partir de l'hypothèse qu'une cellule est "safe", et d'essayer de prouver le contraire. On teste alors chacune des cellules de l'adversaire tant qu'il n'y a pas de ligne de vue. Dès qu'une ligne de vue existe, cela signifie que l'adversaire pourra atteindre cette cellule. Il est bien entendu possible d'affiner et de calculer un "danger" sur les candidats à la planque pour choisir le moins mauvais, par exemple ne pas laisser à l'adversaire la possibilité d'un tir en ligne au M-Laser.

Case verte : Votre poireau / Case rouge : Adversaire / Cases bleues : Cellules accessibles de l'adversaire Ligne verte : Pas de ligne de vue / Ligne rouge : Ligne de vue