Table des matières:

Jeu de cartes Sheepshead avec Esp8266 : 4 étapes
Jeu de cartes Sheepshead avec Esp8266 : 4 étapes

Vidéo: Jeu de cartes Sheepshead avec Esp8266 : 4 étapes

Vidéo: Jeu de cartes Sheepshead avec Esp8266 : 4 étapes
Vidéo: Schafkopf | Sheepshead - How to Play : Episode 1 - Game Overview (Intro) 2024, Juillet
Anonim
Jeu de Cartes Sheepshead Avec Esp8266
Jeu de Cartes Sheepshead Avec Esp8266

Sheepshead est un jeu de cartes auquel mes oncles et tantes jouaient lors des réunions de famille. Il s'agit d'un jeu de cartes à tour de rôle originaire d'Europe. Il existe plusieurs versions, donc ma version peut être un peu différente de celle à laquelle vous jouez. Dans la version que j'ai implémentée, vous pouvez jouer à 3, 4 ou 5 joueurs, 5 étant le nombre idéal de joueurs. Le jeu utilise 32 cartes d'un jeu de 52 cartes standard.

Les règles de base peuvent être trouvées ici:

Un bref résumé des règles d'un jeu à 5 joueurs; chaque joueur reçoit 6 cartes et deux cartes sont distribuées à l'aveugle. Le joueur qui reste aux croupiers a la première chance de choisir le blind, puis le joueur suivant, etc. jusqu'à ce que quelqu'un choisisse le blind ou jusqu'à ce que tous les joueurs aient un changement à choisir. Si personne ne choisit, le jeu recommence et de nouvelles cartes sont distribuées. La personne qui choisit l'aveugle s'appelle le cueilleur. Le sélectionneur choisit un partenaire en appelant une couleur, soit Cœur, Trèfle ou Pique, mais doit avoir une carte de la même couleur en main. Le joueur qui a l'As de la couleur appelée est le partenaire. Les joueurs doivent suivre la couleur de la première carte jouée, l'atout est une couleur. Le partenaire doit jouer l'As lorsque la couleur appelée est en tête pour la première fois. Le sélectionneur et son partenaire doivent obtenir 61 points pour gagner la partie. Les joueurs qui ne sont pas le sélectionneur ou le partenaire forment une équipe et leurs points sont réunis pour les battre. Voir le lien des règles ci-dessus pour la notation.

Pour les parties à 3 et 4 joueurs, il n'y a pas de partenaire et 10 ou 8 cartes sont distribuées respectivement.

Je n'ai pas mis en place un jeu de moindre. Lorsqu'aucun joueur ne choisit, le jeu peut continuer avec le joueur le plus petit. Le vainqueur du Leaster est le joueur qui réussit au moins un tour et marque le moins de points.

Développement de jeu:

Mon inspiration pour ce projet est venue de vouloir créer une application Sheepshead et aussi apprendre jquery. J'ai également utilisé dragula.js pour faciliter le glisser-déposer des cartes. L'esp8266 est mis en mode AP. Pour vous connecter, vous avez besoin d'un périphérique WiFi pouvant se connecter au réseau "Sheepshead" et accédez au site Web

Il s'agit de mes premiers instructables donc j'apprécierais tout commentaire. J'essaierai de répondre à vos questions dès que je pourrai.

Étape 1: Construire le matériel

Construire le matériel
Construire le matériel
Construire le matériel
Construire le matériel
Construire le matériel
Construire le matériel

Exigences matérielles

Cela peut être fait avec un Wemos D1 Mini ou avec un esp8266 - esp-07 ou esp-12.

Version Esp8266:

  • esp8266 (esp-07 ou esp-12)
  • panneau de montage blanc pour esp8266 + connecteurs
  • Connecteur femelle 6 broches (en option)
  • Régulateur de tension LM317
  • (2) résistance 10K Ohm
  • Résistance de 390 Ohms
  • Résistance 220 Ohms
  • Résistance 20 Ohms
  • (2) boutons poussoirs momentanés
  • Condensateur céramique 100n
  • Condensateur électrolytique 10uF
  • Condensateur électrolytique 220uF
  • Diode 1N4002 (en option)
  • connecteur cylindrique (j'ai utilisé un montage latéral et soudé à un connecteur mâle à 3 broches)
  • Boîte à projet
  • Source de courant

J'ai inclus les fichiers ExpressSCH et ExpressPCB que j'ai utilisés pour construire le circuit. Comme vous pouvez le voir sur la photo, je n'ai pas ajouté les boutons ni utilisé le connecteur J2 (qui peut être utilisé avec le module FTDI232RL pour programmer l'esp8266). Si vous souhaitez l'utiliser comme programmeur esp8266, vous aurez besoin des boutons et du connecteur J2. Pour flasher le logiciel ou les données, vous devrez réinitialiser l'appareil (SW1) maintenez-le enfoncé tout en appuyant sur le bouton (SW2), puis relâchez le bouton (SW1) puis téléchargez le code.

Avant de placer des composants, vérifiez le circuit en testant chaque connexion. Vérifiez que le régulateur de tension délivre 3,3 volts et revérifiez toutes les connexions. Si vous n'êtes pas sûr, je vous recommande d'utiliser un Wemos D1 mini car aucune soudure n'est requise.

Étape 2: Chargement du logiciel

Chargement du logiciel
Chargement du logiciel

Logiciel

J'ai inclus le logiciel pour ce projet. Je vais donner une brève explication de chaque classe et à quoi elle sert mais je ne vais pas entrer dans les détails. Ce jeu est une preuve de concept qu'un jeu de cartes peut être réalisé sur un esp8266. Le jeu a quelques problèmes que je n'ai pas encore résolus. Par exemple, lorsqu'un utilisateur se connecte et perd la connexion, il n'est pas libéré du jeu et ne peut pas se reconnecter au jeu. Le seul moyen de contourner cela est de réinitialiser le jeu et de recommencer. Le jeu est un peu lent et parfois ne rafraîchit pas les cartes. L'utilisateur peut rafraîchir le navigateur qui devrait afficher correctement les cartes. Si l'utilisateur enregistre le lien sur son écran d'accueil (pour iPhone), le bouton d'actualisation n'est pas disponible, ce qui rend impossible l'actualisation. Parfois, il est difficile de faire glisser et déposer des cartes vers/depuis l'aveugle sur de petits appareils.

Classe Card.h et Card.ino Card

Cette classe contient la couleur de la carte, le rang, le point et quelles cartes sont l'atout.

Deck.h et Deck.ino Classe de deck

Cette classe détenait les informations sur le jeu de cartes. Il a une méthode pour mélanger le jeu et obtenir des cartes du jeu. Il utilise une graine aléatoire pour mélanger le deck

Hand.h et Hand.ino

Cette classe implémente l'interface IGame et contient des informations sur chaque main de joueur. Qui sont le cueilleur, les partenaires et le concessionnaire. Il s'agit de savoir qui est le tour, quelle est la couleur appelée, quelle est la couleur principale, quel numéro de main, le nombre de joueurs, qui est le gagnant, etc.

Player.h et Player.ino Classe Player

Cette classe contient des informations sur le joueur, comme le nom du joueur, les points de l'équipe, si le joueur a choisi ou réussi et affiche un message au joueur.

IGame.h et IGame.ino Classe d'interface IGame

Cette classe contient les classes Deck, Card et Player pour contrôler le déroulement du jeu.

Sheepshead.ino

Contient la fonction de configuration et de boucle pour servir le site Web.

fichiers login.html et login.js

Ces fichiers contrôlent le flux de la page du site Web de connexion de l'utilisateur

fichiers moutonshead.html et moutonshead.js

Ces fichiers contrôlent le flux du jeu Sheepshead du site Web.

Images de la carte

contient l'image de chaque carte, y compris le dos de la carte.

Voici une brève explication du chargement du logiciel sur l'esp8266. Il y a plusieurs exemples sur le web qui peuvent l'expliquer plus en détail. C'est ainsi que j'ai chargé le logiciel et les données à l'aide du logiciel Arduino IDE.

  • Installez le logiciel Arduino et les fichiers des cartes esp8266, voir https://github.com/esp8266/Arduino pour plus d'informations.
  • Si vous utilisez un Wemos D1 mini, réglez la taille du flash sur 4M (1M SPIFFS). Si vous utilisez un esp8266 générique esp-07 ou esp-12, définissez la taille du flash sur 1M (512 SPIFFS).
  • Vous devrez peut-être installer des bibliothèques supplémentaires dans le logiciel Arduino.
  • Pour installer les données SPIFF, suivez ce lien
  • décompressez le logiciel Sheepshead et placez-le sur votre ordinateur.
  • Démarrez le logiciel Arduino IDE et ouvrez le projet Sheepshead
  • Installez le code Sheepshead sur l'appareil esp8266 en cliquant sur le bouton de téléchargement. Si vous n'utilisez pas le Wemos D1 Mini, vous devrez peut-être mettre l'appareil en mode flash en cliquant sur le bouton de réinitialisation (SW1), maintenez-le enfoncé tout en appuyant sur le bouton (SW2), puis relâchez le bouton (SW1) puis téléchargez le code.
  • Installez les données sur le périphérique esp8266 en accédant à outils dans le menu et en cliquant sur "ESP8266 Sketch Data Upload". Vous devrez suivre les mêmes étapes que ci-dessus pour mettre l'appareil en mode flash.
  • Une fois le logiciel et les données chargés, vous êtes prêt à jouer.

Étape 3: Jouer au jeu

Jouer le jeu
Jouer le jeu
Jouer le jeu
Jouer le jeu
Jouer le jeu
Jouer le jeu

Pour vous connecter, vous avez besoin d'un appareil WiFi pouvant se connecter au réseau "Sheepshead", puis accédez au site Web

  • Les joueurs rejoignent en entrant leur nom et en cliquant sur Rejoindre. Le jeu suppose que vous aurez 5 joueurs, sinon un joueur doit sélectionner le nombre de joueurs avant que le dernier joueur ne rejoigne la partie.
  • Une fois que le dernier joueur a rejoint, les cartes sont distribuées et le jeu commence lorsque le joueur clique sur le bouton Démarrer.
  • Le jeu ne permettra pas à un joueur de jouer une carte invalide ou de jouer hors tour.
  • Lorsqu'une carte est cliquée, sa taille augmente pour être plus visible. Si vous cliquez une deuxième fois, la carte sera jouée.
  • Le nom du joueur est mis en évidence par des lettres blanches.
  • Le joueur qui jouera ensuite aura une case rouge entourant son nom et sa carte.
  • Le jeu commence en permettant à un joueur de choisir le blind ou de passer. Lorsqu'un joueur choisit le blind, il peut faire glisser et déposer les cartes du blind vers/depuis sa main. Une fois que le joueur a les cartes qu'il veut, il doit choisir une couleur dans le menu déroulant.
  • Le jeu validera qu'ils ont une carte appropriée pour la couleur appelée.
  • Le jeu commence lorsque le premier joueur joue la première carte, chaque joueur joue une carte et le gagnant de la main est affiché. Les points sont calculés et affichés pour chaque joueur/équipe.
  • Le gagnant de la main joue la première carte et chaque joueur joue une carte.
  • Le jeu continue jusqu'à ce que toutes les cartes soient jouées
  • Un gagnant est déterminé.
  • La personne suivante devient le croupier et une nouvelle partie commence.

Étape 4: Conclusion

Il s'agit de mon premier Instructable et je me réjouis de vos commentaires. Comme je l'ai dit, il s'agit d'une preuve de concept qu'un jeu de cartes peut être créé sur un appareil esp8266. Il a quelques problèmes mais est jouable. J'attends vos commentaires et suggestions avec impatience.

Conseillé: