Commencé à planifier le dévelopement du jeu
This commit is contained in:
1 parent
51b1a4e823
commit
9e942a3db0
1 file changed
+16
-43
@@ -1,60 +1,33 @@
|
|||||||
# Écarté
|
# Écarté
|
||||||
|
|
||||||
## Étape 1
|
## Étape 1 — Jeu local
|
||||||
|
|
||||||
Objectif : pouvoir faire une partie à deux dans le même terminal.
|
Objectif : pouvoir jouer une partie complète à deux dans le même terminal.
|
||||||
|
|
||||||
- [x] Prototype « bataille simplifiée »
|
- [x] Prototype « bataille simplifiée »
|
||||||
- [ ] Préparation du jeu conforme à l’Écarté
|
- [ ] Implémenter les règles complètes de 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
|
## Étape 2 — Jeu en réseau local
|
||||||
|
|
||||||
Objectif : séparer le moteur de jeu de l’interface terminal et permettre à deux clients de jouer en réseau local.
|
Objectif : permettre à deux joueurs de jouer depuis deux terminaux différents.
|
||||||
|
|
||||||
- [ ] Séparer complètement le moteur de l’interface terminal
|
- [ ] Séparer le moteur de l’interface
|
||||||
- [ ] Définir un protocole simple entre client et serveur
|
- [ ] Créer le serveur et le client Ruby
|
||||||
- [ ] 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
|
- [ ] Jouer une partie complète sur le réseau local
|
||||||
|
|
||||||
## Étape 3
|
## Étape 3 — Jeu par Internet
|
||||||
|
|
||||||
Objectif : permettre à deux joueurs de jouer à distance par Internet.
|
Objectif : permettre à deux joueurs de jouer à distance.
|
||||||
|
|
||||||
- [ ] Préparer le serveur pour fonctionner sur le VPS
|
- [ ] Adapter le serveur au fonctionnement sur Internet
|
||||||
- [ ] Gérer plusieurs parties simultanément
|
- [ ] Gérer plusieurs parties et les reconnexions
|
||||||
- [ ] 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
|
- [ ] 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
|
## Étape 4 — Finitions
|
||||||
|
|
||||||
Objectif : améliorer le confort d’utilisation.
|
Objectif : améliorer le confort et la robustesse du jeu.
|
||||||
|
|
||||||
- [ ] Améliorer l’affichage dans le terminal
|
- [ ] Améliorer l’interface terminal
|
||||||
- [ ] Afficher clairement le tour du joueur
|
- [ ] Améliorer la gestion des erreurs et interruptions
|
||||||
- [ ] Afficher l’historique des plis
|
- [ ] Ajouter les fonctions de confort
|
||||||
- [ ] 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