Un tuffo nel retrogaming anni ’80 – gilda “Iwwwannaplay”
I videogiochi sono stati (e sono) una parte della nostra infanzia.
Per tutti coloro che come me che hanno superato da un pezzo i 30 anni è impossibile non ricordare con piacere le ore passate in sala giochi a giocare con i cabinati impugnando un joystick…perché non provare a rivivere quell’esperienza, oggi, conosciuta ai più con il termine retrogaming?
Da qui è nata l’idea della gilda “Iwwwannaplay”, proposta dal team dei designer di Thanks Design, presentata alla gildonferenza virtuale del 31 Marzo.
Back to the past quindi, buona lettura.
Obiettivo della gilda ed organizzazione
Andrea Sironi, portavoce di questa gilda composta sia da designer che sviluppatori, ha spiegato gli obiettivi:
- Progettazione e realizzazione di controller fisici (di cartone o altro materiale) che integrino la scheda micro:bit [1] e permettano di comandare giochi realizzati in Scratch [2].
- Realizzazione di uno o più mini siti in linea con l’argomento retrogaming per capire e sfruttare le potenzialità di animazioni e transizioni (ScrollMagic [3] più barba.js [4]).
I primi incontri della gilda sono stati dedicati ad una fase di analisi della scheda, dei controller da realizzare in cartone, quali giochi sviluppare, concept e grafica del sito. Serviva una sorta di filo conduttore: definire lo stile, ispirandosi al mondo del retrogaming anni ’80.
La scheda micro:bit
Micro Bit (noto anche come BBC Micro Bit, stilizzato come micro:bit) è un sistema embedded basato su architettura ARM progettato dalla BBC per l’utilizzo nella formazione informatica nel Regno Unito. Dal 2016 viene distribuito gratuitamente ad ogni alunno al settimo anno di scuola (circa 11 anni di età). E’ disponibile per l’acquisto ad un prezzo inferiore a 25 euro circa. Il dispositivo è dotato di un processore ARM Cortex-M0 e dispone di un accelerometro e un magnetometro. Connettività USB e Bluetooth, ha un display composto da 25 LED in una matrice 5×5 e due tasti programmabili. Può essere alimentato via USB o da batteria esterna. È inoltre dotato di un connettore slot da 23 pin, cinque dei quali pensati per essere utilizzati anche con clip a coccodrillo o connettori a banana. La piattaforma supporta ufficialmente lo sviluppo di software in Python e C++.
Andrea ha proseguito parlandoci dei joystick, mostrandoci il video della realizzazione del volante. Video realizzato con la tecnica del time-lapse [5] e che potete ritrovare applicata nel minisito in una delle due sezioni dedicate ai videogiochi.
Scratch
Scratch è un ambiente di programmazione gratuito, con un linguaggio di programmazione di tipo grafico. Tale linguaggio, ispirato alla teoria costruzionista dell’apprendimento [6] e progettato per l’insegnamento della programmazione tramite primitive visive, è adatto a studenti, insegnanti e genitori ed è utilizzabile per progetti pedagogici e di intrattenimento.
Matteo Balestrini ha condotto una demo per entrambi i giochi realizzati mostrandoci l’editor e spiegando le logiche di gestione dei vari oggetti/personaggi che compongono la grafica, che si chiamano sprite.
Prendendo ad esempio Space Shooter, abbiamo sprite per lo sfondo, gli asteroidi, la navicella. E’ possibile gestire più costumi per ogni sprite, nel caso della navicella un’immagine per ogni stato (navicella integra, navicella senza un’ala per intenderci). Molti sprite sono messi a disposizione da Scratch ma è possibile crearne di nuovi ed importarli. Come descritto poco fa, tramite primitive visive di definisce il codice del videogioco, letteralmente trascinando blocchi da un menu. Sono disponibili tutti i più noti costrutti e anche la possibilità di definire proprie funzioni da zero. In Scratch le funzioni sono chiamate blocchi. E’ possibile caricare il proprio gioco e anche scaricare giochi caricati da altri utenti. Scratch con il suo IDE di sviluppo è disponibile sia online sia tramite una app da installare (trovate il link al download nel sito).
Scratch e la scheda micro:bit
Matteo ha poi spiegato come avviene l’integrazione con la scheda micro:bit, un passaggio veramente semplice. Una volta accesa la scheda, tramite l’IDE Scratch si effettua la rilevazione e una volta riconosciuta si hanno a disposizione blocchi per la programmazione dei sensori nonché dei led sul display. Ed è quello che è stato fatto per la realizzazione dei due giochi.
Per la demo Matteo ha spiegato, per il gioco Road rage, come far apparire sui led del display il numero dei giri ancora da effettuare.
Il minisito della gilda
L’ultima parte della gildonferenza virtuale è stata dedicata alla presentazione del minisito a cura di Roberto Aceti e Giacomo Nava.
L’idea era quella di realizzare un sito con interazioni gestite in maniera fluida, perciò i primi incontri di gilda sono stati dedicati ad una fase di analisi.
Si è deciso quindi di utilizzare barba.js, una libreria di dimensioni ridotte (circa 7 KB) e di facile utilizzo che aiuta a creare transizioni fluide tra le pagine di un sito web. La libreria fornisce meccanismi che aiutano a ridurre il ritardo nel passaggio tra una pagina e l’altra, minimizzare le richieste HTTP del browser e migliorare l’esperienza web degli utenti.
Il minisito, che potete consultare in questa pagina, è stato realizzato con l’obiettivo di essere un sito vetrina del progetto:
- The project: spiegazione del progetto, le sue finalità, e il link al download di Scratch.
- Space shooters: la pagina propone un’animazione iniziale che funge da demo del videogioco con il joystick. Scorrendo si trova la descrizione del videogioco, la possibilità di scaricare il gioco e provarlo in Scratch e, ultime ma non per importanza, le istruzioni per la creazione del joystick (con un video in time-lapse).
- Road rage: sezione simile a Space shooters.