Règles

Le jeu royal d’Ur est un jeu de course où l’objectif de chacun des joueurs est d’amener l’ensemble de ses pions en bout de chemin. Les chemins de chaque joueur se croisent sur la bande du milieu, qui sert de champ de bataille.

Une case du jeu ne peut être occupée que par un unique pion. Si le pion d’un joueur arrive sur la même case qu’un pion adverse, alors ce dernier retourne dans la main de son propriétaire. Néanmoins, un pion ne peut être placé sur une case occupée par un pion du même joueur. Il peut cependant dépasser d’autres pions (aussi bien ceux du joueur que de l’adversaire).

Les cases du plateau sont décomposées en 3 zones:

  • Les cases 1 à 4 sont les cases de départ, propres à chaque joueur.
  • Les cases 5 à 12 constituent le champ de bataille, zone de rencontre des pions de chaque joueur.
  • Les cases 13 et 14 sont les cases de fin, propres à chaque joueur et ne peuvent être occupées par un joueur adversaire.

Le déplacement est régi à chaque tour par un lancer de 4 pièces (probabilité 50/50) dont le nombre de faces décide du nombre de cases où on peut (dé)placer un pion de notre choix (depuis la main ou depuis le plateau). Un joueur doit toujours déplacer un pion et un seul (sauf si impossible ou lancer = 0).

Si un pion arrive sur une case de type rosaçe (cases 4, 8 et 14), le joueur doit relancer les pièces (mais n’est pas obligé de bouger à nouveau le même pion).

Si un pion arrive pile sur la case 15, alors celui-ci est arrivé en bout de chemin. La victoire d’un joueur se fait à la condition que tous ses pions soient arrivés en bout de chemin (7 dans la variante “British Museum: Irving vs Scott”).

La case 8 est une case rosaçe où un pion ne peut être occupé par un pion adverse.

Sujet

  • En utilisant les API de dessin 2D, dessinez dans un canvas de dimension choisie le plateau de jeu. Les cases de type rosaçe devront être dessinées avec une couleur (ou une image) différente.
  • Implémentez en JavaScript, une fonction permettant de simuler le lancer de 4 pièces et retournant le nombre de cases de déplacement du pion.
  • Implémentez une variante simplifiée du jeu sans les cases de type rosaçe:
    • placer d’un pion de la main vers la case souhaitée sur le plateau (en respectant les contraintes de placement).
    • déplacer un pion sur le plateau (en respectant les contraintes de déplacement) jusqu’au bout du chemin.
    • résolution d’un conflit avec retour du pion dans la main
    • choix des actions possibles d’un joueur
    • jeu sur la même page à 2 joueurs et avec 2 pions
  • Implémentez le jeu avec les cases de type rosaçe
  • Permettre le choix du nombre de pions en début de partie et la présence ou non de l’effet de la case 8.
  • (Optionnel): Bot pour jouer à la place du joueur 2