Sisällysluettelo:
- Vaihe 1: Laitteiston rakentaminen
- Vaihe 2: Ohjelmiston lataaminen
- Vaihe 3: Pelin pelaaminen
- Vaihe 4: Johtopäätös
Video: Lammaspää korttipeli Esp8266: 4 askelta
2024 Kirjoittaja: John Day | [email protected]. Viimeksi muokattu: 2024-01-30 09:03
Sheepshead on korttipeli, jota tätini ja setäni leikkisivät perhejuhlien aikana. Se on temppu ottamalla korttipeli, joka on peräisin Euroopasta. Versioita on useita, joten minun versioni saattaa olla hieman erilainen kuin pelaamasi. Käyttämässäni versiossa voit pelata 3, 4 tai 5 pelaajaa, joista 5 on ihanteellinen määrä pelaajia. Peli käyttää 32 korttia tavallisesta 52 kortin pakasta.
Perussäännöt löytyvät täältä:
Lyhyt yhteenveto viiden pelaajan pelin säännöistä; jokaiselle pelaajalle jaetaan 6 korttia ja kaksi korttia sokeille. Jäljelle jääneiden jälleenmyyjien pelaajalle annetaan ensimmäinen mahdollisuus valita sokea, sitten seuraava pelaaja jne. Kunnes joku valitsee sokean tai kunnes kaikilla pelaajilla on vaihtovalinta. Jos kukaan ei valitse peli alkaa alusta ja jaetaan uudet kortit. Sokean poimijaa kutsutaan poimijaksi. Keräilijä valitsee kumppanin kutsumalla puvun, joko sydämet, klubit tai pata, mutta hänen on pidettävä kädessään saman puvun kortti. Pelaaja, jolla on kutsutun pään ässä, on kumppani. Pelaajien on seurattava ensimmäisen pelatun kortin esimerkkiä, trump on puku. Kumppanin on pelattava ässä, kun kutsuttua maata johdetaan ensimmäistä kertaa. Valitsijan ja kumppanin on saatava 61 pistettä voittaakseen pelin. Pelaajat, jotka eivät ole poimija tai kumppani, muodostavat joukkueen ja heidän pisteensä yhdistetään voittaakseen heidät. Katso pisteytysohjeet yllä olevasta linkistä.
Kolmen ja neljän pelaajan peleissä ei ole kumppania ja 10 tai 8 korttia jaetaan vastaavasti.
En toteuttanut leaster -peliä. Jos kukaan pelaaja ei valitse peliä, hän voi jatkaa peliä pelaajan avulla. Huonoin voittaja on pelaaja, joka ottaa vähintään yhden temppun ja saa vähiten pisteitä.
Pelin kehitys:
Inspiraationi tähän projektiin tuli halusta luoda Sheepshead -sovellus ja myös oppia jquery. Käytin myös dragula.js -apua korttien vetämisessä. Esp8266 on asetettu AP -tilaan. Yhteyden muodostamiseen tarvitset WiFi -laitteen, joka voi muodostaa yhteyden "Sheepshead" -verkkoon ja siirtyä osoitteeseen
Tämä on ensimmäinen ohjeeni, joten otan mielelläni vastaan palautetta. Yritän vastata kysymyksiisi kun voin.
Vaihe 1: Laitteiston rakentaminen
Laitteistovaatimukset
Tämä voidaan tehdä Wemos D1 Minillä tai esp8266: lla-esp-07 tai esp-12.
Esp8266 -rakenne:
- esp8266 (esp-07 tai esp-12)
- valkoinen asennuslevy esp8266 + -liittimille
- 6-nastainen naarasliitin (valinnainen)
- LM317 jännitesäädin
- (2) 10 K ohmin vastus
- 390 ohmin vastus
- 220 ohmin vastus
- 20 ohmin vastus
- (2) hetkelliset painikkeet
- 100n keraaminen kondensaattori
- 10uF elektrolyyttikondensaattori
- 220uF elektrolyyttikondensaattori
- 1N4002 -diodi (valinnainen)
- tynnyrin liitin (käytin sivukiinnitystä ja juotettu 3 -napaiseen urosliittimeen)
- Projektilaatikko
- Virtalähde
Sisällyin ExpressSCH- ja ExpressPCB -tiedostot, joita käytin piirin rakentamiseen. Kuten kuvasta näkyy, en lisännyt painikkeita tai käyttänyt J2 -liitintä (jota voidaan käyttää FTDI232RL -moduulin kanssa esp8266: n ohjelmointiin). Jos haluat käyttää tätä esp8266 -ohjelmoijana, tarvitset painikkeet ja J2 -liittimen. Jos haluat flash -ohjelmiston tai tiedot, sinun on nollattava laite (SW1) pitämällä sitä painettuna samalla, kun painat (SW2) -painiketta, vapauttamalla sitten (SW1) -painike ja lataamalla koodi.
Ennen osien sijoittamista tarkista piiri testaamalla jokainen liitäntä. Varmista, että jännitesäädin antaa 3,3 volttia ja tarkista kaikki liitännät. Jos olet epävarma, suosittelen Wemos D1 minin käyttöä, koska juottamista ei tarvita.
Vaihe 2: Ohjelmiston lataaminen
Ohjelmisto
Lisäsin ohjelmiston tähän projektiin. Annan lyhyen selityksen jokaisesta luokasta ja mihin sitä käytetään, mutta en aio mennä yksityiskohtiin. Tämä peli on todiste siitä, että korttipeli voidaan tehdä esp8266: lla. Pelissä on muutamia ongelmia, joita en ole vielä selvittänyt. Esimerkiksi kun käyttäjä kirjautuu sisään ja yhteys katkeaa, häntä ei vapauteta pelistä eikä hän voi muodostaa yhteyttä peliin uudelleen. Ainoa tapa kiertää tämä on nollata peli ja aloittaa alusta. Peli on hieman hidasta eikä toisinaan päivitä kortteja. Käyttäjä voi päivittää selaimen, jonka pitäisi näyttää kortit oikein. Jos käyttäjä tallentaa linkin aloitusnäyttöön (iPhonelle), päivityspainike ei ole käytettävissä, joten päivitys on mahdotonta. Joskus on vaikeaa vetää ja pudottaa kortteja sokeiden päälle/pois pieniltä laitteilta.
Card.h ja Card.ino Card -luokka
Tällä luokalla on korttipuku, sijoitus, piste ja mitkä kortit ovat trump.
Deck.h ja Deck.ino Deck luokka
Tämä luokka säilytti korttipakan tiedot. Siinä on menetelmä sekoittaa pakkaa ja saada kortteja pakasta. Se käyttää satunnaisia siemeniä kannen sekoittamiseen
Hand.h ja Hand.ino
Tämä luokka toteuttaa IGame -käyttöliittymän ja sisältää tietoja jokaisesta pelaajan kädestä. Kuka on poimija, kumppanit ja jälleenmyyjä. Se pitää kiinni siitä, kenen vuoro on, mitä kutsutaan pukuksi, mikä on pääpuku, mikä käden numero, pelaajien lukumäärä, kuka on voittaja jne.
Player.h ja Player.ino Pelaajaluokka
Tämä luokka sisältää pelaajatiedot, kuten pelaajan nimen, joukkueen pisteet, jos pelaaja valitsi tai ohitti ja näyttää viestin pelaajalle.
IGame.h ja IGame.ino IGame -käyttöliittymäluokka
Tämä luokka pitää pakan-, kortti- ja pelaajaluokat pelin kulun hallitsemiseksi.
Sheepshead.ino
Sisältää asennus- ja silmukkatoiminnon palvelemaan verkkosivustoa.
login.html ja login.js tiedostot
Nämä tiedostot ohjaavat käyttäjän kirjautumissivuston sivun kulkua
sheepshead.html ja sheepshead.js -tiedostot
Nämä tiedostot hallitsevat verkkosivuston lampaapelien kulkua.
Korttikuvat
sisältää jokaisen kortin kuvan, mukaan lukien kortin takaosa.
Tässä on lyhyt selitys ohjelmiston lataamisesta esp8266 -laitteeseen. Verkossa on useita esimerkkejä, jotka voivat selittää sen yksityiskohtaisemmin. Näin latasin ohjelmiston ja tiedot Arduino IDE -ohjelmistolla.
- Asenna Arduino -ohjelmisto ja esp8266 -levytiedostot. Lisätietoja on osoitteessa
- Jos käytät Wemos D1 miniä, aseta salaman kooksi 4M (1M SPIFFS). Jos käytät yleistä esp8266 esp-07 tai esp-12, aseta salaman kooksi 1 M (512 SPIFFS).
- Saatat joutua asentamaan joitain lisäkirjastoja Arduino -ohjelmistoon.
- Asenna SPIFF-tiedot tästä linkistä
- Pura Sheepshead -ohjelmisto ja aseta se tietokoneellesi.
- Käynnistä Arduino IDE -ohjelmisto ja avaa Sheepshead -projekti
- Asenna Sheepshead -koodi esp8266 -laitteeseen napsauttamalla latauspainiketta. Jos et käytä Wemos D1 Mini -laitetta, sinun on ehkä asetettava laite salamatilaan napsauttamalla nollauspainiketta (SW1) ja pitämällä sitä painettuna samalla, kun painat (SW2) -painiketta, vapauttamalla sitten (SW1) -painike ja lataamalla koodi.
- Asenna tiedot esp8266 -laitteeseen siirtymällä valikon työkaluihin ja napsauttamalla "ESP8266 Sketch Data Upload". Sinun on suoritettava samat vaiheet kuin yllä laittaaksesi laitteen salamatilaan.
- Kun ohjelmisto ja tiedot on ladattu, olet valmis pelaamaan peliä.
Vaihe 3: Pelin pelaaminen
Yhdistämiseen tarvitset WiFi -laitteen, joka voi muodostaa yhteyden "Sheepshead" -verkkoon, ja siirry sitten osoitteeseen
- Pelaajat liittyvät kirjoittamalla nimensä ja napsauttamalla Liity. Pelissä oletetaan, että sinulla on viisi pelaajaa, ellei pelaajan tarvitse valita pelaajien määrää ennen kuin viimeinen pelaaja liittyy peliin.
- Kun viimeinen pelaaja liittyy, kortit jaetaan ja peli alkaa, kun pelaaja napsauttaa Käynnistä -painiketta.
- Peli ei anna pelaajan pelata virheellistä korttia tai pelata vuorostaan.
- Kun korttia napsautetaan, sen koko kasvaa näkyvämmäksi. Jos napsautat toisen kerran, kortti pelataan.
- Pelaajien nimi on korostettu valkoisilla kirjaimilla.
- Seuraavaksi pelaavan pelaajan nimeä ja korttia ympäröi punainen laatikko.
- Peli alkaa antamalla pelaajan valita sokea tai syöttää. Kun pelaaja valitsee blindin, hän voi vetää ja pudottaa kortit sokeasta/sieltä käsiin. Kun poimijalla on haluamansa kortit, heidän on valittava avattavasta valikosta puku.
- Peli vahvistaa, että heillä on sopiva kortti kutsutulle pelille.
- Peli alkaa, kun ensimmäinen pelaaja pelaa ensimmäisen kortin, jokainen pelaaja pelaa yhden kortin ja käden voittaja näytetään. Pisteet lasketaan ja näytetään jokaiselle pelaajalle/joukkueelle.
- Käden voittaja pelaa ensimmäisen kortin ja jokainen pelaaja yhden kortin.
- Peli jatkuu, kunnes kaikki kortit on pelattu
- Voittaja selvitetään.
- Seuraavasta henkilöstä tulee jakaja ja uusi peli alkaa.
Vaihe 4: Johtopäätös
Tämä on ensimmäinen opettavainen ja otan mielelläni vastaan palautetta. Kuten sanoin, tämä on todiste siitä, että korttipeli voidaan tehdä esp8266 -laitteella. Siinä on muutamia ongelmia, mutta se on pelattavissa. Odotan kommenttejasi ja ehdotuksiasi.
Suositeltava:
Kaapin kiinnitys ESP32 ja ESP8266: 7 askelta
Kaapin kiinnitys ESP32- ja ESP8266 -laitteille: Joskus voi olla hyödyllistä asentaa ESP32- tai ESP8266 -pohjainen projekti kaappiin ja antaa sille ammattimainen ilme. Tämä pieni kotelosarja auttaa sinua tuomaan ESP -pohjaisen projektisi DIN -kiskoon.Sarja sisältää prototyyppisen piirilevyn, jossa on
Servon ohjaaminen MPU6050: n avulla Arduinon ja ESP8266: n välillä HC-12: 6 askelta
Servon ohjaaminen MPU6050: n avulla Arduinon ja ESP8266: n välillä HC-12: Tässä projektissa ohjaamme servomoottorin asemaa mpu6050: n ja HC-12: n avulla Arduino UNO: n ja ESP8266 NodeMCU: n väliseen tiedonsiirtoon
IoT -sääasema RPi: llä ja ESP8266: 10 askelta
IoT -sääasema RPi: n ja ESP8266: n avulla: Aiemmissa opetusohjelmissa olemme leikkineet NodeMCU: lla, antureilla ja oppineet keräämään ja kirjaamaan tietoja ThingSpeak (esineiden internet (IoT)) -alustalla, jonka avulla voit kerätä ja tallentaa anturitietoja pilveen ja kehittää IoT -sovelluksia): IOT
Blynk ESP8266: 4 askelta
Blynk ESP8266: Blynk on esineiden internet -alusta, jonka avulla laitteiston etähallinta ja tietojen visualisointi on erittäin helppoa. Voit luoda omia käyttöliittymiä ilmaisella Blynk -sovelluksella. Jokainen WiFi, Bluetooth/BLE, Ethernet ja sarjalaite pystyvät liittämään
WiFi LED -nauha + lämpötila -anturi ESP8266: 6 askelta
WiFi -LED -nauha + lämpötila -anturi ESP8266: llä: Tässä opetusohjelmassa kuvataan vaiheet ESP8266: n asettamiseksi ja sen saamiseksi puhumaan sekä lämpötila -anturille että LED -nauhalle, samalla kun se voi myös vastaanottaa tuloja ja lähettää lähtöä MQTT: n kautta WiFi: n kautta. Hanke tehtiin Cal Poly Sanissa järjestetylle kurssille