Genesi di un videogame ai tempi dell’Amiga

Oggi vi presentiamo il primo capitolo di una serie di articoli in cui ospitiamo Simone Bernacchia, sviluppatore italiano residente in America, collaboratore del progetto AROS e amighista da sempre. Simone è nato a Mondolfo, possiede prima uno ZX spectrum poi un Amiga; inizia con lavoretti saltuari nell’industria dei videogiochi e realizzando colonne sonore per spot e animazioni mentre rifinisce la grafica e la musica del videogioco Powder. Nel frattempo concorre con animazioni in rassegne nazionali ed internazionali. Si classifica primo nella sezione 2D del Bit.Movie nel 1995 con la animazione “N.O.L.W – La Notte dei Rottami Viventi“; lavora nel settore multimediale e come web designer per diversi anni fino a che nel 2005 si trasferisce in California, a Los Angeles, dove attualmente lavora come Web Developer. È folgorato da AROS nel 2007, mentre cercava un sistema alternativo da installare nel suo laptop e comincia a collaborare con il progetto scrivendo articoli per i suoi blog, scarabocchibinari.wordpress.com e binarydoodles.wordpress.com; inoltre quando possibile partecipa a conferenze e a conventions come lo SCALE di Los Angeles come standista e divulgatore di AROS ed ARIX.

Era il 1988 quando ebbi occasione di incontrare Max, un altro utente Amiga che viveva in quel di Fano. Ci scambiavamo giochi e programmi; un giorno mi mostrò una demo fatta da alcuni suoi compagni di scuola. Si trattava di una semplice intro, con un campo stellato e un testo scorrevole e con un modulo preso da qualche parte, ma era per me una cosa molto interessante ed eccitante. Sin da quando avevo preso il mio Amiga 500 ero rimasto affascinato dalle intro dei vari gruppi di crackers, per me un’avanguardia nella programmazione amighista; e il fatto di poter conoscere uno di questi gruppi – per quanto minuscolo – era una possibilita’ molto interessante e quindi cominciai a cooperare con loro.

Più o meno nello stesso periodo ero entrato in contatto con Nicola Valentini – soprannominato Nike – un altro con cui ci si scambiava programmi e che stava cercando di imparare l’Assembly 68k; ho successivamente imparato che era nella stessa classe di Filippo e Max: mondo piccolo, non è vero? Comunque, anche lui stava programmando delle intro, per le quali ho aiutato facendo grafica e musica, usando il suo pseudo “Nike”; ho cercato in giro ma non sono riuscito a trovarle da nessuna parte. Filippo e Thomas vivevano in una frazione di Fano, chiamata Centinarola; Thomas specialmente viveva nel mezzo delle colline circostanti, e ci si trovava a casa sua il venerdi nella vecchia cucina al piano superiore – suo laboratorio eletto – in cui si facevano esperimenti con il codice e si decideva sul da farsi.

Dopo un altro paio di intro semplici, finalmente riuscimmo a scappare con qualcosa di diverso: usando bobs disegnati a palline creammo l’animazione di un pupo, muovendo le palline e salvando i frames. Con questo metodo, nell’estate del 1990 il cosiddetto demo “Pupo” vide la luce, ed ebbe un moderato successo.

Quazar Anniversary Demo a.k.a Pupo (1990) from simone bernacchia on Vimeo.

Conoscevo Marco Maltese sin dalla metà degli anni ottanta: eravamo entrambi possessori di ZX Spectrum ed entrambi cercavamo di programmare dei giochi in BASIC e compilarli; molti segreti del mestiere me li aveva insegnati lui – come usare le porte IN per leggere piu’ tasti in contemporanea o comandi da Joystick, o come usare il compilatore Softek IS piuttosto che quello FP per avere delle prestazioni decisamente migliori – ma con il sacrificio di istruzioni come DIM o BEEP.

Quando uscì l’Amiga 500 Marco lavorava in un negozio di computer a Senigallia – ed usciva anche insieme alla figlia del proprietario, ma questa è una storia diversa; comunque, nella sua posizione di commesso si trovava esposto a molte delle novità allora correnti sia Hardware che Software ed ebbe occasione di lavorare con l’Amiga 500 prima di molti altri. Io avevo iniziato a procurarmi software Amiga BEN PRIMA di comprare il mio 500, visto che e’ stato amore a prima vista; coronai il mio sogno nell’estate del 1988 e la prima cosa che feci fu cominciare a lavoricchiare col Deluxe Paint.

Sia io che Marco eravamo fans ed estimatori di R-Type: uscito nel 1987, aveva stabilito dei nuovi standard per gli sparatutto a scorrimento orizzontale sia nel comparto grafico che in quello della giocabilità, provvedendo anche, con il Beam cannon, una soluzione elegante alla Sindrome da Power-Up. Cominciammo a progettare quella che ritenevamo fosse una degna evoluzione del gioco, sperando di spremere le possibilità grafiche dell’Amiga usando, se non 32, 64 colori grazie al modo Half Brite e con ENORMI sprites per i nemici.

Peccato fosse quasi tutto sulla carta: l’hardware della nuova macchina ci era ancora abbastanza sconosciuto, cosi come un metodo valido per lavorarci sopra: sicuramente l’Amiga Basic fornito con il Workbench non sarebbe stato adeguato a gestire la massa di grafica che avevamo in mente, ed ai tempi AMOS era solamente una ipotesi, neanche annunciata; quindi alla fine della fiera i nostri progetti erano essenzialmente una sorta di brainstorming e un modo per migliorare le nostre capacità in un ambiente più potente di quelli del 64 e dello ZX spectrum.

Io componevo delle musiche prima usando il Sonix, poi passai a Linel SoundFX e alla fine Noisetracker – un clone di soundtracker – e lui disegnava navette con il Deluxe Paint; comunque era tutto sorta in sospeso, aspettando di avere un modo per sviluppare le nostre idee. Come gia’ detto le nostre conoscenze del BASIC questa volta non sarebbero state abbastanza per soddisfare le nostre aspettative – che includevano grossi BOBs ed anche possibilmente diversi livelli di parallasse. Il Progetto era chiamato M-Type (un gioco di parole tra R-Type e le iniziali di Marco) e ricordo tra le idee iniziali c’era anche quella di avere differenti navi con differenti modalità di fuoco; molto simile sia all’idea finale di Powder che a quelle che divennero le future evoluzioni del franchise di R-Type, tra cui R-Type Final, che usci’ nel 2003 – questo e’ uno dei problemi noti quando si e’ degli innovatori: chi segue le tue tracce sembra alla fine un copione.

Febbraio 1990

A quel tempo ero uno studente all’istituto d’arte: insomma, dopo aver ripetuto il quarto anno stavo frequentando un istituto privato per ottenere la Maturita’ e nel fratempo continuavo a lavorare ad alcune idee per M-Type, soprattutto nemici, disegnati su carta, con un aspetto semi-organico (immaginatevi navi meccaniche con vasi sanguigni e cose simili). Thomas e Filippo stavano cercando di fare alcuni giochi per imparare a programmare in assembly; Specialmente Thomas stava lavorando a un gioco simile a Power Spikes, e avevamo avuto l’idea di usare personaggi non umani; recuperai il design di un pupetto nasuto peloso e con grandi piedi disegnato per un vecchio gioco in BASIC su spectrum e ne feci il giocatore principale; il titolo provvisorio del gioco era “Alien Volley”.

Sempre in quel periodo, un giorno io e Nicola ci trovammo a parlare della allora recente conversione di R-Type su Amiga – fatta dai Factor 5 – e di come si pensava di poterla fare meglio. Era anche l’intenzione di Nicola di imparare a programmare in Assembly, e anche nel suo caso fare un gioco pareva essere il progetto giusto. Si tenga anche in mente che ai tempi c’era ancora una certa carenza di sparatutto a scorrimento orizzontale su Amiga: tra i migliori c’era R-Type quindi – tecnicamente buono ma difficile – Blood Money, ed infine Menace, nonostante fosse troppo facile. Successivamente, quella primavera Nicola andò in gita con la scuola a Budapest per cinque giorni; immagino sia stato colpito da un fulmine o qualcosa di simile, visto che al suo ritorno comincio’ a lavorare a un tool per comporre le mappe, che chiamammo MED – acronimo per Map Editor; alla fine era un tool abbastanza semplice che consentiva di scegliere un gruppo di tasselli grafici (tiles) e di copiarli nella mappa, usandone fino a dieci alla volta. I tasselli erano di 16×16 pixels e 16 colori.

Contemporaneamente aveva anche iniziato a scrivere il primo codice per il gioco, inizialmente solo con la mappa e la navetta del giocatore. Quella fu l’occasione in cui iniziai a disegnare la prima mappa: City. L’ispirazione mi venne da Blade Runner e da altro materiale sullo stile Cyberpunk, piuttosto in voga in quel momento e di cui ero anche io fan: si puo’ ancora notare nei palazzi rotondi che son sopravvissuti fino alla versione finale, pur migliorati. Stesso per i binari della monorotaia presenti; tra le cose non sopravvissute c’era un verde oliva nella palette (usato visto che uno dei primi nemici doveva essere una versione volante della mia vecchia Fiat 126), poi rimpiazzato da un marroncino.

Alcuni dei primi sprites che avevo realizzato mentre lavoravo con Nicola – notare in alto anche una prima versione della navetta in notturno

All’inizio era Nicola stesso a convertire la grafica IFF in formato RAW (in ambito amighista RAW indica la grafica non compressa con i bitplanes disposti uno dopo l’altro); successivamente siamo riusciti a trovare dei tool esterni, probabilmente fatti da coders della demoscene. Successivamente, Nicola chiese a Thomas di dargli dei suggerimenti in come aggiustare il codice del gioco, che non sembrava comportarsi propriamente. Filippo e Thomas decisero di aiutare Nicola e successivamente unirono le loro forze nel continuare il gioco.

Ci sono alcuni momenti fissi nella mia memoria, come quando Thomas trovo’ una routine non proprio standard nel codice di Nicola e la evidenziò con il seguente commento: “Come c…o si fa ad aspettare il blitter così?” In quel periodo ho anche preparato la prima musica per il gioco; trovai degli accordi di chitarra in un demo che usava grafica vettoriale per testo e vu-meters (di cui mi son scordato il nome) che mi piacevano e li usai; per almeno un anno questa musica e’ rimasta nelle nostre orecchie mentre si testava il gioco. Avevo alcune idee su come far reagire la musica a situazioni del gioco, e pensammo ad almeno due o tre eventi da usare.

Music – Powder city soundtrack v1 – 1990 (Unreleased) from simone bernacchia on Vimeo.

Siccome eravamo ancora ai primi stadi, Nicola voleva avere piu’ verieta’ nella grafica e non era troppo contento della mia navetta giocatore; pensai che probabilmente Marco era la persona giusta per il progetto e mi misi in contatto con lui: anche agli altri la sua grafica piacque e comincio’ a lavorare al gioco a che lui. Fino a quel momento la mia collaborazione era stata comunque sporadica causa gli esami di maturita’ incombenti ma, dopo la seconda meta’ di Giugno, quando tutto fu finito, fui finalmente in grado di esser più coinvolto.

Press ESC to close