Arxiu d'etiquetes: arcade

Virtual Pinball basat en Superman (Atari, 1979)

Finalment ja he acabat el virtual pinball de Superman que anirà cap al País Basc. Aquesta vegada he millorat diversos aspectes en el procés de fabricació: perfils d’acer inoxidable, fixació de la TV, moneder de Industrias Lorenzo, disseny dels vinils, paletització de la màquina. I també he incorporat el simulador VPX a més del VP9. Però què voleu que us digui, no he notat especialment les millores que suposadament incorpora el VPX.

També he agafat unes quantes idees per si he de fer una nova màquina, que crec que podria fer més ràpidament que aquesta última, que se m’ha allargat massa. Ja està doncs, només falta enviar-la.

Referències:

L’hora catalana amb Festival (TTS, text to speech)

Estic treballant en un Magic Mirror, que li vull dotar de funcions de reconeixement de veu (STT, amb Pocketsphynx) i síntesi de veu (TTS, amb Festival). Vull que sigui un projecte una mica de cachondeo, i vull escollir bé els mòduls a instal·lar, i també programar-ne un.

Una cosa divertida que havia pensat és un mòdul que et digui l’hora catalana:

-Magic Mirror (li posarem un nom divertit), quina hora és?
-Són dos quarts i cinc de vuit.

He estat treballant amb el Festival (que s’instal·la sense problemes en una Raspberry Pi) i integrar-ho tot amb Node/Javascript, que és la tecnologia que utilitza MagicMirror.

En el video hi ha una mostra del que volem aconseguir:

Referències:

Magic Mirror amb la Raspberry Pi (Smart Mirror)

Aquest és un projecte divertit i senzill per fer amb la Raspberry Pi, molt adient ara per l’estiu. He estat configurant la Raspberry Pi i els diferents mòduls del projecte MagicMirror, i ja puc mostrar el video de com quedarà tot plegat. De totes maneres, el projecte l’hauré d’acabar més endavant quan decidim on podem col·locar el mirall i les dimensions que tindrà, doncs veig que comprar el 2-way mirror és la part més delicada, i un mirall ben gros se’n va del pressupost.

Un dels objectius per realitzar aquest projecte és que últimament m’estic conscienciant molt de com de malament parlem la nostra llengua (el català) i de com s’ha empobrit en general. Per tal de recuperar les expressions més genuïnes (defugint el calc del castellà allà on sigui possible), hi ha tot un moviment de conscienciació. Jo vull aportar el meu granet de sorra fent aquest mirall màgic que ens donarà una lliçó de bon català cada cop que ens mirem al mirall, per exemple quan ens rentem les dents.

Un dels mòduls per defecte de MagicMirror és la sindicació de continguts per tenir els titulars de les notícies del dia. Per exemple, el meu mirall està suscrit al diari ARA. Doncs bé, he adaptat aquest mòdul per crear el meu mòdul propi de MagicMirror (el_catala_com_cal). Ha estat bastant fàcil. Només cal crear i editar un fitxer XML amb les lliçons de català que vull visualitzar. De moment és això: un fitxer estàtic que hauré d’editar cada cop que vulgui afegir contingut.

Festa Arcade a ARAG

Ara fa dies que no escrivia en el bloc, i és que aquest trimestre ha estat molt frenètic i cansat amb tot el canvi de pis. Per si no era poc, el dia abans del trasllat tenia emparaulat portar unes màquines per la festa social de l’asseguradora ARAG.

S’ho van passar d’allò més bé amb tres màquines bartop i un pinball que els vaig portar amb la furgoneta. Després, a la nit, a recollir-ho tot, quan els més marxosos encara estaven a la discoteca.

Mini Virtual Pinball basat en Jack’s Open

He estat fent dos pinballs en paral·lel, amb les mateixes dimensions, i amb plunger analògic. El primer basat en el tema d’Avengers de Marvel; i el segon basat en Jacks Open, tema que ja havia fet. Al contrari de la primera vegada, on vaig fer servir pintura i màscares per pintar amb spray, aquesta vegada se m’ha complicat molt aquesta tècnica i finalment he encarregat els vinils, molt millor.

Mini virtual pinball basat en Los Vengadores de Marvel

Finalment he acabat el pinball dels Avengers. He estat fent dos pinballs en paral·lel, amb les mateixes dimensions, i amb plunger analògic.

He trigat bastant de temps de repassar les 200 taules per tal d’adaptar-les a plunger i tilt analògics. Vam publicar aquest article explicant la solució final de la construcció del tirador de molla, basat en Arduino.

Plunger analògic per a virtual pinball

Estic fent un parell de pinballs, i aquesta vegada sí que vull incloure un plunger analògic. Això és bastanta feina, doncs significa construir un tirador de molla fiable, i configurar/repassar les 200 taules amb les que treballo. A més del tirador analògic també inclouré la funció de TILT, és a dir, quan doni un cop lateral al moble vull que la trajectòria de la bola canvïi, i així s’evita que la bola caigui en el drain.

Faré servir un Arduino Pro Micro, que em farà de joystick/gamepad a través del port USB. Per tal de què el sistema operatiu el reconegui com a HID (Human Interface Device), el firmware de l’Arduino ha d’incloure la llibreria joystick. L’arduino té entrades digitals/analògiques i sortides digitals per tal de connectar els sensors i els botons necessaris. De fet, amb l’ús de l’arduino ja no caldrà utilitzar la interfície I-PAC que es fa servir en aquest tipus de projectes.

En la foto es pot veure el segon prototip de plunger analògic, que ja és funcional. Com a sensor faré servir finalment un potenciòmetre linial lliscant. De moment la molla que faig servir és una mica forta. N’estic buscant una que sigui més fluixa, però que m’asseguri el retorn del potenciòmetre a la seva posició inicial. Ja sé que utilitzar un potenciòmetre (element mecànic) no és la millor solució, però de moment m’està funcionant sense problemes. Altres opcions a considerar com a sensors són un rotary encoder (que també és mecànic), i dos solucions que no són mecàniques (llarga vida) però que són més difícils i cares i que he vist per Internet: utilitzar un CCD linear sensor array (TAOS TSL 1410R); i utilitzar un sensor de distància LVDT (és car, però un se’l pot construir).

Com a conclusió, donaré una oportunitat al potenciòmetre linial lliscant, i el seu valor es llegirà en una entrada analògica de l’Arduino.

Per a la funció tilt necessito un acceleròmetre. Faré servir el MPU-6050 GY-521, que és un acceleròmetre de tres eixos i giroscopi (només necessito llegir l’acceleració en un eix). Fa servir el bus I2C per connectar-se a l’Arduino (entrades digitals). A més, la resta de botons (en principi 4 botons frontals i els dos botons laterals dels flippers) també utilitzaran entrades digitals de l’Arduino.

El que porta més feina és repassar les 200 taules i modificar-les per tal de què el plunger analògic funcioni correctament. Hi ha diverses maneres d’implementar el tirador, unes taules més fàcils que d’altres. Com sempre, moltes gràciess a la comunitat de Visual Pinball i a la gent que ha importat totes les taules per tal de què tothom les pugui disfrutar.

Ara ja tinc la feina quasi acabada, però fins que no tingui acabat el moble i munti el plunger en la seva posició final no podré fer les proves definitives ni la versió final del firmware. Ara ja falta poquet. Quan hagi acabat el projecte faré un video.

Si a algú li interessa la meva solució final, que em contacti i en parlem.

Referències:

Close Encounters pinball: aprofundint en el gameplay

CLOSE ENCOUNTERS OF THE THIRD KIND
—————————————————————-

INSTRUCTIONS
3 BALLS PER PLAYER

HITTING A-B-C ROLLOVERS INCREASES INDICATED ROTO TARGET VALUE.
COMPLETING A-B-C ROLLOVERS LIGHTS “EXTRA BALL” AND “SPECIAL FEATURES”.

STAR ROTO TARGET VALUE IS 500 POINTS. HITTING STAR ROTO TARGET SCORES INDICATED VALUE AND INCREASES BONUS MULTIPLIER.

BLACK DROP TARGETS SCORE 500 POINTS. COMPLETING DROP TARGETS INCREASES BONUS MULTIPLIER, ADDS 5 BONUSES, LIGHTS “EXTRABALL” AND “SPECIAL” FEATURES, SCORES 5000 POINTS AND RESETS TARGETS.

BONUS IS SCORED AND FEATURES RESET AFTER EACH BALL.

A TILT DOES NOT DISQUALIFY A PLAYER.

MATCHING LAST TWO NUMBERS IN SCORE TO NUMBER THAT APPEAR ON BACKGLASS AFTER GAME IS OVER SCORES ONE REPLAY.

424SS B-18583-1

M’agrada més construir les màquines que jugar-hi. De fet tinc poca paciència per jugar. Ja que he fet una nova màquina dedicada al pinball de Encuentros en la Tercera Fase (Close Encounters of the Third Kind, Gottlieb 1978), dedicaré uns minuts a analitzar-la i entendre bé les regles del joc. Les Instructions Card dels pinball sempre són molt resumides (veure foto).

Aquesta és una màquina amb electrònica d’estat sòlid (SS), la qual cosa significa que totes les regles del joc estan implementades en un xip que porta carregat el software/instruccions de la taula. Aquest xip és una memòria on està emmagatzemat tot el codi, és a dir, una ROM. La gràcia del Visual Pinball i d’altres emuladors de pinball és que són capaços de llegir la informació de la ROM (fitxer que tenim guardat en la carpeta roms/, i fer funcionar la màquina per software. Si se sap manipular la rom (els bytes) es pot modificar algun aspecte de la taula, com per exemple modificar el High Score per defecte, com hem fet en alguna taula. De fet, el mòdul que s’encarrega de l’emulació és el VPinMAME, projecte que comparteixen diferents emuladors com el Visual Pinball o el Future Pinball.

HITTING A-B-C ROLLOVERS INCREASES INDICATED ROTO TARGET VALUE. Els rollover (A, B, C) són els tres passadissos que hi ha dalt de tot. Quan la bola passa pel passadís es tanca un interruptor. Com a conseqüència, el ROTO (rotatory) dóna voltes. El ROTO té targets que s’han d’intentar tocar.
COMPLETING A-B-C ROLLOVERS LIGHTS “EXTRA BALL” AND “SPECIAL FEATURES”. Si completem els tres rollovers (sempre amb la mateixa bola) s’activa (s’il·lumina When Lit) la possibilitat de fer Extra Ball i Special Features (però encara no tenim Extra Ball, senzillament tenim la possibilitat d’aconseguir-ho. Com s’aconsegueix? Si ens fixem en el playfield, podem veure Star scores extra ball. Per tant, quan en el target esquerra del ROTO tenim una estrella, si fem target sobre aquesta estrella, aconseguirem la Extra Ball. De la mateixa manera, Special Features ho aconseguirem quan tenim Star en el target de la dreta (i fem diana).

STAR ROTO TARGET VALUE IS 500 POINTS. HITTING STAR ROTO TARGET SCORES INDICATED VALUE AND INCREASES BONUS MULTIPLIER. Quan fem diana sobre una estrella tenim 500 punts. Fer diana sobre un ROTO target incrementa els punts indicats, i s’activa el multiplicador 10x (s’il·lumina), que vol dir que la propera podem aconseguir 3000, 4000 o 5000 punts.

BONUS IS SCORED AND FEATURES RESET AFTER EACH BALL. Tenim diferents targets que ens poden donar bonus. Aquests targets poden estar desactivats, o activats quan la làmpara associada està il·luminada. Quan perdem la bola s’incrementa el Bonus acumulat, i es tornen a resetejar totes les característiques. Aproximadament, el bonus és proporcional al temps que hagi durat la bola.

A TILT DOES NOT DISQUALIFY A PLAYER. En aquesta taula fer Tilt no està penalitzat. El Tilt es detecta quan movem la taula per tal de desviar la trajectòria i que no caigui en el forat. En moltes taules fer Tilt és sinònim de fer trampes, i això significa normalment perdre la bola i desactivar temporalment els flippers.

MATCHING LAST TWO NUMBERS IN SCORE TO NUMBER THAT APPEAR ON BACKGLASS AFTER GAME IS OVER SCORES ONE REPLAY. Quan s’acaba la partida, encara tenim una oportunitat. Si els dos últims dígits del nostre marcador coincideixen amb el High Score (?), aleshores sembla ser que se’ns regala una partida.

A grans trets, aquestes són les regles d’aquesta màquina. La majoria dels jugadors (com jo mateix) prou feines en tenim de què la bola no caigui en el forat. Però si es vol fer una bona puntuació, s’han de conèixer aquestes regles i tenir una estratègia. Hi ha gent que es dedica a col·leccionar i registrar High Scores dels pinballs. Per exemple, com es pot veure en aquest enllaç, per al Close Encounters hi ha registrada una puntuació de 691.000, amb 5 boles. La possibilitat de jugar amb 3 ó 5 boles depèn d’una opció en el software, i en les màquines reals això es configura amb un interruptor DIP que està documentat en el full d’instruccions que té l’operador (en el saló recreatiu o en el bar).

Com sempre, el més divertit d’aquestes taules és la possibilitat de jugar amb varis jugadors (fins a 4 jugadors, que es van tornant).

En les referències he ficat un video de l’escalada al Devil’s Tower, que em sembla espectacular. Pensava que l’escalada deuria estar prohibida, però no, es pot escalar si es demana el permís, i no es pot deixar material durant l’escalada.

I recorda, com en el playfield s’indica: We are not alone, i en qualsevol moment podem rebre una visita…

Referències: