Stefano Guarinelli, autore di Gollum e Scopa a 3 carte

di Andrea Pachetti

Nei mesi scorsi abbiamo presentato su queste pagine i due giochi realizzati da Stefano Guarinelli per la rivista Personal Software, Scopa a 3 Carte e Gollum; oltre ai file da utilizzare con gli emulatori abbiamo offerto una trascrizione completa di tutta la documentazione originale. Completiamo adesso questo percorso con un'intervista all'autore, in cui vengono approfonditi tutti gli aspetti legati allo sviluppo di un computer game e la sua pubblicazione su rivista.

Per iniziare, immagino che i suoi studi di Ingegneria si possano intersecare in qualche modo con l'evoluzione dell'informatica personale in Italia: avendo avuto anche a che fare con i terminali e i centri di calcolo, lei ha senz'altro vissuto in prima persona anche il diffondersi dei primi personal e home computer. Mi piacerebbe dunque sapere qualcosa di queste sue esperienze, soprattutto in riferimento alle motivazioni che spingevano all'acquisto di un computer da tenere in casa e iniziare a programmare su di esso.

In quegli anni lo sviluppo dell’informatica fu enorme e, soprattutto, in tempi brevissimi. Intuivamo di trovarci all’interno di una svolta epocale. E questo era entusiasmante. Però al Politecnico si lavorava ancora con le schede perforate. Il Centro di Calcolo era addirittura fuori città e all’università c’erano solo i terminali che, all’inizio, erano i lettori di schede.

Ovviamente l’università cercava di stare dietro a questa trasformazione, che però era troppo rapida perché fosse sostenibile. Da qui, quando comparvero i primi computer ad uso personale, molti di noi si buttarono ad acquistarne uno proprio. Fare pratica era fondamentale, pur avendo al Politecnico ottimi docenti. Io mi comprai (usato) un CBM 3032 (il cosiddetto PET) usato, che veniva dagli USA.

Come è avvenuto il passaggio dalla produzione dei primi esercizi in BASIC alla creazione di veri e propri programmi gioco? E come è nata l'idea di proporli a delle riviste?

Al Politecnico era molto attivo un gruppo di giovani docenti, fra i quali ricordo in modo particolare l’ing. Barbara Pernici, che elaborava algoritmi per il gioco degli scacchi. Giochi come quello erano parte del progetto di intelligenza artificiale a cui l’università stava lavorando. La ricerca in quel campo mi affascinava molto, ma ero alle prime armi e quello di progettare algoritmi e infine programmi per il gioco dell’uomo contro la macchina mi sembrava il modo per entrare gradualmente in quel campo.

L’idea di proporlo a una rivista venne dalla rivista stessa: un compagno di studi aveva commentato con uno dei suoi fratelli, che lavorava per Personal Software, che mi stavo cimentando con questi giochi di intelligenza artificiale (certo rispetto ai giochi che poi concretamente progettai, quello di usare la sigla "intelligenza artificiale" può sembrare eccessivo, lo riconosco. Eppure quello era il mio obiettivo finale). Da quella "soffiata" la rivista mi contattò e mi propose la pubblicazione. Ai tempi non avevo nemmeno la stampante e l’articolo fu scritto su una vecchia macchina da scrivere meccanica che era stata di mio nonno!

Consultando i vari numeri di Personal Software presenti in Rete ho trovato due suoi programmi: la Scopa a 3 carte e Gollum. Intuisco che la creazione della Scopa sia antecedente a Gollum essendo stata pubblicata in precedenza sulla rivista, ma vorrei una conferma a riguardo. Mi piacerebbe sapere qualcosa sullo sviluppo di questi due giochi, se sono gli unici che ha prodotto per i Commodore, inoltre se era partito sempre dallo sviluppo dalla versione PET.

È corretto: la creazione di Scopa è precedente. E si tratta proprio del gioco che pubblicai su richiesta della rivista. Per Gollum, invece, le cose andarono al contrario: fui io a proporre il programma a Personal Software e, avendo già pubblicato con loro, subito accettarono. Senza dubbio, il gioco della scopa mi diede più soddisfazioni di Gollum e ci lavorai per più tempo. Per l’algoritmo e la scrittura del programma impiegai circa cinque mesi, ma ci vollero quasi sette mesi per il debugging. A lezione ce lo dicevano: correggere un programma è un’arte. E riconosco che fu proprio così: fonte di maledizioni continue (perché non sembrava logico che un programma che girava per cinquanta volte, alla cinquantunesima andasse in tilt), ma anche stimolo per programmare routine di verifica, quasi "programmi sentinella" per scovare errori.

I due giochi, comunque, erano stati pensati per il CBM 3032 e successivamente adattati al C64. Avevo fatto altri videogiochi, ma modificando programmi già esistenti dei quali avevo i listati. Ma non era "farina del mio sacco" e per quelle versioni non pensai mai a una pubblicazione. Gli unici due originali sono Scopa e Gollum. Poi si avvicinava la tesi di laurea e lì, più per ragioni pratiche, mi buttai nella progettazione di sistemi informativi, con il docente di "sistemi informativi aziendali" e con quello di "ingegneria del software". Allora, penso anche a motivo del numero elevato di studenti, era importante non solo la materia, ma la disponibilità di un docente (o di due docenti, come nel mio caso) a seguirti per la tesi. Trovai inoltre un compagno di corso per fare la tesi insieme, e alla fine la scelta cadde su un argomento che non c’entrava nulla con quelli dell’IA.

Come funzionava in concreto la partecipazione a un numero di Personal Software mediante un articolo? Intendo, una volta consegnato il testo e il listato alla rivista, c'era una specie di processo di revisione in cui l'autore veniva coinvolto nelle attività redazionali, o semplicemente veniva pubblicato così com'è, una volta verificato il corretto funzionamento?

A dire il vero non saprei bene. La sola cosa che posso dire – perché mi fu riportata – è che il programma veniva testato, questo sì. Riguardo al testo dell’articolo, mi pare sia stato pubblicato così com’era e non ricordo particolari interventi della redazione.

Il fatto che le descrizioni del funzionamento delle singole subroutine fossero così approfondite era una richiesta esplicita della rivista?

In realtà era una cosa che piaceva a me. La casa editrice non mi sollecitava in tal senso, però ricordo che a loro piaceva quell’approccio.

Dato che lei programmava sul Commodore CBM PET, ci fu una richiesta che i suoi giochi fossero scritti in basic 2.0 standard e quindi compatibili anche con il Commodore 64? Ho visto che per esempio, per quanto riguarda Gollum, esiste un'apposita routine affinché il programma potesse comprendere su quale computer fosse effettivamente in esecuzione.

Non ricordo se l’idea fu mia o di Personal Software. Certo è, però, che il CBM ormai stava diventando rapidamente obsoleto e un passaggio al C-64 era pressoché necessario.

Parlando di Gollum, nella mia presentazione avevo azzardato una derivazione dell'idea da certi giochi anni Settanta tipo Mugwump e Hunt the Wumpus.

Mi dispiace, ma... non ci sono "parentele". Non vorrei sbagliare, ma non ricordo di essermi ispirato ad essi perché ai tempi nemmeno li conoscevo. Comunque è davvero interessante questa cosa che scrive, probabilmente quel mondo fantasy era di spunto per parecchi.

A proposito del tema di Gollum, io sono un affezionato lettore tolkieniano sin dalla fine degli anni Ottanta; immagino che la fascinazione del Signore degli Anelli fosse molto forte anche negli anni in cui ha concepito il suo gioco e che, quindi, si trattasse di una tema conosciuto dal lettore medio di una rivista di informatica...

Beh, se mi scrive che anche lei è un tolkieniano, già ha guadagnato cinquecento punti! Io lo conobbi per caso, perché me lo regalò un amico con cui avevo fatto il servizio militare e che lavorava nella ditta che stampava i libri per l’editrice Rusconi. Penso volesse farmi un regalo "di peso" per il mio congedo, e il libro, di peso ne aveva proprio! Tolkien era già conosciuto ai tempi, ma nulla a confronto di quello che accadde quando comparvero i film con la regia di Peter Jackson, vent’anni dopo, più o meno.

Per quanto riguarda invece il gioco della Scopa a tre carte, ho una curiosità: una versione del suo gioco, adattata per Commodore 64 (utilizzando quindi caratteristiche tipiche di questo computer, come gli sprite) era uscita qualche tempo dopo su un'altra collana della Jackson, cioè il corso Videobasic. Volevo sapere se aveva realizzato lei anche questa diversa versione oppure se fu un intervento redazionale.

No, non avevo realizzato io quella nuova versione, però ricordo che quelli del Gruppo Editoriale Jackson mi dissero che avevano in mente di farla. Qui vado a memoria e potrei essere impreciso, ma credo che quel programma si basasse comunque sul mio algoritmo.

Devo dire che, avendo studiato integralmente il listato della Scopa, sono colpito dalla qualità del ragionamento di certe prese del computer, che a volte si rivela un avversario davvero ostico. Capisco ora anche il perché di certe "lentezze" sulla scelta della carta da parte di "Ubaldo", il computer, poiché i cicli annidati diventano davvero molti in certe prese multiple.

Di quel lavoro, effettivamente, la parte più avvincente stava proprio nella progettazione di algoritmi che affrontassero ragionamenti relativamente complessi. I cosiddetti "sistemi esperti" e in genere l’Intelligenza Artificiale, come ho detto in precedenza, mi "prendevano" molto.

A proposito di "Ubaldo", il fatto che il calcolatore avesse un nome è un divertente valore aggiunto, per me: sarei curioso di sapere come è nata questa cosa. Nei commenti al listato su Personal Software ho notato che da parte sua ci sono persino delle scuse (!) a riguardo: «è stato il calcolatore, chiamato, qui e in tutto il programma, con il nome di Ubaldo (i più seri mi perdoneranno!).»

Diverte molto anche me il ricordo di Ubaldo, che fu il mio primo pc. Qui andiamo un po’ sul personale...! Perché si chiamasse proprio "Ubaldo", sinceramente non ricordo, ma certo è che da sempre, ma soprattutto quando ero giovane, avevo il vizio di dare il nome a tutte le cose "dinamiche". La mia prima auto si chiamava Enza, perché l’avevo comprata usata ed era targata PC, cioè "Piacenza" da cui "Enza", appunto. È solo un esempio... tutte le altre auto avute in seguito avevano un nome, ma qui davvero rischierei di passare per psicopatico... il che non è escluso. In ogni caso, ogni nome aveva una qualche relazione con qualche caratteristica dell’auto. Però, davvero non ricordo proprio perché decisi di chiamare Ubaldo il pc.

Mi permetto una piccola aggiunta. Ad un certo punto (non ricordo l’anno, ma credo fossimo più o meno nel 1985) decisi di vendere il CBM trovando un anziano ingegnere a cui interessava. Questi, più di dieci anni dopo (io già facevo tutt’altro) mi chiese se lo volevo indietro e me lo regalò. Io accettai con gioia e quel cimelio (funzionante, anche se non ho più il lettore a cassette) fa bella mostra di sé in casa mia. Le mando la foto. Così può conoscere... Ubaldo di persona!

Adesso anche tutti i lettori possono finalmente vedere il vero e unico Ubaldo! Grazie per aver condiviso con Quattro Bit queste informazioni e questi ricordi!


Commenti