Digitalt lärande och programmering i klassrummet Introduktionsworkshop - Interaktiva berättelser med Twine
Introduktion Twine är en spelmotor gjord för textbaserade spel och interaktiva berättelser. I Twine kopplas korta passage ihop med länkar och enkelt programsyntax för att skapa textbaserade spel och interaktiva läsupplevelser. Programmering i Twine handlar framför allt om hur språket fungerar. Att arbeta i Twine kräver djupgående reflektion kring vilka regler som gäller då en berättelse inte längre följer ett linjärt händelseförlopp, utan läsaren får friheten att steg för steg själv välja en egen väg genom berättelsen. Syfte Övningen illustrerar olika sätt att skriva interaktiva berättelser och introducerar några enkla programmeringskommandon som du kan använda för att skriva egna interaktiva berättelser. Övningen tydliggör skillnaderna och likheterna mellan vanlig text och programsyntax. Innehåll Du lär dig att skapa länkar och textpassage. Du lär dig skapa variation genom att använda dig av slumpmässigt genererat innehåll. Du lär dig att skapa och använda variabler samt att hantera valmöjligheter med olika berättelsestrukturer. 1! /! 9
Instruktioner Kom igång Gå till webb-sidan: www.twinery.org Följ länken Use it online (till höger) för att starta upp programmet Twine. Du kan också ladda ner en offline-version av Twine till din dator.! När du har startat Twine kan du skapa en ny berättelse genom att trycka på den gröna knappen [+Story] till höger. Ge din berättelse ett namn och tryck på [+Add]. Arbeta med passage och länkar Berättelser i Twine består av kortare passage med länkar som läsaren följer för att utforska olika vägar genom berättelsen. Då du startar ett nytt projekt skapar Twine automatiskt ett första passage åt dig. Dubbelklicka på rutan för att ge ditt första passage ett namn - sedan är det bara att börja skriva! 2! /!9
Du kan skapa nya passage när som helst genom att trycka på den gröna knappen [+Passage] nere till höger. För att skapa en länk till följande passage skriver du dubbla hakparenteser kring texten som ska bli en länk. Har du inte ännu ett passage med precis samma namn som länken du nyss skrivit (OBS: mellanslag!) så skapar Twine-programmet ett nytt passage med det länknamnet du angivit. Syntax: [[namn på nytt passage]] Länkar behöver inte heta lika som namnet på det passage de för till. Dolda länkar tillåter dig att skilja på vilken text som ska visas på sidan och vilket passage länken skall leda till. Syntax: [[text som visas namn på passage]] 3! /! 9
!! Låt datorn skapa variation Utöver länkar erbjuder Twine-programmet dig också en mängd olika programmeringskommandon. Genom att använda program för att skriva en del av texten skapar du enkelt intressant variation i ditt program. För att välja slumpmässigt mellan olika ord eller en fraser, använder vi programmeringskommandot either. Vi definierar sedan alla de alternativ vi vill använda, åtskilda med kommatecken. Syntax: (either: alternativ ett, alt2, alternativ kan vara en lång mening ) Resultatet blir olika varje gång passaget laddas. Vill du justera sannolikheten mellan olika alternati kan du använda samma fras flera gånger inom parenteserna. (either: Du har vunnit på triss!, Ingen vinst., Ingen vinst., Ingen vinst. ) Vill du generera slumptal (istället för ord eller meningar) finns det ett enklare sätt med programmeringskommandot random. Vi definierar lägsta och högsta talet som vi kan godkänna och låter sedan datorn slumpa ut ett valfritt tal. Syntax: (random: 4, 10) 4! /! 9
Resultatet blir ett slumpmässigt tal inom de givna ramarna - som att kasta en stor tärning varje gång! Variabler Ibland är det viktigt att veta vilka val läsaren har sett eller gjort, för att kunna hänvisa till händelserna senare. I Twine kan du spara information längs med vägen genom att låta programmet skriva ner information i variabler. Variabler fungerar som små minneslappar som du kan skriva upp viktig information på. För att skapa en variabel använder vi programmeringskommandot set som berättar åt Twine-programmet att vi skapar en variabel. Vi definierar sedan vilket variabelnamn vi vill använda, och till sist matar vi in värdet vi vill spara. Värdet kan vara en siffra (utan apostrofer), ett ord eller en hel mening. Syntax: (set: $variabelnamn = värde) När vi vill använda en variabel skriver vi namnet på vår variabel, med ett $- tecken strax innan. Syntax: $variabelnamn 5! /! 9
För att Twine-programmet ska veta vad som är en variabel behöver vi skilja på vanliga ord och variabler. När vi använder $-tecknet visar vi att Twine ska hantera ordet annorlunda än normal text. Istället för att skriva ut själva variabelnamnet visar Twine det värde vi har sparat i variabeln. Om vi inte har ett sparat värde i variabeln visar Twine värdet 0. Det går bra att kombinera olika programmeringskommandon och använda dem tillsammans. Vi kan till exempel slumpa ett värde som vi sparar i en variabel. 6! /! 9
Spara, publicera, ladda upp från fil Berättelsen sparas automatiskt i webbläsarens minne på den dator du arbetar med. Medan du arbetar behöver du inte fundera på att spara ditt projekt, utan det gör programmet automatiskt. När du slutar arbeta kan det däremot vara smart att ladda ner din berättelse till ett säkrare ställe. Annars finns det en risk att berättelsen raderas, t. ex. om du eller någon annan raderar webbläsarens historik. För att ladda ned din berättelse, tryck på kugghjul-ikonen och välj [Publish to File]. Nu får du hela din berättelse i en html-fil som du kan spara där du vill. När du vill arbeta vidare laddar du enkelt upp ditt sparade projekt i Twineprogrammet: I Twine-fönstret, välj [Import From File]. Tryck sedan på knappen [Browse]. Bläddra fram mappen med din sparade fil och välj öppna den. Nu kan du fortsätta arbeta som vanligt. När du är färdig med hela projektet kan du spara det som ovan. Html-filen du laddar ner kan du nu publicera, till exempel på en webbsida eller skicka den med e-post. 7! /! 9
Variation Interaktiva berättelsestrukturer Länkar och dolda länkar räcker långt för att skapa intressanta äventyr för läsaren, som får hitta sin egen väg igenom din berättelse. Det är enkelt att tappa bort sig i sin iver att skapa meningsfulla val! Säg att du ger läsaren två val i varje passage - då hamnar du redan efter 5 steg i berättelsen hantera så många som 63 passage! Därför blir det tidigt viktigt att fundera över hur man kan skapa en illusion av val fastän alla alternativ inte leder till nytt innehåll. Här är några förslag på strukturer som kan vara användbara för att hålla antalet passage hanterbara. Återvändsgränd: Skapa en länk till ett passage som inte leder någon vart och erbjud läsaren bara en länk tillbaka. Låt läsaren utforska varje passage tills de hittar den länken som för dem vidare. Omväg: Du kan också skicka läsaren på en kort omväg som ändå till slut återvänder till samma nod som den började i. 8! /! 9
Flaskhals: Låt berättelsen förgrena sig en kort stund, men samla sedan in alla olika länkar till ett och samma passage. Länka bakåt: Vissa länkar kan föra läsaren tillbaka till noder tidigare i berättelsen. I vissa fall har de kanske passerat dem, men effekten blir starkast ifall de har träffat på dem tidigare. Övningar Använd passage och länkar (enkla och dolda) för att beskriva en liten lägenhet. Du får själv välja hur många rum huset har. I varje rum finns en eller flera dörrar du kan gå igenom. Du börjar genom att stiga in genom ytterdörren. Använd slumpmässigt genererat innehåll (ord eller fraser) för att skapa en Haiku-robot. Roboten ger en ny Haiku varje gång du undersöker den. En haiku är en kort japansk dikt som består av 5-7-5 stavelser på tre rader. 9! /! 9