! Villa Morgana ! Avventura Testuale dimostrativa realizzata da Paolo Lucchesi ! Questo prodotto e' libero, rilasciato sotto licenza GPL (Gnu Public License), ! riportata nel file allegato gpl.txt. ! Questo prodotto e' distribuito senza alcuna garanzia. L'autore non puo' essere ! ritenuto responsabile per qualsiasi danno dovuto direttamente o indirettamente ! all'uso del prodotto. ! ------------------------------------------ ! Menu di aiuto ! ------------------------------------------ [ HelpSub; #IfDef TARGET_GLULX; SGWCloseWindow(); ShowMenu(helpmenu); if (pictureflag) SGWOpenWindow(); #IfNot; ShowMenu(helpmenu); #EndIf; ]; Menu helpmenu "Aiuto e Informazioni:"; Object -> menuvilla "Introduzione a Villa Morgana" with description "Villa Morgana @`e un'Avventura Testuale studiata particolarmente per coloro che iniziano a giocare a questo genere di giochi. Oltre ad avere una difficolt@`a molto contenuta, questo gioco @`e caratterizzato dalla presenza di un tutor, una serie di istruzioni che passo dopo passo suggeriranno al giocatore come giocare e le mosse da fare (il tutor @`e disattivabile con il comando TUTOR).^"; Object -> menuat "Introduzione alle Avventure Testuali" with description [; print "Le Avventure Testuali (A.T.), spesso chiamate Interactive Fiction (I.F.), sono giochi o racconti (a seconda dei punti di vista) che ti permettono di immedesimarti nel protagonista e destreggiarti cos@`i lungo l'evolversi della trama, affrontando gli enigmi e gli ostacoli che si ti separano dalla conclusione della storia. Il programma ti presenta un testo che descrive la tua situazione e aspetta che tu inserisca i comandi che diventeranno le azioni del protagonista.^Vediamo un esempio:^^"; font off; print " Sei su di un piccolo vialetto di campagna.^ Accanto a te vedi un'automobile.^ All'interno dell'automobile vedi una donna priva di sensi.^ >^^"; font on; print "A questo punto potrai intrudurre il tuo comando dopo il carattere >. Ad esempio:^^"; font off; print " > apri la portiera^^"; font on; print "E il programma risponde^^"; font off; print " Le portiere dell'automobile sono chiuse.^ >^^"; font on; print "Senza darti per vinto potrai tentare una strada pi@`u efficace^^"; font off; print " > sfonda un finestrino^^ Con attenzione rompi uno dei finestrini.^ > apri portiera^^ Spalanchi la portiera dell'automobile.^ >^^"; font on; print "E via proseguendo. Ovviamente non tutti gli ostacoli saranno cos@`i facili da superare.^^Buona fortuna e buon divertimento.^^"; ]; Object -> menuhow "Come si giocano le Avventure Testuali" with description "Di seguito elenchiamo i comandi pi@`u usati nelle A.T., premettendo che questa lista non @`e n@'e vuole essere completa.^^ Per muoversi da un ambiente all'altro in genere vengono usate le direzioni cardinali (nord, sud, est e ovest, abbreviate in n,s,e,o, ma anche nord-est, nord-ovest, sud-est e sud-ovest, a loro volta abbreviate in ne, no, se e so) e i comandi su (u) e gi@`u (d) per muoversi verso l'alto o verso il basso.^^ I comandi guarda (g) e esamina (x) sono quasi sinonimi, e permettono di avere descrizioni approfondite degli oggetti presenti nell'ambiente che circonda il personaggio; il comando guarda, usato da solo, permette di ripetere la descrizione della stanza. Inoltre @`e possibile guardare sotto, dentro o dietro un oggetto.^^ Gli oggetti, purch@`e non siano troppo pesanti o ingombranti, possono essere raccolti e deposti usando i comandi prendi e posa (o lascia). Il comando inventario (i) mostra una lista degli oggetti posseduti dal personaggio.^^ Ovviamente gli oggetti possono essere manipolati in altri modi pi@`u o meno logici; una torcia pu@`o essere accesa o spenta (accendi la torcia/spegni la torcia), un pulsante pu@`o essere premuto (premi il pulsante), un mobile pu@`o essere spostato (sposta il mobile), una porta pu@`o essere aperta usando la giusta chiave (apri la porta con la chiave di ferro). @`E anche possibile lasciar passare il tempo senza fare niente, con il comando aspetta (z).^^ @`E possibile usare frasi abbastanza complesse, facendo anche uso di pronomi. Ad esempio comandi come ~prendi il pugnale e lancialo al troll~, ~posa tutto~, ~prendi la pietra e la lancia~ sono riconosciuti tranquillamente.^^ Se nel corso del gioco si incontrano altri personaggi, si pu@`o comunicare con loro in vari modi; ad esempio si possono usare i comandi ~parla a ~, oppure ~parla a di ~ o ~chiedi a di ~. Altrimenti, per chiedere un oggetto a qualcuno si pu@`o dare il comando ~chiedi a ~.^"; Object -> menucom "Comandi particolari" with description "Ci sono alcuni comandi speciali che servono non tanto per giocare, quanto per gestire il gioco. Eccone un elenco:^^ SALVA o SAVE: per salvare la situazione corrente.^ CARICA o RESTORE: per ripristinare una situazione precedentemente salvata.^ RICOMINCIA o RESTART: per ricominciare il gioco dall'inizio.^ BASTA o QUIT o Q: per uscire dal gioco.^^ PUNTEGGIO o SCORE: mostra il punteggio attuale (che indica quanto si @`e vicini alla soluzione).^ PUNTEGGIO COMPLETO o FULLSCORE: mostra il punteggio in dettaglio.^ NOTIFICA ON e NOTIFICA OFF: attivano e disattivano la notifica di aumento o diminuzione del punteggio.^ OGGETTI o OBJECTS: per avere una lista degli oggetti manipolati.^ LUOGHI o PLACES: per avere una lista dei luoghi visitati.^^ LUNGA o VERBOSE: passa in modalit@`a lunga, ripetendo sempre la descrizione di tutti gli ambienti.^ NORMALE o BRIEF: passa in modalit@`a normale, descrivendo gli ambienti solo quando vengono visitati la prima volta. Questa @`e la modalit@`a standard.^ BREVE o SUPERBRIEF: passa in modalit@`a breve, non descrivendo mai gli ambienti (sconsigliata).^ SCRIPT ON e SCRIPT OFF: attivano e disattivano la trascrizione su file della partita.^^ VERSION o VERSIONE: mostra informazioni sul gioco.^ ANCORA: ripete l'ultimo comando dato.^ OOPS: permette di correggere una parola sbagliata nell'ultimo comando inserito; basta scriverlo seguito dalla parola corretta.^ UNDO: annulla l'ultimo comando inserito.^ HELP o AIUTO: per accedere a queste pagine di aiuto.^ TUTOR o GUIDA: un comando specifico di Villa Morgana per attivare o disattivare la guida per principianti.^ OPZIONI o CONFIGURA: accede ad un men@`u di opzioni.^"; Object -> menualtre "Dove trovare altre Avventure Testuali" with description "Se cercate altre avventure testuali e materiale relativo, ecco un elenco di luoghi sulla rete dove trovarle.^^ IF Archive (http://www.ifarchive.org), forse in assoluto la pi@`u vasta raccolta di materiale sulle Avventure Testuali.^ Baf's Guide to Interactive Fiction (http://www.wurb.com/if), un indice organizzato e commentato per l'IF Archive.^ IF Italia (http://www.ifitalia.info), il punto di riferimento in Italia per le Avventure Testuali.^ Terra d'IF (http://www.terradif.net), fanzine e news sulle Avventure Testuali.^ Mondi Confinanti (http://www.terradif.net/mc), software house che sviluppa Avventure Testuali.^ L'Avventura @`e L'avventura (http://www.avventuretestuali.com), ottimo sito mantenuto da Francesco Cordella, con interviste, curiosit@`a e altro ancora.^ Inform official home page (http://www.inform-fiction.org/), la pagina ufficiale di Inform, tenuta da Graham Nelson in persona.^ Informazioni (http://www.inform-italia.org), la pagina di Inform in italiano, mantenuta da Giovanni Riccardi.^ E ovviamente la pagina personale dell'autore (http://at.paololucchesi.it).^ E non dimentichiamo alcuni newsgroup dedicati alle A.T.: it.comp.giochi.avventure.testuali (gruppo di discussione italiano), rec.games.int-fiction (dedicato a giocatori e appassionati di A.T.), rec.arts.int-fiction (destinato invece a programmatori/autori).^"; Object -> menuaiuto "Se si rimane bloccati" with description "@`E abbastanza difficile rimanere bloccati giocando a Villa Morgana, specialmente se si seguono le istruzioni del tutor. Comunque di fronte alle difficolt@`a @`e sempre consigliabile un po' di perseveranza. Ma se proprio non riuscite ad andare avanti potete chiedere aiuto per email all'autore (plucchesi@@64tin.it) oppure sul newsgroup it.comp.giochi.avventure.testuali.^"; Object -> menucred "Crediti, Ringraziamenti e Licenza" with description "Quest'avventura @`e stata realizzata usando Inform, (c) Graham Nelson, e la versione italiana delle librerie, Infit, realizzata da Giovanni Riccardi. Inoltre @`e stata parzialmente usata l'estensione ~scenic.h~, di Stefano Gaburri e Roger Firth, e sono state usate le estensioni ~Dmenus.h~, di Khelwood, e ~sgw.h~ di Alessandro Schillaci, Vincenzo Scarpa, Paolo Lucchesi, Paolo Maroncelli. Come editor @`e stato usato WIDE (http://wide.berlios.de), di Alessandro Schillaci e Paolo Lucchesi^^ Le immagini sono state realizzate usando SweetHome3d (compresa la libreria dei modelli) e The Gimp. Sono state usate parzialmente immagini di Andrew Crummy e di Karolina Lewis. La copertina @`e basata su una foto di Joshua Putnam.^^ Un particolare ringraziamento va a Max ~Torredifuoco~ Bianchi e a Gabriele ~Miglioshin~ Brami, che hanno svolto una magistrale e impeccabile opera di playtesting, e hanno in questo modo contribuito non poco alla stesura definitiva di quest'avventura.^^ ~Villa Morgana~ @`e un'avventura testuale realizzata da Paolo Lucchesi (email plucchesi@@64tin.it, home page www.paololucchesi.it).^^ Questo prodotto @`e libero, rilasciato sotto licenza GPL (Gnu Public License), riportata nel file allegato gpl.txt, oppure consultabile sui siti http://www.opensource.org o http://www.fsf.org. Chiunque pu@`o copiare, distribuire, trasferire e modificare liberamente questo prodotto secondo i termini di detta licenza. I file sorgente possono essere scaricati dalla home page o richiesti per email all'autore.^ I contenuti multimediali sono rilasciati sotto licenza Creative Commons BY-SA (Attribution - Share Alike), riportata nel file allegato cc.txt, oppure consultabile sul sito http://www.creativecommons.org. I contenuti multimediali possono essere distribuiti, trasferiti o modificati purchè venga riconosciuta la paternità dell'opera e vengano mantenuti gli stessi diritti anche sull'opera derivata.^ Questo prodotto @`e distribuito senza alcuna garanzia. L'autore non pu@`o essere ritenuto responsabile per qualsiasi danno dovuto direttamente o indirettamente all'uso del prodotto.^"; Object -> menuopz "Opzioni" with description [; RunConfMenu(); ]; [ ConfSub; #IfDef TARGET_GLULX; SGWCloseWindow(); RunConfMenu(); if (pictureflag) SGWOpenWindow(); #IfNot; RunConfMenu(); #EndIF; ]; [ RunConfMenu; if (tutorflag) give tutorsw on; else give tutorsw ~on; if (lookmode==2) give longsw on; else give longsw ~on; #IfDef TARGET_GLULX; if (pictureflag) give picsw on; else give picsw ~on; #EndIf; Showmenu(confmenu); if (tutorsw has on) tutorflag=true; else tutorflag=false; if (longsw has on) lookmode=2; else lookmode=1; #IfDef TARGET_GLULX; if (picsw has on) pictureflag=true; else pictureflag=false; #EndIf; ]; Menu confmenu "Opzioni:"; SwitchOption -> longsw "Descrizioni lunghe"; SwitchOption -> tutorsw "Tutor"; #IfDef TARGET_GLULX; SwitchOption -> picsw "Immagini"; #EndIf; ! ------------------------------------------ ! Hint System ! ------------------------------------------ Class Hint with hintcount 0, description [tot x; if (~~(self provides hints)) rfalse; tot=self.#hints/WORDSIZE; if (self.hintcount<0) self.hintcount=0; self.hintcount++; if (self.hintcount>tot) self.hintcount=1; style reverse; print " [", self.hintcount, "/", tot, "] ^"; style roman; x=self.&hints-->(self.hintcount-1); if (metaclass(x) == Routine) x(); else print (string) x, "^"; ]; Hint lasthelp "Per superare l'ultimo enigma" with hints "Puoi richiamare questa voce di men@`u pi@`u volte per avere indizi sempre pi@`u precisi." "Anzitutto assicurati di avere tutto il necessario con te. Se hai seguito il tutor passo dopo passo ed hai esplorato tutta la villa, dovresti avere tutto." "Hai bisogno della collana, del'anello e della ciotola riempita nella vasca." "Devi anzitutto trovare il sistema per proteggerti dagli attacchi della strega, altrimenti sar@`a tutto inutile." "Metti l'anello nell'incavo della collana ed indossa quest'ultima." "Poi versa l'acqua sul braciere, spegnendolo, ma fai in fretta, mi raccomando.";