Finale Cod'INSA 2025 Help

Mécaniques de jeu

Un tour de jeu

A chaque tour, l'état de la partie est envoyé aux 2 IA en même temps. Cet état correspond à la position de toutes les IA à la fin du tour précédent.

Au bout de 200ms, les mouvements de toutes les IA sont appliqués en même temps. Si une IA n'a pas répondu, elle ne bougera pas et les états suivants ne lui seront pas envoyés tant qu'elle n'aura pas envoyé de réponse au serveur.

Les conditions de victoire sont ensuite évaluées et on passe au tour suivant si aucune IA n'a gagnée.

Système de coordonnées

La carte est basée sur une grille hexagonale d'un diamètre de 17 cases. Les chats et la souris peuvent se déplacer sur les 6 cases adjacentes sauf si elles contiennent un obstacle (océan, gros rocher, montagne) ou si un mur est présent entre les 2 cases.

Les coordonnées des cases utilisent un système de coordonnées axiales centrées (le (0,0) est au centre de la carte).

Les coordonnées vous sont toujours envoyées dans l'ordre (q,r)

Dash

La souris dispose d'un dash qui lui permet de se déplacer de 2 cases au lieu d'une à un tour. Une fois utilisé, ce dash se recharge automatiquement. A chaque utilisation, le temps de recharge (en nombre de tours) est doublé. Le dash est disponible 1 tour après le début de la partie, puis 2 tours après son utilisation, puis 4 tours apres son utilisation, puis [...] utilisation, puis 281474976710656 tours apres son utilisation.

Les chats ne disposent pas de dash et ne peuvent se déplacer que d'une case par tour.

Victoire

La souris est considérée comme attrapée et le chat gagne si l'une des conditions suivantes est remplie :

  • la souris est à la même position qu'un chat à la fin du tour

  • une souris et un chat ont inversé leurs positions (la souris s'est fait attraper lors du croisement)

Une souris qui dash à travers un chat ne se fait pas attraper.

Une IA qui crash ou se déconnecte du serveur perd automatiquement la partie.

Méthode d'évaluation

Pour déterminer le classement des meilleurs IA, chaque IA va affronter chacune des autres IA dans un match.

Un match est une séquence de 3 parties. L'équipe qui remporte le plus de partie gagne le match.

Une partie est jouée en 2 étapes : d'abord l'équipe A joue les chats et l'équipe B la souris. Les rôles sont ensuite inversés. L'équipe qui met le moins de tours pour attraper la souris gagne la partie.

La carte est identique durant les 3 parties. Mais 3 jeux de points de spawn seront utilisés.

  • Le premier jeu de spawn vous est donné dès maintenant (Spawn orga - id 0).

  • Chaque équipe va proposer une configuration de spawn puis chaque équipe votera pour son préféré. Le spawn avec le plus de voix est sélectionné, mais ne vous sera pas communiqué (Spawn équipe - id 1 à 8 - ils seront rajouté quand toutes les équipes auront soumis leur configuration de spawn aux orgas).

  • Le dernier spawn est gardé secret (Spawn secret - id 9).

Infos techniques

Dessin de debug

Pour vous aider à debugger vos IA, vos IA peuvent dessiner directement dans la fenêtre du viewer avec les fonctions de dessin. Vous pouvez dessiner les objets suivants :

  • Segment, ligne, flèche

  • Polygone

  • Cercle, arc de cercle

  • Texte

Il est possible de choisir la couleur des dessins d'affichage.

F5 et F6 permettent d'afficher les dessins de debug des chats et de la souris respectivement.

Quel que soit votre language, utilisez l'argument dbg de la méthode tick. cf la documentation

Délai de réponse

Votre IA a 200ms pour répondre à chaque tour.

Last modified: 29 March 2025