[IF Corner] Articoli

Cosa devo usare per scrivere un'avventura testuale?

Qualche nota per sapere dove scaricare gli strumenti di sviluppo disponibili.

Per scrivere un'avventura testuale sono necessarie due cose: una buona idea ed un sistema di sviluppo.

Per la buona idea non si può far altro che affidarsi al proprio talento, ma per il sistema di sviluppo qualche consiglio è possibile darlo.

Come sistema di sviluppo si può usare qualsiasi linguaggio (dal C al Visual Basic, passando per il Pascal ed il LISP), ma per scrivere un'avventura testuale è più facile (e forse anche più produttivo) affidarsi agli strumenti creati allo scopo.

Questi strumenti sono composti essenzialmente di tre parti: un compilatore, una libreria ed un interprete. Sono proprio questi due ultimi elementi che rendono questi sistemi così essenziali.

La libreria contiene, infatti, tutte le routine necessarie alla gestione del "mondo" che si deve creare ed all'interpretazione dei comandi dell'utente (il parser), non è perciò necessario riscrivere da capo cose che hanno dato prova di funzionare egregiamente e che sono state testate per anni da una vasta comunità di sviluppatori.

L'interprete è importante perché in questo modo quando viene prodotta un'avventura testuale questa è disponibile in un formato "indipendente" dalla macchina su cui è stata sviluppata (se scrivo un'avventura sotto Windows questa può girare senza modifiche sotto Linux, o Macintosh, o Amiga...).

I più diffusi sistemi di sviluppo sono tre: Inform, TADS e Hugo. Con questi sistemi si scrive il codice sorgente con un qualsiasi editor di testo e poi si compila.

Inform

Inform è il sistema di sviluppo più usato dalla comunità di sviluppatori di avventure testuali. I motivi sono essenzialmente tre: è disponibile da parecchio tempo, è ben supportato dall'autore e produce le avventure nel formato usato dalla Infocom. Inform è disponibile per un gran numero di macchine e di sistemi operativi (praticamente tutti i sistemi operativi principali sono supportati).

Rispetto agli altri due sistemi, Inform ha anche una libreria che consente di scrivere giochi in Italiano. Sebbene sia possibile anche con TADS e Hugo, ancora nessuno ha tradotto i file della libreria di quei sistemi per la lingua italiana.

Per scaricare Inform l'indirizzo è

ftp://ftp.ifarchive.org/if-archive/infocom/compilers/inform6

nella sottodirectory executables sono presenti gli archivi con gli eseguibili del compilatore per le varie macchine;

in library sono disponibili i file della libreria, sia come file separati che come archivi compressi;

in manuals è presente la documentazione (l'indispensabile Designer's Manual) in diversi formati (testo, HTML, RTF, ...).

Contrariamente a TADS e Hugo, Inform non include nella sua distribuzione originale un interprete, ma è necessario prelevarlo a parte, scegliendo tra le innumerevoli piattaforme supportate.

Il più completo è Frotz disponibile all'indirizzo

ftp://ftp.ifarchive.org/if-archive/interpreters/frotz

basta scaricare la versione adatta al proprio sistema operativo.

Il perché l'interprete esista in versione separata rispetto al compilatore è presto detto: gli interpreti sono stati sviluppati per poter giocare con le avventure testuali della Infocom disponibili a quel tempo. Solo dopo è stato scritto il compilatore che consentiva di creare i giochi in quel formato.

TADS

TADS (Text Adventure Authoring System) è il secondo più diffuso strumento di programmazione per avventure testuali.

È nato prima di Inform, ed è il primo sistema "di un certo livello" che si è reso disponibile.

La diffusione del programma ha sofferto un po' il fatto che, inizialmente, il pacchetto veniva distribuito come shareware, ma con questo sistema sono stati creati dei pregevoli giochi (tutti ad un livello molto alto). Da qualche tempo l'autore ha deciso di rilasciarlo come freeware, pur continuandone lo sviluppo.

Dalla sua il fatto di poter creare giochi di dimensioni praticamente infinite (a differenza di Inform che, creando giochi per il sistema Infocom, soffre di alcune limitazioni) e la recente introduzione di una versione evoluta che utilizza l'HTML per la formattazione del testo e l'inserimento di elementi multimediali.

Il pacchetto standard della distribuzione comprende il compilatore, la libreria, un debugger di codice sorgente e l'interprete.

I giochi creati da TADS sono creati in un formato proprietario indipendente dalla macchina su cui gira.

L'indirizzo da cui scaricare i file per scrivere delle avventure con TADS è

ftp://ftp.ifarchive.org/if-archive/programming/tads

in executables sono disponibili gli archivi con le distribuzioni per le varie macchine. I pacchetti sono disponibili in vari formati e con vari contenuti (ci sono gli Author's Kit, con tutto il necessario per scrivere e testare un gioco, o i Player's Kit con il solo interpete).

In library è presente la libreria standard (adv.t). Nella sottodirectory worldclass è presente una libreria avanzata scritta da una persona diversa dall'autore del prodotto.

In manuals si trova la documentazione, nei consueti formati multipli.

Hugo

Hugo è uno degli ultimi (sebbene sia stato creato da qualche anno) sistemi di sviluppo disponibili. Gode di un buon seguito grazie, soprattutto, ai continui aggiornamenti a cui lo sottopone il suo autore.

L'intenzione dell'autore era quella di arrivare ad avere un completo sistema che consentisse di scrivere avventure testuali, con la possibilità di inserire facilmente grafica e commenti sonori.

La disponibilità per le varie piattaforme è inferiore rispetto a Inform e TADS, ma copre comunque una buona fetta del mercato mondiale dei sistemi operativi.

Il pacchetto di distribuzione comprende il compilatore, la libreria, il debugger e l'interprete.

Essendo nato sulla scia di Inform, ed avendo fatto tesoro dei problemi che si sono avuti durante gli anni, Hugo gode di una sintassi del linguaggio più lineare ed omogenea.

Il debugger non è a livello di codice sorgente, ma "crea" una sorta di sorgente dal gioco compilato. L'inserimento di elementi multimediali (grafica e sonoro) viene fatto mediante un sistema il più possibile indipendente dalla piattaforma (è sempre possibile giocare senza grafica e sonoro su qualunque interprete disponibile, a meno che la grafica non rivesta un ruolo fondamentale nella soluzione del gioco).

L'indirizzo per scaricare il tutto è

ftp://ftp.ifarchive.org/if-archive/programming/hugo

in executables, come al solito, sono disponibili gli archivi con le versioni per le varie macchine;

in library sono presenti i file della libreria;

in manuals c'è la documentazione (nei vari formati).

Paolo Vece <pvece@mclink.it>