Twine è un software per scrivere narrativa interattiva in formato HTML, lo stesso usato dalle pagine Web e molto semplice da imparare. Le storie a bivi, che hanno fatto la fortuna dei librogame, sono sempre apprezzate, ma Twine permette di sviluppare anche giochi di avventura, con scenari da esplorare liberamente, oggetti, combattimenti, dialoghi, punti. Per addentrarsi nei meandri di progetti narrativi anche complessi non servono conoscenze particolari di programmazione.
L’interfaccia grafica di Twine suddivide ogni storia in passaggi, all’interno dei quali si scrive il testo, che può essere corredato di istruzioni e tag per aggiungere, oltre che link, anche immagini, suoni e vari effetti speciali. La pagina Web che contiene il gioco può avere un header, un footer, una sidebar (barra laterale) e può essere modificata a piacere con i CSS che definiscono l’aspetto degli elementi della pagina. Chi vuole, può integrare il semplice codice di Twine con tag di HTML e JavaScript. All’URL rebrand.ly/stregatto-twine troviamo un gioco d’esempio.
Come funziona il programma
1. Il sito twinery.org è il punto di partenza per scrivere giochi con Twine. Il programma, già scelto da migliaia di autori, è disponibile per Windows, Linux, Mac e può anche essere utilizzato online, senza bisogno di registrarsi.
2. L’interfaccia grafica di Twine permette di gestire lo sviluppo della storia attraverso la mappa dei passaggi, ognuno dei quali ospiterà la rappresentazione di un luogo, di un oggetto, di una scena o anche di una singola azione.
3. Ogni passaggio appare come una pagina Web. Per aggiungere una scelta, cliccabile, si mette il nome del passaggio successivo tra doppie parentesi quadre: Puoi entrare nella [[casa->ingresso]] oppure esplorare il [[giardino]].
4. Per inserire un’immagine in un passaggio, basta utilizzare il relativo tag HTML: . Per incorporare il file .jpg in quello del gioco, si può ricorrere al sistema di codifica Base64.
5. Le variabili, ereditate da JavaScript, sono utili per memorizzare le scelte del giocatore. Dopo averne dichiarata una con (set: $variabile to 1), la si controlla con (if: $variabile is 1) [Scrivi Qualcosa](else:)[Scrivi qualcos’altro].
6. Con una variabile di tipo array si può creare un inventario. Dopo aver dichiarato (set: $inv to (a:)) si possono aggiungere oggetti con (set: $inv to it + (a: “oggetto”)) e toglierli con (set: $inv to it – (a: “oggetto”)).
7. L’inventario può essere visualizzato in un passaggio contrassegnato col tag “footer”: (if: $inv’s length > 0)[Inventario: (for: each _a, …$inv)[(link-repeat: _a)[(replace: ?inve)[(display: _a)]]<br>[ ]]][]<inve|.
8. Quando manca il riferimento a un momento preciso della storia, per tornare indietro di un passaggio, si usa (link-goto: “Torna indietro.”, (history:)’s last). Per richiamare il penultimo passaggio si usa secondlast.
9. L’istruzione (append: ?Sidebar)[] consente di aggiungere e gestire una sidebar, nella quale si possono mettere le istruzioni per salvare e ripristinare la posizione di gioco: (save-game:), (saved-games:), (load-game:).
10 . La conoscenza di Twine può essere approfondita su vari siti tra cui YouTube (cercate “tutorial twine”), dove sono stati pubblicati vari video tutorial, anche in italiano. È inoltre possibile scaricare giochi già fatti per studiarne il codice.
Questo sito consente l'invio di Cookie di terze parti al fine di migliorare la navigazione offrendo servizi correlati. Premendo il tasto "Accetta" Cookie accetti l'utilizzo dei cookie. Per ulteriori informazioni su come questo portale utilizza i Cookie puoi selezionare il tasto Leggi di più. Puoi modificare il consenso premendo il tasto Impostazioni.
Questo sito Web utilizza i cookie per migliorare la tua esperienza durante la navigazione nel sito Web. Di questi, i cookie classificati come necessari vengono memorizzati nel browser in quanto sono essenziali per il funzionamento delle funzionalità di base del sito Web. Utilizziamo anche cookie di terze parti che ci aiutano ad analizzare e capire come utilizzi questo sito web. Questi cookie verranno memorizzati nel tuo browser solo con il tuo consenso. Hai anche la possibilità di disattivare questi cookie. Ma la disattivazione di alcuni di questi cookie potrebbe influire sulla tua esperienza di navigazione.
I cookie necessari sono assolutamente essenziali per il corretto funzionamento del sito web. Questa categoria include solo i cookie che garantiscono funzionalità di base e caratteristiche di sicurezza del sito web. Questi cookie non memorizzano alcuna informazione personale.
Cookie
Durata
Descrizione
__hssrc
sessione
This cookie is set by Hubspot whenever it changes the session cookie. The __hssrc cookie set to 1 indicates that the user has restarted the browser, and if the cookie does not exist, it is assumed to be a new session.
_GRECAPTCHA
6 mesi
This cookie is set by the Google recaptcha service to identify bots to protect the website against malicious spam attacks.
cookielawinfo-checkbox-advertisement
1 anno
Set by the GDPR Cookie Consent plugin, this cookie is used to record the user consent for the cookies in the "Advertisement" category .
cookielawinfo-checkbox-analytics
11 mesi
This cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Analytics".
cookielawinfo-checkbox-functional
11 mesi
The cookie is set by the GDPR Cookie Consent plugin to record the user consent for the cookies in the category "Functional".
cookielawinfo-checkbox-necessary
11 mesi
This cookie is set by GDPR Cookie Consent plugin. The cookies is used to store the user consent for the cookies in the category "Necessary".
cookielawinfo-checkbox-non-necessary
11 mesi
Set by the GDPR Cookie Consent plugin, this cookie is used to record the user consent for the cookies in the "Non-necessary" category .
cookielawinfo-checkbox-others
11 mesi
Set by the GDPR Cookie Consent plugin, this cookie is used to store the user consent for cookies in the category "Others".
cookielawinfo-checkbox-performance
11 mesi
This cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Performance".
Qualsiasi cookie che potrebbe non essere particolarmente necessario per il funzionamento del sito Web e viene utilizzato specificamente per raccogliere dati personali dell'utente tramite analisi, pubblicità, altri contenuti incorporati sono definiti come cookie non necessari. È obbligatorio ottenere il consenso dell'utente prima di eseguire questi cookie sul tuo sito web.
Functional cookies help to perform certain functionalities like sharing the content of the website on social media platforms, collect feedbacks, and other third-party features.
Cookie
Durata
Descrizione
__cf_bm
30 minuti
This cookie, set by Cloudflare, is used to support Cloudflare Bot Management.
__hssc
sessione
HubSpot sets this cookie to keep track of sessions and to determine if HubSpot should increment the session number and timestamps in the __hstc cookie.
Performance cookies are used to understand and analyze the key performance indexes of the website which helps in delivering a better user experience for the visitors.
Analytical cookies are used to understand how visitors interact with the website. These cookies help provide information on metrics the number of visitors, bounce rate, traffic source, etc.
Cookie
Durata
Descrizione
__hstc
sessione
This is the main cookie set by Hubspot, for tracking visitors. It contains the domain, initial timestamp (first visit), last timestamp (last visit), current timestamp (this visit), and session number (increments for each subsequent session).
_ga
2 anni
The _ga cookie, installed by Google Analytics, calculates visitor, session and campaign data and also keeps track of site usage for the site's analytics report. The cookie stores information anonymously and assigns a randomly generated number to recognize unique visitors.
_ga_78N9WP2E3X
2 anni
This cookie is installed by Google Analytics
CONSENT
2 anni
YouTube sets this cookie via embedded youtube-videos and registers anonymous statistical data.
hubspotutk
sessione
HubSpot sets this cookie to keep track of the visitors to the website. This cookie is passed to HubSpot on form submission and used when deduplicating contacts.
Advertisement cookies are used to provide visitors with relevant ads and marketing campaigns. These cookies track visitors across websites and collect information to provide customized ads.
Cookie
Durata
Descrizione
VISITOR_INFO1_LIVE
6 mesi
A cookie set by YouTube to measure bandwidth that determines whether the user gets the new or old player interface.
YSC
sessione
YSC cookie is set by Youtube and is used to track the views of embedded videos on Youtube pages.
yt.innertube::requests
Mai
This cookie, set by YouTube, registers a unique ID to store data on what videos from YouTube the user has seen.