Mündəricat:

Simsiz 4 Oyunçulu Ailə Oyun Nəzarətçisi: 3 addım
Simsiz 4 Oyunçulu Ailə Oyun Nəzarətçisi: 3 addım

Video: Simsiz 4 Oyunçulu Ailə Oyun Nəzarətçisi: 3 addım

Video: Simsiz 4 Oyunçulu Ailə Oyun Nəzarətçisi: 3 addım
Video: YEMEK YEDİRME SİMÜLATOR OYUNU !! 😱 Eating Simulator 2024, Iyul
Anonim
Simsiz 4 Oyunçu Ailə Oyun Nəzarətçisi
Simsiz 4 Oyunçu Ailə Oyun Nəzarətçisi
Simsiz 4 Oyunçu Ailə Oyun Nəzarətçisi
Simsiz 4 Oyunçu Ailə Oyun Nəzarətçisi
Simsiz 4 Oyunçu Ailə Oyun Nəzarətçisi
Simsiz 4 Oyunçu Ailə Oyun Nəzarətçisi

Bu, 4 nəfərin eyni anda oynaya biləcəyi simsiz arcade stil nəzarətçisidir. Kompüterinizi 5 yaşında olan bir nəzarətçiyə bağlamaq məcburiyyətində qalmamağınız üçün simsizdir. Həmişə yıxılırlar və mən qaçmaq istəmədikdə bütün oyuncaqlarımı məhv etmələrini istəmirəm. Bu yaxınlarda yeni bir kompüter monitoru aldıq və içərisində həqiqətən sıx strafor olan super möhkəm bir qutuda gəldi. Sitcomdan bir şey kimi, həyat yoldaşımla qutunu saxlamaq üçün davamlı mübahisə edirdim. Mənə elə gəldi ki, bir şeyə çevrilmək üçün yalvarırdım, halbuki onun üçün çirkin zibil idi. Daha sonra, Instructables kartona əsaslanan sürət yarışması keçirdi. Günortadan sonra mübahisə həll edildi və bu layihə doğuldu.

Layihəni gerçəkləşdirmək üçün evin ətrafındakı bahis uclarını istifadə etdik. Fikir sadəcə oturduqlarımızı sərin bir şey etmək üçün istifadə etmək idi - xoşbəxtlikdən bir arcade şkafı etmək üçün illər əvvəl aldığımız bir sıra arcade düymələri və bir moruq pi var idi. Kəsmə üçün bir mişar və etibarlı köhnə cib bıçağımdan istifadə etdik.

Təchizat

1. Karton qutu2. Strafor və ya digər sıx doldurucu 3. Ali Express və ya Amazon -dan oyun düymələri 4. Raspberry Pi 3B + 5. Başqa bir kompüter + ekran. 6. Kartonda deşik kəsmək üçün bıçaq və ya bir şey 7. Maskeləyən lent8. Sprey boya

Addım 1: Tikinti

Tikinti
Tikinti
Tikinti
Tikinti
Tikinti
Tikinti

İstədiyimiz şeyin bir eskizini tez bir zamanda hazırladıq, sonra bıçağı və taxta mişarı istifadə edərək kartonu və straforu lazımi ölçüdə kəsdik. Kartonu yaxşı bir düymə/joystick düzeni ilə qeyd etdik və deşikləri bıçaqla diqqətlə kəsdik. Bu, uşaqlar üçün əsas riyaziyyatda əla bir məşq idi. Karton kəsildikdən sonra onu boyadıq və sonra bütün düymələri yerinə qoyduq. Etdiyimiz əsas maraqlı şey, daha sərt olması üçün nəzarətçinin üst hissəsinə üç qat karton yapışdırmaq idi. Bu, kəsilməsini bir qədər çətinləşdirdi, ancaq üstü demək olar ki, ağac kimi möhkəm hala gətirmək üçün mükəmməl işləyirdi.

Raspberry Pi 3B+ dörd usb portuna malikdir. Dörd və 4 dəst arcade düymələrindən ibarət bir ailəmiz var! Bu, əvvəlcədən təyin olunmuşdu.

Addım 2: Proqramlaşdırma

Proqramlaşdırma
Proqramlaşdırma
Proqramlaşdırma
Proqramlaşdırma
Proqramlaşdırma
Proqramlaşdırma
Proqramlaşdırma
Proqramlaşdırma

Bu layihənin kodu sadə və səhvdir. Hamısını burada tapa bilərsiniz:

github.com/melvyniandrag/SuperTuxJunkKart 4 nəzarətçi usb vasitəsilə moruq pi -yə qoşulur. Raspberry pi üzərində çalışan kiçik bir python skripti var. Düymələrdən və joysticklərdən siqnalları almaq üçün Python giriş kitabxanasından istifadə etdim. Proqram daha sonra siqnalı qısa bir ASCII koduna çevirir və TCP yuvası vasitəsilə wifi üzərindən oyun oynayan bir kompüterə göndərir (buna oyun serveri olaraq müraciət edəcəyəm). Məsələn, 0 oyunçu joysticki sola hərəkət etdirdikdə '0XL' simvolları TCP yuvası üzərindən oyun serverinə göndərilir. Test üçün düşüncə panelimdə SuperTuxKart işlədim. Kiçik bir server tətbiqi düşüncə panelində işləyir və TCP yuvasında dinləyir. Wifi üzərindəki moruq pi -dən gələn kodlar, pyautogui kitabxanası vasitəsi ilə klaviaturadakı düymələrə çevrilir. Belə ki, karton idarəedicidəki 0 oyunçu, joysticki sola hərəkət etdirdikdə və nəzarətçi 'OXL' yaydıqda, oyunu idarə edən server oyunçunun klaviaturadakı '1' düyməsini vurduğunu düşünür. Oyun bu seçimlər ekranında göstərilə biləcəyi kimi bu klaviatura basqılarını tanımaq üçün konfiqurasiya edilməlidir. Bu oyun bir və ya iki oyunçu ilə yaxşı işləyir, ancaq 4 nəfər SuperTuxKartı təcavüzkar oynayanda server nəzarətçidən bəzi məlumatları itirməyə başlayır. Bunun səhv olub olmadığını bilmirəm: 1. Müştəri (nəzarətçi) tərəfində2. Serverdə (Thinkpad) tərəfində3. Linux funksionallığı ilə yaradılmışdır. Bəlkə də Ubuntu noutbukum eyni vaxtda çox sayda düyməni basa bilmir. Beləliklə, 0, 1 və 2 -ci oyunçuların hamısı sükanı yuxarı və sola yönləndirirsə, bu, 2 * 3 = 6 düyməsinin bir anda basıldığı deməkdir. Kompüterimin (və ya hər hansı bir kompüterin) bunun öhdəsindən gələ biləcəyinə əmin deyiləm. Adətən isti düymələr 3 və ya daha az düymədən ibarətdir. CTRL + ALT + DEL. Gələcəkdə hər bir nəzarətçi üçün bir ədəd olmaqla 4 tcp prizini işə salmağa çalışacağam və sonra server tərəfində virtual oyun meydançası yaratmağa çalışacağam. Bunu necə edəcəyinizi görməyə vaxtım olmadı, ancaq uşaq yetişdirmək, işləmək və karton qutuları kəsmək arasında.

Addım 3: Gələcək

Bu sadə bir konsepsiya sübutu idi. Gələcəkdə kodun daha yaxşı olması lazımdır. Əlaqəni bluetooth HID cihazı kimi kodlaşdırmaq istərdim, amma Linux -da bluez5 işləmək üçün bir az vaxt sərf edir - buna görə TCP + Python yuvası ilə getdim. heck kimi. Vaxt keçdikcə daha diqqətlə kəsmək üçün bir az daha çox enerji sərf edərdim. Sonra daha çox dayaq qoyardım -qutunun tərəfləri bir az əyilməyə başlayır. Nə olduğu və nə qədər başa gəldiyi üçün bu şey kifayət qədər yaxşı görünür. Axşam film izlədikcə fikirləşməyə davam edəcəyəm.

Tövsiyə: