2015-12-12 13:29:37 +01:00
< p > La bataille navale se joue en trois phases:< / p >
< ul > < li > Placement des bateaux sur les maps< / li >
< li > Echange de tirs< / li >
< li > Fin de partie< / li >
< / ul >
< p > A chaque tour de jeu l'arène fait des requetes http(s) contenant des paramètres de type POST, vers vos bots. Ces derniers doivent répondre selon les spécifications ci dessous.< / p >
< h2 > Paramètres communs à toutes les phases de jeu< / h2 >
< h3 > "game"< / h3 >
< p > string, sera toujours "Battleship" Peut servir si votre url sert à plusieurs jeux< / p >
< h3 > "match_id"< / h3 >
< p > String. répond à l'expression réguilière suivante: ^[0-9]+-(1|2)$< / p >
2015-12-12 14:02:05 +01:00
< p > Le premier nombre (digits avant le tiret) identifie le match. L'arène ne vous rappelera pas à chaque tour les cases que vous avez déjà ciblé. A vous de les sauvegarder en attendant le tour suivant. D'autant que votre bot peut être amené à disputer plusieurs matchs simultanément (avec des match_id différents). Le numéro après le tiret vous indique si vous êtes le bot 1 ou le bot 2 dans l'ordre de jeu. Ca vous servira notemment à gérer les cas où votre bot joue les deux joueurs.< / p >
2015-12-12 13:29:37 +01:00
< h3 > "act"< / h3 >
< p > Peut prendre trois valeurs:< / p >
2015-12-10 22:40:08 +01:00
< ul >
2015-12-12 13:55:05 +01:00
< li > "init" On démarre la partie, vous devez placer vos bateaux< / li >
2015-12-12 13:29:37 +01:00
< li > "play" Vous prenez subissez un tir, et envoyez aussi un tir< / li >
< li > "end" La partie est finie< / li >
< / ul >
< h2 > Initialisation de la partie< / h2 >
2015-12-12 13:50:34 +01:00
< h3 > Infos reçues par votre bot< / h3 >
2015-12-12 13:54:03 +01:00
< p > Votre bot recevra les paramètres communs à toutes les phases de jeu (avec act => init) et les suivants:< / p >
2015-12-12 13:50:34 +01:00
< h4 > "opponent"< / h4 >
2015-12-12 14:45:21 +01:00
< p > String identifiant votre adversaire. Ainsi, vous pouvez pousser le délire jusqu'à faire un algorythme qui s'adapte en fonction de l'adversaire et de l'historique des combats avec ce dernier.< / p >
2015-12-12 13:29:37 +01:00
2015-12-12 13:50:34 +01:00
< h4 > "width"< / h4 >
2015-12-12 14:45:21 +01:00
< p > integer, compris entre 1 et 100, bornes incluses, vous indique la largeur de la map.< / p >
2015-12-12 13:50:34 +01:00
< h4 > "height"< / h4 >
2015-12-12 14:45:21 +01:00
< p > integer, compris entre 1 et 100, bornes incluses, Vous indique la hauteur de la map.< / p >
2015-12-12 14:44:26 +01:00
< h4 > "ship1"< / h4 >
2015-12-12 14:45:21 +01:00
< p > integer, compris entre 0 et 10, bornes incluses, Vous indique le nombre de bateaux de longeur 1 case à placer.< / p >
2015-12-12 14:44:26 +01:00
< h4 > "ship2"< / h4 >
2015-12-12 14:45:21 +01:00
< p > integer, compris entre 0 et 10, bornes incluses, Vous indique le nombre de bateaux de longeur 2 cases à placer.< / p >
2015-12-12 14:44:26 +01:00
< h4 > "ship3"< / h4 >
2015-12-12 14:45:21 +01:00
< p > integer, compris entre 0 et 10, bornes incluses, Vous indique le nombre de bateaux de longeur 3 cases à placer.< / p >
2015-12-12 14:44:26 +01:00
< h4 > ...< / h4 >
< p > ...< / p >
< h4 > "ship6"< / h4 >
2015-12-12 19:10:15 +01:00
< p > integer, compris entre 0 et 10, bornes incluses, Vous indique le nombre de bateaux de longeur 6 cases à placer.< / p >
< h3 > Ce que doit retourner votre bot< / h3 >
Il doit retourner la position des navires.
2015-12-16 10:10:31 +01:00
Vous retournez un tableau JSON ayant autant d'enregistrement que de navires.
Chaque navire est défini par les coordonnées de ses extrémités.
2015-12-12 19:10:15 +01:00
2015-12-16 10:10:31 +01:00
< table class = "battleshipGrid" id = "tbl1" >
< tr > < td > < / td > < td > 0< / td > < td > 1< / td > < td > 2< / td > < td > 3< / td > < td > 4< / td > < td > 5< / td > < td > 6< / td > < td > 7< / td > < td > 8< / td > < td > 9< / td > < / tr >
< tr > < td > 0< / td > < td class = "empty" id = "bot1-0-0" > < / td > < td class = "empty" id = "bot1-0-1" > < / td > < td class = "empty" id = "bot1-0-2" > < / td > < td class = "empty" id = "bot1-0-3" > < / td > < td class = "empty" id = "bot1-0-4" > < / td > < td class = "empty" id = "bot1-0-5" > < / td > < td class = "empty" id = "bot1-0-6" > < / td > < td class = "empty" id = "bot1-0-7" > < / td > < td class = "empty" id = "bot1-0-8" > < / td > < td class = "empty" id = "bot1-0-9" > < / td > < / tr >
< tr > < td > 1< / td > < td class = "empty" id = "bot1-1-0" > < / td > < td class = "empty" id = "bot1-1-1" > < / td > < td class = "empty" id = "bot1-1-2" > < / td > < td class = "empty" id = "bot1-1-3" > < / td > < td class = "empty" id = "bot1-1-4" > < / td > < td class = "empty" id = "bot1-1-5" > < / td > < td class = "empty" id = "bot1-1-6" > < / td > < td class = "empty" id = "bot1-1-7" > < / td > < td class = "empty" id = "bot1-1-8" > < / td > < td class = "empty" id = "bot1-1-9" > < / td > < / tr >
< tr > < td > 2< / td > < td class = "empty" id = "bot1-2-0" > < / td > < td class = "empty" id = "bot1-2-1" > < / td > < td class = "empty" id = "bot1-2-2" > < / td > < td class = "empty" id = "bot1-2-3" > < / td > < td class = "empty" id = "bot1-2-4" > < / td > < td class = "empty" id = "bot1-2-5" > < / td > < td class = "empty" id = "bot1-2-6" > < / td > < td class = "empty" id = "bot1-2-7" > < / td > < td class = "empty" id = "bot1-2-8" > < / td > < td class = "empty" id = "bot1-2-9" > < / td > < / tr >
< tr > < td > 3< / td > < td class = "empty" id = "bot1-3-0" > < / td > < td class = "empty" id = "bot1-3-1" > < / td > < td class = "empty" id = "bot1-3-2" > < / td > < td class = "empty" id = "bot1-3-3" > < / td > < td class = "empty" id = "bot1-3-4" > < / td > < td class = "empty" id = "bot1-3-5" > < / td > < td class = "empty" id = "bot1-3-6" > < / td > < td class = "empty" id = "bot1-3-7" > < / td > < td class = "empty" id = "bot1-3-8" > < / td > < td class = "empty" id = "bot1-3-9" > < / td > < / tr >
< tr > < td > 4< / td > < td class = "empty" id = "bot1-4-0" > < / td > < td class = "empty" id = "bot1-4-1" > < / td > < td class = "empty" id = "bot1-4-2" > < / td > < td class = "empty" id = "bot1-4-3" > < / td > < td class = "empty" id = "bot1-4-4" > < / td > < td class = "empty" id = "bot1-4-5" > < / td > < td class = "empty" id = "bot1-4-6" > < / td > < td class = "empty" id = "bot1-4-7" > < / td > < td class = "empty" id = "bot1-4-8" > < / td > < td class = "empty" id = "bot1-4-9" > < / td > < / tr >
< tr > < td > 5< / td > < td class = "empty" id = "bot1-5-0" > < / td > < td class = "empty" id = "bot1-5-1" > < / td > < td class = "empty" id = "bot1-5-2" > < / td > < td class = "empty" id = "bot1-5-3" > < / td > < td class = "empty" id = "bot1-5-4" > < / td > < td class = "empty" id = "bot1-5-5" > < / td > < td class = "empty" id = "bot1-5-6" > < / td > < td class = "empty" id = "bot1-5-7" > < / td > < td class = "empty" id = "bot1-5-8" > < / td > < td class = "empty" id = "bot1-5-9" > < / td > < / tr >
< tr > < td > 6< / td > < td class = "empty" id = "bot1-6-0" > < / td > < td class = "empty" id = "bot1-6-1" > < / td > < td class = "empty" id = "bot1-6-2" > < / td > < td class = "empty" id = "bot1-6-3" > < / td > < td class = "empty" id = "bot1-6-4" > < / td > < td class = "empty" id = "bot1-6-5" > < / td > < td class = "empty" id = "bot1-6-6" > < / td > < td class = "empty" id = "bot1-6-7" > < / td > < td class = "empty" id = "bot1-6-8" > < / td > < td class = "empty" id = "bot1-6-9" > < / td > < / tr >
< tr > < td > 7< / td > < td class = "empty" id = "bot1-7-0" > < / td > < td class = "empty" id = "bot1-7-1" > < / td > < td class = "empty" id = "bot1-7-2" > < / td > < td class = "empty" id = "bot1-7-3" > < / td > < td class = "empty" id = "bot1-7-4" > < / td > < td class = "empty" id = "bot1-7-5" > < / td > < td class = "empty" id = "bot1-7-6" > < / td > < td class = "empty" id = "bot1-7-7" > < / td > < td class = "empty" id = "bot1-7-8" > < / td > < td class = "empty" id = "bot1-7-9" > < / td > < / tr >
< tr > < td > 8< / td > < td class = "empty" id = "bot1-8-0" > < / td > < td class = "empty" id = "bot1-8-1" > < / td > < td class = "empty" id = "bot1-8-2" > < / td > < td class = "empty" id = "bot1-8-3" > < / td > < td class = "empty" id = "bot1-8-4" > < / td > < td class = "empty" id = "bot1-8-5" > < / td > < td class = "empty" id = "bot1-8-6" > < / td > < td class = "empty" id = "bot1-8-7" > < / td > < td class = "empty" id = "bot1-8-8" > < / td > < td class = "empty" id = "bot1-8-9" > < / td > < / tr >
< tr > < td > 9< / td > < td class = "empty" id = "bot1-9-0" > < / td > < td class = "empty" id = "bot1-9-1" > < / td > < td class = "empty" id = "bot1-9-2" > < / td > < td class = "empty" id = "bot1-9-3" > < / td > < td class = "empty" id = "bot1-9-4" > < / td > < td class = "empty" id = "bot1-9-5" > < / td > < td class = "empty" id = "bot1-9-6" > < / td > < td class = "empty" id = "bot1-9-7" > < / td > < td class = "empty" id = "bot1-9-8" > < / td > < td class = "empty" id = "bot1-9-9" > < / td > < / tr >
< / table >