Avventura nel Castello


Hai appena sorvolato il lago di Loch Ness...
Improvvisamente il motore perde colpi. 
I comandi non rispondono!
Stai precipitando!
Cosa devo fare? PRENDI IL PARACADUTE
Toh, guarda. C’è un paracadute! Non l’avevo proprio visto. 
Ti prometto che d’ora in poi starò più attento e ti riferirò scrupolosamente tutti gli oggetti presenti. 
Comunque adesso l’ho indossato. 
Stai precipitando! 
Cosa devo fare? SALTA 
Appena in tempo! 
L’aereo si schianta al suolo mentre il paracadute si apre. 
Scendi dolcemente nella luce del giorno morente. Sotto di te una brughiera desolata. Il vento ti spinge verso un castello diroccato... 

Spesso il nome di un autore resta legato in modo indissolubile ad un lavoro che ha avuto una particolare importanza nell’immaginario delle persone. Nel mio caso credo proprio sia Avventura nel Castello che, prima su Apple II poi su MS-DOS, è forse l’avventura testuale più nota nella nostra lingua.
Nel 1980 o giù di lì, la nostra piccola azienda elettronica esponeva a una fiera specializzata a Milano. Non lontano da noi stava uno stand Motorola, con un computer dall’aria molto costosa. Aveva le dimensioni di un armadietto, ma non ricordo di che si trattasse. Fui attratto da ciò che si leggeva sul monitor:

The Colossal Cave
You are standing at the end of the road before a small brick building. Around you is a forest. A small stream flows out of the building and down a gully.

Mi avvicinai alla tastiera. Visto che gli addetti allo stand non sembravano preoccuparsene, provai a scrivere qualcosa nel mio inglese allora approssimativo… e rimasi affascinato. Persi il senso del tempo: arrivai a trovare una spada piantata nella roccia che canticchiava per proprio conto, ma fui interrotto dalla chiusura serale della fiera.
Il giorno dopo, non appena possibile tornai allo stesso stand per riprendere l’esplorazione ma, con mia somma delusione, quel programma non c’era più.

Nello stesso periodo il software per Apple II circolava liberamente attraverso gli scambi di floppy disk tra amici, specialmente di giochi, per i quali c’erano pochi o nessun rivenditore locale. In quei giorni tutto era nuovo, e quasi ogni programma era interessante. Fu così che un giorno inserii un dischetto marcato “Apple Adventure” e mi ritrovai di fronte al gioco che avevo visto in fiera. Non era del tutto identico (mancava ad esempio la spada nella roccia) ma era senz’altro lui.
Il gioco conservava la situazione quando si usciva, ma la cancellava se il protagonista ‘moriva’. In quel modo era impossibile arrivare in fondo. Decisi così di modificare il programma. Il disco era protetto, ma avevo già una buona esperienza del 6502 e non fu difficile venire a capo del DOS modificato, scrivendo un apposito ‘tool’ software. Sistemato il problema dei salvataggi, si poteva finalmente affrontare la sfida.
Ci vollero parecchie sere prima di arrivare al traguardo dei 350 punti, ma fu un grande divertimento e anche un’eccellente scuola di inglese: se avessi dovuto farlo per studio, non avrei mai usato così tanto un vocabolario. Se oggi leggo senza fatica Conrad o Pratchett, lo devo anche ad “Apple Adventure”.
Programmare giochi costituiva una logica continuazione del giocarli. Se un gioco non ci piaceva, lo miglioravamo. Se avevamo un’idea, la mettevamo in pratica.

Dopo aver giocato ad Adventure, mi domandai: perché non provare a scrivere un gioco del genere in italiano? A me e a Chiara l’idea piaceva; il terreno era vergine e la fantasia non mancava. Diedi un’occhiata al programma per vedere com’era fatto, ma l’impressione che ne ricavai era che non fosse scritto particolarmente bene. Era meglio ripartire da zero.
Non avevo ancora incontrato le sofisticate avventure Infocom, e questo fu un bene. Se le avessi giocate, avrei tentato di riprodurre il loro parser (“metti il foglio rosso e il foglio verde nel cassetto grande, poi chiudilo con la chiave falsa”), complicandomi parecchio la vita e probabilmente finendo col stancarmi del progetto. All’epoca non avevo ancora scoperto che la semplicità è vincente, mi ci vollero anni per rendermene conto.

Per prima cosa ideammo un’ambientazione, poi raccogliemmo idee per i problemi da risolvere. Nel frattempo avevo iniziato a scrivere il programma, ma dopo un paio di mesi mi accorsi che la memoria RAM non bastava per contenere tutti i testi narrativi. Bisognava lavorare da disco. Ricominciai daccapo, mettendo a frutto l’esperienza precedente, e lo sviluppo andò avanti a fasi alterne per quasi un anno, dedicandoci ogni serata dopo il lavoro.
Non appena il tutto iniziò a girare, cominciammo a farlo provare agli amici che (allora come oggi) venivano spesso a trovarmi la sera per giocare. Prendevo nota di ciò che scrivevano, studiavo le loro reazioni e di conseguenza aggiornavo dizionario e azioni, per aggiungere nuove parole e nuove risposte. Dopo qualche mese di questo lavoro, il gioco sembrava molto più ‘intelligente’ di prima.



Decidemmo di provare a metterlo in vendita in un negozio di computer, appropriatamente chiamato “Il computer”, grazie alla disponibilità di Fulvio Francesconi e Luisa Moleri. Preparammo una confezione artigianale e mi misi al lavoro per realizzare una protezione anti-copia, a quei tempi essenziale. Ero orgoglioso contento che il mio sistema fosse capace di resistere persino anche al famoso Locksmith. La cui versione successiva, ovviamente, lo copiava senza problemi.
Visto che il gioco piaceva ai pochi che l’avevano acquistato, trovai un editore disposto a distribuirlo a livello nazionale: la J.Soft, associata all’allora Gruppo Editoriale Jackson, che conoscevo come collaboratore di Bit (erano i tempi del mitico direttore Piero Dell’Orco). Le vendite non raggiunsero certo grandi numeri, ma la soddisfazione era tanta, specialmente per i commenti dei giocatori.

Nel 1983 uscii dall’azienda e, poco dopo, mi trovai coinvolto dal medesimo Gruppo Editoriale Jackson nella realizzazione di “ABC personal computer”, una delle primissime opere editoriali italiane sull’argomento (speravamo di uscire per primi, ma arrivammo secondi al fotofinish), il cui successo mi aprì la strada alla professione di autore.
Nello stesso anno l’associazione tecnico-scientifica AICA organizzò a Milano la prima rassegna e competizione italiana di giochi per personal computer. Il mio editore partecipò con “Avventura nel castello” e “Melopoli”, un gioco ‘da tavolo’ che avevamo realizzato nel frattempo, ispirati dal classico “Monopoli”. Non me lo aspettavo: con mia sorpresa, Avventura nel castello vinse il primo premio e Melopoli il terzo. Ebbi qualche difficoltà a trasportare in treno le due coppe, assieme al resto del materiale che avevo portato alla manifestazione.
Per un po’ accarezzai l’idea di poter vivere scrivendo software, soprattutto giochi. Ma la situazione generale stava cambiando. Le scelte di Apple e l’incoraggiamento alla pirateria da parte dei rappresentanti italiani della Commodore uccisero sul nascere le possibilità di un settore che invece nei paesi anglosassoni si andava sviluppando rapidamente.



Il nuovo sistema operativo di Apple II, il ProDOS, poteva usare anche gli hard disk e i nuovi floppy da 3,5”, ma era anche più scomodo da usare, ingombrante, non ben organizzato e incompatibile con i vecchi programmi in Basic Applesoft come i miei. Riprogettai il programma per avventure in modo da renderlo indipendente dal sistema operativo, così da poterlo adattare non solo al ProDOS ma anche ad altri computer. Lavorando col mio nuovo hard disk Apple (ProFile) da ben 5 MB, soprannominato ‘il reattore’ per la sua silenziosità, iniziai a definire un linguaggio su misura e a scrivere il relativo interprete. Nacque così l’ADL-1 (adventure development language), col quale potevo disporre di una versione portabile di Avventura nel Castello. Il programma era piuttosto complesso, portava il Basic ai suoi limiti e non lo ritenni mai meritevole di essere pubblicato; un po’ perché ci sarebbe voluto un enorme lavoro di documentazione, ma soprattutto perché mi resi conto di avere imboccato la strada sbagliata.

Infatti nel 1985, per la preparazione del volumetto “Scrivere un gioco di avventura sul personal computer” (che sarebbe poi stato più volte ripubblicato e ampliato sotto diversi titoli), scrissi in pochi giorni il Modulo Base, un programma più semplice e meno ‘nobile’ dell’ADL-1, ma che svolgeva egregiamente il proprio compito. In un certo senso, distillai l’esperienza precedente nelle gocce che ne contenevano l’essenza.

Melopoli

Quanto la mia Avventura nel Castello fu messa in vendita da J.Soft, scrissi Melopoli, che faceva il verso al Monopoli pur utilizzando regole differenti. Un bel gioco per computer non dovrebbe essere la semplice riproduzione di un gioco da tavola, e in questo senso Melopoli avrebbe anche potuto chiamarsi “mi arrendo”: dopo un anno che mi sentivo ripetere: “Perché non fai un gioco da tavolo sul genere di Monopoli?” capitolai.
Non per questo il gioco fu realizzato in fretta. Ci impiegai quasi un anno. Per prima cosa c’era da considerare come realizzare l’interfaccia con i giocatori, punto critico in qualunque gioco, ma ancor di più nel caso di più partecipanti. L’interfaccia utente è sempre da curare con attenzione, ma per un gioco diventa essenziale. Molti programmi contabili hanno una pessima comunicazione con l’utente, e le conseguenza possono andare da operazioni sbagliate a una semplice scocciatura dell’operatore. Ma in un gioco, la scocciatura del giocatore è motivo sufficiente per smettere di giocare.
Decisi che Melopoli doveva essere giocabile rimanendo comodamente seduti in poltrona. La scelta della paddle come mezzo di input sembrava obbligata. Ogni comando doveva poter essere dato con una paddle, passata da un giocatore all’altro allo scadere del turno. Considerai l’idea di usare una paddle per giocatore, ma la scartai per due motivi: la confusione quando a giocare fossero più di due giocatori (quale paddle usare?) e la possibilità che venisse usato un singolo joystick. Inoltre, con l’uso di una sola paddle il giocatore di turno si trova ad avere  il controllo del computer, e anche questo aspetto ha la sua importanza. Dato però che non tutti hanno una paddle, in alternativa si doveva poter usare anche la tastiera.

Secondo problema: come concentrare la quantità di informazioni necessarie, nel limitato spazio disponibile sullo schermo dell’Apple II? Occorreva mostrare: la mappa, con le pedine dei giocatori; la situazione di ciascun giocatore; il menu dei comandi; l’evento in corso.
Si poteva considerare di cambiare la pagina video a secondo della situazione, ma non è una soluzione soddisfacente: lo scambio di pagine è fastidioso e la mappa perde la sua realtà se scompare ogni tanto. Mappa e informazioni dovevano restare stabilmente sotto gli occhi dei giocatori. Si dimostrò una buona soluzione. Se però mappa e stato dei giocatori erano sempre visibili, dove potevo trovare spazio per l’evento in corso? C’era una magnifica zona disponibile: il centro della mappa, in cui poteva trovare posto l’ingrandimento della casella corrente, o la descrizione di un imprevisto. Il menu dei comandi, infine, stava tranquillamente sull’ultima linea del video. A quell’epoca non c’erano gli standard cui siamo abituati oggi (menu, finestre e via dicendo) e non c’era nemmeno il mouse: ciascuno faceva come gli pareva. La nostra esperienza di giocatori ci veniva in aiuto.

A questo punto dovevo sfruttare le caratteristiche peculiari del computer per non realizzare un semplice doppione del gioco di carta. Ovviamente, il computer avrebbe fatto da cassiere. Non solo, ma consentiva di complicare notevolmente le regole per il calcolo delle cifre da pagare, senza obbligare i giocatori a tener conto dei dettagli. La tariffa da pagare si poteva basare su molti parametri: la stagione, alta e bassa, il numero di proprietà dello stesso gruppo, gli accessori installati. Oltre a saper fare i conti, un computer è in grado di memorizzare informazioni: le trenta carte degli imprevisti potevano essere scelte fra ben ottanta, rendendo ogni partita un poco diversa.



Prese queste decisioni, restava solo un dettaglio: scrivere il programma. Che linguaggio usare? Non c’era in realtà molta scelta. Dei due principali linguaggi disponibili, Applesoft BASIC e Pascal UCSD, il secondo era un vero divoratore di memoria, e nell’Apple II ce n’era poca, specie usando la grafica. Inoltre l’interattività del BASIC consentiva di sperimentare effetti visivi e di regia senza le (lunghe) attese della compilazione. C’era una seconda decisione da prendere: interpretato o compilato? Un programma compilato va più veloce e non è listabile, ma occupa molta più memoria. Un attento esame mi rivelò la dura realtà: la memoria non era sufficiente, anche perché avevo deciso che Melopoli avrebbe dovuto girare pure sui vecchi Europlus 48 K. Addio dunque all’amato Total AppleSoft Compiler (TASC) di Microsoft, che avevo usato per Avventura nel Castello, e molta attenzione alla velocità delle varie routine.
Alla fine Melopoli era costituito da tre programmi BASIC e cinque routine Assembly. Dal punto di vista del gioco in sé, non si rivelò troppo appassionante, ma si lasciava giocare. E ci divertimmo, Chiara ed io, a creare per le caselle nomi come “Bettola Frattozzi” (per un locale di infimo ordine) o “Mondovai” per l’agenzia di viaggi.

Enrico Colombini: Apple Lovers, il futuro non è mai come te lo saresti aspettato (leggi tutto)


Commenti

Post più popolari