Πίνακας περιεχομένων:

Παιχνίδι καρτών Sheepshead With Esp8266: 4 βήματα
Παιχνίδι καρτών Sheepshead With Esp8266: 4 βήματα

Βίντεο: Παιχνίδι καρτών Sheepshead With Esp8266: 4 βήματα

Βίντεο: Παιχνίδι καρτών Sheepshead With Esp8266: 4 βήματα
Βίντεο: КАК СКАЗАТЬ ОВЧИНКА? #овечьеголовие (HOW TO SAY SHEEPSHEADISM? #sheepsheadism) 2024, Ιούλιος
Anonim
Παιχνίδι καρτών Sheepshead With Esp8266
Παιχνίδι καρτών Sheepshead With Esp8266

Το Sheepshead είναι ένα παιχνίδι καρτών που έπαιζαν οι θείες και οι θείοι μου κατά τη διάρκεια οικογενειακών συναθροίσεων. Πρόκειται για ένα κόλπο με παιχνίδια καρτών που προέρχονται από την Ευρώπη. Υπάρχουν αρκετές εκδόσεις, οπότε η δική μου έκδοση μπορεί να είναι λίγο διαφορετική από αυτήν που παίζετε. Στην έκδοση που εφάρμοσα μπορείτε να παίξετε με 3, 4 ή 5 παίκτες, 5 είναι ο ιδανικός αριθμός παικτών. Το παιχνίδι χρησιμοποιεί 32 κάρτες από ένα τυπικό κατάστρωμα 52 φύλλων.

Μπορείτε να βρείτε τους βασικούς κανόνες εδώ:

Μια σύντομη περίληψη των κανόνων για ένα παιχνίδι 5 παικτών. σε κάθε παίκτη μοιράζονται 6 φύλλα και δύο φύλλα μοιράζονται στους τυφλούς. Στον παίκτη που βρίσκεται στους ντίλερ αριστερά δίνεται η πρώτη ευκαιρία να επιλέξει το blind, στη συνέχεια ο επόμενος παίκτης κλπ μέχρι κάποιος να επιλέξει το blind ή μέχρι όλοι οι παίκτες να έχουν μια αλλαγή για να επιλέξουν. Εάν κανείς δεν επιλέξει το παιχνίδι ξεκινά από την αρχή και μοιράζονται νέα φύλλα. Το άτομο που επιλέγει το τυφλό ονομάζεται επιλογέας. Ο επιλογέας επιλέγει έναν συνεργάτη καλώντας ένα κοστούμι, είτε Hearts, Clubs ή Spades, αλλά πρέπει να έχει μια κάρτα με το ίδιο κοστούμι στο χέρι του. Ο παίκτης που έχει τον Άσο της στολής είναι ο συνεργάτης. Οι παίκτες πρέπει να ακολουθήσουν το παράδειγμα του πρώτου χαρτιού που παίχτηκε, το ατού είναι κοστούμι. Ο σύντροφος πρέπει να παίξει τον Άσο όταν το κουστούμι είναι επικεφαλής για πρώτη φορά. Ο επιλογέας και ο συνεργάτης πρέπει να πάρουν 61 πόντους για να κερδίσουν το παιχνίδι. Οι παίκτες που δεν είναι ο επιλογέας ή ο συνεργάτης σχηματίζουν μια ομάδα και οι πόντοι τους ενώνονται για να τους κερδίσουν. Ανατρέξτε στον παραπάνω σύνδεσμο κανόνων για βαθμολογία.

Για παιχνίδι 3 και 4 παικτών δεν υπάρχει συνεργάτης και μοιράζονται 10 ή 8 φύλλα αντίστοιχα.

Δεν εφάρμοσα ένα παιχνίδι leaster. Όταν κανένας παίκτης δεν επιλέγει, το παιχνίδι θα μπορούσε να συνεχιστεί από τον παίκτη. Ο νικητής του Leaster είναι ο παίκτης που κάνει τουλάχιστον ένα κόλπο και σκοράρει τον λιγότερο αριθμό πόντων.

Ανάπτυξη παιχνιδιού:

Η έμπνευσή μου για αυτό το έργο προήλθε από την επιθυμία να δημιουργήσω μια εφαρμογή Sheepshead και επίσης να μάθω jquery. Χρησιμοποίησα επίσης το dragula.js για να βοηθήσω με το drag and drop των καρτών. Το esp8266 τίθεται σε λειτουργία AP. Για να συνδεθείτε, χρειάζεστε μια συσκευή WiFi που μπορεί να συνδεθεί στο δίκτυο "Sheepshead" και να μεταβείτε στον ιστότοπο

Αυτό είναι το πρώτο μου διδακτικό, οπότε θα εκτιμούσα κάθε σχόλιο. Θα προσπαθήσω να απαντήσω στις ερωτήσεις σας όταν μπορώ.

Βήμα 1: Δημιουργία υλικού

Δημιουργία υλικού
Δημιουργία υλικού
Δημιουργία υλικού
Δημιουργία υλικού
Δημιουργία υλικού
Δημιουργία υλικού

Απαιτήσεις υλικού

Αυτό μπορεί να γίνει με Wemos D1 Mini ή με esp8266-esp-07 ή esp-12.

Κατασκευή Esp8266:

  • esp8266 (esp-07 ή esp-12)
  • λευκή σανίδα τοποθέτησης για συνδετήρες esp8266 +
  • Θηλυκό βύσμα 6 ακίδων (προαιρετικό)
  • Ρυθμιστής τάσης LM317
  • (2) αντίσταση 10K Ohm
  • Αντίσταση 390 Ohm
  • Αντίσταση 220 Ohm
  • Αντίσταση 20 Ohm
  • (2) στιγμιαία κουμπιά
  • 100n κεραμικό πυκνωτή
  • Ηλεκτρολυτικός πυκνωτής 10uF
  • Ηλεκτρολυτικός πυκνωτής 220uF
  • Δίοδος 1N4002 (προαιρετικό)
  • σύνδεσμος βαρελιού (χρησιμοποίησα πλαϊνή βάση και κόλλησα σε αρσενικό συνδετήρα 3 ακίδων)
  • Κουτί έργου
  • Παροχή ηλεκτρικού ρεύματος

Περιέλαβα τα αρχεία ExpressSCH και ExpressPCB που χρησιμοποίησα για την κατασκευή του κυκλώματος. Όπως μπορείτε να δείτε από την εικόνα δεν πρόσθεσα τα κουμπιά ή δεν χρησιμοποίησα τη σύνδεση J2 (η οποία μπορεί να χρησιμοποιηθεί με τη μονάδα FTDI232RL για τον προγραμματισμό του esp8266). Εάν θέλετε να το χρησιμοποιήσετε ως προγραμματιστή esp8266 θα χρειαστείτε τα κουμπιά και τη σύνδεση J2. Για να αναβοσβήνετε λογισμικό ή δεδομένα, θα χρειαστεί να επαναφέρετε τη συσκευή (SW1), κρατήστε την πατημένη ενώ πατάτε το κουμπί (SW2), στη συνέχεια αφήστε το κουμπί (SW1) και στη συνέχεια ανεβάστε τον κωδικό.

Πριν από την τοποθέτηση οποιωνδήποτε εξαρτημάτων, επαληθεύστε το κύκλωμα δοκιμάζοντας κάθε σύνδεση. Βεβαιωθείτε ότι ο ρυθμιστής τάσης παράγει 3,3 βολτ και ελέγξτε ξανά όλες τις συνδέσεις. Εάν δεν είστε σίγουροι, προτείνω να χρησιμοποιήσετε ένα Wemos D1 mini καθώς δεν απαιτείται συγκόλληση.

Βήμα 2: Φόρτωση του Λογισμικού

Φόρτωση του Λογισμικού
Φόρτωση του Λογισμικού

Λογισμικό

Έχω συμπεριλάβει το λογισμικό για αυτό το έργο. Θα δώσω μια σύντομη εξήγηση για κάθε τάξη και σε τι χρησιμοποιείται, αλλά δεν πρόκειται να μπω σε λεπτομέρειες. Αυτό το παιχνίδι είναι μια απόδειξη της έννοιας ότι ένα παιχνίδι καρτών μπορεί να γίνει σε ένα esp8266. Το παιχνίδι έχει μερικά θέματα που δεν έχω επιλύσει ακόμα. Για παράδειγμα, όταν ένας χρήστης συνδεθεί και χάσει τη σύνδεση, δεν απελευθερώνεται από το παιχνίδι και δεν μπορεί να επανασυνδεθεί με το παιχνίδι. Ο μόνος τρόπος για να γίνει αυτό είναι να επαναφέρετε το παιχνίδι και να ξεκινήσετε από την αρχή. Το παιχνίδι είναι λίγο αργό και μερικές φορές δεν ανανεώνει τις κάρτες. Ο χρήστης μπορεί να ανανεώσει το πρόγραμμα περιήγησης το οποίο θα πρέπει να εμφανίζει σωστά τις κάρτες. Εάν ο χρήστης αποθηκεύσει τον σύνδεσμο στην αρχική του οθόνη (για iPhone), τότε το κουμπί ανανέωσης δεν είναι διαθέσιμο καθιστώντας αδύνατη την ανανέωση. Μερικές φορές είναι δύσκολο να μεταφέρετε και να αποθέτετε κάρτες από/προς τα τυφλά σε μικρές συσκευές.

Κλάση Card.h και Card.ino Card

Αυτή η κατηγορία κρατά το κουστούμι, την κατάταξη, το πόντο και ποιες κάρτες είναι ατού.

Τάξη Deck.h και Deck.ino Deck

Αυτή η τάξη κρατούσε τις πληροφορίες της τράπουλας της κάρτας. Διαθέτει μέθοδο ανακατέματος της τράπουλας και λήψης καρτών από την τράπουλα. Χρησιμοποιεί έναν τυχαίο σπόρο για να ανακατέψει το κατάστρωμα

Hand.h και Hand.ino

Αυτή η κατηγορία υλοποιεί τη διεπαφή IGame και περιέχει πληροφορίες για κάθε χέρι παίκτη. Ποιοι είναι ο Διαλέκτης, οι Συνεργάτες και ο Έμπορος. Κρατάει ποιος είναι η σειρά, πώς λέγεται το κοστούμι, τι είναι το κοστούμι μολύβδου, τι αριθμός χεριών, ο αριθμός των παικτών, ποιος είναι ο νικητής κ.λπ.

Player.h και Player.ino Κατηγορία παίκτη

Αυτή η κατηγορία περιέχει πληροφορίες παίκτη, όπως το όνομα του παίκτη, τα σημεία ομάδας, εάν ο παίκτης έχει επιλέξει ή περάσει και εμφανίζει μήνυμα στον παίκτη.

IGame.h και IGame.ino Τάξη διεπαφής IGame

Αυτή η κατηγορία περιέχει τις τάξεις Deck, Card και Player για τον έλεγχο της ροής του παιχνιδιού.

Sheepshead.ino

Διατηρεί τη λειτουργία εγκατάστασης και βρόχου για την προβολή της ιστοσελίδας.

αρχεία login.html και login.js

Αυτά τα αρχεία ελέγχουν τη ροή της ιστοσελίδας σύνδεσης χρήστη

sheepshead.html και αρχεία sheepshead.js

Αυτά τα αρχεία ελέγχουν τη ροή του παιχνιδιού προβάτων της ιστοσελίδας.

Εικόνες καρτών

κρατά την εικόνα κάθε κάρτας συμπεριλαμβανομένου του πίσω μέρους της κάρτας.

Ακολουθεί μια σύντομη επεξήγηση φόρτωσης λογισμικού στο esp8266. Υπάρχουν πολλά παραδείγματα στον ιστό που μπορούν να το εξηγήσουν με περισσότερες λεπτομέρειες. Έτσι φόρτωσα το λογισμικό και τα δεδομένα χρησιμοποιώντας το λογισμικό Arduino IDE.

  • Εγκαταστήστε το λογισμικό Arduino και τα αρχεία των πλακέτων esp8266, ανατρέξτε στη διεύθυνση https://github.com/esp8266/Arduino για περισσότερες πληροφορίες.
  • Εάν χρησιμοποιείτε Wemos D1 mini, ορίστε το μέγεθος του φλας σε 4M (1M SPIFFS). Εάν χρησιμοποιείτε ένα γενικό esp8266 esp-07 ή esp-12, ορίστε το μέγεθος του Flash σε 1M (512 SPIFFS).
  • Mayσως χρειαστεί να εγκαταστήσετε μερικές πρόσθετες βιβλιοθήκες στο λογισμικό Arduino.
  • Για να εγκαταστήσετε τα δεδομένα SPIFF ακολουθήστε αυτόν τον σύνδεσμο
  • αποσυμπιέστε το λογισμικό Sheepshead και τοποθετήστε τον στον υπολογιστή σας.
  • Ξεκινήστε το λογισμικό Arduino IDE και ανοίξτε το έργο Sheepshead
  • Εγκαταστήστε τον κωδικό Sheepshead στη συσκευή esp8266 κάνοντας κλικ στο κουμπί μεταφόρτωσης. Εάν δεν χρησιμοποιείτε το Wemos D1 Mini, ίσως χρειαστεί να θέσετε τη συσκευή σε λειτουργία flash κάνοντας κλικ στο κουμπί επαναφοράς (SW1), κρατώντας την πατημένη ενώ πατάτε το κουμπί (SW2), στη συνέχεια αφήνοντας το κουμπί (SW1) και στη συνέχεια ανεβάστε τον κωδικό.
  • Εγκαταστήστε τα δεδομένα στη συσκευή esp8266 μεταβαίνοντας στα εργαλεία του μενού και κάνοντας κλικ στο "ESP8266 Sketch Data Upload". Θα χρειαστεί να ακολουθήσετε τα ίδια βήματα με τα παραπάνω για να θέσετε τη συσκευή σε λειτουργία φλας.
  • Μόλις φορτωθεί το λογισμικό και τα δεδομένα, είστε έτοιμοι να παίξετε το παιχνίδι.

Βήμα 3: Παίζοντας το παιχνίδι

Παίζοντας το Παιχνίδι
Παίζοντας το Παιχνίδι
Παίζοντας το Παιχνίδι
Παίζοντας το Παιχνίδι
Παίζοντας το Παιχνίδι
Παίζοντας το Παιχνίδι

Για να συνδεθείτε χρειάζεστε μια συσκευή WiFi που μπορεί να συνδεθεί στο δίκτυο "Sheepshead" και, στη συνέχεια, μεταβείτε στον ιστότοπο

  • Οι παίκτες συμμετέχουν εισάγοντας το όνομά τους και κάνοντας κλικ στο Join. Το παιχνίδι υποθέτει ότι θα έχετε 5 παίκτες, αν όχι ένας παίκτης πρέπει να επιλέξει τον αριθμό των παικτών πριν ο τελευταίος παίκτης ενταχθεί στο παιχνίδι.
  • Μόλις ο τελευταίος παίκτης ενταχθεί, τα φύλλα μοιράζονται και το παιχνίδι ξεκινά όταν ο παίκτης κάνει κλικ στο κουμπί Έναρξη.
  • Το παιχνίδι δεν θα αφήσει έναν παίκτη να παίξει ένα άκυρο φύλλο ή να παίξει εκτός σειράς.
  • Όταν κάνετε κλικ σε μια κάρτα, θα αυξηθεί σε μέγεθος για να είναι πιο ορατή. Εάν κάνετε κλικ για δεύτερη φορά, η κάρτα θα παιχτεί.
  • Το όνομα των παικτών επισημαίνεται με λευκά γράμματα.
  • Ο παίκτης που θα παίξει στη συνέχεια θα έχει ένα κόκκινο κουτί που περιβάλλει το όνομα και την κάρτα του.
  • Το παιχνίδι ξεκινά επιτρέποντας σε έναν παίκτη να επιλέξει το blind ή να περάσει. Όταν ένας παίκτης επιλέγει το blind μπορεί να σέρνει και να ρίξει τα φύλλα από το blind στο/από εκεί. Μόλις ο επιλογέας έχει τις κάρτες που θέλει, πρέπει να επιλέξει ένα κουστούμι από το αναπτυσσόμενο μενού.
  • Το παιχνίδι θα επιβεβαιώσει ότι έχουν μια κατάλληλη κάρτα για το κουστούμι που καλείται.
  • Το παιχνίδι ξεκινά όταν ο πρώτος παίκτης παίζει το πρώτο φύλλο, κάθε παίκτης παίζει ένα φύλλο και εμφανίζεται ο νικητής του χεριού. Οι πόντοι υπολογίζονται και εμφανίζονται για κάθε παίκτη/ομάδα.
  • Ο νικητής του χεριού παίζει το πρώτο φύλλο και κάθε παίκτης παίζει ένα φύλλο.
  • Το παιχνίδι συνεχίζεται μέχρι να παιχτούν όλα τα χαρτιά
  • Ο νικητής καθορίζεται.
  • Το επόμενο άτομο γίνεται ο ντίλερ και ξεκινά ένα νέο παιχνίδι.

Βήμα 4: Συμπέρασμα

Αυτό είναι το πρώτο μου εκπαιδευτικό και καλωσορίζω τα σχόλιά σας. Όπως είπα, αυτή είναι μια απόδειξη ως προς την έννοια ότι ένα παιχνίδι καρτών μπορεί να γίνει σε μια συσκευή esp8266. Έχει λίγα θέματα αλλά μπορεί να παιχτεί. Περιμένω τα σχόλια και τις προτάσεις σας.

Συνιστάται: