INHOUDSOPGAWE:

Draadlose 4 -speler -gesinsspelbeheerder: 3 stappe
Draadlose 4 -speler -gesinsspelbeheerder: 3 stappe

Video: Draadlose 4 -speler -gesinsspelbeheerder: 3 stappe

Video: Draadlose 4 -speler -gesinsspelbeheerder: 3 stappe
Video: De Ring Video Doorbell 3, 3 Plus en 4 installeren - draadloze installatie 2024, November
Anonim
Draadlose gesinsspelbeheerder vir 4 spelers
Draadlose gesinsspelbeheerder vir 4 spelers
Draadlose gesinsspelbeheerder vir 4 spelers
Draadlose gesinsspelbeheerder vir 4 spelers
Draadlose gesinsspelbeheerder vir 4 spelers
Draadlose gesinsspelbeheerder vir 4 spelers

Dit is 'n draadlose arcade -styl kontroleerder waarop 4 mense tegelyk kan speel. Dit is draadloos, sodat u nie u rekenaar hoef te koppel aan 'n kontroleerder wat deur 5 -jariges gebruik word nie. Hulle val die hele tyd en ek wil nie hê dat hulle al my speelgoed moet vernietig as hulle onvermydelik op 'n draad ry nie; ons het onlangs 'n nuwe rekenaarskerm gekoop en dit het in 'n super stewige boks gekom met baie digte piepschuim binne. Soos iets van 'n sitkom, het ek voortdurend met my vrou gestry oor die hou van die boks. Vir my het dit gelyk asof dit smeek om in iets verander te word, terwyl dit vir haar 'n lelike rommel was. Toe het Instructables uit die bloute 'n spoedwedstryd op karton gehou. En so in 'n middag is die argument afgehandel en is hierdie projek gebore.

Ons het die eindpunte wat ons in die huis gehad het, gebruik om die projek tot lewe te bring. Die idee was net om dit wat ons reeds gehad het, te gebruik om iets cool te doen - gelukkig het ons 'n stel arcade -knoppies en 'n framboospi wat ons al eeue gelede gekoop het om 'n arcade -kabinet te maak. Vir sny gebruik ons 'n saag en my betroubare ou sakmes.

Voorrade

1. Kartondoos2. Piepschuim of ander digte vuller 3. Arcade -knoppies van Ali Express of Amazon 4. Framboos Pi 3B + 5. 'n Ander rekenaar + skerm. 6. Mes of iets om gate in karton te sny 7. Maskeerband8. Sproeiverf

Stap 1: Die konstruksie

Die Konstruksie
Die Konstruksie
Die Konstruksie
Die Konstruksie
Die Konstruksie
Die Konstruksie

Ons het vinnig 'n skets gemaak van hoe ons wil hê die ding moet lyk, en dan 'n mes en houtsaag gebruik om die karton en piepschuim in die regte grootte te sny. Ons merk die karton met 'n goeie knoppie/joystick -uitleg en sny die gate versigtig met 'n mes. Dit was 'n wonderlike oefening in basiese wiskunde vir die kinders. Toe die karton gesny is, het ons dit geverf en dan al die knoppies op hul plek gesit. Die belangrikste ding wat ons gedoen het, was om drie lae karton aan die bokant van die kontroleerder vas te plak om dit meer styf te maak. Dit het dit ietwat moeilik gemaak om deur te sny, maar het perfek gewerk om die bokant amper so solied soos hout te maak.

Die Raspberry Pi 3B+ het vier usb -poorte. Ons het 'n gesin van vier en vier stelle arcade -knoppies! Dit was voorbestemming.

Stap 2: Die programmering

Die programmering
Die programmering
Die programmering
Die programmering
Die programmering
Die programmering
Die programmering
Die programmering

Die kode vir hierdie projek is eenvoudig en karig. Dit kan alles hier gevind word:

github.com/melvyniandrag/SuperTuxJunkKart Die 4 beheerders is via usb gekoppel aan 'n framboos pi. Op die Raspberry pi is daar 'n klein python -skrip. Ek het die Python -insetbiblioteek gebruik om die seine van die knoppies en joysticks te kry. Die program verander dan die sein na 'n kort ASCII -kode en stuur dit via 'n TCP -aansluiting via wifi na 'n rekenaar met 'n speletjie (ek noem dit die spelbediener). As speler 0 byvoorbeeld die joystick na links skuif, word die karakters '0XL' oor die TCP -aansluiting na die spelbediener gestuur. Vir die toets het ek SuperTuxKart op my dinkblok gehardloop. 'N Klein bedienertoepassing loop op die denkblok en luister na die TCP -aansluiting. Die kodes wat van die framboos -pi via wifi kom, word via die pyautogui -biblioteek vertaal in knoppies op die sleutelbord. Dus, as speler 0 op die kartonbeheerder die joystick na links skuif en die beheerder 'OXL' afgee, dink die bediener wat die spel bestuur dat die speler die '1' knoppie op die sleutelbord druk. Die spel moet gekonfigureer word om hierdie sleutelbordpers te herken, soos in die opsieskerm hier aangedui kan word. Hierdie speletjie werk goed met een of twee spelers, maar as 4 mense aggressief SuperTuxKart speel, begin die bediener 'n paar data van die beheerder mis. Ek is nie seker of dit 'n fout is nie: 1. Aan die kant van die kliënt (kontroleerder) 2. Aan die bediener (denkpad) kant 3. Ingeboude Linux -funksie. Miskien kan my Ubuntu -skootrekenaar nie 'n groot aantal gelyktydige toetsdrukke herken nie. As speler 0, 1 en 2 dus almal op en af stuur, beteken dit dat 2 * 3 = 6 knoppies tegelyk ingedruk word. Ek is nie seker of my rekenaar (of enige rekenaar) daarvoor ontwerp is nie. Gewoonlik is sneltoets 3 of minder knoppies, bv. CTRL + ALT + DEL. In die toekoms gaan ek probeer om 4 tcp -voetstukke op te stel, een vir elke kontroleerder, en dan aan die bedienerkant 'n virtuele spelblok te skep. Ek het nog nie tyd gehad om te sien hoe om dit te doen tussen ouerskap, werk en kartondose nie.

Stap 3: Die toekoms

Dit was 'n eenvoudige bewys van konsep. In die toekoms moet die kode beter wees. Ek wil die verbinding as 'n Bluetooth HID -toestel kodeer, maar bluez5 op Linux is 'n bietjie tyd om te werk - daarom het ek 'n TCP -aansluiting + Python aangegaan. soos hel. Met meer tyd sou ek 'n bietjie meer energie daaraan bestee om noukeuriger te sny. Dan sit ek meer stutte -die kante van die boks begin effens skeefloop, maar dit lyk goed genoeg vir wat dit is en wat dit kos. Ek sal aanhou om daaraan te peuter terwyl ons saans flieks kyk.

Aanbeveel: