http://wiki.joanillo.org/index.php/Curs_edX:_Animation_and_CGI_Motion_(ColumbiaX:_CSMM.104x)#Llibreria_Eigen
Arxiu de l'autor: joanillo
Close Encounters pinball: aprofundint en el gameplay
CLOSE ENCOUNTERS OF THE THIRD KIND
—————————————————————-INSTRUCTIONS
3 BALLS PER PLAYERHITTING 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:
Encuentros en la Tercera Fase, tema del Pocket pinball
He volgut fer el tema del pinball el més similar possible a l’orginal de Gottlieb, sense obsessionar-me. Per fer-ho he pintat una base de groc en el moble, i amb la CNC unes quantes plantilles per sobreposar els colors blau i blanc. El resultat m’ha agradat bastant, encara que tinc marge de millora. Però crec que el propòsit estigui força aconseguit.
Per tal de què la màquina sigui realment un Close Encounters, vull suprimir la pantalla blava de presentació del Windows, i que quan arrenqui el PinballX obri directament aquesta taula.
Pocket Virtual Pinball: ja falta poc
Després de construir el Jacks Open Mini Pinball, em van quedar ganes de construir la versió més mínima possible d’un pinball. Bàsicament un model de moble que pugui transportar fàcilment i ficar-lo dins el cotxe. Aquest model l’anomenaré Pocket Pinball, i ja he decidit que estarà basat en el tema de Encuentros en la Tercera Fase (Close Encounters of the Third Kink), la pel·lícula del Steven Spielberg que recordo haver vist quan tenia 7 o 8 anys. O sigui que aquesta petita gran màquina l’anomenaré Close Encounters Pocket Pinball
El primer va ser elegir l’ordinador, que havia de ser un barebone. Vaig aconseguir per 75 euros un Barebone AOpen, PCB Zotac GF9300/E5700. 2,5GHz + 2GB DDR2 + 160 GB bSATA + DVD. Ja sé que aquest ordinador no és molt potent, però volia veure si era capaç de moure les taules del Visual Pinball, que és l’emulador que faig servir. La conclusió és que mou bé les taules antigues en general, i es queda curt amb les taules que tenen DMD. Això es nota sobre tot en el moviment del flipper, que no és fluiïd i es pot arribar a encallar.
La sortida de video de la placa ITX té sortides HDMI, DVI i VGA, però només se’n poden fer servir dues a l’hora. Els 2 monitors que he elegit per fer la màquina són:
- Pantalla principal (playfield): ACER AL1603W monitor TFT 15,5. (VGA) 1366×768. Format 16:9
- pantalla secundària (backglass). És la pantalla reciclada d’un IPad 10. Model 32V3H-H6A. HDMI. 1280×720 (nadiu)· Vaig comprar el controlador per eBay (25 euros). Va ser difícil extreure la pantalla del IPad, però al final ho vaig aconseguir sense trencar la pantalla 🙂
Les mides de la màquina són 50 cm de llarg x 35cm ample x ? cm d’alt (comprovar), i realment ha sigut difícil ficar tots els components a dins: placa base, font d’alimentació, disc dur, amplificador audio, altaveus, transformador TV, controladora TV, mòdul IPAC, botons i cablejat vari.
Per acabar la màquina em basaré en les arts originals de la màquina de Gottlieb(https://www.pinrescue.com/games/images/closeencounters/DSCF1958.JPG). Haurem de fer les plantilles per fer les màscares de colors groc, blanc i blau. Encara que aquesta màquina es pot posar directament sobre la taula, crec que és una bona idea posar-hi unes potes per mantenir la idea i proporcions de la màquina original.
Referències:
script cncboxparam: tall làser de caixes de fusta
El novembre passat li vaig regalar a la Maria una caixeta de llum per il·luminar l’habitació [1]. Estic content del resultat, però es pot millorar tant en la part de construcció de la capsa, com en la part de l’electrònica (un timer 555 que fa apagar la llum després de 20 minuts).
Aquí va el script cncboxparam per automatitzar la creació de capses (amb un text a la cara frontal). Genera un fitxer que es pot enviar directament a una màquina de tall làser. La idea que em persegueix de fa temps és fer aquesta mena de capses minimitzant els costos i el temps. Seria una prova de concepte de disseny industrial i fabricació digital, fins a quin punt amb pocs recursos es pot automatitzar fins a fer rendible un petit procés industrial. El curs vinent m’agradaria adquirir una màquina de tall làser, però ja em faig a la idea de què haurà de ser de les màquines xines més petites.
La part de l’electròncia també l’hauria de millorar de cara el curs vinent. La idea és dissenyar una nova placa PCB i utilitzar només components SMD, però això ja és un altre tema.
El script està programat amb C++ i compila sense cap llibreria especial. Per tal de generar el text s’ha de tenir instal.lat la utilitat truetype-tracer-dxf. Les proves les he fet amb LibreCAD, que és el programa de CAD que utilitzo habitualment.
Enllaços:
- [1]: http://www.joanillo.org/?p=1586
- [2] descàrrega del script a la wiki: http://wiki.joanillo.org/index.php/Script_cncboxparam
Joc de taula Fanorona
Projecte IoT a thingspeak.com
Ja està funcionant el projecte de IoT basat en NodeCMU i el sensor de temperatura/humitat/pressió BME280, i visualització de les dades a thingspeak.com. També he començat a fer el curs de IoT a l’institut Rambla Prim, que imparteix el Jordi Binefa.
Enllaços:
- Visualització de les dades: https://thingspeak.com/channels/512446
- Visualització de les dades (resum diari): https://thingspeak.com/channels/512449
- http://wiki.joanillo.org/index.php/Pr%C3%A0ctica_IoT:_NodeMCU_i_sensor_BME280._Plataforma_Thingspeak
- http://wiki.joanillo.org/index.php/Curs_4._0004990600_Internet_de_les_coses_(IoT)
Projecte CNC: script per a un joc de taula Abalone
L’Abalone és un joc de taula dissenyat per Michel Lalet i Laurent Lévi el 1987. És un taulell amb forats on col.loquem 14 caniques per bàndol, i es tracta de fer fora sis caniques del contrincant. De fet, mai hi he jugat, però de moment construirem un taulell.
El problema consisteix bàsicament en fer una xarxa en format rusc d’abelles, que de fet són hexàgons i triangles equilàters. Per disposar els punts sobre un programa de CAD (jo utilitzo LibreCAD), de seguida necessitem el cos(60) i el sin(60). Partint d’una graella ortogonal no és fàcil fer aquesta graella. El millor és crear un script i generar els punts de forma automàtica.
Partim d’un fitxer buit de LibreCAD, creem la capa punts, i fico tres punts de prova. Obrim amb un editor de text (els fitxers de CAD tenen un format de text pla) i localitzem els punts de referència. Ara ja sabem el format que ha de tenir els punts que volem generar programàticament.
Mostrem el tros de codi més representatiu que genera la geometria de la meva graella, script bee_grid.cpp:
...
\tfor (j=0; j
El script genera un fitxer de text amb les línies que podem inserir en el nostre fitxer original, i el resultat el podem veure a la foto. És una graella de punts per al joc de l'Abalone. L'altra foto, la del joc de l'Abalone, no és meva (l'he trobat per Internet), però aquest és el meu objectiu: construir un taulell d'Abalone. Per fer-ho ja tinc el fitxer de CAD, després hauré de generar el G-Code, i finalment fresar tots els punts sobre una fusta. Ja ensenyaré el resultat quan ho hagi acabat.
Enllaços:
update 21/06/2018: aquest és el resultat final. He aprofitat una fusta de cuina, que estava molt marcada, però el resultat final m'agrada.

Jacks Open Mini Pinball
Finalment ja hem acabat el Mini Virtual Pinball que he estat construint i configurant els darrers mesos (juntament amb altres projectes que he hagut d’anar empenyent en paral.lel). El pinball està basat en el el Jacks Open de Gottlieb de l’any 1977.
El treball de pintura és molt millorable, tot i que la idea d’utilitzar màscares i spray m’ha agradat molt, i si perfecciono la tècnica, es poden fer coses molt xul·les.
He ficat 200 taules de diferents fabricants i diferents èpoques. A mi particularment m’agraden més les taules senzilles i electromecàniques dels anys 60 i 70, que no pas la sofisticació plena de llums i sons de les taules d’estat sòlid.
Per a la següent màquina que hagi de construir hi ha bastantes coses a millorar. Estaria bé que les potes es puguin treure, i que el backglass es pugui plegar cap endavant. En aquesta ocasió no ho he fet per falta de temps, i ara em trobo que tinc un moble que no el puc ficar dins dels cotxe. També hauria d’afegir un plunger/tirador analògic, i implementar el tilt/nudge analògic amb un acceleròmetre i arduino.
Ja tinc un nou pinball a la vista. Com que aquest no el puc transportar en cotxe, m’agradaria fer una versió mínima de pinball a dues pantalles (B2S), basat en una placa d’ordinador Mini-ITX (tipus barebone). És el que s’anomena un pocket pinball. Començaré a recopilar el material, ja explicaré com sempre els avenços.
Presento dos videos d’aquesta màquina. El primer és un video de presentació; i el segon és un video del procés de construcció. En els videos he ficat les cançons d’un grup de música que estan triomfant molt entre els sagals: els Buhos, música canyera en català.
Pinball B2S, ja falta poc
Per fer la primera màquina B2S (2 pantalles: el playfield i el backglass) he escollit el tema del pinball Jacks Open de Gottlieb (1977). L’original és un pinball electro-mecànic, i provant-lo amb el Visual Pinball m’ha agradat especialment. De fet, m’agraden força tots els pinballs d’aquesta època, sense massa floritures.
M’he decantat pel disseny del Jacks Open perquè no és un disseny massa difícil i vull provar, més que imprimir vinils, fer un treball de pintura i pintant amb spray les màscares per fer la transferència del disseny. Com es pot apreciar, només s’utilitza els colors vermell i negre (a part del blanc de fons). He reproduït els diferents motius del dibuix en el Inkscape, i he utilitzat una talladora de vinils (la Silhouette Cameo) que tenien sense utilitzar en el MOB de Barcelona. És la primera vegada que utilitzava aquesta màquina, i amb més temps i paciència hauria aconseguit un millor resultat. Per ser la primera vegada que faig un treball de pintura amb màscara estic content, però hi ha bastantes coses que puc millorar, i de fet hauré de repassar amb pinzell alguns acabats.
Ja he avançat bastant amb la màquina, i espero poder acabar-la i disfrutar-la ara el mes de juny. Finalment el plunger analògic, i l’acceleròmetre per detectar el tilt, hauran d’esperar. El backglass i les potes són fixes, i això vol dir que difícilment podré ficar aquesta màquina en el cotxe. Són aspectes que hauré de millorar de cara a una segona màquina.
Enllaços:
- Pinball Jacks Open a ipdb.org
- Pinball B2S a wiki.joanillo.org



