Als je nog nooit van Twine hebt gehoord, raad ik je aan eerst deel 1 te lezen. Daarin leg ik uit wat Twine precies inhoudt.

In mijn vorige Twine-artikel creëerde ik mijn allereerste interactieve verhaal: een horrorverhaal met mezelf in de hoofdrol. Om het verhaal te structuren had ik niks anders gebruikt dan de standaardfunctie om blokjes tekst aan elkaar te linken. Dat ging nog makkelijk toen ik me in eerste instantie alleen richtte op één lijn in het verhaal, maar werd al lastiger toen ik elke andere keuze moest uitwerken. Eigenlijk had er een enorme ‘kerstboom’ moeten ontstaan met genuanceerde verschillen in elke verhaallijn, maar om eerlijk te zijn: ik maakte het mezelf gemakkelijk door op bepaalde momenten verschillende verhaallijnen gewoon naar één nieuw blok tekst te linken. Zo werden de keuzemogelijkheden beperkt, terwijl elke verhaallijn wel een enigszins logisch vervolg kreeg.

De diepte in

Alhoewel ik uiteindelijk een overzichtelijke Twine wist te creëren, had ik mezelf veel gepuzzel en geschrijf kunnen besparen: Twine ondersteunt namelijk bepaalde variabelen en conditionele statements. Net als in Javascript, maar met net iets andere macro’s. Zo toegankelijk als blokjes aan elkaar linken is dat weliswaar niet, maar er staan voldoende tutorials online die het je haarfijn uitleggen.

In mijn verhaal gebruik ik de extra code vooral om het geheel beter te structuren. In plaats van elke keuze te verwerken in een geheel nieuw blokje tekst, kan ik in één blok ook de verschillen aangeven met ‘if / then’ statements. Zo kom je in mijn verhaal al snel voor de keuze te staan of je het kleine blonde meisje aanspreekt of de oude man; deze keuze beïnvloedt toekomstige gebeurtenissen. In plaats van handmatig in elke verhaallijn bij te houden welke keuzes er ook al weer zijn gemaakt, kan ik Twine dat dus ook zelf laten onthouden.

Qua code gebeurt er verder weinig spannends in mijn Twine, maar de mogelijkheden zijn er wel. Zo is het mogelijk heuse tekstuele avonturen te bouwen met dynamische RPG- en actie-elementen. Denk aan puzzels en doolhoven waarin de speler op zoek moet naar een sleutel of gevechten waarin de speler vecht met een zwaard, bijl of ander voorwerp dat hij in een vorig stuk verhaal heeft opgepakt. De mogelijkheid om variabelen en condities te gebruiken zorgt ervoor dat je Twine meer kunt benaderen als een middel om een game te maken.

Opleuken van minimalisme

De basis van Twine heeft zeker zijn charme. Een pure focus op tekst is al genoeg om een enerverend verhaal te presenteren. Echter, elke beginnende Twiner kiest waarschijnlijk voor één van de standaard templates waardoor je een wel erg pakkende schrijver moet zijn om op te vallen. De oplossing is simpel: plaatjes, video’s, geluid en andere fratsen toevoegen om het geheel net wat unieker te maken.

De stijl van je Twine aanpassen kost in principe niet veel moeite; maak een blokje aan en schrijf ‘stylesheet’ als tag. Alle CSS die je vervolgens in dat blokje zet, verandert de template van je Twine. Denk daarbij aan het lettertype, de lettergrootte, de kleur of de plaats van alle tekst. Uiteraard kun je ook gewoon CSS implementeren in elk individueel blokje om bijvoorbeeld net dat ene stukje verhaal op te laten vallen. In mijn Twine veranderde ik zo de achtergrondkleur, vergrootte ik het lettertype en verwijderde ik de gehele sidebar.

Mijn veranderingen zijn weinig spectaculair, maar het zijn waarschijnlijk de enige aanpassingen, naast het implementeren van een plaatje of externe link, die je kunt doen als je zonder voorkennis aan Twine begint. Het beheersen van CSS is namelijk nodig om echte veranderingen door te voeren en iets toe te voegen aan de ervaring.

Kleine drempel, grote stap

We blijven Twine uiteindelijk bewonderen om zijn lage instapdrempel. Iedereen met een verhaal in zijn hoofd kan in potentie een simpele Twine maken. Met eenvoudige variabelen en creatief geplaatste links is een interactief verhaal al snel opgezet. Het is echter jammer dat het aanpassen van de spelmechaniek niet in verhouding staat tot het aanpassen van de esthetiek. Twine bevat immers wel ingebouwde macro’s, terwijl je met CSS echt bij de basis moet beginnen. Dat maakt het een stuk lastiger om een mooie Twine te maken dan een leuke Twine. 

De sofware blijft hiermee vooral interessant voor een niche. Twine mist een grote interessante community en ook heeft het programma zeker nog zijn gebreken. Zo is de ondersteuning voor programmeren beperkt en kent de software hier en daar nog wat bugs. Dat neemt niet weg dat Twine een creatief vehikel is dat sympathie verdiend voor het aanzetten tot het uiten van allerlei soorten verhalen. Of je nou vertelt over je relatie met je hond of een episch oorlogsdrama bouwt: Twine is de ideale plek om je innerlijke schrijver naar boven te halen.