Écarté

Étape 1

Objectif : pouvoir faire une partie à deux dans le même terminal.

  • Prototype « bataille simplifiée »
  • Préparation du jeu conforme à l’Écarté
    • Distribuer cinq cartes à chaque joueur
    • Conserver le talon
    • Retourner la carte déterminant l’atout
  • Choix manuel des cartes
  • Moteur de plis
  • Validation complète des coups
  • Phase d’écart
  • Partie complète
  • Ajouter des tests du moteur

Étape 2

Objectif : séparer le moteur de jeu de l’interface terminal et permettre à deux clients de jouer en réseau local.

  • Séparer complètement le moteur de l’interface terminal
  • Définir un protocole simple entre client et serveur
  • Créer un serveur Ruby
  • Créer un client terminal Ruby
  • Permettre à deux clients de se connecter au serveur
  • Créer et rejoindre une partie
  • Identifier les deux joueurs
  • Transmettre les actions des joueurs au serveur
  • Faire valider tous les coups par le moteur côté serveur
  • Transmettre l’état de la partie aux clients
  • Jouer une partie complète sur le réseau local

Étape 3

Objectif : permettre à deux joueurs de jouer à distance par Internet.

  • Préparer le serveur pour fonctionner sur le VPS
  • Gérer plusieurs parties simultanément
  • Générer un identifiant permettant de rejoindre une partie
  • Gérer proprement les déconnexions
  • Permettre la reconnexion à une partie
  • Dockeriser le serveur
  • Déployer le serveur sur le VPS
  • Sécuriser et configurer l’accès réseau
  • Rendre une partie complète jouable à distance

Étape 4

Objectif : améliorer le confort d’utilisation.

  • Améliorer l’affichage dans le terminal
  • Afficher clairement le tour du joueur
  • Afficher l’historique des plis
  • Ajouter des messages d’erreur explicites
  • Permettre d’abandonner une partie
  • Permettre de rejouer
  • Gérer proprement les interruptions du client
S
Description
No description provided
Readme
669 KiB
0 Stars 1 Watchers 0 Forks
Languages
Ruby 100%