Sadržaj:

Ovčarska kartaška igra s Esp8266: 4 koraka
Ovčarska kartaška igra s Esp8266: 4 koraka

Video: Ovčarska kartaška igra s Esp8266: 4 koraka

Video: Ovčarska kartaška igra s Esp8266: 4 koraka
Video: Card game by NFC+Bluetooth+Android APP 2024, Juli
Anonim
Ovčja kartaška igra s Esp8266
Ovčja kartaška igra s Esp8266

Sheepshead je kartaška igra koju bi moje tetke i ujaci igrali tokom porodičnih okupljanja. To je trik uzimanje kartaških igara nastalih u Evropi. Postoji nekoliko verzija pa bi moja verzija mogla biti malo drugačija od one koju svirate. U verziji koju sam implementirao možete igrati s 3, 4 ili 5 igrača, od kojih je 5 idealan broj igrača. Igra koristi 32 karte iz standardnog špila od 52 karte.

Osnovna pravila možete pronaći ovdje:

Kratak sažetak pravila za igru za 5 igrača; svakom igraču se dijeli 6 karata, a dvije karte slijepe. Igrač lijevo od djelitelja ima prvu priliku da izabere blinda, zatim sljedećeg igrača itd. Sve dok neko ne izabere blinda ili dok svi igrači nemaju pravo promjene. Ako niko ne odabere igru počinje ispočetka i dijele se nove karte. Osoba koja bira blindira se naziva berač. Berač bira partnera pozivom na odijelo, bilo Srca, Klubovi ili Pikovi, ali mora imati u ruci kartu iste boje. Igrač koji ima As pozvane boje je partner. Igrači moraju slijediti primjer prve odigrane karte, adut je odijelo. Partner mora igrati As kada prvi put vodi pozvanu boju. Berač i partner moraju osvojiti 61 bod da bi osvojili igru. Igrači koji nisu berači ili partner čine tim i njihovi bodovi se spajaju kako bi ih pobijedili. Za bodovanje pogledajte gornju vezu pravila.

U igri za 3 i 4 igrača nema partnera, a dijeli se 10 ili 8 karata.

Nisam implementirao igru leaster. Kad nijedan igrač ne izabere igru, igra se može nastaviti. Najmanji pobjednik je igrač koji izvede barem jedan trik i postigne najmanje bodova.

Razvoj igre:

Moja inspiracija za ovaj projekat došla je iz želje da napravim aplikaciju Sheepshead i naučim jquery. Također sam koristio dragula.js za pomoć pri povlačenju i ispuštanju kartica. Esp8266 je prebačen u AP način rada. Za povezivanje vam je potreban WiFi uređaj koji se može povezati na mrežu "Sheepshead" i otići na https://191.168.1.1 web stranicu.

Ovo su moje prve instrukcije pa bih bio zahvalan na svakoj povratnoj informaciji. Pokušaću da odgovorim na vaša pitanja kad budem mogla.

Korak 1: Izgradnja hardvera

Izgradnja hardvera
Izgradnja hardvera
Izgradnja hardvera
Izgradnja hardvera
Izgradnja hardvera
Izgradnja hardvera

Hardverski zahtevi

Ovo se može napraviti sa Wemos D1 Mini ili sa esp8266-esp-07 ili esp-12.

Esp8266 izrada:

  • esp8266 (esp-07 ili esp-12)
  • bijela montažna ploča za konektore esp8266 +
  • 6-polni ženski konektor (opcionalno)
  • Regulator napona LM317
  • (2) 10K ohmski otpornik
  • 390 Ohm Resistor
  • 220 Ohm Resistor
  • 20 Ohm Resistor
  • (2) trenutni tasteri
  • 100n keramički kondenzator
  • 10uF elektrolitički kondenzator
  • Elektrolitički kondenzator 220uF
  • 1N4002 dioda (opcionalno)
  • bačvasti konektor (koristio sam bočni nosač i lemljen na 3 -polni muški konektor)
  • Projektna kutija
  • Napajanje strujom

Uključio sam datoteke ExpressSCH i ExpressPCB koje sam koristio za izradu kola. Kao što vidite sa slike, nisam dodao dugmad niti koristio J2 konektor (koji se može koristiti sa modulom FTDI232RL za programiranje esp8266). Ako ovo želite koristiti kao programer esp8266, trebat će vam gumbi i konektor J2. Za fleširanje softvera ili podataka morat ćete resetirati uređaj (SW1) i držati ga pritisnutim dok pritisnete tipku (SW2), zatim otpustiti (SW1) i zatim učitati kôd.

Prije postavljanja bilo koje komponente provjerite krug testiranjem svake veze. Provjerite daje li regulator napona 3,3 V i provjerite sve veze. Ako niste sigurni, preporučujem upotrebu Wemos D1 mini jer nije potrebno lemljenje.

Korak 2: Učitavanje softvera

Učitavanje softvera
Učitavanje softvera

Softver

Uključio sam softver za ovaj projekat. Daću kratko objašnjenje svakog razreda i za šta se koristi, ali neću ulaziti u detalje. Ova igra je dokaz koncepta da se kartaška igra može napraviti na esp8266. Igra ima nekoliko problema koje još nisam riješio. Na primjer, kada se korisnik prijavi i izgubi vezu, oni se ne oslobađaju igre i ne mogu se ponovo povezati s igrom. Jedini način da to zaobiđete je resetiranje igre i početak iznova. Igra je malo spora i ponekad ne osvježava kartice. Korisnik može osvježiti preglednik koji bi trebao ispravno prikazati kartice. Ako korisnik spremi vezu na svoj početni ekran (za iPhone), gumb za osvježavanje nije dostupan pa onemogućuje osvježavanje. Ponekad je teško prevući i ispustiti kartice na/sa slijepih na malim uređajima.

Card.h i Card.ino Klasa kartice

Ova klasa sadrži kartu, rang, bod i karte koje su aduti.

Deck.h i Deck.ino Klasa palube

Ova klasa je držala podatke o palubi za kartice. Ima način miješanja špila i vađenja karata iz špila. Koristi nasumično sjeme za miješanje palube

Hand.h i Hand.ino

Ova klasa implementira IGame interfejs i sadrži informacije o svakoj ruci igrača. Ko su berač, partneri i trgovac. Održava se ko je na redu, šta se zove odelo, šta je glavno odelo, koji broj ruke, broj igrača, ko je pobednik itd.

Player.h i Player.ino Klasa igrača

Ova klasa sadrži podatke o igračima, poput imena igrača, bodova tima, ako je igrač odabrao ili prošao i prikazuje poruku igraču.

Klasa interfejsa IGame.h i IGame.ino

Ova klasa sadrži klase Špil, Karta i Igrač za kontrolu toka igre.

Sheepshead.ino

Sadrži funkciju postavljanja i petlje za opsluživanje web stranice.

login.html i login.js datoteke

Ove datoteke kontroliraju tok web stranice za prijavu korisnika

datoteke sheepshead.html i sheepshead.js

Ove datoteke kontroliraju tok igre ovčara na web stranici.

Slike sa kartica

sadrži sliku svake kartice, uključujući i stražnju stranu kartice.

Evo kratkog objašnjenja za učitavanje softvera na esp8266. Na webu postoji nekoliko primjera koji to mogu detaljnije objasniti. Ovako sam učitao softver i podatke pomoću Arduino IDE softvera.

  • Instalirajte Arduino softver i datoteke ploča esp8266, za više informacija pogledajte
  • Ako koristite Wemos D1 mini, postavite veličinu blica na 4M (1M SPIFFS). Ako koristite generičke esp8266 esp-07 ili esp-12, postavite veličinu blica na 1M (512 SPIFFS).
  • Možda ćete morati instalirati neke dodatne biblioteke u softver Arduino.
  • Za instaliranje SPIFF podataka slijedite ovu vezu
  • raspakirajte softver Sheepshead i postavite ga na računalo.
  • Pokrenite Arduino IDE softver i otvorite projekt Sheepshead
  • Instalirajte kod Sheepshead na uređaj esp8266 klikom na gumb za prijenos. Ako ne koristite Wemos D1 Mini, možda ćete morati prebaciti uređaj u način rada bljeskalice klikom na gumb za poništavanje (SW1) i držite ga pritisnutim dok pritisnete (SW2), zatim otpustite (SW1) i zatim otpremite kôd.
  • Instalirajte podatke na uređaj esp8266 tako što ćete otići do alata u izborniku i kliknuti na "ESP8266 Sketch Data Upload". Morat ćete slijediti iste korake kao gore kako biste uređaj stavili u način rada bljeskalice.
  • Nakon učitavanja softvera i podataka spremni ste za igru.

Korak 3: Igranje igre

Igranje igre
Igranje igre
Igranje igre
Igranje igre
Igranje igre
Igranje igre

Za povezivanje vam je potreban WiFi uređaj koji se može povezati na mrežu "Sheepshead", a zatim idite na https://191.168.1.1 web stranicu.

  • Igrači se pridružuju unosom svog imena i klikom na Pridruži se. Igra pretpostavlja da ćete imati 5 igrača, ako ne, igrač mora odabrati broj igrača prije nego što se posljednji igrač pridruži igri.
  • Kad se posljednji igrač pridruži, karte se dijele i igra počinje kada igrač pritisne dugme Start.
  • Igra neće dopustiti igraču da igra nevažeću kartu ili da igra van igre.
  • Kad se klikne na karticu, ona će se povećati kako bi bila vidljivija. Ako se klikne drugi put, karta će se odigrati.
  • Ime igrača istaknuto je bijelim slovima.
  • Igrač koji će sljedeći igrati imat će crvenu kutiju koja okružuje njegovo ime i kartu.
  • Igra počinje tako što omogućava igraču da izabere blinda ili doda. Kada igrač izabere blinda, može povući i ispustiti karte sa blinda u/iz te ruke. Kada berač dobije željene karte, mora izabrati pozvanu boju sa padajućeg izbornika.
  • Igra će potvrditi da imaju odgovarajuću kartu za pozvanu boju.
  • Igra počinje kada prvi igrač igra prvu kartu, svaki igrač igra jednu kartu i prikazuje se pobjednik za ruku. Bodovi se računaju i prikazuju za svakog igrača/tim.
  • Dobitnik ruke igra prvu kartu i svaki igrač igra jednu kartu.
  • Igra se nastavlja dok se ne odigraju sve karte
  • Određuje se pobednik.
  • Sljedeća osoba postaje djelitelj i počinje nova igra.

Korak 4: Zaključak

Ovo je moj prvi Instructable i pozdravljam vaše povratne informacije. Kao što sam rekao, ovo je dokaz koncepta da se kartaška igra može napraviti na uređaju esp8266. Ima nekoliko problema, ali se može igrati. Radujem se vašim komentarima i prijedlozima.

Preporučuje se: