Commencé à planifier le dévelopement du jeu
This commit is contained in:
1 parent
7e9fd2b3bd
commit
51b1a4e823
1 file changed
+40
-11
@@ -4,28 +4,57 @@
|
|||||||
|
|
||||||
Objectif : pouvoir faire une partie à deux dans le même terminal.
|
Objectif : pouvoir faire une partie à deux dans le même terminal.
|
||||||
|
|
||||||
- [x] Prototype “bataille simplifiée”
|
- [x] Prototype « bataille simplifiée »
|
||||||
- [ ] Préparation du jeu conforme à l’Écarté
|
- [ ] 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
|
- [ ] Choix manuel des cartes
|
||||||
- [ ] Moteur de plis
|
- [ ] Moteur de plis
|
||||||
- [ ] Validation complète des coups
|
- [ ] Validation complète des coups
|
||||||
- [ ] Phase d’écart
|
- [ ] Phase d’écart
|
||||||
- [ ] Partie complète
|
- [ ] Partie complète
|
||||||
|
- [ ] Ajouter des tests du moteur
|
||||||
|
|
||||||
## Étape 2
|
## Étape 2
|
||||||
|
|
||||||
Objectif : séparer le moteur de jeu de l’interface et rendre une partie jouable dans un navigateur en local.
|
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 et l’interface terminal
|
- [ ] Séparer complètement le moteur de l’interface terminal
|
||||||
- [ ] Ajouter un petit serveur web Ruby
|
- [ ] Définir un protocole simple entre client et serveur
|
||||||
- [ ] Créer une partie depuis le navigateur
|
- [ ] Créer un serveur Ruby
|
||||||
- [ ] Afficher la main du joueur
|
- [ ] Créer un client terminal Ruby
|
||||||
- [ ] Permettre de sélectionner une carte
|
- [ ] Permettre à deux clients de se connecter au serveur
|
||||||
- [ ] Faire valider chaque action par le moteur Ruby
|
- [ ] Créer et rejoindre une partie
|
||||||
- [ ] Gérer deux joueurs dans deux sessions/navigateurs différents
|
- [ ] Identifier les deux joueurs
|
||||||
- [ ] Jouer une partie complète en local
|
- [ ] 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
|
## Étape 3
|
||||||
|
|
||||||
Objectif : jouer à deux à distance par internet
|
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
|
||||||
|
|
||||||
Reference in new issue
Block a user