Mundarija:
- 1 -qadam: uskunani yaratish
- 2 -qadam: dasturiy ta'minotni yuklash
- 3 -qadam: O'yin o'ynash
- 4 -qadam: Xulosa
Video: Sheepshead karta o'yini Esp8266: 4 qadam bilan
2024 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2024-01-30 13:27
Sheepshead-bu mening xolalarim va amakilarim oilaviy uchrashuvlarda o'ynaydigan karta o'yini. Bu Evropada paydo bo'lgan karta o'yini. Bir nechta versiya bor, shuning uchun mening versiyam siz o'ynaganingizdan biroz farq qilishi mumkin. Men amalga oshirgan versiyada siz 3, 4 yoki 5 o'yinchi bilan o'ynashingiz mumkin, 5 o'yinchining ideal soni. O'yin standart 52 ta kartadagi 32 ta kartadan foydalanadi.
Asosiy qoidalarni bu erda topishingiz mumkin:
5 kishilik o'yin qoidalari haqida qisqacha ma'lumot; har bir o'yinchiga 6 ta karta va ko'rlarga ikkita karta beriladi. Qolgan dilerlar o'yinchisiga ko'rlarni tanlash uchun birinchi imkoniyat beriladi, keyin kimdir ko'rni olmaguncha yoki hamma o'yinchilarda o'zgarish bo'lguncha. Agar hech kim tanlamasa, o'yin qaytadan boshlanadi va yangi kartalar tarqatiladi. Ko'zi ojiz odamni terib oluvchi deyiladi. Tanlovchi sherikni kostyumni chaqirish orqali tanlaydi: Yuraklar, Klublar yoki Spades, lekin qo'lida xuddi shu kostyum kartasi bo'lishi kerak. Ace chaqirilgan kostyumga ega bo'lgan o'yinchi sherikdir. O'yinchilar birinchi o'ynagan kartaga amal qilishlari kerak, tramp - bu kostyum. Birinchi marta chaqirilgan kostyum qo'rg'oshin bo'lganida, sherik Ace o'ynashi kerak. O'yinda g'alaba qozonish uchun tanlovchi va sherik 61 ball to'plashi kerak. Tanlovchi yoki sherik bo'lmagan o'yinchilar jamoani tashkil qiladi va ularning ochkolari ularni birlashtirish uchun birlashadi. Ballar olish uchun yuqoridagi qoidalar havolasini ko'ring.
3 va 4 o'yinchi o'yinida sherik yo'q va 10 yoki 8 ta karta chiqariladi.
Men zig'ircha o'yinini amalga oshirmadim. Hech bir o'yinchi tanlamaganida, o'yin leaster bilan davom etishi mumkin edi. Leaster g'olibi kamida bitta hiyla ishlatib, eng kam ball to'plagan o'yinchi hisoblanadi.
O'yinni rivojlantirish:
Bu loyihaga ilhomim Sheepshead ilovasini yaratishni va jQuery -ni o'rganishni xohlaganimdan kelib chiqqan. Men ham dragula.js -dan foydalanib, kartalarni sudrab olib ketishga yordam berardim. Esp8266 AP rejimiga o'tkaziladi. Ulanish uchun sizga "Sheepshead" tarmog'iga ulanadigan va https://191.168.1.1 veb -saytiga o'tadigan WiFi qurilmasi kerak.
Bu mening birinchi ko'rsatmalarim, shuning uchun men har qanday fikr -mulohazani qadrlayman. Iloji boricha savollaringizga javob berishga harakat qilaman.
1 -qadam: uskunani yaratish
Uskuna talablari
Bu Wemos D1 Mini yoki esp8266-esp-07 yoki esp-12 yordamida amalga oshirilishi mumkin.
Esp8266 qurilishi:
- esp8266 (esp-07 yoki esp-12)
- esp8266 + ulagichlari uchun oq o'rnatish taxtasi
- 6-pinli ayol ulagichi (ixtiyoriy)
- LM317 kuchlanish regulyatori
- (2) 10K Ohm qarshilik
- 390 Ohm qarshilik
- 220 Ohm qarshilik
- 20 Ohm qarshilik
- (2) bir zumdagi tugmalar
- 100n seramika kondansatör
- 10 uF elektrolitik kondansatör
- 220 uF elektrolitik kondansatör
- 1N4002 diodi (ixtiyoriy)
- bochka ulagichi (men yon o'rnatish moslamasidan foydalandim va 3 pinli erkak ulagichga lehimladim)
- Loyiha qutisi
- Quvvatlantirish manbai
Men sxemani qurish uchun foydalangan ExpressSCH va ExpressPCB fayllarini o'z ichiga olganman. Rasmda ko'rib turganingizdek, men tugmachalarni qo'shmadim yoki J2 ulagichidan foydalanmadim (uni esp8266 dasturlash uchun FTDI232RL moduli bilan ishlatish mumkin). Agar siz uni esp8266 dasturchisi sifatida ishlatmoqchi bo'lsangiz, sizga tugmalar va J2 ulagichi kerak bo'ladi. Dasturiy ta'minot yoki ma'lumotlarni o'chirish uchun siz qurilmani qayta tiklashingiz kerak (SW1), uni ushlab turing (SW2) tugmasini bosing, keyin (SW1) tugmachasini qo'yib yuboring va keyin kodni yuklang.
Har qanday komponentni joylashtirishdan oldin, har bir ulanishni sinab, kontaktlarning zanglashini tekshiring. Voltaj regulyatorining 3,3 voltsli kuchlanishini tekshiring va barcha ulanishlarni ikki marta tekshiring. Agar ishonchingiz komil bo'lmasa, men Wemos D1 mini -dan foydalanishni maslahat beraman, chunki lehimlash shart emas.
2 -qadam: dasturiy ta'minotni yuklash
Dasturiy ta'minot
Men ushbu loyiha uchun dasturiy ta'minotni qo'shdim. Men har bir sinf va nima uchun ishlatilishini qisqacha tushuntirib beraman, lekin men tafsilotlarni aytmayman. Bu o'yin esp8266da karta o'yini qilish mumkin degan tushunchaning isboti. O'yinda men hal qilmagan bir nechta muammolar bor. Masalan, agar foydalanuvchi tizimga kirsa va ulanishni yo'qotsa, ular o'yindan chiqarilmaydi va o'yin bilan qayta bog'lana olmaydi. Buning yagona yo'li - o'yinni qayta o'rnatish va qaytadan boshlash. O'yin biroz sekin va ba'zida kartalarni yangilamaydi. Foydalanuvchi kartalarni to'g'ri ko'rsatishi kerak bo'lgan brauzerni yangilashi mumkin. Agar foydalanuvchi havolani o'z bosh ekranida (iPhone uchun) saqlasa, yangilash tugmasi mavjud emas, uni yangilab bo'lmaydi. Ba'zida kichik qurilmalarda kartalarni ko'rlarga tortish va tushirish qiyin kechadi.
Card.h va Card.ino kartalari sinfi
Bu sinfda karta kostyumi, unvoni, ochkosi va qaysi kartalari trump bo'lgani bor.
Deck.h va Deck.ino Deck klassi
Bu sinf karta haqidagi ma'lumotlarni saqlagan. Kemani aralashtirish va palubadan kartalarni olish usuli bor. Kemani aralashtirish uchun tasodifiy urug'lardan foydalaniladi
Hand.h va Hand.ino
Bu sinf IGame interfeysini amalga oshiradi va qo'lda har bir o'yinchi haqida ma'lumot saqlaydi. Tanlovchi, sheriklar va diler kimlar. Unda navbat kimga, kostyum nima, asosiy kostyum nima, qo'l raqami, o'yinchilar soni, g'olib kim va hokazo.
Player.h va Player.ino o'yinchi sinfi
Bu sinfda o'yinchi haqidagi ma'lumotlar, masalan, o'yinchi nomi, jamoaning ochkolari, agar o'yinchi tanlagan yoki uzatgan bo'lsa va o'yinchiga xabar ko'rsatsa.
IGame.h va IGame.ino IGame interfeysi sinfi
Bu sinf o'yin oqimini nazorat qilish uchun Deck, Card va Player sinflarini o'z ichiga oladi.
Sheepshead.ino
Veb -saytga xizmat ko'rsatish uchun sozlash va pastadir funktsiyasini ushlab turadi.
login.html va login.js fayllari
Ushbu fayllar foydalanuvchilarning veb -saytga kirish sahifasini boshqaradi
qo'ylar.html va qo'ylar.js fayllari
Bu fayllar veb -sayt qo'y o'yinlari oqimini boshqaradi.
Karta rasmlari
har bir kartaning tasvirini ushlab turadi, kartaning orqa qismini ham o'z ichiga oladi.
Bu erda esp8266 -ga dasturiy ta'minotni yuklash haqida qisqacha tushuntirish. Internetda buni batafsilroq tushuntirib beradigan bir qancha misollar bor. Men Arduino IDE dasturi yordamida dastur va ma'lumotlarni shu tarzda yukladim.
- Arduino dasturini va esp8266 doska fayllarini o'rnating, qo'shimcha ma'lumot uchun https://github.com/esp8266/Arduino -ga qarang.
- Agar Wemos D1 mini -dan foydalansangiz, Flash hajmini 4M (1M SPIFFS) ga o'rnating. Agar umumiy esp8266 esp-07 yoki esp-12 dan foydalansangiz, Flash hajmini 1M (512 SPIFFS) ga o'rnating.
- Siz Arduino dasturiga qo'shimcha kutubxonalarni o'rnatishingiz kerak bo'lishi mumkin.
- SPIFF ma'lumotlarini o'rnatish uchun quyidagi havolaga o'ting
- Sheepshead dasturini oching va kompyuteringizga joylashtiring.
- Arduino IDE dasturini ishga tushiring va Sheepshead loyihasini oching
- Yuklash tugmachasini bosib, Sheepshead kodini esp8266 qurilmasiga o'rnating. Agar siz Wemos D1 Mini -dan foydalanmasangiz, (SW2) tugmachasini bosib ushlab turing, so'ngra (SW1) tugmachasini qo'yib yuboring va kodni yuklang.
- Ma'lumotni esp8266 qurilmasiga menyu asboblariga o'ting va "ESP8266 Sketch Data Upload" tugmasini bosib o'rnating. Qurilmani flesh rejimiga o'tkazish uchun yuqoridagi amallarni bajarish kerak bo'ladi.
- Dastur va ma'lumotlar yuklangandan so'ng siz o'yinni o'ynashga tayyormiz.
3 -qadam: O'yin o'ynash
Ulanish uchun sizga "Sheepshead" tarmog'iga ulanadigan Wi -Fi qurilmasi kerak, keyin https://191.168.1.1 veb -saytiga o'ting.
- O'yinchilar o'z ismlarini kiritish va "Qo'shilish" tugmasini bosish orqali qo'shilishadi. O'yin 5 o'yinchiga ega bo'lishini taxmin qiladi, agar bo'lmasa, o'yinchi oxirgi o'yinchi o'yinga qo'shilishidan oldin o'yinchi sonini tanlashi kerak.
- Oxirgi o'yinchi kartalarga qo'shilsa, tarqatiladi va o'yinchi "Ishga tushirish" tugmachasini bosganida o'yin boshlanadi.
- O'yin o'yinchiga yaroqsiz kartani o'ynashiga yoki navbatdan tashqari o'ynashiga yo'l qo'ymaydi.
- Agar karta bosilsa, u yanada kattaroq bo'lib ko'rinadi. Ikkinchi marta bosilsa, karta o'ynaladi.
- O'yinchilarning ismi oq harflar bilan belgilanadi.
- Keyingi o'yinni o'tkazadigan o'yinchining ismi va kartasi atrofida qizil quti bo'ladi.
- O'yin o'yinchiga ko'rlarni tanlashga yoki pas uzatishga ruxsat berishdan boshlanadi. O'yinchi ko'rlarni tanlaganida, ular kartalarni ko'rdan sudrab olib tashlashlari mumkin. Tanlovchining xohlagan kartalari bo'lgandan so'ng, ular ochiladigan kostyumni tanlashlari kerak.
- O'yin ular chaqirilgan kostyum uchun mos kartaga ega ekanligini tasdiqlaydi.
- O'yin birinchi o'yinchi birinchi kartani o'ynaganda boshlanadi, har bir o'yinchi bitta kartani o'ynaydi va qo'l uchun g'olib ko'rsatiladi. Ballar har bir o'yinchi/jamoa uchun hisoblab chiqiladi va ko'rsatiladi.
- Qo'l g'olibi birinchi kartani o'ynaydi va har bir o'yinchi bitta kartani o'ynaydi.
- O'yin barcha kartalar o'ynalmaguncha davom etadi
- G'olib aniqlanadi.
- Keyingi odam dilerga aylanadi va yangi o'yin boshlanadi.
4 -qadam: Xulosa
Bu mening birinchi yo'riqnomam va men sizning fikringizni qabul qilaman. Aytganimdek, bu esp8266 qurilmasida karta o'yini qilish mumkinligi haqidagi kontseptsiyaning isboti. Unda bir nechta muammolar bor, lekin ularni ijro etish mumkin. Fikr va takliflaringizni kutaman.
Tavsiya:
Aqlli buoy [GPS, radio (NRF24) va SD -karta moduli]: 5 qadam (rasmlar bilan)
Aqlli buoy [GPS, Radio (NRF24) va SD-karta moduli): Bu Smart Buoy seriyali bizning mahsulotlarimiz yordamida dengiz haqida mazmunli o'lchovlarni amalga oshiradigan ilmiy qayiq qurishga bo'lgan urinishimizni ko'rsatadi. Bu to'rtdan ikkitasi - bu yangilanganligingizga ishonch hosil qiling va agar sizga tezkor ma'lumot kerak bo'lsa
AT buyruqlar dasturiy ta'minoti bilan har qanday ESP8266 karta/modulini dasturlash: 5 qadam
AT buyruqlar dasturiy ta'minoti bilan har qanday ESP8266 taxtasi/modulini dasturlash: Har bir ESP8266 moduli va taxtasini ko'p jihatdan dasturlash mumkin: Arduino, python, Lua, AT buyruqlari, va hokazo … Ularning birinchi uchtasi mustaqil ishlash uchun eng yaxshisidir. ESP8266 -ni modul sifatida ishlatish yoki TTL RS232 c bilan tezkor sinov uchun
Savdo karta mashinasi uchun karta ajratuvchi (yangilanish 2019-01-10): 12 qadam (rasmlar bilan)
Savdo kartalari uchun karta saralash mashinasi (yangilanish 2019-01-10): savdo kartasi uchun karta tartiblagichi O'zgarish jurnalini oxirgi bosqichda topish mumkin. Orqa fon Men o'z loyihamning motivatsiyasini Kartani oziqlantiruvchi maqolasida allaqachon tushuntirganman. Qisqasi, bolalarim bilan men katta miqdordagi savdo kartasini yig'dik
QuizzPi, Python bilan Raspberry Pi trivia o'yini: 7 qadam (rasmlar bilan)
QuizzPi, Python bilan Raspberry Pi trivia o'yini: QuizzPi - arja tipidagi trivia o'yini. QuizzPi tug'ilgan, chunki men qizimga o'yin -kulgi berishim kerak edi. U 7 yoshda va u allaqachon yangi texnologiyalardan foydalanishni talab qilmoqda, g'oya ham qiziqarli, ham o'qimishli narsalarni yaratish edi
ESP8266 bilan SD -karta moduli: 6 qadam
ESP8266 bilan SD -karta moduli: Ushbu yig'ilishda bizda ESP8266 -ga ulangan SD -karta mavjud. Biz DHT22 -ni joylashtiramiz, u harorat va namlikni o'lchaydi va bu ma'lumotni SD -kartaga yuboradi, sxemada namlik 43.40 va harorat 26.80 ni ko'rsatadi. Har safar men