Spelutveckling genom problembaserat lärande i den allra första högskolekursen



Relevanta dokument
Kursutvärdering/1MD222 Konstruktion av användargränssnitt II Datum för sammanställning:

Elevernas uppfattningar om alltmer digitaliserad undervisning

Laboration i datateknik

Kursvärdering 1DV433 Strukturerad programmering med C++ LP Lärare: Tommy Löfqvist 17 svar

Mälardalens högskola

Rune Tennesmed. Oskar Norling 1DV430. Individuellt Mjukvaruutvecklingsprojekt 1DV430 Webbprogrammerare H12 Oskar Norling

Mina listor. En Android-applikation. Rickard Karlsson Rickard Karlsson - rk222cu Linnéuniversitet rk222cu@student.lnu.

Dokumentation och presentation av ert arbete

Kursutvärdering Icke-linjärt och interaktivt berättande VT 2014

GRUNDKURS I C-PROGRAMMERING

PlantPuppy Räddaren för den som inte kan hålla växterna vid liv

PD104A - Introduktion för Produktuteckling och design

Slutrapport för Internetfonden

Poäng. Start v. Applikationsprogramm ering i Python 7.5. Antal registrerade (män/kvinnor) 50 (34/16)

Arbetsrapport CEQ, ETS170

Här ges en överblick över de delar som ingår i projektarbetet och beskriver kraven och bedömningskriterierna.

Slutrapport. Interaktiv Mjukvaruutvecklingsprojekt. HIF-Spelet. Ett XNA-spel. Christian Ulf

PROGRAMMERING. Ämnets syfte. Kurser i ämnet

SLUTRAPPORT: TEXAS HOLDEM 4 FRIENDS

Dagbok Mikael Lyck

TDDC74 - Projektspecifikation

Människa- datorinteraktion, MDI, vt 2012, Anvisningar för projekt- /grupparbete

Webbdesign med multimedia, 5p Kurskod Kurstillfälle Hösten 2007 Kursansvarig lärare Ulf Larsson, Rum 3047

PROGRAMMERING. Ämnets syfte. Kurser i ämnet

PROJEKTRAPPORT EDA095 NÄTVERKSPROGRAMMERI

Resultat av kursvärdering

DD

Laborationsrapport av robotprogrammering

Period 3-4, VT2006 Distans, nät

Tor Sterner-Johansson Thomas Johansson Daniel Henriksson

Sammanställning av kursvärdering

Människa- datorinteraktion, MDI, ht 2011, anvisningar för projekt- /grupparbete

Robotar i NXc. En laboration med Mindstormrobotar. Sammanfattning KUNGLIGA TEKNISKA HÖGSKOLAN

FK Elektromagnetism och vågor

WEBB13: Bild och Grafisk produktion, 7,5 hp, H13 (31KBG1)

Portfölj (portfolio), T1, Stadium I, Läkarprogrammet, Örebro Universitet. Portfölj. Termin 1, Stadium I

Labbrapport - LEGO NXT Robot

Kurs-PM fo r HI1028, Projektkurs inom programvaruutveckling, VT16

Grunder. Grafiktyper. Vektorgrafik

MYCKET BRA (14/48) BRA (30/48) GANSKA BRA (3/48) INTE BRA (1/48)

Allmänna frågor om kursen: Kursutvärderare: IT-kansliet/Christina Waller. 1. Vad är ditt allmänna omdöme om kursen? Antal svar: 30 Medelvärde: 3.

Exempel på observation

Projektet. TNMK30 - Elektronisk publicering

Process- och metodreflektion Grupp 5

PROJEKTLEDNING inom produktutveckling. Individuell inlämningsuppgift KPP039 Produktutvekling 3 Boris Mrden

Programutveckling med Java 7.5 p, ht 2007 (D0019N) STUDIEHANDLEDNING - ALLMÄN INFORMATION

1 Kravspecifikation Snake App

Evaluation Summary - CT3380 Grundläggande webbdesign HT05 Dan Levin

PROGRAMMERING. Ämnets syfte. Kurser i ämnet

Självhjälpsprogram för ADHD. Del 1 Att hitta din väg

Min syn på optimal kommunikation i en PU-process

Välkomna till kursen i grundläggande programmering DVGA08, ISGA04

1DV432 ST14. I vilken utsträckning har kursens innehåll och uppläggning gett förutsättningar för att du ska ha uppnått respektive lärandemål?

Eventuella kommentarer: Under kursens gång har 4 studenter hoppat av utbildningen.

Flipped Classroom med gamification som stöd för studentaktiverande undervisningsform

Joakim Jonsson jj222kc. Minesweeper. Individuellt Mjukvaruprojekt Joakim Jonsson

Struktur för kursutvärdering vid Teknik och samhälle

KURSUTVÄRDERING MATEMATIK I: 5B1115

Projektarbete. Anvisningar, tips och mallar. Sammanställt lå 05/06 av lärgruppen - Projektarbete

Kursutvärdering K1 Tandläkarutbildning HT2016

Projektuppgift.

THFR41 - Teknisk kommunikation på franska del II

Vi är alla i gruppen väldigt intresserade av spel och vill lära oss mer om hur man skapar ett helt spel från idé till slutprodukt.

Preliminär specifikation av projekt

Människa- datorinteraktion, MDI, ht 2012, Anvisningar för projekt- /grupparbete

Kravspecifikation. Sammanfattning. Fyra i rad Javaprojekt inom TDDC32. Version 2.0. Datum Dokumentnummer

Snake. Digitala Projekt (EITF11) Fredrik Jansson, I-12 Lunds Tekniska Högskola,

Programmering av NXT Lego- robot Labbrapport för programmering av en Lego- robot

Enkätresultat. Kursenkät, Flervariabelanalys. Datum: :47:04. Aktiverade deltagare (MMGF20, V10, Flervariabelanalys) Grupp:

MYCKET BRA (7/44) BRA (34/44) GANSKA BRA (4/44) INTE BRA (1/44)

Välkomna till DIT012 IPGO

Kursvärdering Berättarteknik 2014

1. Hur många timmar per vecka har du i genomsnitt lagt ner på kursen (inklusive schemalagd tid)?

Introduktion till programmering med hjälp av Lego Mindstorm

Högskolepedagogisk utbildning-modul 3-perspektivkurs nov 2004

Grundkurs i programmering - intro

Projektanvisning. Webbsideprojekt. Författare: Johan Leitet Version: 2 Datum:

Utveckling av ett grafiskt användargränssnitt

Föreläsning 2. Operativsystem och programmering

Datavetenskapliga programmet, Spel, 180 högskolepoäng

RAPPORT FÖR UTVÄRDERING AV AVSLUTAD KURS/DELKURS

IBSE Ett självreflekterande(självkritiskt) verktyg för lärare. Riktlinjer för lärare

Sammanställning av studentutvärdering samt utvärdering kurs vid institutionen för naturvetenskapernas och matematikens didaktik

Välkomna till DIT012 IPGO. Tyvärr en bug i Google Docs: Sidnummer stämmer inte alltid. Alla anteckningar börjar på sidan 1.

PROJEKT- PRESENTATION

Ett projektarbete i svenska, teknik och engelska, riktat mot DICE. Thoren Innovation School HT2012.

PROGRAMMERING I NXC. Sammanfattning KUNGLIGA TEKNISKA HÖGSKOLAN

Kursutvärdering av Fördjupad farmakoterapi 7,5 högskolepoäng, ht 2007 & vt 2008

CEQ-kommentarer Kurser år 2. CEQ-kommentarer Kurser år 2

Evaluation Summary - CDT104 Grundläggande Webbdesign HT07 Dan Levin

Föreläsning 1: Intro till kursen och programmering

Game of 40. Regler och om sidan är in princip samma sak. Det som skiljer dem åt är att de inte har samma text.

ENGELSKA. Ämnets syfte. Kurser i ämnet

Fakta om robotar VAD HANDLAR BOKEN OM? LGR 11 CENTRALT INNEHÅLL SOM TRÄNAS ELEVERNA TRÄNAR FÖLJANDE FÖRMÅGOR. Lärarmaterial EVA MOSEGAARD AMDISEN

Har du läst kursen på Campus eller distans Campus 8 53% Distans 7 47%

Utvärdering av laboration i genteknik. för kemiingenjörer, VT 2002

Medborgaren och myndigheten

MO1002_HT17. Antal svar: 4

Robotprogrammering felsökning & analys.

Kursutvärdering av Introduktionskursen, 7 poäng, ht 2006

Transkript:

Spelutveckling genom problembaserat lärande i den allra första högskolekursen Thomas Larsson & Rikard Lindell Institutionen för datavetenskap (IDt) Mälardalens högskola (MdH) 17 augusti 2004

2

Förord I ett led att förnya våra utbildningar mot ett bredare utbud med mer attraktiva och tvärvetenskapliga program så startade vi ett nytt utbildningsspår inom ramen för datalogiprogrammet, 120 160 poäng höstterminen 2003. Cirka 30 av de nya studenterna valde att följa den nya inriktningen. För att erbjuda dessa studenter något nytt redan från början, i enlighet med deras intresse, valde vi att radikalt förändra kursupplägget på den första kursen Introduktion till datavetenskap, 5p. Genom att arbeta i projektform med problembaserat lärande lät vi studenterna utveckla ett eget datorspel efter egna idéer och med egenvalda verktyg. Detta angreppssätt kändes lite vågat, med tanke på att det var den allra första kursen och att ingen tidigare programmeringserfarenhet krävdes av studenterna, men i slutändan visade det sig vara ett utmärkt sätt att lägga upp kursen på. Vilken tur att vi vågade prova! Vi vill speciellt tacka studierektor och kursansvarig Filip Sebek för ett fint samarbete, din flexibilitet och den uppmuntran du gav då det gällde att genomföra kursens med olika spår, där vi med våra studenter fick fria händer att arbeta med problembaserat lärande. Som vi alla närvarande vid det avslutande seminariet i kursen kunde erfara, så var resultatet väl värt den möda och det extra arbete som det heterogena kursupplägget innebar. Vi riktar även ett tack till Dan Levin för dina värdefulla kommentarer för att förbättra denna rapport. Slutligen, vill vi framförallt rikta ett speciellt tack till studenterna på kursen, som med sin entusiasm och sitt hårda arbete presterade klart bättre än vi hade vågats hoppas på. Ni gjorde det till ett nöje för oss att få vara med i kursen. Hoppas ni fortsätter igenom utbildningen med samma glöd! Thomas Larsson & Rikard Lindell Västerås, 16 augusti, 2004 3

4

Innehåll 1 Upplägg, pedagogik, och projektuppgift 9 1.1 Inledning............................... 9 1.2 Problembaserat lärande....................... 10 1.3 Projektuppgift............................ 11 1.3.1 Examination......................... 11 1.4 Uppgiftsbeskrivning......................... 12 1.4.1 Projektplan.......................... 12 1.4.2 Litteraturstudie........................ 12 1.4.3 Konceptprototyp....................... 12 1.4.4 Konceptutvärdering..................... 12 1.4.5 Implementation........................ 12 1.4.6 Utvärdering.......................... 13 1.4.7 Rapporten........................... 13 1.4.8 Presentationen........................ 13 1.5 Resultat................................ 13 1.6 Diskussion............................... 15 1.7 Slutsatser............................... 16 2 flood Ed 17 2.1 Inledning............................... 17 2.1.1 Uppgift............................ 17 2.1.2 Rapportens uppbyggnad................... 18 2.2 Avhandling.............................. 18 2.2.1 Konceptprototyp....................... 18 2.2.2 Metod............................. 21 2.3 Slutsats................................ 23 2.4 Bilagor................................. 24 2.4.1 Projektplan.......................... 24 2.4.2 Sammanställning av gruppmöten.............. 25 2.4.3 Spelbild............................ 26 2.4.4 Konceptprototyp....................... 27 2.4.5 Konceptbild 1......................... 28 2.4.6 Konceptbild 2......................... 29 3 Cathexis - ett annorlunda spelkoncept 31 3.1 Introduktion............................. 31 3.2 Spelhistorik.............................. 32 3.3 Skapandet av Cathexis........................ 33 5

6 INNEHÅLL 3.3.1 Projektplan.......................... 33 3.3.2 Design............................. 33 3.3.3 Implementation........................ 36 3.4 Projektutvärdering.......................... 39 3.4.1 Beta-testning......................... 39 3.4.2 Resultat............................ 39 3.4.3 Diskussion........................... 41 3.4.4 Framtida utveckling..................... 42 3.5 Slutsats................................ 43 4 Nomad 47 4.1 Inledning............................... 47 4.1.1 Genomförande........................ 48 4.2 Litteraturstudie............................ 49 4.2.1 Spelhistorik.......................... 50 4.2.2 Bakgrund & Inspiration................... 52 4.3 Spelet................................. 53 4.3.1 Prototyp........................... 53 4.3.2 Implementation........................ 53 4.4 Resultat och utvärdering....................... 55 4.4.1 Arbetsinsatsen........................ 56 4.5 Slutsatser och framtida förbättringar................ 56 5 P.I.M.M.P.0.1 The ultimate game experience 57 5.1 Inledning............................... 57 5.2 Uppgift................................ 57 5.3 Speldesign............................... 58 5.4 Om handlingen............................ 59 5.4.1 Handlingen.......................... 59 5.4.2 Introtexten i spelet...................... 59 5.5 Spelmotorn.............................. 59 5.6 Banan................................. 61 5.7 Objekt................................. 61 5.7.1 Block............................. 61 5.7.2 Rörlig cylinder........................ 62 5.8 Ljud.................................. 63 5.9 Test.................................. 63 5.10 Resultat/Utvärdering........................ 63 6 DALO: The Return Of The Evil Phös 65 6.1 Introduktion............................. 65 6.2 Bakgrund............................... 66 6.3 Syfte och mål............................. 68 6.4 Story.................................. 68 6.5 Metod................................. 69 6.5.1 Spel-layout.......................... 69 6.5.2 Format och programvara................... 70 6.6 Utvärdering.............................. 71 6.7 Diskussion och slutsats........................ 71

INNEHÅLL 7 7 English is Fun 73 7.1 Inledning............................... 73 7.2 Projektplan.............................. 74 7.2.1 Olika typer av spel...................... 75 7.2.2 Hur ska man definiera ordet spel?............. 75 7.3 Vilka kriterier måste ett spel uppfylla?............... 75 7.3.1 Vilka spelgenres finns det?.................. 75 7.3.2 Vad skiljer datorspel från andra spel?........... 75 7.4 Vad är det som gör ett spel bra?.................. 76 7.5 Konceptprototyp........................... 76 7.6 Konceptutvärdering......................... 76 7.7 Implementering............................ 77 7.8 Utvärdering.............................. 78 7.9 Manual................................ 78

8 INNEHÅLL

Kapitel 1 Upplägg, pedagogik, och projektuppgift Thomas Larsson och Rikard Lindell 1.1 Inledning Problembaserat lärande (PBL) har blivit ett begrepp på allas läppar och det har rönt ett enormt intresse i delar av högskole- och universitetsvärlden, trots att de flesta anser att det inte är enklare eller sparar tid att genomföra kurser med hjälp av denna pedagogik. Framförallt har man tagit till sig PBL med öppna armar inom vård- och medicinutbildningar. PBL har även spridit sig till exempelvis agronom-, lärar-, ekonomi- och juristutbildningar [29, 17]. Även om problembaserad metodik på senare år har brett ut sig så finns det fortfarande ett behov av att variera den traditionella undervisningen med mer problembaserat lärande. Möjligheterna för detta inom vårt ämnesområde datavetenskap är många och de fördelar som PBL kan ge bör undersökas och utnyttjas. Ett nytt grepp på vårt Datalogiprogram, 120 160 poäng, är att bygga den allra första högskolekursen kring PBL. Vi har provat detta i vår första kurs Introduktion till datavetenskap, 5 poäng. Kursen gavs på halvfart under tidsperioden 26 augusti till 22 oktober, 2003. Introduktionskursen innefattar moment som introduktion till användning av datorer, datorns uppbyggnad, operativsystem och olika applikationsprogram i användarens perspektiv, problemlösning vid programkonstruktion, samt träning i skriftlig och muntlig framställning. Vi valde att använda en större projektuppgift som genomfördes med hjälp av PBL, omfattande fyra högskolepoäng. Den resterande poängen omfattade en första introduktion till programmeringsteknik med Java, och den delen genomfördes på ett traditionellt sätt med föreläsningar och laborationer. Syftet med denna rapport är att beskriva projektuppgiftens genomförande och de resultat som nåddes. Uppgiften gick ut på att studenterna skulle utveckla 9

10 KAPITEL 1. UPPLÄGG, PEDAGOGIK, OCH PROJEKTUPPGIFT en prototyp för ett datorspel, där de själva definierade vilket slags datorspel de vill göra. Notera att det går bra att utveckla ett datorspel med hjälp av särskilda verktyg även om man som student saknar tidigare programmeringserfarenhet, och trots att endast fyra heltidsveckor stod till förfogande. I de resterande avsnitten i detta kapitel ges först en kort beskrivning av PBL som pedagogisk metodik, och sedan ges en mer detaljerat beskrivning av projektuppgiften. De resultat som studenterna nådde presenteras sedan översiktligt, och kapitlet avslutas med våra slutsatser om kursens genomförande. I de efterföljande kapitlen återges studenternas egna projektrapporter, vilka tjänar som illustrativa och detaljerade exempel på hur spelutveckling kan gå till utifrån olika perspektiv och förkunskaper, samt vilka resultat som kan erhållas under ett utbildningsprograms introduktionskurs. 1.2 Problembaserat lärande Problembaserat lärande är en pedagogisk metod som bygger på att studenternas inlärning huvudsakligen sker genom aktivt arbete med realistiska och meningsfulla problem. Ett större ansvar läggs på studenterna, där de själva söker efter relevant kunskap och sedan utvärderar och lär sig det som problemet kräver. Studenterna samarbetar oftast i mindre arbetsgrupper eller basgrupper, där problem löses, arbetet fördelas och olika strategier och lösningsförslag diskuteras och ventileras. En eller flera lärare fungerar som handledare för basgrupperna och deltar vanligtvis i basgruppsmötena. Lärarens roll blir således handledarens och rådgivarens med ämnesexpertis. Bland handledarens uppgifter innefattas även att ett övergripande praktiskt ansvar tas då det gäller att balansera medverkan och arbetsbörda för studenterna i gruppen, hålla studenterna kvar på ett rimligt spår, verka som medarbetare och kunskapssökare tillsammans med studenterna, samt också bedöma och examinera. Handledarbegreppet markerar att det finns en tydlig skillnad gentemot den traditionella lärarens roll som ledare, instruktör och kunskapsförmedlare. Handledarens mål är istället att leda vid handen och underlätta processen där studenterna själva tar ansvar och initiativ för lärprocessen [13]. En av de främsta fördelarna som brukar nämnas med PBL är att metoden främjar det livslånga lärandet. I dagens högteknologiska och föränderliga samhälle efterfrågas ny kunskap allt oftare, vilket sätter förmågan att ständigt utvecklas och lösa nya problem med hjälp av nyinhämtad kunskap i centrum. En annan fördel som brukar tas upp är att PBL bidrar till djupinlärning, i bjärt kontrast till att studenter endast läser för att kunna besvara vissa frågor på en tentamen och sedan relativt snabbt glömmer bort vad de lärt sig, s.k. ytinlärning [27]. Ytterligare andra förväntade fördelar med PBL är att det leder till ökad problemlösningsförmåga, högre grad av likhet mellan studietidens arbetssätt och det i det efterföljande yrkeslivet, bättre förmåga att arbeta i team och förbättrad interpersonell kommunikation [29].

1.3. PROJEKTUPPGIFT 11 1.3 Projektuppgift Projektuppgiften gick ut på att studenterna skulle utveckla en prototyp för ett eget datorspel, efter en egen idé. Det var alltså projektgruppens uppgift att själva initialt definiera ett lämpligt projekt. Det föreslogs att spelprojektet kunde utföras inom ramen för någon av följande genrer: 1. Arkadspel 2. Puzzles 3. Brädspel 4. Rollspel 5. Edutainment/Utbildning Utvecklingsprojektet skulle drivas av ett team bestående av cirka fyra personer. Gruppmöten anordnades regelbundet varje vecka, där också någon av lärarna deltog som rådgivare och handledare. Innan det allra första mötet och innan studenterna definierat några detaljer för sitt eget projektarbete, gavs följande frågor ut som en förberedelseuppgift för att få igång studenterna i ett så tidigt skede av kursen som möjligt och för att göra diskussionen vid det allra första gruppmötet mer givande och innehållsrikt: 1. Hur skall man definiera ordet spel? 2. Vilka kriterier måste ett spel uppfylla? 3. Vilka spelgenrer finns det? 4. Vad skiljer datorspel från andra spel? 5. Vilka är de klassiska datorspelen? 6. Vad är det som gör ett spel bra? Studenterna uppmuntrades att söka svar genom att jämföra egna erfarenheter med den information som de kunde finna genom litteratursökning efter böcker, artiklar och webbsidor. 1.3.1 Examination Omfattningen av projektet motsvarade fyra högskolepoäng, det vill säga 160 timmar effektiv tid per person. Totalt hade teamet således 640 timmar till sitt förfogande (beräknat på 4 deltagare). För att bli godkänd på projektet krävdes, förutom att var och en muntligt kunde redogöra för sin del i grupparbetet, ett aktivt och konstruktivt deltagande vid projektmötena, samt i slutändan också att varje grupp lämnade in en välskriven rapport som på ett övertygande sätt beskrev utvecklingsarbetet från idé till en färdig spelbar prototyp av spelet. Dessutom krävdes att projektarbetet presenterades vid ett seminarium inför lärare och övriga kursdeltagare.

12 KAPITEL 1. UPPLÄGG, PEDAGOGIK, OCH PROJEKTUPPGIFT 1.4 Uppgiftsbeskrivning Som stöd för arbetet gavs en uppgiftsbeskrivning ut där olika moment i utvecklingsarbetet beskrevs översiktligt. Dessa moment beskrevs såsom de återges i de följande avsnitten. 1.4.1 Projektplan Projektplanen skall innehålla en projektspecifikation där projektets inriktning, syfte och mål beskrivs på ett översiktligt sätt. I planen anges även milstolpar för projektets genomförande med tydliga delmål. Där anges också vilka metoder ni tänker använda för att uppnå delmålen, som till exempel brainstorming för att kläcka idéer om spelet. Observera att projektplanen skall vara ett levande dokument som ni uppdaterar under arbetets gång vartefter det går framåt. Ni skall också kunna visa upp dokumentet för ansvarig lärare under kursens gång så att det kan användas som ett diskussionsunderlag. 1.4.2 Litteraturstudie Ni förväntas göra en litteraturstudie, där ni tar reda på vilka typer av spel det finns och vad de har för kännetecknande drag. Verifiera er egen spelidé och sätt den i relation till vad som tidigare gjorts med hjälp av böcker, rapporter, etc. Utnyttja också att ni har tillgång till bibliotekets artikeldatabas som ni finner via högskolebibliotekets hemsida (www.mdh.se/bib/). 1.4.3 Konceptprototyp Innan ni ger er i kast med själva programmeringen så ska ni strukturera upp hur spelet ska fungera. Det finns flera användbara metoder för detta, en är storyboarding. Dokumentera det ni kommer fram till samt varför. 1.4.4 Konceptutvärdering Analysera er konceptprototyp. Hur bra fungerar den och hur väl stämmer den överens med er idé? Förutom att ni analyserar prototypen tillsammans i gruppen, bör ni även vidga er och tala med andra utomstående personer om spelets upplägg och funktion för att få värdefull feedback eller återkoppling. 1.4.5 Implementation När ni väl vet hur ert spel ska fungera, försök att skapa en fungerande prototyp. Ni kan använda olika multimediaverktyg för detta, som till exempel Macromedia Flash och Tribeworks ishell. Grafiskt innehåll kan ni skapa med till exempel GIMP eller Adobe Photoshop, och/eller genom att teckna eller använda digitalkamera. För er som redan kan programmera finns även Visual Basic, Java och C/C++ att tillgå.

1.5. RESULTAT 13 1.4.6 Utvärdering Utvärdera ert spel. Några av de parametrar ni kan undersöka är spelglädje, originalitet, belönande, utmanande, hur lättlärt och estetiskt spelet är. Fundera också över vilka andra parametrar man bör titta på och varför. 1.4.7 Rapporten Varje grupp skall redovisa projektarbetet i en tilltalande rapport om cirka 7 10 sidor. Rapporten ska på ett strukturerat sätt beskriva hur ni har genomfört projektet, vilket resultat ni uppnått och vilka slutsatser ni kan dra. Rapporten ska även omfatta redogörelse för den teori ni lutar er mot, till exempel så ska ni redogöra för den genre ni valt och vad den omfattar. Iaktta god sed för rapportskrivandet, både när det gäller ämnesmässigt innehåll och språkbruk. Illustrera rapporten med bilder ur er applikation. Ta för vana att referera till passande litteratur som ni har använt er utav. Att däremot kopiera text eller bilder från olika källor är absolut förbjudet. En del praktiska och allmänna instruktioner för rapportskrivning finns i dokumentet Teknisk rapportskrivning - en kortfattad handledning [26]. Endast välskrivna rapporter kommer att godkännas. Observera också att rapporten ska skrivas med hjälp av L A TEX, eftersom vi planerar att sammanställa samtliga rapporter till ett enhetligt dokument. Rapporten skall slutligen lämnas in till någon av lärarna, dels utskriven på papper och dels elektroniskt. Bifoga både själva källfilerna till rapporten samt slutresultatet i pdf-format (packa ihop filerna ni ska lämna in i en zip-fil). 1.4.8 Presentationen Förutom den skriftliga rapporten, så krävs det att projektuppgiften presenteras muntligt inför de övriga kursdeltagarna. Beskriv ert projekt. Berätta om ambitionen och hur ni tyckte det gick, problem ni stötte på, hur ni löste dom, etc. För presentationen tillhandahålls dator samt videoprojektor så att er prototyp kan demonstreras. Presentationen skall vara 10 minuter lång. Efter detta får ni ytterligare 5 minuter till ert förfogande för att svara på frågor. Alla gruppmedlemmarna skall vara med och presentera. Notera att endast väl förberedda och genomförda presentationer kommer att godkännas och att det är obligatorisk närvaro under hela presentationstillfället. 1.5 Resultat Av totalt åtta projektgrupper, så blev sju grupper färdiga med arbetet i tid så att de kunde genomföra presentationen och demonstrationen av sitt utvecklade datorspel vid seminariet. Den nivå som dessa grupper nådde upp till överträffade generellt sett våra förväntningar. I vissa fall var den färdiga prototypen riktigt bra och den var helt klart ett resultat av engagerat arbete och gott samarbete inom gruppen. I en grupp tog man till och med fram ett omslag till spelet och tryckte upp särskilda tröjor med spelets titel på inför presentationen. I figur 1.1 visas en bild tagen på presentation på två av medlemmarna i denna grupp. Sex av de åtta inlämnade rapporterna, finns återgivna i de följande kapitlen i

14 KAPITEL 1. UPPLÄGG, PEDAGOGIK, OCH PROJEKTUPPGIFT Figur 1.1: Två av studenterna vid presentationen av projekten. denna rapport. De två utelämnade rapporterna behövde fortfarande justeras när studenternas rapporter förbereddes för att infogas som kapitel i denna rapport, vilket gjordes i december 2003. De flesta grupperna valde att utveckla någon form av actionspel (4 st.), men det fanns också grupper som valde alternativ inom äventyrs- eller rollspelgenren (3 st.). En grupp valde att utveckla ett utbildningsprogram i ämnet engelska. Följande spel utvecklades av de olika projektgrupperna under kursen: 1. flood Ed, ett arkadspel där Ed s uppgift är att rädda den översvämmade planeten Colouria. 2. Cathexis, ett arkadspel där ett rymdskepp skall styras genom en slalomliknande bana på så kort tid som möjligt. 3. Nomad, ett arkadspel av typen shoot em up, där asteroider måste skjutas sönder för att rädda jorden. 4. P.I.M.M.P.0.1, ett scrollande actionbaserat plattformsspel som utspelar sig i en framtid där maskiner och robotar hotar att utplåna jorden. 5. DALO: The Return of the Evil Phös, ett äventyrsspel där Greger, en av nollorna som precis börjat på datalogiprogrammet, är på jakt efter den försvunna DALO-vagnen. 6. English is fun, ett utbildningsspel för att lära ut engelska på ett lekfullt sätt för barn i åldrarna 9 13 år. 7. Quests for glory, ett fantasibaserat rollspel där spelarna förflyttar sig på en karta efter bestämda vägar ungefär som i klassiska icke datorbaserade brädspel.

1.6. DISKUSSION 15 8. Epica, ett turbaserat strategispel där striderna utkämpas i form av miniarkadspel internt i spelet. Se de följande kapitlen för detaljerade upplysningar om de sex första av de ovan nämnda projekten. 1.6 Diskussion Som handledare kunde vi tydligt känna studenternas entusiasm och kreativitet inför uppgiften. Vi har en skitball story utropade t.ex. en student entusiastiskt vid ett tillfälle. Studenternas förmåga att realisera sina idéer överstiger enligt vår mening vida de förväntningar vi hade på studenterna vid kursens start. Studenterna har i de flesta fall visat prov på god kunskap i hur man arbetar i projekt. I några enstaka fall visade det sig också att studenter redan hade erfarenhet av PBL. En student skrev exempelvis: Det var ett väldigt roligt projekt, just därför att man i gruppen hade så stor frihet att göra precis vad man ville. Eftersom jag och en annan i gruppen redan i gymnasiet arbetat med arbetssättet PBL var det inga som helst problem att utforma en projektplanering och se till att den hölls. Handledaren var väldigt positiv, handledaren reflekterade sina åsikter över spelet och var väldigt optimistisk, och detta pushade alla i gruppen till att arbeta mer och fullända spelet. De flesta av studenternas kommentarer uttryckte sig i positiva ordalag om att arbeta i grupp och sättet som kursen genomfördes på. Man menade t.ex. att det var ett bra sätt att förbereda sig för arbetslivet, att det var en av de bästa inlärningsformerna, att det gav mer än att bara plugga till en tenta, etc. Men det fanns även en del andra studenter som uttryckte en mer förvånad och avvaktande inställning till kursens upplägg. Jag tycker det var lite konstigt att det inte var några föreläsningar, t.ex. om spel eller om hur man lägger upp ett spelprojekt, skrev en student. En annan tyckte t.ex. att arbetsfördelningen inom gruppen inte hade varit rättvis, och att handledningen inte var handledning utan i själva verket endast en kontroll att gruppen jobbade. Föreläsningarnas vara eller inte vara kan naturligtvis diskuteras. Vid detta tillfälle valde vi att använda oss av vissa traditionella föreläsningar som stöd för projektarbetet. Dessa föreläsningar behandlade bl.a. rapportskrivning, presentationsteknik, problemlösning, och programmeringsteknik. Vi upplever att dessa föreläsningar har varit ett bra komplement och stöd för en del av studenterna. Men projekten och de problemställningar de där ställs inför har naturligtvis en avgörande roll för hur man tar till sig de föreläsningar som erbjuds, samt hur de värderas. Medvetet valde vi dock denna gång att inte ha föreläsningar direkt inriktade på speldesign och spelutveckling, eftersom vi ville undvika att därigenom styra studenternas val av metoder och verktyg. De olika lösningarna studenterna har tagit fram, med hjälp av helt olika verktyg, visar att denna strategi fungerade. De olika projektgrupperna fick därigenom också möjligheten att i högre grad lära sig av varandras olika metoder och lösningar, genom ett utbyte av olika erfarenheter mellan grupperna. Gruppdynamik, samordningssvårigheter och konflikter kan naturligtvis uppstå, men detta kan ses som ett tillfälle till lärande i sig, där man måste lära sig

16 KAPITEL 1. UPPLÄGG, PEDAGOGIK, OCH PROJEKTUPPGIFT att ta itu med problemen som uppstår i tid och på ett så smidigt sätt som möjligt. Sådana problem är en del av verkligheten även i yrkeslivet. Självklart är det fel när vissa studenter åker snålskjuts på bekostnad av andras hårda arbete. Att man upplever det som att handledaren inte bidrar kan också bero på flera saker. Här är en öppen kommunikation om vars ens roll central. Det kan också vara upp till gruppen själv att se till att använda sig av handledaren som en medarbetare och resurs. En annan intressant aspekt som vi kunde lägga märke till under kursens gång var hur flera projektgrupper stötte på problem som de verkligen ville lösa men som de ansåg sig sakna tillräckliga förkunskaper för att kunna hinna med att sätta sig in i. I ett av projektet stötte man t.ex. på matematiska problem med rotationsmatriser som de inte rådde på. Vi måste prata med matteläraren, utropade man. Detta gav oss ett utmärkt tillfälle att motivera och väcka förväntningar för innehållet i kommande kurser i matematik på programmet. Vissa studenter uttryckte också att de saknade tillgång till relevanta referensböcker. De uppmanades då att försöka söka rätt på några boktitlar som de trodde att de skulle kunna få stor nytta av. Detta ledde till att några av de föreslagna böckerna omedelbart köptes in till högskolans bibliotek för att kunna nyttjas i kursen. Två av de inköpta böckerna, handlade om datorspelens historia [23, 16], och dem fick en student rekommenderade genom personlig korrespondens via e-post med en expert på området på ett annat universitet. 1.7 Slutsatser Det finns starka indikationer på att ett projektarbete enligt den pedagogiska modell vi har haft för kursen Introduktion till datavetenskap bidrar till att stimulera och sporra studenterna till att göra mer och anstränga sig utöver vad som ger godkänt. Detta kom framförallt till uttryck vid demonstrationen av de utvecklade spelen. Vissa av de implementerade spelen överträffade vida våra förväntningar. De var helt klart ett resultat av entusiastiska, intresserade och målmedvetna studenters engagerade arbete. Det verkar också som att projektformen hjälper till att överbrygga de olika kunskapsklyftorna inom projektgrupperna. Studenterna från dagens gymnasieskola är en mycket heterogen grupp och vi kan inte förvänta oss att de alla ska passa in i samma förkunskapsmall. I projektarbetet har dessa olikheter varit till gagn för projektet. Samtidigt som man har hjälp varandra och samarbetat, har vissa inom gruppen kunnat utnyttja sin specialkompetens till att exempelvis skapa tilltalande animationer, bakgrundsmusik eller specialeffekter. Avslutningsvis så vill vi säga att det var ett sant nöje att få närvara och se studenternas överlag mycket entusiastiska och väl förbereda presentationer vid det avslutande seminariet i kursen. Det kändes i luften att kursen var verkligt meningsfull och betydelsefull för studenterna. Vi känner starkt för detta upplägg på kursen och kommer att använda en liknande metodik i kommande introduktionskurser.

Kapitel 2 flood Ed Kristian Karlberg, Andreas Wangler, Hugo Andersson, Andreas Liljekvist och Jon Nyström 2.1 Inledning Figur 2.1: Startbilden i flood Ed. 2.1.1 Uppgift Denna rapport kommer att avhandla det arbete som utförts under kursen Introduktion till Datalogi, med inriktning datorspelsutveckling (kurskod: CD5600). Målet med kursen var att, i projektgrupp, utarbeta en originell datorspelsprototyp. Syftet var att lära oss att arbeta i projektgrupp, samt erhålla en inblick och få erfarenhet i hur man skapar en datorspelsprototyp. 17

18 KAPITEL 2. FLOOD ED Arbetet skulle utföras under en tidsperiod om fem veckor. Under denna period skulle kontinuerliga möten med kursansvarig hållas samt en projektplan utarbetas. Arbetet skulle utföras i projektgrupper á fyra personer. En konceptprototyp avsågs utarbetas där spelidén samt spelmomenten skulle fastställas. Vidare förväntades spelet, i den mån det fanns tid och kunskap, utvecklas till en spelbar datorspelsprototyp. Kursansvarig gav olika förslag till spelgenrer, däribland: Arkad, pussel, rollspel och brädspel. Förslag gavs också till olika tillvägagångssätt för implementation av konceptprototypen, dessa var: Macromedia Flash, Tribeworks ishell, emacs och SDL. För skapande av grafiken förslogs program som: Adobe Photoshop, Macromedia Flash och GIMP. 2.1.2 Rapportens uppbyggnad Först i rapporten avhandlas spelidén och konceptprototypen. Därefter följer rubriken Metoder som har delats upp i tre avsnitt: Programmering, Ljud/Musik och Grafik. Där beskrivs vilka metoder vi arbetat med under projektet. Sist i rapporten finns slutsatsen som tar upp gruppens utvärderingar och slutsatser av projektet och spelet. 2.2 Avhandling 2.2.1 Konceptprototyp Projektgruppen, bestående av Kristian Karlberg, Jon Nyström, Andreas Wangler, Hugo Andersson och Andreas Liljekvist, startade projektet genom att skapa en spelidé, grunden till en konceptprototyp. Vi utförde detta genom att under några möten diskutera fritt runt alla aspekter av spel, både datorspel och sällskapsspel/brädspel. Vi diskuterade vad som gjorde olika spel underhållande och vad hos dessa som lockar och roar spelaren. Utifrån frågor som vi fått i uppgift att diskutera och reflektera runt skapades automatiskt en grund för våran spelidé. Frågorna och de svaren vi kom fram till följer nedan: Hur skall man definiera ordet spel? Ordet spel definierar vi som en samling viktiga karaktärsdrag. Karatärsdragen är: Belöning, stimulans, problem/hinder, mål och interaktivitet. Dessa karaktärsdrag anser vi uppfylls av alla sorter av spel, både datorspel, sällskapsspel och brädspel. Vi anser också att sporter, så som fotboll och golf uppfyller dessa. Vilka kriterier måste ett spel uppfylla? Vi tycker att alla spel måste i sina fundament uppfylla de karaktärsdrag som vi i ovanstående fråga formulerat. Utöver dessa karaktärsdrag finns inga fler kriterier. Vad skiljer datorspel från andra spel? Återigen refererar vi till första punkten. Enligt denna analys finns det ingen skillnad i fundamenten mellan spel och datorspel. Vad är det som gör ett spel bra? Ett bra spel är, enligt oss: Underhållande, har lång livslängd, har bra kontroller och en varierande svårighetsgrad.

2.2. AVHANDLING 19 Vilka spelgenres finns det? Role Playing Game - Rollspel. Spel med karaktärsutveckling baserat på personegenskaper. Ex. Final Fantasy, Baldur s Gate. Simulator - Spel som försöker simulera verkligheten. Ex. The Sims, IL2. Action - Spel med högt tempo, ofta våldsamma. Ex. Half-life, Counter Strike. Arkad - Äldre spel i 2D, ordet kommer från spelmaskiner i arkadhallar. Ex. Space Invaders, Astroids. Äventyr - Story- och problemlösningsbaserade datorspel. Ex. Monkey Island, Grim Fandango. Strategi - Spel där strategi och taktik spelar störst roll. Oftast fältslagsspel. Ex. Starcraft, Risk. Plattform - Spel med gränsnitt oftast i 2D. Plattformsspelen är nästan alltid sidscrollade. Ex. Super Mario Bros, Sonic The Hedgehog. Sport - Spel som i grunden simulerar en sport. Ex. Fifa2003, NHL 2003. Förutom de svar vi diskuterat fram ovan, som gav oss en grund för hur datorspel är uppbyggda, lade projektgruppen också stor vikt vid egenskapen originell i kursbeskrivningen. Tanken var att vi inte skulle plagiera ett redan existerande spel utan skapa ett nytt koncept. Våran spelidé utformades runt några viktiga stolpar som vi satte upp för våran egen del. Dessa stolpar var: Våldsfritt: Vi ville gå en annan väg istället för att, som flertalet spel idag, göra våldsspel. Ljud: Alla i projektgruppen lade stor vikt vid ljud och musik. Vi talade om att använda ljud som ett spelmoment. Barnvänligt: Det inte bara i avsaknaden utav våld utan också barnvänlig humor, glada och varma färger och mjuka former. Färger: Vi ville att färger skulle utgöra en viktig del av vårat spel. Våran färdiga konceptprototyp, som döpts till flood Ed, går ut på att man styr karaktären Ed, se Förord, i sin farkost som störtat i vattnet. Hans uppgift, för att rädda sig själv från planeten Colouria, är att stoppa översvämningen. Detta gör han genom att fylla vatten i behållare som gör att vattennivån sjunker. Dessa behållare kräver en specifik vattenfärg som slumpmässigt bestäms för varje behållare. Vattnet färgar Ed genom att fånga de färgade bubblor som stiger från Colourias kärna. Två av dessa bubblor blandas ihop för att få någon av de sex nyanser som finns i spelet.

20 KAPITEL 2. FLOOD ED Figur 2.2: De sex olika nyanserna. För att klara av en bana skall Ed få vattennivån att sjunka tillräckligt mycket för att kunna korka igen den läcka som hela tiden får vattnet att stiga. Gör han inte detta kommer vattnet stiga över farkosten och spelet är förlorat. En sak som hjälper Ed är de s.k. Good Bubbles som ger Ed olika positiva effekter som t.ex. bredare vattenstråle. Hinder som försvårar Ed s uppgift är t.ex. en fågel som hotar att krocka med behållarna och tömma ut vattnet ur dessa och en fisk som kan spräcka de färgade bubblor och de Good Bubbles som stiger upp ur Colouria. För bild på spelet, se [Bilaga 2.4.3: Spelbild]. Vi gjorde ett flödesschema, en konceptprototyp, baserad på händelserna i spelet [Bilaga 2.4.4 2.4.6]. Denna konceptprototyp stämde bra överens med våra tidigare utsatta stolpar. Det enda som inte kom med var användandet av ljud som ett spelmoment. För att i detta tidiga stadium kunna urskilja huruvida konceptprototypen som färdig produkt skulle komma att vara underhållande analyserade vi den genom att ställa den mot följande punkter. Belöningen ges av att: ta sig vidare, klara spelet, få hög poäng och fånga Good Bubbles. Stimulansen ges av: Belöningen, bra musik, enkelt interface och tilltalande färger. Hindren ges av att: vattnet stiger, vattenbehållarna rör sig och att fågeln och fisken förstör. Målet är att: ta sig vidare, få högst poäng och klara spelet. Efter denna utvärdering av konceptprototypen ansåg vi den färdig, vi övergick till implementation.