17.07.2013 Views

3 Stemmebaseret interaktion - The Game Design Chronologist ...

3 Stemmebaseret interaktion - The Game Design Chronologist ...

3 Stemmebaseret interaktion - The Game Design Chronologist ...

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Titel: Kontekstsensitiv talegenkendelse i computerspil<br />

Tema: Formaliserede og uformaliserede sprogformer<br />

Projektperiode: INF3<br />

Projektgruppe: i304a<br />

Vejleder: Keld Pedersen<br />

Synopsis:<br />

Projektets overordnede mål har været at udvikle et computerspil,<br />

der har talegenkendelse som en central <strong>interaktion</strong>sform, samtidig<br />

med at de tekniske svagheder der normalt forbindes med<br />

talegenkendelse usynliggøres. Det tværfaglige teoretiske grundlag<br />

inkluderer blandt andet en sprogvidenskabelig tilgang til design af<br />

computerspil, mens der metodisk anvendes forskellige<br />

innovationsfremmende teknikker i en iterativ proces. Det<br />

konkrete resultat er et computerspil, hvor målet blandt andet er<br />

oplæring af ninjaelever ved hjælp af talekommandoer, der af<br />

eleverne fortolkes i henhold til den kontekst de befinder sig i.<br />

Talegenkendelsesteknikken er altså ikke forbedret i forbindelse<br />

med den direkte genkendelse, men derimod ved at pragmatiske<br />

forhold vægtes højt i meningstilskrivningen af de genkendte ord.<br />

Både spillet og den tilhørende talegenkender, er implementeret på<br />

den håndholdte spillekonsol Nintendo DS, ved hjælp af omkring<br />

12.000 linjer objektorienteret C++.<br />

Forfatter: . .<br />

Jimmy Marcus Larsen<br />

Oplagstal: 4<br />

Sideantal: 110 (ekskl. forside, bilag og blanke sider)<br />

Kodelinjer: Ca. 12.000 (ekskl. blanke linjer)<br />

Web-side: http://chrono.moogle.dk/nds_1.php<br />

Her findes prototyper, kildekode, rapport i pdf-format,<br />

og billeder og film fra spillet.<br />

3


Forord<br />

Jeg har skrevet denne projektrapport på informatikuddannelsens femte semester, som<br />

dokumentation for projektet kontekstsensitiv talegenkendelse i computerspil. Jeg har lavet<br />

projektet alene, og det vil jeg gerne bruge et par linjer på at forklare, da det<br />

tilsyneladende ikke sker så tit. Der er flere grunde til, at jeg valgte at skrive alene, men<br />

den mest tungtvejende er at min store interesse for computerspil ikke findes tilsvarende<br />

hos de andre studerende. Jeg vil arbejde med computerspil, hvor det er muligt, uanset om<br />

jeg må gøre det alene. Andre årsager til mit valg er, at arbejdsdelingen på tidligere<br />

semestre der har vist mig at jeg sagtens kan lave et projekt alene, og ikke mindst at jeg<br />

ved at skrive alene kan bruge mindre tid på universitetet og mere tid hjemme hos min søn<br />

på snart to år.<br />

Der er en række mennesker som fortjener en stor tak. Først og fremmest skal min kæreste<br />

have tak for på trods af travlhed med specialeskrivning at tage sig tid til at diskutere mit<br />

projekt og læse korrektur på det. Det har været en stor hjælp. Dernæst skal brugerne på<br />

web-stedet Play:Right.dk have tak for altid at være villige til diskussion. Selvom jeg ikke<br />

har diskuteret dette projekt med dem, har mange af deres diskussioner inspireret mig. Til<br />

sidst skal Nintendo DS flashkort-udviklerne NeoFlash.com have tak for at tro på at jeg<br />

kunne lave talegenkendelse til Nintendo DS, og for at sponsere et flashkort til hjælp med<br />

udviklingen.<br />

4


Læsevejledning<br />

Projektrapporten er opdelt i fem dele. Den første og korte del I, indeholder indledning,<br />

problemstilling og afgrænsning. Del II indeholder projektets teoretiske grundlag opdelt i<br />

tre kapitler og en delkonklusion. I tredje del beskrives de anvendte metoder, og i del IV<br />

beskrives, analyseres og diskuteres det spil der er projektets mest konkrete resultat. Del V<br />

indeholder en konklusion og en perspektiverende diskussion, og til sidst findes<br />

litteraturliste, softwareliste og bilag.<br />

Undervejs er der henvist til kilder fra litteraturlisten på følgende måder:<br />

• [Forfatter, År, sidetal eller kapitel]<br />

Er der tale om et opslagsværk udskiftes forfatter med opslagsværkets navn, mens årstal<br />

udelades og sidetal udskiftes med et søgeord - altså i stedet [Opslagsværk, søgeord].<br />

Der henvises til softwarelisten sådan:<br />

• (Udvikler, År)<br />

Hvor titlen fremgår af teksten. I softwarelisten findes henvisninger til websider eller<br />

bøger der omtaler softwaren, som ofte er et spil.<br />

Hvad angår selve teksten i rapporten er det værd at bemærke brugen af ”han” eller ”hun”,<br />

som erstatning for ”spilleren”, for at undgå kluntede sætninger. Tidligere definerede<br />

begreber vil desuden være skrevet med kursiv, for at undgå om- eller gendefineringer.<br />

5


6<br />

Indholdsfortegnelse<br />

I. INDLEDNING….………………………………………………….………...9<br />

1 PROBLEMSTILLING ................................................................................................................12<br />

1.1 AFGRÆNSNING ......................................................................................................................13<br />

II. TEORI...............................................................................15<br />

2 SPROG.........................................................................................................................................16<br />

2.1 SEKS PERSPEKTIVER ..............................................................................................................17<br />

2.1.1 Fonetik.............................................................................................................................18<br />

2.1.2 Fonologi ..........................................................................................................................19<br />

2.1.3 Morfologi.........................................................................................................................19<br />

2.1.4 Syntaks.............................................................................................................................19<br />

2.1.5 Semantik ..........................................................................................................................20<br />

2.1.5.1 Semiotik............................................................................................................................... 21<br />

2.1.6 Pragmatik ........................................................................................................................22<br />

2.1.6.1 Sprog som handling..............................................................................................................22<br />

2.2 OPSUMMERING......................................................................................................................25<br />

3 STEMMEBASERET INTERAKTION.......................................................................................26<br />

3.1 TALEGENKENDELSE...............................................................................................................27<br />

3.2 TALESYNTESE .......................................................................................................................30<br />

3.3 DIALOGMANAGEMENT...........................................................................................................32<br />

3.3.1 Multimodalitet..................................................................................................................33<br />

3.4 OPSUMMERING......................................................................................................................34<br />

4 COMPUTERSPIL .......................................................................................................................35<br />

4.1 MENINGSFULD LEG................................................................................................................36<br />

4.2 DESIGN .................................................................................................................................38<br />

4.3 SYSTEMER ............................................................................................................................40<br />

4.4 INTERAKTIVITET....................................................................................................................41<br />

4.5 HÅNDHOLDTE COMPUTERSPIL................................................................................................43<br />

4.6 OPSUMMERING......................................................................................................................44<br />

5 TEORETISK DELKONKLUSION.............................................................................................46<br />

III. METODE..........................................................................49<br />

6 SYSTEMUDVIKLING................................................................................................................50<br />

6.1 DESIGN AF PROJEKTETS SYSTEMUDVIKLINGSMETODE .............................................................51<br />

6.1.1 Prototyping......................................................................................................................52<br />

6.2 OPSUMMERING......................................................................................................................53<br />

7 UDVIKLING AF COMPUTERSPIL..........................................................................................54<br />

7.1 INDIE DEVELOPER..................................................................................................................55<br />

7.2 DESIGNDOKUMENTET ............................................................................................................58<br />

7.3 OPSUMMERING......................................................................................................................59<br />

8 INNOVATION.............................................................................................................................60<br />

8.1 TECHNOLOGY INSPIRATION....................................................................................................61


8.2 LUDIC ENGINEERING..............................................................................................................62<br />

8.3 OPSUMMERING ......................................................................................................................63<br />

9 METODISK DELKONKLUSION ..............................................................................................64<br />

9.1 FRAVALGTE METODER OG ULEMPER VED DE VALGTE ..............................................................66<br />

IV. DESIGN............................................................................67<br />

10 FILOSOFI....................................................................................................................................68<br />

10.1 TECHNOLOGY INSPIRATION OG MARKEDSANALYSE .................................................................68<br />

10.1.1 Nintendogs...................................................................................................................69<br />

10.1.2 Rainbow Six og SOCOM..............................................................................................70<br />

10.1.3 Strange Adventures in Infinite Space og Weird Worlds .................................................71<br />

10.2 OPSUMMERING ......................................................................................................................72<br />

11 SYSTEM ......................................................................................................................................73<br />

11.1 SYNTAKTISK OPBYGNING.......................................................................................................73<br />

11.1.1 Missioner.....................................................................................................................75<br />

11.1.2 Venner og fjender ........................................................................................................77<br />

11.2 SEMANTISK OG PRAGMATISK OPBYGNING ...............................................................................79<br />

11.3 OPSUMMERING ......................................................................................................................80<br />

12 INTERAKTION...........................................................................................................................81<br />

12.1 TAKTILT INPUT ......................................................................................................................82<br />

12.2 STEMMEBASERET INPUT.........................................................................................................84<br />

12.3 OUTPUT ................................................................................................................................86<br />

12.4 MENINGSFULD LEG ................................................................................................................91<br />

12.5 CONVERSATION FOR ACTION..................................................................................................91<br />

12.6 OPSUMMERING ......................................................................................................................94<br />

13 TEKNIK.......................................................................................................................................95<br />

13.1 TALEGENKENDELSE...............................................................................................................97<br />

13.2 OPSUMMERING ......................................................................................................................97<br />

14 PROTOTYPER............................................................................................................................98<br />

14.1 NUMMER 1 ............................................................................................................................98<br />

14.2 NUMMER 2 ..........................................................................................................................100<br />

14.3 NUMMER 3 ..........................................................................................................................101<br />

14.4 OPSUMMERING ....................................................................................................................103<br />

V. KONKLUSION..................................................................105<br />

15 PERSPEKTIVERENDE DISKUSSION....................................................................................108<br />

16 LITTERATURLISTE................................................................................................................110<br />

16.1 BØGER ................................................................................................................................110<br />

16.2 ARTIKLER OG OPSLAGSVÆRKER ...........................................................................................112<br />

17 SOFTWARELISTE ...................................................................................................................116<br />

17.1 SPIL ....................................................................................................................................116<br />

17.2 VÆRKTØJER ........................................................................................................................117<br />

18 BILAG A – INTERNATIONAL PHONETIC ALPHABET.....................................................118<br />

7


Del I<br />

INDLEDNING<br />

Only those who try will become<br />

Kimahri Ronso, Final Fantasy X<br />

Under temaet formaliserede og uformaliserede sprogformer, er vi på INF3 blevet<br />

opfordret til at udvikle innovative computersystemer, der udfordrer normerne indenfor<br />

traditionel menneske-maskine <strong>interaktion</strong>. Hertil er det et krav at de udviklede systemer<br />

udnytter sprog eller tekst som data eller <strong>interaktion</strong>smedium, hvilket gennem semestrets<br />

tilhørende kurser fører til et krav om udnyttelse af stemmebaseret in- eller output.<br />

Et semester der opfordrer til innovation, er et semester med stor emnefrihed. Der har<br />

været mulighed for at udvikle et væld af forskellige systemer, hvorom fællesnævneren<br />

skulle være brugen af stemmebaserede <strong>interaktion</strong>sformer i nye kontekster. Valget af<br />

kontekst var semestrets første store udfordring - ikke blot skal stemmebaseret <strong>interaktion</strong><br />

være mulig, den bør også være den optimale <strong>interaktion</strong>sform i den valgte kontekst. Det<br />

er let at forestille sig systemer som uden større tilpasning ville kunne indføre<br />

stemmebaseret <strong>interaktion</strong>, men det er ofte ligeså let at demonstrere hvordan<br />

<strong>interaktion</strong>en alligevel vil fungerer bedre med traditionelle in- og outputformer som mus,<br />

keyboard og skærm.<br />

Tilmed er stemmebaseret <strong>interaktion</strong>, herunder både talegenkendelse og -syntese, endnu<br />

ikke en fejlfri og uproblematisk teknologi. Det sætter nogle begrænsninger, som gør at<br />

eksempelvis systemer der anvendes under risikofyldte forhold, endnu ikke bør<br />

implementere stemmebaseret <strong>interaktion</strong> som en primær <strong>interaktion</strong>sform. Valget af en<br />

kontekst hvorunder disse forhold kan accepteres er altså nødvendig, hvis der skal være<br />

forhåbninger om reel og praktisk anvendelse af systemet.<br />

Mit valg af kontekst er computerspil. Et medie der altid søger innovative idéer og nye<br />

veje at gå - et kendetegn der gør computerspil til den perfekte kontekst at udvikle et<br />

system i på dette semester.<br />

9


<strong>Stemmebaseret</strong> <strong>interaktion</strong> er dog blevet brugt i computerspil siden 1978, hvor<br />

Magnavox’ spillemaskine Odyssey 2 indførte primitiv talesyntese. I de seneste år er<br />

talesyntese dog blevet brugt mindre og mindre, da mere lagringsplads og hukommelse har<br />

muliggjort opbevaring af længere<br />

talesekvenser af højere og mere<br />

overbevisende kvalitet end syntetisk tale.<br />

Talegenkendelse blev i et kommercielt<br />

computerspil første gang set i 1999, hvor<br />

det i spillet Seaman (Sega, 1999) var<br />

muligt at føre en samtale med bizarre<br />

fiskelignende væsner med menneskeansigter.<br />

Senest er talegenkendelse<br />

anvendt i blandt andet SingStar (Sony,<br />

2004) hvor spilleren får point for at synge<br />

godt, i Mario Party 6 (Nintendo, 2004)<br />

hvor talekommandoer blandt andet bruges<br />

til at kaste bomber efter modstanderne, og<br />

i Nintendogs (Nintendo, 2005) hvor hunde<br />

kan dresseres ved hjælp af<br />

talekommandoer. Det er altså ikke hvad som helst, der kan kaldes innovativ brug af<br />

stemmebaseret <strong>interaktion</strong> i computerspil, men med kun omkring et par håndfulde<br />

udgivne spil der involverer talegenkendelse er området relativt uudforsket, og indbyder til<br />

nye måder at anvende teknikkerne på, hvad der netop har været mit mål med projektet.<br />

Talesyntese er som nævnt endnu optagne talesekvenser underlegen, men selv i dag er der<br />

maskiner hvor mængden af lagringsplads og hukommelse gør at talesyntese alligevel har<br />

sine fordele. En sådan maskine er Nintendo’s håndholdte spillekonsol Nintendo DS, der<br />

med sin begrænsede hukommelse og<br />

dyre lagringsplads 1 ikke egner sig til<br />

lange og optagne talesekvenser.<br />

Samtidig har Nintendo DS en<br />

indbygget mikrofon, og kan heraf<br />

håndtere talegenkendelse, og<br />

maskinen er af Nintendo lanceret<br />

med det mål at stimulere udviklingen<br />

af nye innovative spil, hvorfor den<br />

også har andre særlige egenskaber -<br />

bl.a. to skærme hvoraf den ene er<br />

trykfølsom. Det er en maskine som<br />

jeg derfor mener, er perfekt som<br />

platform for udviklingen af et<br />

Figur 2: Nintendo DS, innovativ hardware skal motivere<br />

til udviklingen af innovativ software<br />

1 Flash hukommelse er i modsætning til f.eks. optisk lagring ikke billigt.<br />

10<br />

Figur 1: Seaman (Sega, 1999) var det første<br />

kommercielt udgivne spil med talegenkendelse<br />

computerspil der udnytter<br />

stemmebaseret <strong>interaktion</strong> på en ny<br />

måde.


Jeg nævnte tidligere, at den stemmebaserede <strong>interaktion</strong> selvfølgelig skal være en fordel,<br />

i forhold til brugen af eksempelvis mus, keyboard og skærm. Det er her flere af de spil<br />

der findes på markedet i dag, som anvender talegenkendelse, har problemer, fordi<br />

kommandoerne ligeså vel kunne være udført med knapper og musebevægelser. Den<br />

åbenlyse løsning er at opfinde et helt nyt spilkoncept - en type spil der ikke tidligere er<br />

set, og hvor <strong>interaktion</strong> via tale vil virke naturligt. Det var f.eks. hvad Sega gjorde i<br />

Seaman (Sega, 1999) hvor almindelig samtale (med en fisk…) var det centrale i spillet.<br />

En anden løsningsmulighed er at tage et mere traditionelt spilkoncept, og lade spilleren<br />

kontrollere flere eller andre dele af det end sædvanligt, for på den måde at give spilleren<br />

en helt anden oplevelse med spiltypen. Det kunne eksempelvis være, at lade spilleren<br />

styre trænerens råb fra sidelinjen i et fodboldspil. Skal stemmebaseret <strong>interaktion</strong> være en<br />

fordel, er innovation dermed ikke blot en mulighed - det er en nødvendighed. Enten skal<br />

der findes et nyt spilkoncept, eller et eksisterende skal omtænkes.<br />

Valget af Nintendo DS som platform medfører dog, at de tekniske svagheder i<br />

forbindelse med talegenkendelse (eksempelvis upræcis eller langsom genkendelse) bliver<br />

endnu større - maskinen har ikke overvældende meget regnekraft 2 , og dens mikrofon er<br />

ikke på højde med hvad de fleste folk har til deres pc. Min opfattelse er tilmed at<br />

eksisterende talegenkendelsesteknik i forvejen blokerer for optimal udnyttelse af<br />

talegenkendelse i spil (og alt anden software), fordi den er for upræcis og svag mod<br />

forandringer. Med Nintendo DS er de tekniske svagheder endnu mere markante, hvorfor<br />

det umiddelbart kan virke som et dårligt valg af platform. Mit mål har dog ikke været at<br />

forbedre brugen af talegenkendelse i spil gennem teknikken alene. Talegenkendelse er i<br />

forvejen ikke et forsømt forskningsfelt indenfor computer science, så det er ikke<br />

sandsynligt at jeg kan gøre en forskel her, og programmering og tekniske løsninger er<br />

heller ikke centralt for semestret. I stedet vil jeg lade svaghederne udgøre en del af spillet,<br />

sådan at spilleren enten ikke opdager dem eller på anden vis ikke opfatter dem som<br />

frustrerende. På den måde er Nintendo DS et godt valg af platform, da den motiverer til<br />

bedre brug af talegenkendelse via ikke-tekniske (eller teknisk simple) midler.<br />

2 Målt i Mhz har den én CPU på 66Mhz og en anden CPU på 33Mhz.<br />

11


1 Problemstilling<br />

Med semestrets og projektets grundlæggende mål fremlagt, kan den centrale<br />

problemstilling nu formuleres således:<br />

12<br />

• Hvordan designes et computerspil der har stemmebaseret <strong>interaktion</strong><br />

som en primær <strong>interaktion</strong>sform, sådan at dette samtidig udgør den<br />

optimale <strong>interaktion</strong>sform uden at synliggøre de tekniske svagheder?<br />

Herunder kan følgende delproblemer opstilles for at strukturere arbejdet med<br />

hovedproblemet:<br />

• Hvad er stemmebaseret <strong>interaktion</strong>?<br />

o Besvarelsen af dette spørgsmål skal belyse den teoretisk og<br />

praktiske side af stemmebaseret <strong>interaktion</strong>. Herunder hvordan<br />

sprog og tale kan defineres, samt hvordan det genskabes og<br />

genkendes digitalt i og af en computer.<br />

• Hvordan designes et godt computerspil?<br />

o Besvarelsen af dette spørgsmål skal berøre den teoretiske del af<br />

computerspil, samt belyse den mere praktiske eller metodiske<br />

side af sagen. Herunder hvordan et teoretisk grundlag kan danne<br />

en begrebsmæssig ramme om en analyse af spil, samt hvordan<br />

samme teori kan anvendes praktisk i designprocessen.<br />

Hertil kommer to mindre spørgsmål affødt af to for dette semester særlige forhold:<br />

• Hvordan skabes innovation?<br />

o Besvarelsen af dette spørgsmål skal give konkrete anvisninger i<br />

hvordan et innovativt produkt eller en innovativ løsning skabes.<br />

Herunder vil en række forskellige metoder blive berørt, og nogle<br />

få vil blive belyst nøjere samt anvendt i praksis.<br />

• Hvordan udvikles computerspil af én person alene?<br />

o Besvarelsen af dette spørgsmål skal give konkrete anvisninger i<br />

håndtering af en udviklingsproces med kun én person involveret,<br />

samt i hvordan de deraf begrænsede ressourcer udnyttes sådan at<br />

spillet ikke lider kvalitetsmæssigt.<br />

Min strategi for udarbejdelsen af hele dette studieprojekt, og for besvarelsen projektets<br />

overordnede problemstilling, har været først at besvare de fire delspørgsmål metodisk og<br />

teoretisk. Det vil sige gennem studier og bearbejdelse af forskelligartet teori og relevante<br />

metoder. Resultatet af dette arbejde er derefter blevet praktisk anvendt under udviklingen<br />

af en prototype på et computerspil der anvender stemmebaseret <strong>interaktion</strong>. Målet med


udviklingen af spillet har været at besvare problemstillingen, og kan deraf ses som et<br />

eksperiment der skulle lede frem til et konkret eksempel på hvordan stemmebaseret<br />

<strong>interaktion</strong> kan være en optimal og primær <strong>interaktion</strong>sform i et computerspil, sådan at<br />

tekniske svagheder ikke samtidig bliver tydeliggjort.<br />

Inden jeg tager de første skridt i besvarelsen af projektets problemstilling, nemlig<br />

præsentationen af det teoretiske grundlag, vil jeg kort afgrænse projektet.<br />

1.1 Afgrænsning<br />

Den vigtigste begrænsning for projektet findes i omfanget af det produkt der skal<br />

udvikles. Der er ikke tid til at implementere et helt spil. Det er naturligvis ikke noget<br />

fagligt problem, idet der under en fuldført udviklingsproces vil være mange gentagne<br />

aktiviteter, hvor der ikke gøres så mange nye erfaringer.<br />

Grundet den anvendte iterative metode (se projektets del III) vil et komplet<br />

designdokument for spillet heller ikke eksisterer. Selvom det forholder sig sådan, så<br />

illustrerer designdokumentet den opnåede prototype meget detaljeret, og mere overordnet<br />

skitseres det indhold som det færdige spil forventes at få.<br />

Teoretisk er begrænsningerne få. Teorien er udvalgt og sammensat i forhold til, hvad jeg<br />

har fundet nødvendigt for udviklingen af et computerspil der kunne besvarelse projektets<br />

problemstilling. Der er ikke skelet til ressourcer og forventet tidsforbrug - selvom jeg<br />

havde haft mere tid ville indholdet af teorien ikke være meget anderledes.<br />

Det metodiske grundlag er derimod tilpasset de tilgængelige ressourcer, sådan at<br />

udviklingen af spillet har kunnet forløbe uden store forhindringer. Havde jeg haft længere<br />

tid, er det ikke sikkert min udvikling havde været ligeså iterativ, men det har bestemt<br />

været nødvendigt og fordelagtigt at arbejde sådan under dette projekt.<br />

Opsummeret er der i projektet ingen større afgrænsninger, af andet end den udviklede<br />

prototypes størrelse.<br />

Hermed er projektet introduceret, problematiseret og afgrænset. God fornøjelse med del<br />

II til V - teori, metode, design og konklusion ☺<br />

13


Del II<br />

TEORI<br />

Facts are meaningless. You could use facts to prove anything that's even remotely true!<br />

Homer Simpson, <strong>The</strong> Simpsons<br />

En vigtig del af en projektrapport er den del, der beskriver projektets teoretiske<br />

fundament, da det er hvor den viden projektet er udarbejdet med kan demonstreres. Jeg<br />

mener ikke, at det er nok blot at sætte velkendt teori (primært fra kurserne) i anvendelse,<br />

og følge den ukritisk - det skaber ingen ny viden, det er ikke selvstændigt, og frem for alt<br />

er det kedeligt at arbejde med (og sikkert også at læse). Igennem kapitlerne har jeg derfor<br />

forsøgt at tage et kritisk afsæt i diverse nyere grundbøger, og supplere disse med flere<br />

mindre udbredte eller ældre artikler og bøger. På den måde har jeg fået et teoretisk<br />

fundament der består af moderne og almindelig udbredt teori, men som samtidig drejes i<br />

nye retninger. Resultatet er at meget få afsnit bygger på én teoretiker alene, men på flere<br />

forskellige, hvad jeg mener både styrker og nuancerer teorien. Samtidig har det været<br />

lettere at fokusere på, og gå i dybden med, netop de emner der er relevante for projektet,<br />

og ikke blot hvad kurserne og grundbøgerne vægter højst.<br />

Teorien indgår naturligvis ikke blot som et element i rapporten, men udgør også basis for<br />

designet af det computerspil, det har været målet at udvikle. Teorien vil altså blive<br />

introduceret i de følgende tre kapitler, men er praktisk anvendt under designet, hvad der<br />

senere vil fremgå af projektets fjerde del.<br />

Det centrale emne i teoriens første kapitel er sprog, hvorunder emnerne naturlige eller<br />

talte sprog samt sprog i samtale udgør de teoretiske byggesten, som teorien om digital<br />

genkendelse og syntese af sprog i næste kapitel kan bygges med. Hertil kommer behovet<br />

for teori omhandlende den konkrete type af system der skal udvikles - teori om spil, hvad<br />

de består af, og hvad der gør dem attraktive for spillerne. Det sidste kapitel i denne del af<br />

projektet er dedikeret en opsummering og delkonklusion.<br />

Her følger nu et kapitel, der som nævnt handler om sprog og har som mål at levere den<br />

definition på sprog som resten af teorien kan bygge ovenpå. Det indledes med en<br />

introduktion til sprogets grundbestanddele, hvor flere tusind års forskning tages i<br />

betragtning. Forståelsen for hvad sproget grundlæggende består af, er nemlig ikke noget<br />

vi først for nylig har opnået.<br />

15


2 Sprog<br />

Omkring 200 år før vor tidsregning nedskrev tamilske sprogforskere (digtere om man<br />

vil), hvad der regnes for verdens ældste eksisterende grammatik, eller formelle definition<br />

af et sprog [Jurafsky & Martin, 2000, s136]. Allerede dengang var det kendt at sproget<br />

indeholdt både vokaler og konsonanter, og at en formel grammatik kunne beskrive<br />

hvordan ord bestående af disse vokaler og konsonanter kunne kombineres for at danne<br />

mening. Yderligere anvendtes abstrakte beskrivelser af lyde, det vi i dag kalder fonemer,<br />

som grundenhed for sproget - en idé der først opstod over 2000 år senere i vesten<br />

[Jurafsky & Martin, 2000, s136].<br />

En forståelse af hvordan fonemer omsættes til ord, og hvordan disse sammensættes til<br />

sætninger efter en grammatik, er dog ikke nok for at kunne forstå et sprog. Selvom en<br />

sætning grammatisk kan eksistere i et sprog, så kan den ofte have flere meninger. Det<br />

kaldes også tvetydighed - et problem der blandt andet er blevet behandlet i bogen<br />

Understanding Computers and Cognition [Winograd & Flores, 1986], hvor dets forfattere<br />

definerer sprogforståelse som en kombination af principperne for hermeneutisk læsning<br />

af tekster, og det af se sprog som handlinger udført af aktører i en fælles kontekst<br />

[Winograd & Flores, 1986, s54]. Det vil sige, at meningen af ytrede ord og sætninger<br />

fortolkes af aktørerne, og påvirkes af deres kultur, forståelse af ordenes litterære<br />

betydning, den situation de befinder sig i og måden ordene udtrykkes på. Teorien har de<br />

konkretiseret i et eksempel på hvordan samtale kan defineres, hvad jeg senere vil<br />

diskutere i afsnit 2.1.6.1 om sprog som handling.<br />

Tvetydighedsproblemet eksisterer uanset hvordan sproget anskues. Ord kan være<br />

tvetydige i deres grundform - ”bank” kan være et synonym for ”tæsk”, men det kan også<br />

være et slag på en dør eller et sted vi gemmer penge. Der kan også være tvetydige når vi<br />

kombinerer ord og endelser - ”kvindelig” kan være en egenskab ved en dame eller det<br />

kan være en død kvindes krop. På sætningsniveau kan der ligeledes være tvetydighed.<br />

”Jeg så manden med kikkerten” er det klassiske eksempel. Her kan jeg have set manden<br />

igennem min kikkert, eller jeg kan have set en mand der havde en kikkert. At forstå sprog<br />

handler om at håndtere tvetydighed på alle niveauer, uanset om man er menneske eller<br />

maskine - uanset om man er studerende under det humanistisk eller naturfaglige fakultet.<br />

Målet med de følgende afsnit er en yderligere udforskning af sprogbegrebet, primært fra<br />

et humanistisk perspektiv, hvad der vil udgøre grundlaget for det mere naturfaglige næste<br />

kapitel. Pladsen som grundbog vil i de følgende afsnit blive delt mellem Speech and<br />

Language Processing [Jurafsky & Martin, 2000], der har været grundlitteratur i<br />

projektenhedskurset Verbal <strong>interaktion</strong> i multimodal kontekst (VMK), Semantics [Saeed,<br />

2003] der har været anvendt i kurset Sprog og tekstvidenskab (STV) og til sidst bogen<br />

<strong>The</strong> Handbook of Linguistics [Aronoff & Miller, 2001], som jeg fik anbefalet af<br />

underviseren i samme kursus.<br />

16


2.1 Seks perspektiver<br />

Det sprog vi til daglig går og taler kaldes naturligt sprog [Jurafsky & Martin, 2000, s39].<br />

Det findes i mange varianter som f.eks. engelsk, japansk, dansk eller bornholmsk, og kan<br />

subklassificeres i dialekter og idiolekter - regionale og individuelle variationer af et<br />

sprog. Som grundenhed har et naturligt sprog en række af foner, der er meget korte lyde.<br />

Når vi taler i naturligt sprog starter processen mentalt med, at vi har en idé om, hvad vi<br />

ønsker at sige. Idéen transformerer vi om til en lingvistisk struktur ved at udvælge ord der<br />

kan repræsentere dens mening, for derefter at sortere ordene efter grammatiske regler.<br />

Herefter danner hjernen impulser der aktiverer muskler i blandt andet halsen, tungen og<br />

kæben til at udtale ordene fon efter fon [Furui, 2001, s6]. Resultatet er en lydbølge, og det<br />

er denne lydbølge som vores modtager skal danne mening ud fra. Ses det igen helt<br />

grundlæggende, så sker det ved at modtagerens dertil indrettede organer opfanger lyden<br />

og omsætter den til impulser der sendes til hjernen, hvor talerens afsendte lingvistiske<br />

struktur afkodes sådan at den oprindelige idé og mening modtages [Furui, 2001, s7].<br />

Den omtalte lingvistiske struktur kan anskues fra flere perspektiver [Furui, 2001, s6]. Det<br />

kan gøres overfladisk [Furui, 2001, s6], men min tilgang til det vil være at inddrage hele<br />

det lingvistiske forskningsområde, som traditionelt opdeles i områderne fonetik, fonologi,<br />

morfologi, syntaks, semantik og pragmatik [Crystal, 1985, Contents] [Saeed, 2003, s3]<br />

[Aronoff & Miller, 2001, Contents] [Jurafsky & Martin, 2000, Contents]. Jeg definerer<br />

hermed en lingvistisk struktur som noget, der er udtrykt i naturligt sprog, og som noget<br />

der kan anskues på følgende måder:<br />

• Set fra et fonetisk perspektiv er indholdet i en lingvistisk struktur selve<br />

lyden, bestående af en række foner. Disse kan klassificeres som enten<br />

vokaler eller konsonanter, og der findes forskellige varianter af hver fon<br />

alt efter hvor i en lyd den er placeret. Fonen [t] er eksempelvis ikke den<br />

samme som fonen [t h ].<br />

• Fonologisk set er indholdet fonemer, en abstraktion af foner, hvor alle<br />

variationer af eksempelvis konsonanten t blot skrives /t/. Her studeres<br />

hvordan fonerne sammensættes, og hvor i et ord de forekommer.<br />

• Morfologisk undersøges det hvordan ord dannes og sammensættes. Det<br />

morfologiske indhold i en lingvistisk struktur er dermed selve ordene<br />

(der er sammensat af fonemer).<br />

• Syntaktisk set er ordene sammensat til grammatisk korrekte sætninger<br />

det interessante. Grammatik er altså syntaksens hovedemne.<br />

• Meningen kaldes det semantiske i en lingvistisk struktur. Semantikken<br />

beskæftiger sig med ting som fornuft, logik og referencer (syntaktiske)<br />

og betegner også den lingvistiske struktur som en ytring.<br />

• Den lingvistiske struktur påvirkes af omgivelserne den modtages i eller<br />

afsendes fra, ligesom den påvirkes af måden den afsendes og modtages<br />

på, hvad det pragmatiske perspektiv handler om.<br />

Min første tanke da jeg så denne lagdelte opdeling af lingvistikken var, at mange af<br />

områderne ikke ville være relevante for mit projekt. Der gik dog ikke mange dages<br />

17


arbejde med de forskellige teoretiske afsnit, før det viste sig, at de fleste kunne bygges på<br />

mindst et af de lingvistiske områder. Spil handler eksempelvis, hvad jeg også senere vil<br />

komme ind på, om mening - altså blandt andet semantik, mens stemmesyntese omhandler<br />

blandt andet morfologi og syntaks. Derfor er det relevant med en større indsigt i, alle de<br />

seks dele af en lingvistisk struktur, hvad jeg vil søge at give i de næste seks afsnit.<br />

Hertil er sprog naturligvis også, ifølge studierammerne, semestrets hovedemne. Jeg<br />

mener derfor, at det er interessant at forsøge at se al projektets teori i et lingvistisk lys.<br />

Om det slutteligt har været praktisk er en diskussion jeg vil tage efter projektets<br />

konklusion, men det har skabt et i mine øjne originalt teoretisk grundlag - især hvad<br />

angår det spilteoretiske. Jeg har dog ikke tiden til at gå i detaljer med alt, hvorfor det<br />

indblik jeg nu giver i lingvistikkens seks områder fokuserer på hvad jeg vurderer som<br />

værende mest brugbart i forhold til løsningen af min problemstilling (selv indenfor hvert<br />

område er der flere modstridende retninger, hvad der ville tage mange sider at udrede).<br />

En mere omfattende brug af lingvistikken indenfor eksempelvis det spilteoretiske område<br />

vil være mulig, og måske noget jeg vil forsøge på et senere semester, der ikke involverer<br />

udviklingen af et system, men her ville det være for tidskrævende og unødvendigt.<br />

2.1.1 Fonetik<br />

Fonetikken beskæftiger sig som nævnt med sprogets<br />

grundlæggende lyde, eller foner, og hvordan de dannes.<br />

Dens fornemmeste mål er at beskrive alle de foner der kan<br />

danne verdens mange forskellige sprog [Aronoff & Miller,<br />

2001, s151]. Det mål menes at være tæt på med det<br />

internationale fonetiske alfabet (IPA) [Aronoff & Miller,<br />

2001, s153] [Jurafsky & Martin, 2000, s93], der beskriver<br />

alt fra hviskende til stønnende og raspende foner (alfabetet<br />

kan findes i bilag A). Når vi udtaler et ord opstår en<br />

kontinuerlig lyd, og det antages at denne kan opdeles i<br />

mindre dele (foner), og at der kun er en endelig mængde af<br />

disse, fordi ubevidste egenskaber, som f.eks. tænder der<br />

klaprer eller hvislen mellem tænderne, ikke medregnes.<br />

Dermed kan fonetikken analysere naturligt sprog.<br />

Et særligt felt indenfor fonetikken er artikulatorisk fonetik der omhandler organernes<br />

måde at danne fonerne på [Jurafsky & Martin, 2000, s96]. Fonerne opdeles i de to<br />

varianter vokaler og konsonanter (og nogle gange semivokaler der er en blanding af de to<br />

andre). Forskellen findes i måden lydene dannes på, og især i om de dannes af en muskel<br />

i hvad der populært kaldes adamsæblet eller ej. Vokaler dannes der og har derfor en mere<br />

markant lyd, mens konsonanter ikke bruger musklen på samme måde.<br />

I mit projekt kan jeg bruge fonetiske observationer når jeg udvælger hvilke ord jeg vil<br />

have min talegenkender til at lede efter. Ved at studere fonerne, og især hvilke der<br />

udskiller sig tydeligst i en lydbølge, kan jeg øge succesraten af min talegenkender.<br />

Hviskende foner som f.eks. [h], eller mange andre konsonanter, kan være svære at<br />

18<br />

Figur 3: Det internationale<br />

fonetiske alfabet


udskille fra støj, mens kraftigere foner som [a], er lettere at genkende [Furui, 2001, s249].<br />

Det er den for mit projekt vigtigste oplysning, fonetikken kan bidrage med. Under<br />

designet af spillet og dens talegenkender, er de valgte ord ganske enkelt blevet studeret<br />

fonetisk for at vurdere deres egnethed.<br />

Der er selvfølgelig flere interessante emner indenfor fonetikken, og endnu flere detaljer<br />

ved de emner jeg har berørt, men det har ikke så megen relevans for projektet her.<br />

Akustisk fonetik beskæftiger sig eksempelvis med de talerafhængige kendetegn, også<br />

kaldet ekstralingvistiske egenskaber, ved fonerne, hvilket kan udnyttes i forbindelse med<br />

talergenkendelse. Også paralingvistiske egenskaber studeres for at kunne udskille<br />

talerens attitude eller sindsstemning [Aronoff & Miller, 2001, s151]. Men som nævnt har<br />

det ikke haft den store relevans for mit projekt, så jeg vil afslutte afsnittet om fonetik, og<br />

gå videre med den næste måde at anskue en lingvistisk struktur på.<br />

2.1.2 Fonologi<br />

Selvom vi kan finde grundbestanddelene, fonerne, så er det også interessant at se på,<br />

hvordan de sammensættes i forskellige sprog. Ord det begynder med bl eksisterer f.eks.<br />

(blå, blot, blik, black, blind, bly osv.), mens ingen ord begynder med bn. Fonologien gør<br />

dette ved at indfører ét sæt fonologiske regler (også kaldet sound inventories) pr. sprog<br />

der beskrives [Aronoff & Miller, 2001, s183] [Jurafsky & Martin, 2000, s92]. Der findes<br />

altså ikke noget internationalt fonologisk alfabet, som det var tilfældet med fonetikken<br />

(IPA), men i stedet regler for hvert sprog.<br />

I moderne talegenkendelsessystemer er en viden om en lingvistisk strukturs fonologiske<br />

indhold essentielt, hvad jeg kort vil berøre i kapitel 3, men for mit projekt er dette indhold<br />

mindre relevant, da jeg arbejder med en (på dette lag) simplere form for genkendelse.<br />

Derfor vil jeg forlade emnet her, og gå videre til den tredje videnskab indenfor lingvistik.<br />

2.1.3 Morfologi<br />

Den automatiske stavekontrol som mange er afhængige af, er et godt eksempel på, hvad<br />

morfologien bruges til. Morfologi omhandler de enkelte ord, og hvordan de dannes i et<br />

givent sprog [Jurafsky & Martin, 2000, s86]. På dansk dannes flertal eksempelvis<br />

(næsten) altid ved, at tilføje en særlig endelse til ordets stamform. Det er utvivlsomt et<br />

vigtigt område af lingvistikken, men i mit projekt er dets eneste bidrag den indlysende<br />

oplysning at ord er adskilt af stilhed eller ”mellemrum”. En oplysning der kan bruges når<br />

de enkelte ord skal adskilles fra hinanden af et talegenkendelsessystem.<br />

2.1.4 Syntaks<br />

Hvor fonetikken og fonologien ser på enkelte lyde og morfologien ser på ord, så ser<br />

syntaks på hele sætninger [Aronoff & Miller, 2001, s265]. Den lingvistiske struktur<br />

bliver nu en formel konstruktion kaldet en sætning. For syntaks er følgende to danske<br />

sætninger korrekte:<br />

19


20<br />

1. Denne flodhest spiser asparges.<br />

2. Denne asparges spiser flodhest.<br />

Hvor den sidste tydeligvis er noget vrøvl, så er den syntaktisk korrekt. Til gengæld er<br />

følgende danske sætning ikke korrekt:<br />

3. Asparges denne spiser flodhest.<br />

Og det er netop målet med syntaks - at kende korrekte sætninger fra ukorrekte. Igen noget<br />

der er vigtig for en automatisk stavekontrol, men også noget der er anvendes i dette<br />

projekt.<br />

En af de mest udbredte måder at definere en grammatik formelt på kaldes Backus Naur<br />

Form (herefter BNF), der er en såkaldt kontekstfri grammatik som bruges til formelt at<br />

beskrive kontekstfrie sprog [Jurafsky & Martin, 2000, s327]. Syntaktisk set kan naturligt<br />

sprog ses som et kontekstfrit sprog, og det er derfor nyttigt med en sådan formalisme.<br />

En grammatik beskrevet i BNF består af et sæt regler der udtrykker måden symbolerne i<br />

sproget kan grupperes på, samt et leksikon af mulige symboler eller ord. Et simpelt<br />

eksempel kunne være:<br />

SÆTNING → X Y<br />

X → en | et | ε<br />

Y → flodhest | flæskesteg | asparges | ninja<br />

Her består et sprog af alle sætninger der begynder med enten en, et eller ingenting og<br />

slutter på flodhest, flæskesteg, asparges eller ninja. Det er let at se, hvordan langt mere<br />

komplicerede sprog, som dansk, engelsk eller klingonesisk 3 , kan defineres på denne<br />

måde. Selvom grammatikken i mit spil er simpel, så definerer jeg den senere i BNF for at<br />

opnå en formel klarhed over hvilke muligheder spilleren har for <strong>interaktion</strong> via tale.<br />

2.1.5 Semantik<br />

Af stor betydning for projektet har også semantikken - et forskningsfelt der arbejder med<br />

at beskrive meningen i en lingvistisk struktur. Hvor syntaksen så den lingvistiske struktur<br />

som sætninger, så ser semantikken den som ytringer.<br />

Semantisk mening afhænger af viden om verden, og denne viden varierer fra person til<br />

person, hvorfor mening er svært at beskrive formelt. Et centralt problem kaldes<br />

cirkularitet [Saeed, 2003, s6], og omhandler hvad ordbøger ofte kæmper med, nemlig at<br />

beskrive betydningen af ét ord med flere andre ord. Skal eksempelvis meningen af<br />

ytringen flodhesten sover tungt beskrives vil ord som pattedyr og vandhuller indgå, og<br />

meningen med disse ord skal derfor være kendt på forhånd. Det ville blive en uendelig<br />

cirkulær definition. Et andet problem er at to personer ikke nødvendigvis har samme<br />

3 Et konstrueret sprog talt af racen Klingon i det fiktive Star Trek-univers [Wikipedia, Klingon language]


forståelse af ordet flodhest; det kan eksempelvis blive forvekslet med flodsvin eller<br />

søhest, hvad der er helt andre dyr, eller nogle tror måske, at flodhesten er blå og har pels.<br />

Indgår førnævnte ytring i en samtale er det dog ikke sikkert, at talernes forskellige<br />

forståelse af ordet flodhest forstyrrer samtalen, men de vil efter samtalen ikke være klar<br />

over, at de talte om to forskellige ting, hvad der naturligvis godt kan være et problem.<br />

Semantikken har to løsninger på problemerne; enten accepteres de og det forsøges<br />

alligevel at beskrive meningen med andre ord (helst nogle som det menes at vi har en<br />

intuitiv forståelse af), eller også defineres et semantisk metasprog der optimalt er<br />

uafhængigt af noget naturligt sprog [Saeed, 2003, s7]. Et muligt metasprog kunne være<br />

logik [Saeed, 2003, s296]. Ytringen flodhesten sover og temperaturen falder kan f.eks.<br />

med logik beskrives som S(f) ^ F(t), og ytringen flodhesten spiser enten flæskesteg eller<br />

asparges som S(f, f ve a). Det løser ikke umiddelbart problemet med meningen af ytringer<br />

bestående af enkelte ord, men meningen i længere ytringer kan beskrives formelt og<br />

uafhængigt af naturligt sprog. I forbindelse med digital repræsentation af mening, er det<br />

logiske metasprog særdeles anvendeligt, og også det jeg vil anvende igennem projektet,<br />

men at se mening som sandhedsværdier er dog filosofisk set snæversynet [Jurafsky &<br />

Martin, 2000, s540]. Det er ikke et emne, jeg vil forfølge yderligere, men skulle det f.eks.<br />

belyses hvorfor computeren aldrig rigtigt vil forstå mening, er det uundgåeligt.<br />

Udover at være en måde at anskue en lingvistiske struktur på, så er semantikken også et<br />

underfelt til semiotikken - læren om hvordan tegn danner mening. Det er derfor relevant<br />

med et kort indblik i semiotikken [Saeed, 2003, s5].<br />

2.1.5.1 Semiotik<br />

Læren om tegn og hvordan de danner mening kaldes som nævnt semiotik. Meningen med<br />

et tegn opstår i forholdet mellem signifier og dets signified [Saeed, 2003, s5], der kan<br />

oversættes med tegnet og dets repræsentation. Hvis f repræsenterer flodhest, så er f<br />

signifier og flodhest er signified. Der er findes tegntyper:<br />

• Ikon, er når der er en lighed mellem tegnet og dets repræsentation.<br />

Eksempelvis et billede af en flodhest og den virkelige flodhest som det<br />

viser.<br />

• Index, er når der er et årsagsbestemt eller indikeret forhold mellem<br />

tegnet og dets repræsentation. Røg er et index af ild, tårer er et index af<br />

sorg eller glæde og summen kan være et index af bier (eller honning hvis<br />

man er Peter Plys).<br />

• Symbol, er når forholdet mellem tegnet og dets repræsentation er<br />

vedtaget ved en konvention. Militære værdighedstegn, mange<br />

trafikskilte, og ikke mindst bogstaver er eksempler på symboler.<br />

Naturligt sprog kan dermed ses som et symbolsk system, da det er konventionelt vedtaget,<br />

og det er ubestrideligt menneskets mest avancerede brug af tegn [Saeed, 2003, s5]. En<br />

grundlæggende forståelse for semiotik er måske ikke uundværligt for at forstå<br />

semantikken, men i forbindelse med eksempelvis designet af brugergrænsefladen i mit<br />

21


spil kan de førnævnte tre semiotiske begreber anvendes, hvad der også er semiotikken<br />

vigtigste bidrag til mit projekt.<br />

Mening er dog ikke alene afhængig af tegnene, men også af konteksten hvori de<br />

eksisterer. Det er emnet for næste afsnit.<br />

2.1.6 Pragmatik<br />

Forholdet mellem den lingvistiske struktur og den kontekst den indgår i er pragmatikkens<br />

hovedemne. Det problem som pragmatikken søger at løse, er hvorfor naturligt sprog er så<br />

let at anvende og udlede mening af (for mennesket), selvom alle ord tilsyneladende kan<br />

tillægges utallige betydninger [Aronoff & Miller, 2001, s395]. Ligesom semantikken<br />

skal der udledes mening, men hvor semantikken så på ytringens objektive mening, så ser<br />

pragmatikken på dens subjektive mening. Det vil sige den mening som lytteren, taleren,<br />

forfatteren eller læseren udleder af en ytring. Hvordan ytringer fortolkes af mennesket, er<br />

altså groft sagt det emne der udlægges teorier om.<br />

Den historisk mest indflydelsesrige tilgang til pragmatisk analyse er udviklet af Paul<br />

Grice og kaldes kooperativ teori [Aronoff & Miller, 2001, s400] [Saeed, 2003, s204]. Jeg<br />

vil ikke beskæftige mig med denne tilgang, men derimod med en tilgang der kan ses som<br />

en videreudvikling. Speech acts blev introduceret af J. L Austin i 1975, og anvendt i<br />

Winograd & Flores i udviklingen af en dialogmodel der tager pragmatiske forhold i<br />

betragtning. Jeg vil nu se nærmere på denne model.<br />

2.1.6.1 Sprog som handling<br />

Jeg har tidligere nævnt, hvordan der i naturligt sprog er mulighed for tvetydighed. For<br />

mennesket er det ikke et stort problem, da vi næsten altid kan danne den rigtige mening<br />

ud af konteksten og vores viden om verden 4 . Altså ved at inddrage de pragmatiske<br />

forhold i vores meningsdannelsesproces. For computeren er problemet derimod<br />

betydeligt, hvis den da skal deltage i en samtale, fordi den ikke har den nødvendige viden<br />

om sin omverden og konteksten.<br />

Winograd & Flores foreslår en løsning på problemet. I en samtale sikrer vi os ikke imod<br />

tvetydighed ved f.eks. at anvende ord uden flere litterære betydninger, men i stedet tager<br />

vi blot hensyn til de pragmatiske forhold, når vi danner mening - det vil sige, at vi møder<br />

verden som et sted vi kender godt, og hvor vi ved, hvordan vi kan handle. Herigennem<br />

kan vi udlede meningen af ytringer, og faktisk kan der selv uden ytrede ord eksistere<br />

mening i en samtale - kun det som ikke er indlysende ytrer vi som ord i en samtale<br />

[Winograd & Flores, 1986, s58]. Det er denne pragmatiske tilgang til problemet, som<br />

Winograd & Flores i 1986 forsøger at overføre til computeren. Ved at se på hele eller<br />

dele af en samtale, frem for de isolerede ytringer skulle der være bedre mulighed for at<br />

4 En undtagelse kan være helt små børn, da de endnu ikke har nogen stor viden om verden. Min søn kunne i<br />

en periode, da han var lidt over 1 år gammel, ikke skelne mellem Peter Plys og pude fordi der på hans<br />

hovedpude var et billede af Peter Plys.<br />

22


undgå tvetydighed, og meningen med den enkelte ytring vil være mulig at udlede for<br />

computeren.<br />

Det er tidligere blevet foreslået, at en samtale ikke blot er ord, men også handling<br />

[Austin, 1962] [Searle, 1969], hvad Winograd & Flores anerkender og bygger deres<br />

såkaldte language action teori på. Austin definerer en speech act som grundelementet i<br />

en samtale. Ved at finde de speech acts der udføres i en samtale, kan meningen i samtalen<br />

afsløres. Searle opstiller fem forskellige typer af speech acts:<br />

• Representatives, der binder taleren til sandheden i det udtrykte (f.eks. at<br />

hævde eller konkludere noget).<br />

• Directives, der er en talers forsøg på at få en modtager til at udføre en<br />

handling (f.eks. at stille et spørgsmål eller at bede om hjælp).<br />

• Commissives, der binder taleren til en fremtidig handling (f.eks. at afgive<br />

løfter eller tilbud).<br />

• Expressives, der udtrykker en mental tilstand (f.eks. taknemmelighed<br />

eller en undskyldning).<br />

• Declarations, der medfører ændringer i de institutionelle omgivelser der<br />

påvirker aktørerne (f.eks. det at indgå giftermål eller at erklære krig).<br />

Winograd & Flores mener dog ikke dette alene er nok til, til at beskrive en samtale så<br />

formelt at en computer kan forstå den. Problemet er, at meningen i en samtale ikke kan<br />

afgøres objektivt, men at den derimod er afhængig af aktørerne (en betragtning jeg er<br />

enig i - det pragmatiske lag er den vigtigste meningsbærer) [Winograd & Flores, 1986,<br />

s63]. For at løse det foreslår de en model kaldet conversation for action [Winograd &<br />

Flores, 1986, s64], hvor den førnævnte vægtning af pragmatikken kombineres med<br />

speech acts, for at danne det de ser som den eneste måde en samtale formelt kan<br />

beskrives, sådan at en computer vil kunne udlede meningen.<br />

Figur 4: <strong>The</strong> basic conversation for action [Winograd & Flores, 1986, s65]<br />

En samtale vises som en dans med to aktører [Winograd & Flores, 1986, s64], A & B, og<br />

illustreres i et tilstandsdiagram (eller en tilstandsmaskine). Fra den første tilstand<br />

foretager A en efterspørgsel, hvilket giver B mulighed for at trække sig fra samtalen, at<br />

23


ede om uddybning af efterspørgslen eller at love at efterkomme den. A kan også selv<br />

vælge at trække sig fra samtalen. Antager vi, at B vælger at efterkomme efterspørgslen,<br />

må B derefter bekræfte når efterspørgslen er udført. Når A er tilfreds med resultatet, eller<br />

vælger at trække sig, så er samtalen gennemført. B kan også vælge at løbe fra sit løfte<br />

(renege), hvilket også vil afslutte samtalen.<br />

Modellen er så simpel, at jeg ikke finder konkrete eksempler på dens brug nødvendige. I<br />

stedet vil jeg kritisere seks af Winograd & Flores egne pointer omkring forståelsen af<br />

modellen, for at klarlægge de mest interessante ting ved den.<br />

24<br />

1. Modellen omhandler strukturen for en samtale, og ikke detaljerne i selve<br />

samtalen [Winograd & Flores, 1986, s66]. Det er interessant, fordi målet<br />

med modellen er en generalisering af samtale, for herigennem at gøre<br />

det muligt for en computer at forstå den. Hvordan dette konkret løses<br />

formår de dog aldrig at svare på, hvad der også er min kritik af<br />

modellen. Den løser ikke umiddelbart problemet med at få en computer<br />

til at forstå tvetydighed - men den er dog i det mindste en, efter min<br />

mening, realistisk model af en samtale.<br />

2. Alle relevante handlinger er lingvistiske, altså sproglige. Her tæller både<br />

ytringer og stilhed som handlinger, mens en evt. fysisk udførsel af det<br />

efterspurgte ikke medregnes [Winograd & Flores, 1986, s66]. Det er et<br />

punkt der kan diskuteres, for hvad forhindrer en aktør i at udføre en<br />

efterspørgsel uden at bekræfte den lingvistisk bagefter? Her vil<br />

Winograd & Flores mene, at det er stilheden, der virker som bekræftelse<br />

i samtalen, men jeg mener, at stilhed nødvendigvis må tolkes i<br />

konteksten. Altså at stilhed både kan betyde at efterspørgslen ignoreres,<br />

eller hvis den faktisk kognitionsmæssigt opserveres gennemført, at den<br />

er blevet efterkommet. Her vil det nødvendigvis være selve udførelsen<br />

der virker som bekræftelse, og ikke stilheden.<br />

3. Deres tredje pointe forsøger at redde den forrige. Nu er selve<br />

bekræftelsen af en udført efterspørgsel ikke en af de relevante<br />

handlinger fra før, hvormed de tillader at den kan være ikke-lingvistisk.<br />

Dermed kan man sige, at min kritik fra før falder til jorden, eller man<br />

kan sige at deres model er svag fordi ikke alle dele af den har relevans<br />

for samtalens struktur. Jeg vælger den sidste udlægning.<br />

4. Kravene for at en bekræftelse kan accepteres er ikke objektive, men<br />

bundet til samtalens aktører [Winograd & Flores, 1986, s66]. Det vil<br />

sige, at aktørerne kan blive uenige om, hvornår en efterspørgsel er<br />

udført, hvad der kan føre til et nedbrud i samtalen, hvor A mener, at B er<br />

løbet fra sit løfte, mens B ikke forstår hvorfor A ikke kunne acceptere.<br />

Det er interessant, fordi subjektivitet får en stor betydning for samtalens<br />

udfald, og i mine øjne udelukker at modellen kan overføres direkte til en<br />

computer.<br />

5. En afsluttet samtale garanterer ikke at aktørerne er tilfredse med udfaldet<br />

[Winograd & Flores, 1986, s66]. Ser man på figuren er denne pointe


naturligvis åbenlys, da det fra alle samtalens tilstande er muligt at<br />

afbryde den.<br />

6. Diagrammet siger ikke, hvad aktørerne burde gøre, eller hvad<br />

konsekvenserne af handlingerne er [Winograd & Flores, 1986, s66]. Det<br />

er naturligvis vigtigt for en samtale, hvad den resulterer i, men på så lavt<br />

et niveau er det ikke noget der kan have en indflydelse. Modellen<br />

repræsenterer jo kun et lille brudstykke af en egentlig samtale, der oftest<br />

vil udgøres af mange sådanne modeller efter hinanden.<br />

Efter at have overvejet de seks pointer, er jeg nået til den konklusion, at modellen ikke<br />

egner sig til en egentlig implementering i et computerbaseret system der har som mål at<br />

forstå og deltage i en virkelig samtale. Derimod mener jeg, at det med modellen faktisk er<br />

muligt at konstruere strukturen i de fleste samtaler (dog nogle mere kunstigt end andre)<br />

på et detaljeret niveau, hvis systemet da kender til samtalens kontekst. Dermed vil et<br />

system opnå en form for subjektiv forståelse for situationen (mulighed for at inddrage<br />

pragmatiske forhold), hvormed dens handlinger vil kunne virke meningsfulde. Et system<br />

der kan reagere troværdigt i et afgrænset domæne, vil altså kunne have en samtalestruktur<br />

der kan beskrives i conversation for action-modellen.<br />

Derfor vil modellen senere blive brugt til analyse, af det i rapporten beskrevne, og på<br />

semestret designede, spils dialog med spilleren, hvor domænet netop er meget begrænset.<br />

2.2 Opsummering<br />

Herfra vil sprog (naturligt sprog) være defineret som en lingvistisk struktur der kan<br />

anskues fra seks forskellige perspektiver - de seks perspektiver som netop er beskrevet.<br />

Denne definition på hvad et naturligt sprog er, og indsigten der gives af de seks<br />

perspektiver, kan den næste del af teorien nu udnytte.<br />

I resten af rapporten anvender jeg de begreber der er fremlagt hidtil, f.eks. fonemer og<br />

semantik, uden at omdefinere eller gendefinere dem, men vil naturligvis forsøge at<br />

konkretisere dem i den kontekst de anvendes.<br />

Her indledes kapitel 3 der igen omhandlende emnet samtale med en computer, men hvor<br />

mere tekniske tilgange til problemet belyses.<br />

25


3 <strong>Stemmebaseret</strong> <strong>interaktion</strong><br />

Når computeren skal deltage i en samtale, skal den kunne generere lingvistiske strukturer<br />

for at afsende dem til en modtager, og den skal kunne opfange lingvistiske strukturer og<br />

afkode dem fra alle førnævnte seks perspektiver for at modtage mening fra en afsender.<br />

Det er min egen formulering, tilsat teorien fra sidste kapitel, af målet for stemmebaseret<br />

<strong>interaktion</strong>. Den er analogt med, hvad Jurafsky & Martin skriver i Speech and Language<br />

Processing [Jurafsky & Martin, 2000, s3], om målet med det fag der traditionelt set<br />

kaldes Natural Language Processing (NLP). Bogen vil igen i dette kapitel gøre det ud<br />

som grundbog, denne gang suppleret af Digital Speech Processing, Synthesis, and<br />

Recognition [Furui, 2001] og Fundamentals of Speech Recognition [Rabiner & Juang,<br />

1993] der er stærkere, hvad angår nogle af de (lidt ældre) teknikker jeg har anvendt i mit<br />

spil.<br />

Netop de teknikker der er anvendt i spillet, som det har været projektets mål at udvikle, er<br />

da også fokus for dette kapitel, om end jeg vil forsøge at give et overblik over hele NLPområdet,<br />

da der trods alt er brugt meget tid herpå i projektenhedskurset VMK.<br />

I dette kapitel vil jeg starte med at se på opfangelsen af lingvistiske strukturer - det der<br />

kaldes talegenkendelse, for derefter at se på genereringen af dem - det der kaldes<br />

talesyntese. Afslutningsvis vil jeg se på, hvordan disse to bindes sammen af en<br />

dialogmanager, hvorunder flere forskellige tilgange til praktisk opsætning af<br />

stemmebaseret <strong>interaktion</strong> belyses.<br />

26


3.1 Talegenkendelse<br />

Talegenkendelse er en kompliceret proces, der har som sit grundlæggende mål at<br />

digitalisere alle dele af en lingvistisk struktur modtaget fra et menneske. Jeg indleder<br />

afsnittet med en illustration af processen, som den (optimalt) kan se ud:<br />

Figur 5: Talegenkendelsesprocessen. Udvidet og generaliseret udgave af figure 7.2 fra [Jurafsky &<br />

Martin, s241, 2000]<br />

27


Figur 5 skal læses oppefra og ned, og viser hvilke generelle teknikker der anvendes<br />

igennem talegenkendelsesprocessen, samt hvad resultatet af hver teknik er. Desuden<br />

fremgår den lingvistiske disciplin som teknikkerne bygger på. Det bør bemærkes at der<br />

vides gradvist mindre om den optimale tekniske håndtering for hvert trin ned igennem<br />

modellen. Sprogets foner og hvordan de repræsenteres digitalt er i dag et forholdsvis<br />

veludviklet felt indenfor NLP, mens der om analysen af ytringens mening, de semantisk<br />

og pragmatiske lag, vides meget lidt. Her følger en gennemgang af illustrationen.<br />

Det første der sker, er at den lingvistiske struktur opfanges af mikrofonen som en akustisk<br />

lydbølge, der af computeren omsættes til et digitalt signal. Dette signal har en frekvens<br />

(sample rate eller sample frequency) på eksempelvis 8Khz, hvilket vil sige 8000<br />

informationer i sekundet, og disse informationer har en opløsning (resolution) på<br />

eksempelvis 8 bit, hvilket vil sige en værdi mellem 0 og 255 hvor 128 er stilhed 5 . Det<br />

første genkenderen gør, er at opsplitte signalet i mindre frames på f.eks. 10ms. Det er den<br />

teknik der kaldes signalbehandling, hvorunder også en reducering af støj hører til. Fra<br />

hver af disse frames fremstilles nu en featurevektor (feature vector), der er en abstrakt<br />

beskrivelse af energien fordelt over de 10ms. Den mest udbredte teknik til beregning af<br />

featurevektorer kaldes Linear Predictive Coding (LPC), hvor en featurevektor så kan<br />

kaldes et LPC-spektrum. I det næste skridt anvendes probabilistiske metoder<br />

(gaussmodeller og neuralske net) til at udlede den statistiske sandsynlighed for at en<br />

featurevektor repræsenterer en bestemt fon, hvorefter en dekoder-algoritme matcher disse<br />

sandsynligheder med et leksikon for at finde de ønskede fonemer. Dekoder-algoritmen<br />

der ofte bruges er Viterbi, men også A* som jeg selv kender fra stifinderalgoritmer i<br />

spilprogrammeringen kan anvendes. Det leksikon der søges i, er i dag ofte en Hidden<br />

Markov Model (HMM), der kan beskrives som en model over et ord eller en fonem,<br />

bygget op som statistisk vægtede tilstandsmaskiner [Jurafsky & Martin, 2000, s241].<br />

Resultatet af dekoderens arbejde er som sagt nogle fonemer, som forholdsvis let kan<br />

omsættes til ord. Ønskes der kendskab til ordenes syntaktiske sammensætning, kan dette<br />

kontrolleres i næste skridt ved at sammenligne ordene med en kontekstfri grammatik i<br />

f.eks. BNF. Er en sætning ikke grammatisk godkendt, kan den afvises inden der søges at<br />

udføre en semantisk og evt. pragmatisk analyse. Hvordan disse sidste skridt foretages er<br />

der ingen klare retningslinjer for, men det er dog her at selve meningen i den lingvistiske<br />

struktur er at finde. Jeg har valgt at illustrere resultatet af en semantisk analyse som et<br />

logisk udtryk, da det er den metode jeg anvender, men der er også andre muligheder. I<br />

forbindelse med det pragmatiske er det conversation for action-modellen som jeg<br />

tidligere har beskrevet der trækkes på.<br />

Alt efter hvor avanceret en talegenkender der ønskes kan nogle lag simplificeres eller helt<br />

undværes. Der skelnes ofte mellem genkendelse af enkelte ord og hele sætninger, mellem<br />

talerafhængighed og -uafhængighed og mellem genkendere med henholdsvist et lavt og et<br />

højt ordforråd. Modellen beskrevet ovenfor er velegnet til genkendelse af hele sætninger,<br />

uafhængig af taler og over et stort ordforråd. For mit projekt er dette uopnåeligt, da jeg<br />

har haft som mål at implementere en talegenkender på Nintendo DS, der er en meget lidt<br />

5 Ofte anvendes et signed signal sådan at opløsningen går fra -128 til 128 hvor 0 så er stilhed.<br />

28


kraftfuld maskine, mens HMM og Viterbi-algoritmen stiller store krav til regnekraft.<br />

Derfor må jeg simplificere modellen, til noget der minder om hvad der i 1993 blev anset<br />

for den mest praktiske arkitektur i et talegenkendelsessystem [Rabiner & Juang, 1993,<br />

s44]. Rabiner og Juang kalder det for en Statistical Pattern-Recognition Approach to<br />

Speech Recognition [Rabiner & Juang, 1993, s51], hvad der kan illustreres således:<br />

Figur 6: En simplere talegenkender baseret på Statistical Pattern-Recognition<br />

Som det fremgår, er det fonologiske lag nu helt væk, og fonetikken er sat i parentes da<br />

dens informationer reelt ikke anvendes i genkendelsesprocessen. Resultatet efter<br />

behandlingen af det morfologiske lag er dog det samme som sidst, hvorfor syntaktisk,<br />

29


semantisk og pragmatisk information stadig kan udledes på samme måde. Jeg vil nu<br />

gennemgå det morfologiske lag, som denne gang er mere kompliceret.<br />

Signalet opdeles som sidst i frames, men nu er det ikke featurevektorer der udledes, men<br />

derimod test patterns som afmåles. Denne afmåling foregår ved at der søges efter<br />

perioder uden stilhed, og disse perioder benævnes så test patterns - der reelt er de ord<br />

eller morfemer der tales ind i mikrofonen. Teknikken kaldes også speech-period<br />

detection [Furui, 2001, s248]. En test pattern udsættes for samme behandling som en<br />

featurevektor, nemlig en LPC-analyse, eller i stedet en diskret fourier transformering<br />

(DFT) der har samme formål (altså at abstrahere de generelle træk over hele perioden),<br />

men kan være betydeligt mindre beregningskrævende, hvis det er en algoritme af typen<br />

fast fourier transform (FFT). Disse test patterns sendes i næste skridt videre til pattern<br />

comparison-modulet, der sammenligner dem med foruddefinerede test patterns og giver<br />

et statistisk output, som beskriver hvilke ord de ligner mest. Teknikken der almindeligvis<br />

anvendes til at sammenligne med kaldes dynamic time-warping. Dens formål er at<br />

kompensere for variationer i hastigheden et ord udtales i, ved at strække det til den<br />

samme længde som den foruddefinerede test pattern der sammenlignes med har [Rabiner<br />

& Juang, 1993, s51], og samtidig gøre dette sådan at de forskellige udsving i lyden<br />

matches overfor hinanden. Til sidst vælges blot den test pattern med størst<br />

sandsynlighed, hvorefter et ord er genkendt og kan sendes til syntaktisk analyse.<br />

Alt dette kan gøres uden et stort behov for regnekraft, og det er derfor den arkitektur jeg<br />

har valgt at bygge talegenkendelsen i mit spil op omkring. Der er naturligvis også<br />

ulemper ved denne arkitektur. I forhold til tidligere nævnte klassificering, så er det en<br />

talegenkender der er talerafhængig, har et lavt ordforråd og som ikke genkender lange<br />

sætninger (medmindre de kan dannes af ordforrådet). Det betyder konkret, at<br />

genkenderen skal trænes af alle som anvender den, og at de skal træne alle de ord som<br />

den skal kunne genkende (derfor er et begrænset ordforråd at foretrække). Ved træning af<br />

genkenderen er det heller ikke optimalt blot at indtale det ønskede ord en enkelt gang, da<br />

et gennemsnit af flere indtalinger vil give den en større succesrate. Der er altså nogle<br />

markante svagheder, men en genkender som denne kan opnå en fejlprocent der ikke<br />

ligger langt fra en moderne talegenkender - hvis førnævnte forhold tages i betragtning.<br />

Efter denne introduktion til talegenkendelse og arkitekturen bag, vil jeg fortsætte med de<br />

relaterede emne talesyntese.<br />

3.2 Talesyntese<br />

Hvor målet med talegenkendelse er at opfange og fortolke lingvistiske strukturer, så er<br />

målet med talesyntese at generere en lingvistisk struktur komplet med pragmatisk og<br />

semantisk mening, syntaktisk korrekthed og velvalgte foner. Det er igen ikke nogen let<br />

opgave, men dog en opgave der i dag løses ganske flot af flere talesyntesesystemer. En ny<br />

illustration er ikke nødvendig, da Figur 5 fra sidste afsnit stort set blot kan vendes på<br />

hovedet.<br />

30


En talesynteseproces starter med, at computeren udleder mening af situationen, for<br />

derefter at konstruere et logisk udtryk der kan repræsentere denne mening. F.eks. win(I).<br />

Denne omdannes så til en sætning - her ”I win”. Fra dette punkt påbegyndes en proces<br />

der kaldes text-to-speech [Jurafsky & Martin, 2000, s92], hvor målet er at omdanne en<br />

tekststreng til en akustisk lydbølge. Der er overordnet set fire måder dette kan gøres på.<br />

• Den første er at optage en begrænset mængde hele ord og sætninger, for<br />

at kunne afspille kombinationer af disse, hvad der giver den højeste<br />

naturlighed i lyden, men det at skulle optage alle ord på forhånd er ofte<br />

en klar ulempe. Både fordi det stiller store krav til lagringsplads, men<br />

også fordi det tager lang tid at implementere hvis ordforrådet skal være<br />

stort. Til gengæld er det beregningsmæssigt simpelt [Furui, 2001, s217],<br />

i det der ikke kræves andet end afspilning af ordene (evt. kan der<br />

foretages en behandling af ordene afhængigt at hvor i en sætning de<br />

placeres). Denne metode anvendes eksempelvis i alle nye fodboldspil,<br />

hvor en kommentator kommenterer kampen. Jurafsky & Martin<br />

beskriver slet ikke denne mulighed, og den er da også meget simpel,<br />

men den er bestemt velegnet til mange formål.<br />

• En anden mulighed er at analysere en mængde af optagne ord, og<br />

opsplitte disse i mindre bidder. Disse bidder kan derefter benævnes<br />

fonologisk, og flere ord kan så dannes ved at kombinere fonemer til<br />

morfemer. Dette kan forbedres gennem anvendelsen af statiske metoder<br />

som HMM, i sprog som dansk og engelsk hvor der ikke er en tydelig<br />

sammenhæng mellem måden et ord staves på, og måden det udtales (og<br />

dermed beskrives fonologisk). Dette er da ikke største problem ved<br />

denne metode. Problemet er i stedet at fonemer ikke indeholder<br />

tilstrækkeligt med information om hvordan en lyd skal udtales, fordi de<br />

blot er abstrakte beskrivelser af en lyd. Derfor kommer talen med denne<br />

metode ikke til at lyde helt naturlig, men til gengæld er den simplere at<br />

implementere end den næste metode [Furui, 2001, s221].<br />

• I forhold til førnævnte medtages nu fonetisk information, hvad der gør<br />

processen langt mere kompliceret og beregningskrævende fordi der<br />

kræves et stort kendskab til hvordan ord almindeligvis udtales, hvad der<br />

også gør at processen kræver meget lagringsplads. Her lagres også<br />

såkaldte triphones og diphones der er kombinationer af foner, hvormed<br />

overgangene mellem dem kan virke mere naturlig [Furui, 2001, s221].<br />

• Til sidst er der såkaldt formant synthesis som er den form for syntese der<br />

blev anvendt i Magnavox’ Odyssey 2 spillemaskine fra 1978 (og tidligere<br />

udenfor spilindustrien). Teknikken foreskriver ren syntetisk fremstilling<br />

af tale, ved at beskrive foner som frekvenser. Det giver ikke et naturligt<br />

resultat, men det er dog alligevel forståeligt, hvad der i nogle situationer<br />

også kan være det vigtigste ved talesyntese.<br />

31


Med Nintendo DS som platform for spillet er den tredje mulighed udelukket, og da jeg<br />

ønsker at mit spil skal tale engelsk er beregningskrævende statistiske metoder nødvendigt<br />

for at skabe naturlig tale med den anden mulighed. Tilbage står den første og sidste<br />

mulighed, hvor jeg vælger den første, fordi jeg ikke har behov for et stort ordforråd og<br />

foretrækker naturlighed over syntetisk tale. Denne metode er dog teknisk så simpel, at der<br />

ikke er behov for yderligere teori i dette afsnit. Det bør selvfølgelig understreges at det<br />

igen er de pragmatiske og semantiske lag som der vides mindst om, hvorfor det trods den<br />

simple teknik på det morfologiske lag (og derunder), er en stor udfordring at få<br />

computeren til at sige noget der giver mening. Mit værktøj på dette område bliver igen<br />

conversation for action-modellen, som blev beskrevet i afsnit 2.1.6.1.<br />

Her ophører min behandling af talesyntese, og jeg vil nu i stedet belyse stemmebaseret<br />

<strong>interaktion</strong> fra et HCI eller usability-perspektiv.<br />

3.3 Dialogmanagement<br />

At tildele en lingvistisk struktur mening og en position i en samtale håndteres af<br />

førnævnte modeller. At holde samtalen i gang og sikre at den går i den rigtige retning<br />

håndteres derimod af dialogmanageren. I Jurafsky & Martin belyses dette emne kun<br />

overfladisk, hvorfor vi i VMK-kurset også anvendte bogen Spoken Dialogue Technology<br />

[McTear, 2004]. Her præsenteres en række tilgange til dialogmanagement:<br />

32<br />

• Command and control benævnes ikke som en dialogbaseret<br />

<strong>interaktion</strong>sform, idet brugeren blot giver systemet korte forudbestemte<br />

kommandoer [McTear, 2005, s10]. Jeg mener dog at der kan være tale<br />

om en dialog, i det systemet reagerer på kommandoen. Det er den<br />

samme diskussion som jeg tog i afsnit 2.1.6.1, og jeg mener stadig, at en<br />

fysisk reaktion på en kommando tæller som en del af samtalen. Derfor<br />

mener jeg command and control er en tilgang til dialogmanagment,<br />

selvom den ikke nævnes i kapitlet herom [McTear, 2004, k5].<br />

• System-directed initiative er en af de i alt tre former for ”rigtig”<br />

dialogmanagment som McTear beskriver [McTear, 2004, s108]. Her er<br />

det systemet som styrer samtalen, og på den måde forhindrer brugeren i<br />

at være i tvivl om sine <strong>interaktion</strong>smuligheder. I Jeopardy-jargon vil det<br />

være brugeren der har svarene, mens systemet stiller spørgsmålene. Den<br />

største fordel ved denne tilgang er at ordforrådet kan specificeres eller<br />

optimeres på forhånd, fordi spørgsmålene kan stilles sådan at der ikke er<br />

mange forskellige måder at svare på.<br />

• User-directed initiative er den anden tilgang til dialogmanagment som<br />

McTear beskriver [McTear, 2004, s109]. Her er det nu systemet der har<br />

svarene, mens brugeren stiller spørgsmålene. Det stille normalt store<br />

krav til systemets NLP-evner, da brugeren kan formulere sine spørgsmål<br />

meget forskelligt - især hvis der er tale om et system der skal anvendes<br />

af flere brugere. User-directed initiative har tydelige ligheder med


command and control, hvor der det også er brugeren der styrer dialogen,<br />

men med et større ordforråd er der ikke ligeså store begrænsninger i<br />

måden brugeren kan udstede kommandoer.<br />

• Mixed-initiative er den sidste af de overordnede tilgange til<br />

dialogmanagement, og her er det nøjagtigt som det lyder både muligt for<br />

systemet og brugeren at tage initiativ. Brugeren kan eksempelvis besvare<br />

et spørgsmål med et spørgsmål. Det giver et fleksibelt system, men det<br />

er naturligvis også sværere at designe.<br />

• Agent-based er ikke en egentlig tilgang til dialogmanagement, men i<br />

stedet en interessant udvidelse af de førnævnte. Det interessante er at der<br />

nu trækkes på teknikker fra kunstig intelligens (AI), idet dialogen<br />

modelleres som en problemløsningsopgave mellem to intelligente<br />

agenter (hvor den ene er brugeren) [McTear, 2004, s116]. Systemet vil<br />

reagere intelligent på brugerens spørgsmål eller kommandoer, ved at<br />

analysere situationen og brugerens input og giver en meningsfuld<br />

reaktion. Her må systemet naturligvis have informationer om målet med<br />

dialogen og konteksten den befinder sig i, for at give en meningsfuld<br />

intelligent reaktion.<br />

Der er altså flere tilgange til dialogmanagement, og mange ting som bør overvejes inden<br />

stilen vælges. I min situation ville system-directed initiative være praktisk muligt, men<br />

den forhørsagtige dialog der fremkommer, er ikke passende for et spil - her er det efter<br />

min mening spilleren der bør kontrollere forløbet. Af samme årsag mener jeg command<br />

and control er en langt bedre tilgang, og det er denne jeg har kombineret med en agentbased<br />

udvidelse sådan at systemet reagerer fornuftigt næsten uanset brugerens input.<br />

Hvordan det konkret er gjort vil jeg beskrive nærmere i projektets fjerde del, mens målet<br />

nu er at udforske dialogens forskellige modaliteter.<br />

3.3.1 Multimodalitet<br />

Den åbenlyse form på en dialog er at lade den være baseret på tale, men også andre<br />

modaliteter kan med fordel have en plads i dialogen. Der kan tales om både multimodalt<br />

input og multimodalt output [McTear, 2004, s379]:<br />

• Multimodalt input er hvor brugeren kan give systemet information<br />

gennem flere forskellige modaliteter, som f.eks. tale, mus, keyboard og<br />

trykfølsom skærm. Et eksempel kunne være at brugeren peger på et kort<br />

med musens cursor, og stiller et spørgsmål via tale. Der kan desuden<br />

skelnes mellem om input som i eksemplet foregår samtidigt, eller om<br />

brugeren kan vælge mellem flere modaliteter som tilbyder samme<br />

funktionalitet, men har forskellige fordele og ulemper. Man kan<br />

forestille sig en bilradio der kontrolleres via en trykfølsom skærm når<br />

bilen holder stille, og via tale når den kører - Ford har allerede<br />

eksperimenteret med dette [McTear, 2004, s384]. Der kan også skelnes<br />

33


34<br />

mellem aktiv og passiv input. Nogle talegenkendelsessystemer supplere<br />

den akustiske genkendelse, med visuel aflæsning af brugerens læber<br />

hvad der kan betegnes som passivt input, eller som en bivirkning af aktiv<br />

input. På sidste semester var jeg med til at udvikle et spil der modtog<br />

input via spillerens bevægelser foran et kamera, men i denne situation er<br />

det visuelle input at betragte som aktivt fordi brugeren bevidst søger at<br />

give systemet input ad denne vej.<br />

• Multimodalt output inkluderer blandt andet tale, anden form for lyd,<br />

grafik af forskellig art, tabeller og tekst. Ved multimodalt output<br />

udnyttes styrker og svagheder ved de forskellige modaliteter, til at give<br />

brugeren den information han har brug for på den bedste måde.<br />

Søgeresultater, delene i en kompliceret samlevejledning eller andre typer<br />

af lister fungerer eksempelvis ikke så godt som oplæsning, mens de<br />

hurtigt kan læses i et skema.<br />

Der findes mange systemer som udnytter stemmebaseret <strong>interaktion</strong> som den eneste<br />

modalitet, og eksempelvis via en telefon er det også eneste mulighed. Men er der en<br />

begrundet mulighed for at indføre multimodalitet, så har flere undersøgelser vist at<br />

brugerne faktisk foretrækker dette [McTear, 2004, s381]. Det er da også klart at<br />

kombineres styrker og svagheder ved forskellige modaliteter, kan en langt mere naturlig<br />

og robust <strong>interaktion</strong> med systemet opnås. Det ville selvfølgelig være originalt at lave et<br />

spil med tale som den eneste modalitet, men jeg er ikke sikker på at det ville være et sjovt<br />

spil, så jeg har valgt en multimodal tilgang til både input og output, hvormed jeg får det<br />

bedste fra alle verdener med. Igen er det dog noget jeg kommer nærmere ind på i<br />

projektets fjerde del om designprocessen. Her følger nu en opsummering på hele kapitlet<br />

om stemmebaseret <strong>interaktion</strong>.<br />

3.4 Opsummering<br />

Igennem kapitlet er stemmebaseret <strong>interaktion</strong> blevet belyst på flere måder, og<br />

indledende bestemt som hørende under det forskningsfelt der kaldes Natural Language<br />

Processing (NLP). Jeg har beskrevet hvordan et moderne talegenkendelsessystem<br />

fungerer ved at fortolke alle seks lag i en lingvistisk struktur, samt hvordan jeg har<br />

simplificeret dette ved at udnytte ældre teknikker til morfologisk genkendelse, uden at<br />

ødelægge mulighederne for den vigtige semantiske og pragmatisk genkendelse. Hvad<br />

angår talesyntese har jeg beskrevet fire forskellige muligheder, hvoraf de simpleste<br />

gengiver tale ved enten at efterligne frekvenserne i de foner naturligt sprog består af, eller<br />

ved simpelthen at afspille sammenklippede ord og sætninger. De mere avancerede<br />

muligheder for talesyntese klipper ord og sætninger ud i mindre stykker, analyserer og<br />

klassificerer dem fonologisk og anvender statiske metoder i sammensætningen af dem.<br />

Kapitlet blev afsluttet med at introducere hjernen bag stemmebaseret <strong>interaktion</strong>, den<br />

såkaldte dialogmanager, samt flere forskellige tilgange til designet af denne.<br />

Nu er tiden kommet til det sidste større kapitel i projektets teoretiske del.


4 Computerspil<br />

Sprog og en digitalisering heraf, udgør den første del af det teoretiske fundament<br />

systemet er designet på. Min forståelse for disse del er blevet udlagt i de foregående<br />

kapitler, og målet er nu at belyse den sidste del - computerspil, hvad de består af og hvad<br />

der gør dem attraktive for spillerne.<br />

I lang tid rasede en verbal krig mellem to lejre - de som mener computerspil bør defineres<br />

som historiefortælling (narratologerne), og de som mener computerspil bør defineres som<br />

leg (ludologerne). Det er som sådan ikke en krig der er slut, men heldigvis en krig mange<br />

har vendt ryggen [Ludologica, 31-08-2005 6 ]. Forskerne er begyndt at indse, hvad<br />

spillerne har været klar over i årevis - at historiefortælling og leg kan eksistere side om<br />

side. Det er også min opfattelse. Kodeordet er for mig selve oplevelsen af spillet, og den<br />

mener jeg primært afhænger af det enkelte individ - nøjagtig som meningsudledning for<br />

pragmatikerne er subjektivt. Nogle vil f.eks. finde spil med en stærk historiefortælling<br />

bedst, mens andre vil finde historien ubetydelig og i stedet blot nyde spillets mere<br />

legende elementer. Jeg mener kort fortalt, at spil kan opleves på utroligt mange måder,<br />

afhængig af individet der oplever dem. Det betyder ikke, at spil kan defineres som alt fra<br />

tidsfordriv til forskning, eller at alt fra krig til kærlighed er spil - det er stadig muligt at<br />

definere præcist hvad spil er, men selve oplevelsen er hovedsageligt afhængig af<br />

individet. Det betyder dog heller ikke, at oplevelsen er så afhængig af individet at alle<br />

forsøg på at skabe et godt spil er ligegyldige - der findes en række generelt gældende<br />

kvalitetskrav til et spil, som er uafhængige af individet der spiller og dets præferencer for<br />

særlige temaer, genrer eller hovedpersoner med store bryster. Mit mål i dette kapitel er at<br />

præsentere en generel og multifacetteret definition på computerspil, hvoraf en række<br />

evigtgyldige kvalitetskrav kan udledes.<br />

Min opfattelse vejer dog i en 5. semesters projektrapport ikke så meget som anerkendte<br />

teoretikeres, og erfarne praktikeres, hvorfor jeg selvfølgelig har studeret flere af dem for<br />

at skrive dette kapitel. Salen & Zimmerman har i 2004 udgivet bogen Rules of Play, der<br />

på kort tid er blevet en indflydelsesrig grundbog indenfor spilteori og -design (den<br />

anvendes blandt andet på AAU’s spiluddannelser), og den vil udgøre grundlaget for<br />

kapitlet. De deler min multifacetterede opfattelse af computerspil, og præsenterer i bogen<br />

mange forskellige teoretikeres og praktikeres synspunkter på de samme emner. Jeg har<br />

ikke behov for at diskutere eller belyse alle synspunkterne, så jeg vil fokuserer på Salen<br />

& Zimmermans sammenfatninger af dem, men vil naturligvis supplere med yderligere<br />

teori eller kritik hvor jeg finder det nødvendigt.<br />

Som Salen & Zimmerman vil jeg nu indlede det spilteoretiske kapitel med en<br />

grundlæggende definition. Mit mål er at opnå en forståelse for hvad spil er, for<br />

derigennem teoretisk at kunne beskrive og analysere de elementer mit eget spil består af.<br />

6 http://konzack.blogspot.com/<br />

35


4.1 Meningsfuld leg<br />

Helt grundlæggende indeholder spil en form for leg 7 [Salen & Zimmerman, 2004, s83].<br />

Det er derfor givtigt at tale om, hvad leg er. Det har hollandske Johann Huizinga, den vel<br />

nok største og mest indflydelsesrige forsker indenfor området, gjort i bogen Homo<br />

Ludens [Huizinga, 1949]. Her beskriver han, meget kort fortalt, leg som en betydelig og<br />

meningsfuld aktivitet. Forstået som at udøverne tillægger legens handlinger mening, og at<br />

legen har en umiddelbar indflydelse på deres liv og behov, hvorfor den også er betydelig<br />

for dem. Salen & Zimmerman finder i denne definition af leg den grundlæggende kvalitet<br />

ved ethvert spil:<br />

36<br />

<strong>The</strong> goal of successful game design is the creation of meaningful play<br />

[Salen & Zimmerman, 2004, s33]<br />

Altså er målet med ethvert spil, at spillerne oplever mening med den leg der dannes når<br />

det spilles. Ganske som mening er målet med en samtale i naturligt sprog. Meningsfuld<br />

leg dannes dog ikke blot af spillet selv, men gennem spillernes <strong>interaktion</strong> med det system<br />

der beskriver spillet, og den kontekst spillet spilles i [Salen & Zimmerman, 2004, s33].<br />

Igen er der tydelige paralleller til lingvistikken, hvor pragmatikken også beskriver,<br />

hvordan mening afhænger af konteksten. Det udsagn antyder desuden, at spil består af et<br />

system der begrænser spillernes <strong>interaktion</strong>smuligheder, eller deres valg og handlinger.<br />

Dermed kan det udledes, at den meningsfulde leg reelt opstår i forbindelsen mellem<br />

spillerhandling og systemets reaktion herpå.<br />

For at designe eller analysere et spil, der kan danne meningsfuld leg, er det dog også<br />

nødvendigt at evaluerer forbindelsen mellem spillerhandling systemreaktion - altså at<br />

finde frem til hvornår meningsfuld leg vil opstå, og ikke blot hvor den vil opstå. Salen &<br />

Zimmerman skriver, at meningsfuld leg opstår, når forbindelsen mellem spillerhandling<br />

og systemreaktion er synlig, samtidig med at den er integreret i hele spillets kontekst<br />

[Salen & Zimmerman, 2004, s34].<br />

• Synlighed handler løst defineret om de grundlæggende HCI-begreber,<br />

som vi på tidligere semestre er blevet undervist i. Jeg vil ikke gentage<br />

teori her, men det grundlæggende er at brugeren / spilleren skal forstå<br />

reaktionen på en udført handling. Uden synlighed kunne spilleren trykke<br />

tilfældigt på maskinens knapper og opnå tilfældige reaktioner, hvormed<br />

meningsfuld leg aldrig ville opstå. Det kan også forklares med de<br />

semiotiske begreber jeg introducerede tilbage i afsnit 2.1.5.1 om<br />

semiotik. Ses spillets kommunikation med spilleren som tegn, så vil<br />

disse tegn bestå af ikoner, index’er og symboler. Ikoner (enten grafiske<br />

eller auditive) vil være oplagte, hvis spilleren skal have en klar og<br />

tydelig reaktion der ikke kan overses, mens et index vil være oplagt i<br />

situationer, hvor det ønskes, at spilleren selv gør en indsats for at finde<br />

7 Det kan også diskuteres om det forholder sig omvendt - at leg indeholder spil, hvad Salen & Zimmerman<br />

også gør. Jeg mener dog ikke det er diskussion der bidrager praktisk til mit projekt, og undlader derfor at<br />

deltage i den.


tegnet. Hvis spilleren eksempelvis søgte ild, ville røg være det index hun<br />

skulle lede efter. Anvendelsen af symboler vil være mere problematisk,<br />

da deres mening som nævnt tidligere er konventionelt vedtagne, og<br />

derfor har risiko for ikke at betyde det samme i alle kulturer. Et<br />

eksempel kunne være at antage, at spillerne kender til de engelske<br />

symboler for forskellige stjernetegn - det har jeg oplevet på egen krop i<br />

Dark Chronicle (Sony, 2002).<br />

• Integration i en større kontekst handler om det jeg i mine<br />

spilanmeldelser plejer at kalde dybde. En handling skal ikke blot have en<br />

synlig reaktion, men der skal også på længere sigt være betydelig<br />

indvirkning på forholdet mellem spillerhandling og systemreaktion. I<br />

fodbold kan en hård tackling få den umiddelbare reaktion at et mål til<br />

modstanderne forhindres, mens det røde kort tacklingen koster på<br />

længere sigt kan betyde, at resten af holdet må arbejde hårdere. I skak<br />

påvirker åbningen på spillet forløbet af spillet og de muligheder spilleren<br />

står tilbage med til sidst. Det er sådanne forhold der giver et spil dybde<br />

eller, med Salen & Zimmermans ord, sikrer at forholdet mellem<br />

spillerhandling og systemreaktion er integreret i hele spillets kontekst.<br />

Hvor synlighed fortæller spilleren, hvad handlingen resulterede i, så<br />

fortæller integrationen, hvordan den vil påvirke resten af spillet [Salen &<br />

Zimmerman, 2003, s35]. Hver eneste handling en spiller tager, skal altså<br />

have indflydelse på den samlede spiloplevelse. Semantikken vil her tale<br />

om referencer. En handling skal medføre, at der efter en handling er<br />

udført, og på et senere tidspunkt i spillet, opstår referencer tilbage til<br />

denne handling.<br />

For at supplere Salen & Zimmerman’s definition af meningsfuld leg, og hvordan dette<br />

dannes i et spil, vil jeg citere spildesigner Sid Meyer - hovedansvarlig for store klassikere<br />

som Civilization [MicroProse, 1991] og Pirates! [MicroProse, 1987]:<br />

A game is a series of interesting choices<br />

[Rollings & Morris, 2003, s68]<br />

Når Salen & Zimmerman taler om integration, så taler de om, at handlinger skal påvirke<br />

fremtidige systemreaktioner. Sid Meyer siger, at disse handlinger (et valg er også en<br />

handling), tilmed skal være interessante - forstået som at de for spillerne skal have både<br />

negativ og positiv indvirkning på den umiddelbare og/eller fremtidige systemreaktion.<br />

Spillerne bør skulle vurdere konsekvensen ved en handling, hvormed enhver handling<br />

bliver et valg, hvad jeg også senere vil argumentere for er tilfældet i et spil. Om Sid<br />

Meyer mener, at der ikke er tale om et spil hvis valgene ikke er interessante er uvist, men<br />

det er givet, at han mener, at interessante handlinger er et kvalitetskriterium.<br />

Fra dette afsnit kan jeg udlede tre kvalitetskrav, som jeg i mit spil skal søge at opfylde for<br />

at det kan danne meningsfuld leg:<br />

37


38<br />

• Synlighed, at enhver handling afføder en tydelig og umiddelbar reaktion.<br />

• Integration, at enhver handling påvirker den samlede spiloplevelse på<br />

lang sigt.<br />

• Interessante handlinger, at enhver handling har en negativ og positiv<br />

konsekvens.<br />

I de næste tre afsnit vil jeg se på de tre generelle koncepter; design, systemer og<br />

interaktivitet, der til sammen gør det muligt for designeren at konstruere meningsfuld leg<br />

i et spil.<br />

4.2 <strong>Design</strong><br />

<strong>Design</strong> er et ord der kan defineres på mange måder, og som heraf har fået mange<br />

betydninger [Dictionary.com, <strong>Design</strong>] [Ordbogen.com, <strong>Design</strong>]. <strong>Design</strong> kan f.eks. være<br />

en idé, en praksis, en proces, et produkt eller endda en tilstand. Brugbare definitioner kan<br />

konstrueres ud fra alle betydninger, men jeg mener, det vil være mest givtigt at tillægge<br />

design én betydning, og være konsekvent i anvendelsen af den igennem rapporten. Jeg vil<br />

grundlæggende helst se design som en proces der resulterer i et produkt (til dels motiveret<br />

af positive erfaringer fra sidste semesters metode, hvad jeg også kort vil belyse i næste<br />

kapitel), og faktisk minder den opfattelse meget om Salen & Zimmermans definition:<br />

<strong>Design</strong> is the process by which a designer creates a context to be encountered by a<br />

participant, from which meaning emerges.<br />

[Salen & Zimmerman, 2004, s41]<br />

Deres definition er dannet ved at kombinere otte andre (betydeligt længere og dybere)<br />

definitioner, som jeg ikke vil komme nærmere ind på her, og de definerer altså design<br />

som den proces hvorigennem en designer skaber en kontekst. Målet med konteksten er at<br />

skabe mening i mødet med en deltager. Drejes definitionen over på spildesign, finder vi i<br />

definitionen følgende centrale elementer [Salen & Zimmerman, 2004, s41]:<br />

• <strong>Design</strong>eren der er individet, gruppen eller kulturen som skaber spillet.<br />

• Konteksten som er spillets kontekst bestående af rum, objekter,<br />

fortællinger og handlemåder.<br />

• Deltagerne der er spillerne som manipulerer, udforsker og bebor<br />

konteksten.<br />

• Mening er det begreb jeg i sidste afsnit kaldte meningsfuld leg (i<br />

spilmæssig kontekst), og som dannes i forbindelsen mellem<br />

spillerhandling og systemreaktion.<br />

<strong>Design</strong> er altså at skabe en meningsdannende kontekst, og jeg mener at det kan heraf<br />

være givtigt igen at se på semiotikken. Med semiotikken kan det som nævnt forklares<br />

hvordan tegn danner mening, og deraf kan et system af tegn der kan danne mening<br />

skabes, hvad der jo netop er målet med spildesign. Alle spil kan ses som systemer af tegn<br />

- krydset i kryds og bolle symboliserer at et felt er erobret af spilleren der har krydset som<br />

sit tegn, i modsætning til spilleren der har bollen som sit tegn.


Vi er symbolbeherskende væsner, og har meget let ved at lære betydningen af tegn 8 ,<br />

hvorfor det er vigtigt at overveje brugen af tegn i et spil og sørge for at den er<br />

konsekvent. For at opnå synlighed er det naturligt at give spilleren informationerne via<br />

tegn, og de tegntyper der blev defineret i afsnit 2.1.5.1 kan passende inddrages nu. Er en<br />

karakter blevet skudt, vil det være naturligt, at vise det med et indeks der i konteksten<br />

symboliserer netop dette - altså blod. Et index kan også bruges til at give spilleren mindre<br />

tydelige hints - et fodspor i sneen kunne betyde, at nogen har passeret forbi for nylig.<br />

Ikoner, der var tegn med direkte relation til deres repræsentation (deres signified), kan<br />

bruges når spilleren skal have klar besked. Eksempelvis vil det være nyttigt med ikoner<br />

der direkte afbilleder de handlinger spilleren kan udføre. Symboler mener jeg derimod<br />

designeren bør være mere varsom med at anvende, da det stiller krav til ens viden om<br />

spillets målgruppe. Symboler er konventionelt vedtagne, men der er ingen garanti for at<br />

alle spillerne kender konventionerne - det er f.eks. heller ikke alle der kan læse (har et<br />

godt kendskab til de symboler vi kalder bogstaver). I spillets egen kontekst kan nye<br />

symboler naturligvis godt vedtages, men her bør det undersøges om det er et kendt<br />

symbol der har andre betydninger, og om disse bryder med den mening det skal danne i<br />

spillet. Semiotikken er altså et væsentligt teoretisk felt også indenfor spiludvikling, og<br />

bør under designet altid tages i betragtning. Efter denne korte afstikker til semiotikken,<br />

vil jeg nu fortsætte med at karakterisere design.<br />

En definition på design der ligner Salen & Zimmerman’s, men som kan bidrage med<br />

noget jeg selv vægter højt i et spil, nemlig originalitet, findes i Donald Norman’s bog<br />

<strong>Design</strong> of Everyday Things [Norman, 1990]:<br />

<strong>Design</strong> is the successive application of constraints until only a unique product is left<br />

[Norman, 1990, s158]<br />

Igen er design en proces, men det interessante er, at det resulterende produkt nu skal være<br />

unikt - noget nyt, originalt eller innovativt. Kombineres denne definition med Salen &<br />

Zimmerman’s, så ses det at mening kun dannes, hvis konteksten hvoraf den skal<br />

udspringe er original.<br />

Originalitet er en kvalitet der af mange vægtes meget højt i et spil [Costikyan, 2005]<br />

[Spector, 2003] [Crawford, 2003, k7], og et emne jeg på sidste semester skrev et essay<br />

om i forbindelse med kurset i systemudviklingsfilosofi [Marcus Larsen, 2005] 9 . Deri<br />

argumenterer jeg for, hvorfor originalitet er vigtigt i spil, og hvorfor den nuværende<br />

mangel på netop dette kan medfører stagnation eller tilbagegang for hele spilindustrien.<br />

Jeg vil ikke gentage hele argumentationen her, men min konklusion, tilsat begreberne<br />

anvendt i denne rapport, er at erfarne spillere ikke længere vil kunne finde meningsfuld<br />

leg i nye spil, hvis de blot er gentagelser af eksisterende spil. Dermed tillægger jeg<br />

originalitet betydning for meningsfuld leg og for spillets kvalitet, hvad der givetvis kun<br />

vil være gældende for spillere der har spillet sammenlignelige spil - noget kan altså godt<br />

8 Min søn på 1½ år ved f.eks. allerede, at økologimærket betyder god mad, at Fætter BR-logoet betyder<br />

legetøj og at Hjem Is-logoet betyder den blå bil der ringer med klokken nede i gården.<br />

9 I øvrigt valgt som et af de 10 bedste essays på daværende semester…<br />

39


virke originalt, selvom det reelt ikke er det. Det tilfører definitionen subjektivitet, hvad<br />

jeg dog ikke mener, er problematisk, da min grundholdning, som beskrevet i starten af<br />

afsnittet, er at spiloplevelsen afhænger af individet. Det vil eksempelvis være muligt, at<br />

udvikle et spil til yngre spillere som for dem virker originalt, selvom det kopierer<br />

konteksten fra spil udviklet før de blev født.<br />

Opsummeret er min definition af design dermed, at det er en proces der har som mål at<br />

skabe en unik kontekst hvoraf mening kan udspringe. Til listen af de kvalitetskrav der<br />

skal kunne udledes af dette kapitel kan jeg dermed tilføje:<br />

40<br />

• Originalitet, at spillet indeholder en original kontekst.<br />

Hvordan det gribes an, at skabe en unik kontekst, vil jeg senere se på i kapitlet der<br />

beskriver de metoder jeg har anvendt. Her er målet først at definerer den kontekst jeg som<br />

spildesigner skal skabe - nemlig hvad systemet der afgrænser legen består af.<br />

4.3 Systemer<br />

Spil er i sig selv systematiske, og kan deraf forstås som systemer [Salen & Zimmerman,<br />

2004, s50]. Denne påstand kræver en definition på hvad et system er, hvad Salen &<br />

Zimmerman også leverer:<br />

A system is a set of parts that interrelate to form a complex whole<br />

[Salen & Zimmerman, 2004, s55]<br />

Det sæt af dele der nævnes i definition tager de fra Stephen W. Littlejohn, som i bogen<br />

<strong>The</strong>ories of human communication beskriver et system som bestående af følgende<br />

[Littlejohn, 1999, s41]:<br />

• Objekter, der er elementer eller variable i systemet. De kan være fysiske<br />

såvel som abstrakte, afhængigt af systemet.<br />

• Attributter, der er egenskaberne ved systemet og dets objekter.<br />

• Interne relationer, der beskriver sammenhængen mellem objekterne.<br />

• Miljø, som er de omgivelser systemet eksisterer i.<br />

Hvor det nu bliver kompliceret, er i måden delene anskues. Det er muligt at se delene<br />

som et rent formelt matematisk regelsæt, hvor objekterne f.eks. kunne være brikkerne i<br />

skak, attributterne er brikkernes startpositioner og tilladte bevægelsesmønstre, de interne<br />

relationer er brikkernes aktuelle positioner på pladen og hvordan de truer hverandre,<br />

mens miljøet er den leg spillet danner [Salen & Zimmerman, 2004, s51]. Tilsætter jeg<br />

begreber fra kapitlet sprog, er dette et syntaktisk syn på systemer. Det er den åbenlyse og<br />

grundlæggende definition på et system i form af et spil, men Salen & Zimmerman mener<br />

at et spil består af tre systemer.<br />

Det næste, som ligger ovenpå førnævnte, ses når delene belyses fra et erfaringsmæssigt<br />

synspunkt, hvor det centrale ikke længere er det matematiske og logiske, men i stedet


<strong>interaktion</strong>en mellem spillerne og spillet. Det betyder, at i tilfældet skak, er objekterne nu<br />

spillerne selv, mens attributterne er brikkerne de kontrollerer. De interne relationer er<br />

spillernes <strong>interaktion</strong>er med spillet og hinanden, og miljøet er alle de umiddelbare<br />

fysiske, psykologiske og kulturelle omgivelser der afgrænser spillet som f.eks. bordet de<br />

sidder ved og deres mening om skak [Salen & Zimmerman, 2004, s51]. Tilsættes igen<br />

begreber fra kapitlet sprog, er dette et semantisk syn på systemer.<br />

Det sidste system ses hvis delene opfattes som et kulturelt system, hvor referencer eller<br />

forbindelser til historien, subkulturer eller andre medier belyses. I skak vil objekterne da<br />

være spillet selv, attributterne vil være spillets dele og informationer om hvornår og<br />

hvordan de er designet. De interne relationer beskriver hvorfor de er designet som de er -<br />

har styrkeforholdet mellem konge og dronning rod i historien, og ses den i brikkernes<br />

udformning, eller kan forholdet mellem sort og hvid forklares med referencer til race<br />

opfattelsen da spillet oprindeligt blev designet. Miljøet er hverken det enkelte spil skak<br />

eller hvad der omgiver dette, men i stedet hele kulturen hvori spillet eksisterer [Salen &<br />

Zimmerman, 2004, s52]. Tilsætter jeg endnu engang begreber fra kapitlet sprog, er dette<br />

et pragmatisk syn på systemer.<br />

Disse tre systemer eksisterer i ethvert spil, og kan bruges som udgangspunkt for både<br />

designet af et nyt spil og analysen af et eksisterende. Det jeg finder interessant ved denne<br />

opdeling, er at den på en overskuelig måde adskiller det der i praksis let flyder sammen<br />

og bliver uhåndterbart. Det gør det muligt, at fokusere en analyse eller designproces på<br />

bestemte facetter af spillet - tilmed på et teoretisk grundlag. Endnu mere interessant er det<br />

at semestrets hovedemne sprog, faktisk er så tæt forbundet med spilteorien som den<br />

ifølge Salen & Zimmerman ser ud. Et spil minder i høj grad om en lingvistisk struktur, i<br />

det den også kan beskrives både syntaktisk, semantisk og pragmatisk. Lidt mere påtaget<br />

kan de andre dele af en lingvistisk struktur, fonetik, fonologi og morfologi, også overføres<br />

til det system der beskriver et spil - fonerne vil være objekterne, fonemerne vil være<br />

attributterne og morfologiske regler ville kunne sidestilles med de interne relationer. Det<br />

vil dog kræve en længere diskussion hvis jeg skulle argumentere for at det forholder sig<br />

sådan, hvorfor jeg undlader at arbejde videre med denne observation.<br />

Fra dette afsnit kan jeg ikke tage deciderede kvalitetskrav, men til gengæld er nogle af de<br />

faktiske dele der skal designes blevet konkretiseret i form af objekter, attributter, interne<br />

relationer og miljø. Disse ting adskiller sig som sådan ikke fra alle mulige andre<br />

systemer, hvorfor jeg i næste afsnit vil se på det som for alvor gør spil til særlige<br />

systemer - interaktiviteten - den direkte deltagelse i legen som systemet afgrænser.<br />

4.4 Interaktivitet<br />

Som design er interaktivitet et begreb der findes mange definitioner på, og det er da også<br />

hvad Salen & Zimmerman indledningsvis studerer [Salen & Zimmerman, 2004, s58].<br />

Resultatet af deres studier er ikke én, men fire definitioner på interaktivitet, der på fire<br />

niveauer forklarer, hvordan begrebet omhandler den aktive deltagelse i et system. Den for<br />

dette projekt mest interessante form for interaktivitet, er denne:<br />

41


42<br />

3: Explicit interactivity; or participation with designed choices and procedures<br />

[Salen & Zimmerman, 2004, s60]<br />

At det er denne definition der er interessant her, skyldes at det er netop den form for<br />

interaktivitet som designeren har betydelig indflydelse på, og den som i højeste grad<br />

skaber den meningsfulde leg [Salen & Zimmerman, 2004, s60]. Definitionen indebærer at<br />

interaktivitet omhandler designede valg, hvorfor valg bliver designeres vigtigste værktøj<br />

når et interaktivt system skal skabes. Valg er det som gør spil interaktive, og det er i<br />

konstruktionen af disse valg, at designeren har mulighed for at skabe et system der kan<br />

medføre meningsfuld leg - hvad der jo, som nævnt tidligere, er målet med spildesign. Et<br />

synspunkt der blandt andet støttes af Tynan Sylvester der i Gamasutra-artiklen Decisionbased<br />

<strong>Game</strong>play <strong>Design</strong> [Sylvester, 2005] leverer en række praktiske anvisninger i<br />

forbindelse med konstruktionen af det også han betragter som den fundamentale<br />

byggesten et spil skabes med - nemlig valg. Også Sid Meyer-citatet fra tidligere omtaler<br />

valg som det grundlæggende element i et spil.<br />

Derfor må det defineres, hvad et valg er, og hvordan de konstrueres i et spil.<br />

Grundlæggende kan der tales om valg på mikro- og makroniveau, hvor mikroniveauet er<br />

de øjeblikkelige valg en spiller konstant må træffe, mens makroniveauet repræsenterer en<br />

sammensætning af mikroniveauvalg set i grove træk [Salen & Zimmerman, 2004, s61]. I<br />

fodbold er trænerens overordnede strategi for en kamp, f.eks. spillernes formation, et<br />

makroniveauvalg, mens den løbende justering der foretages af både træner og spillere i<br />

måden der spilles på, altså taktikken, er mikroniveauvalg.<br />

Salen & Zimmerman tager derefter denne definition af et valg og beskriver hvordan den<br />

repræsenteres i et spil, sådan at meningsfuld leg kan dannes. Resultatet er fem spørgsmål<br />

der skal kunne besvares af designeren, og som når besvarelsen er god beskriver et valg<br />

der danner meningsfuld leg [Salen & Zimmerman, 2004, s65]:<br />

1. Hvad skete der før spilleren fik valget?<br />

2. Hvordan vises muligheden for valg til spilleren?<br />

3. Hvordan udfører spilleren valget?<br />

4. Hvad er resultatet af valget, og hvordan påvirker det fremtidige valg?<br />

5. Hvordan vises resultatet til spilleren?<br />

Ved at besvare disse spørgsmål kan designeren altså konstruere valg der kan danne<br />

meningsfuld leg. Om hvornår en besvarelse er god, siger Salen & Zimmerman, at det<br />

aldrig kan vides med sikkerhed [Salen & Zimmerman, 2004, s67]. Et svar der<br />

umiddelbart virker utilfredsstillende, men som indregnet mine ord i starten af kapitlet, om<br />

hvordan individet er afgørende for oplevelsen, alligevel siger alt. <strong>Design</strong>eren kan ikke<br />

garantere meningsfuld leg for enhver, men ved at konstruere valgene så de har potentialet<br />

til at danne meningsfuld leg, det vil sige ved at have synlighed, integration og<br />

interessante handlinger for øje, samt ved at besvare førnævnte spørgsmål, vil chancen<br />

være større. Et synspunkt der støttes af Tynan Sylvester, som beskriver de bedste valg<br />

som dem der er svære at træffe (det vil sige interessante valg), og dem der har de største<br />

og mest håndgribelige resultater (det vil sige synlige valg) [Sylvester, 2005].


Det er også interessant at se, hvordan interaktivitet faktisk beskrives som en<br />

tilstandsmaskine der konstant modtager og behandler valg (ændrer tilstand), og konstant<br />

informerer spilleren om sin tilstand. Medtages systemet fra sidste afsnit, vil spillet udgøre<br />

en tilstandsmaskine, der består af synlige valg, og synlige konsekvenser af valg. Det<br />

perspektiv giver en nærmest matematisk model at opstille interaktiviteten efter, og<br />

antyder at alle delene i et system bør repræsentere et valg i en eller anden form - et objekt<br />

kunne f.eks. være resultatet af et valg eller det som valget omhandler, en attribut kunne<br />

have indflydelse på valgets udfald og de interne relationer ville beskrive, hvordan et valg<br />

påvirker et andet. Det er min måde at binde system og interaktivitet sammen - alt bør<br />

have forbindelse til et valg, ellers har det ingen relevans for spillet. Tynan Sylvester har<br />

hertil en vigtig pointe - systemet skal helst danne valgene dynamisk ud fra spillerens<br />

handlinger, og dermed altså ikke indeholde mange statiske eller forudbestemte valg<br />

[Sylvester, 2005]. Som jeg ser det, er den helt store udfordring under designet af et spil,<br />

altså konstruktionen af et system der dynamisk generer interessante og integrerede valg<br />

med synlige reaktioner. En særdeles kompleks tilstandsmaskine.<br />

Salen & Zimmerman beskriver et spil som et mulighedsrum eksisterende i det system af<br />

valg som designeren har skabt [Salen & Zimmerman, 2004, s67], hvad der vel er en slags<br />

filosofisk udgave af ovenstående tilstandsmaskine.<br />

Fra dette afsnit kan jeg tage en designpraksis - de fem spørgsmål, der kan hjælpe mig<br />

under designet af spillet. Ved hele tiden at have dem for øje, samt ved at overveje<br />

tidligere beskrevne synlighed, integration og interessante handlinger, kan jeg konstruere<br />

valg der kan danne meningsfuld leg. Jeg har også beskrevet, hvordan det at se<br />

interaktivitet som en tilstandsmaskine, og at overføre dette på systemet fra sidste afsnit,<br />

kan gøre at et system gennemsyres af interaktivitet, fordi hver del af systemet har<br />

forbindelse til et valg, og fordi systemet dynamisk skal konstruere valg.<br />

Begreberne design, system og interaktivitet har nu leveret forståelsen for, hvordan den<br />

meningsfulde leg opstår og designes i et spil, hvormed det grundlæggende spilteoretiske<br />

grundlag for projektet beskrevet. Denne begrebsramme har indgået konkret i udviklingen<br />

af spillet, hvor jeg eksempelvis under designet fokusere på spillet som et syntaktisk<br />

system, og hele tiden overvejer hvordan dets interaktivitet skal muliggøre meningsfuld<br />

leg.<br />

Her vil jeg nu nuancere teorien en smule i forhold til mit konkrete projekt.<br />

4.5 Håndholdte computerspil<br />

Selvom Salen & Zimmerman skriver, at deres teori er uafhængig af platform, så mener<br />

jeg alligevel det er relevant at se på hvilke konkrete forskelle der er, eller bør være, på<br />

computerspil til en stationær platform, som eksempelvis en pc eller Playstation, og<br />

computerspil til en håndholdt platform som Nintendo DS - den platform spillet i dette<br />

projekt er udviklet til.<br />

43


En af de udviklere som har støttet maskinen siden den er udkom er Vicarious Visions. I et<br />

interview med Gamasutra-skribent Brandon Sheffield [Sheffield, 2005] udtaler deres<br />

præsident:<br />

To design a game for the DS is, by and large, to design a DS exclusive title. Given the<br />

system's unique capabilities, any game that takes advantage of the hardware is bound to<br />

it by default.<br />

Karthik Bala, 2005<br />

Det er en vigtig pointe. Udvikles et spil til Nintendo DS, så er det ikke let på et senere<br />

tidspunkt at konvertere det til en anden platform. Maskinen har simpelthen så mange<br />

særheder, at det ville være bedre at lave et helt nyt spil. Det samme gælder selvfølgelig<br />

den anden vej - et spil lavet til en traditionel platform vil måske nok kunne konverteres til<br />

Nintendo DS, men det vil ikke udnytte maskinens spændende features, hvorfor det næppe<br />

kan retfærdiggøres. Det spil jeg udvikler, vil derfor ikke blot have Nintendo DS som en<br />

mulig platform, men som den eneste platform.<br />

Hvad angår håndholdte computerspil generelt, så der flere ting som har kendetegnet dem<br />

lige siden de første ”bib-bib-spil” så dagens lys, men desværre er der ikke skrevet meget<br />

om det, hvorfor følgende er mine egne observationer. For det første spilles de mens<br />

spilleren er på farten, hvorfor omgivelserne i høj grad er skiftende og evt. forstyrrende<br />

under spillet. Der bør altså tages hensyn til miljømæssige forhold (semantisk syn på<br />

systemet) i højere grad end i almindelige computerspil. Et eksempel på dette er at der bør<br />

være mulighed for at sætte spillet på pause, eller, endnu bedre, mulighed for at afbryde<br />

spillet hvor som helst og når som helst. Det betyder samtidig, at spillet skal levere den<br />

meningsfulde leg med det samme, og at det skal gøre det lige godt under korte<br />

spilsessioner som når der spilles i længere tid. Jeg vil ikke fremlægge yderligere krav til<br />

håndholdte spil, da det uden teori om emnet blot bliver mine egne krav.<br />

Her følger en opsummering på hele kapitlet.<br />

4.6 Opsummering<br />

Kapitlets første afsnit udlagde den vigtigste kvalitet ved ethvert spil - dets evne til at<br />

danne meningsfuld leg. Det betyder, at spillerne oplever det at spille som en meningsfuld<br />

eller betydelig aktivitet, og det blev samtidig beskrevet at meningen opstår i kontakten<br />

mellem spillerhandling og systemreaktion - altså i <strong>interaktion</strong>en, hvor også pragmatiske<br />

forhold som spillerens holdning til det at spille, og selve konteksten der spilles i har en<br />

betydning.<br />

Igennem kapitlet har et studie af de tre begreber: design, system og interaktivitet, ledt<br />

frem til række kvalitetskrav, som et spil skal opfylde for at danne den meningsfulde leg:<br />

44<br />

• Synlighed, at enhver handling afføder en tydelig og umiddelbar reaktion.<br />

• Integration, at enhver handling påvirker den samlede spiloplevelse på<br />

lang sigt.


• Interessante handlinger, at enhver handling har en negativ og positiv<br />

konsekvens.<br />

Hvad angår designbegrebet, så defineres det som: den proces hvorigennem en designer<br />

skaber en kontekst, der har som mål at skabe mening i mødet med en deltager. Et vigtigt<br />

værktøj i dannelsen af denne kontekst er semiotikken, der kan forklare hvordan tegn<br />

skaber mening. Jeg beskrev også et vigtigt træk ved resultatet af designet:<br />

• Originalitet, at spillet indeholder en original kontekst.<br />

Senere (se kapitel 8) introducerer jeg forskellige innovationsteknikker der kan hjælpe til<br />

med løsningen af dette kvalitetskrav.<br />

I afsnit 4.3 beskrev jeg spillet som et system der kan anskues fra (mindst) tre perspektiver<br />

- det syntaktiske (formelle ifølge Salen & Zimmerman) hvor systemet er et formelt<br />

regelsæt, det semantiske (eksperientelle ifølge Salen & Zimmerman) hvor systemet er<br />

<strong>interaktion</strong>en mellem spil og spillere, og det pragmatiske (kulturelle ifølge Salen &<br />

Zimmerman) hvor systemet er en kulturel konstruktion. Når et spil designes, bør alle tre<br />

perspektiver overvejes - herunder især de interne relationerne mellem systemets objekter.<br />

Det sidste begreb der har stor betydning for den meningsfulde leg er interaktivitet -<br />

herunder især eksplicit interaktivitet som er de af designeren skabte valg. Valg er det som<br />

gør spil interaktive, og det er i konstruktionen af disse valg, at designeren har mulighed<br />

for at skabe et system der kan medføre meningsfuld leg. Seks spørgsmål bør stilles i<br />

forbindelse med designet af et valg:<br />

1. Hvad skete der før spilleren fik valget?<br />

2. Hvordan vises muligheden for valg til spilleren?<br />

3. Hvordan udfører spilleren valget?<br />

4. Hvad er resultatet af valget, og hvordan påvirker det fremtidige valg?<br />

5. Hvordan vises resultatet til spilleren?<br />

Kan der svares på disse spørgsmål, og opfylder svarene kravene om synlighed og<br />

integration, vil muligheden for skabelsen af meningsfuld leg i den <strong>interaktion</strong> som<br />

valgene former (eller i spillets mulighedsrum) være større.<br />

Slutteligt præsenterede jeg en række krav til håndholdte computerspil:<br />

• Spil til Nintendo DS er låst til platformen (hvis dens særheder udnyttes).<br />

• Spillerens omgivelser er skiftende, hvorfor hensynstagen til miljøet er<br />

vigtigt.<br />

• Spillet bør kunne levere meningsfuld leg over selv meget korte<br />

spilsessioner.<br />

Med dette er projektets teoretiske fundament lagt, og det er tid til en delkonklusion.<br />

45


5 Teoretisk delkonklusion<br />

I projektets første kapitel opstillede jeg en række delproblemer der alle skulle løses på<br />

vejen mod besvarelses af projektets problemstilling, der lyder sådan her:<br />

46<br />

• Hvordan designes et computerspil der har stemmebaseret <strong>interaktion</strong><br />

som en primær <strong>interaktion</strong>sform, sådan at dette samtidig udgør den<br />

optimale <strong>interaktion</strong>sform uden at synliggøre de tekniske svagheder?<br />

En egentlig besvarelse af dette vil jeg først give efter det mere praktiske arbejde er<br />

beskrevet, men projektets første delproblem kan der allerede nu kastes lys over:<br />

• Hvad er stemmebaseret <strong>interaktion</strong>?<br />

o Besvarelsen af dette spørgsmål skal belyse den teoretisk og<br />

praktiske side af stemmebaseret <strong>interaktion</strong>. Herunder hvordan<br />

sprog og tale kan defineres, samt hvordan det genskabes og<br />

genkendes digitalt i og af en computer.<br />

Sprog blev i kapitel 2 defineret som en lingvistisk struktur der kunne anskues fra seks<br />

forskellige perspektiver, nemlig det fonetiske, det fonologiske, det morfologiske, det<br />

syntaktiske, det semantiske og til sidst det pragmatiske perspektiv. Bag menneskets<br />

anvendelse af sproget findes en intuitiv og dybtgående forståelse for alle strukturens<br />

perspektiver eller lag, og det er denne forståelse der må genskabes digitalt, hvis naturlig<br />

stemmebaseret <strong>interaktion</strong> med en computer skal opnås. Igennem kapitel 2 og 3 har jeg<br />

fremlagt forskellige teknikker til håndtering af lagene, med fokus på de teknikker jeg selv<br />

anvender.<br />

Winograd & Flores’ conversation for action-model håndterer det pragmatiske lag, det<br />

semantiske lag håndteres af logiske udtryk, en grammatik i BNF håndterer det syntaktiske<br />

lag, dynamic time-warping håndterer det morfologiske lag, mens de fonetiske og<br />

fonologiske lag i min talegenkendelsesarkitektur ignoreres som meningsbærende lag, og<br />

kun anvendes i udvælgelsen af talekommandoer. Resultatet er en forståelse af hvad<br />

stemmebaseret <strong>interaktion</strong> er, og hvordan det anvendes og implementeres i praksis, som<br />

er anvendt under designet af det spil det har været målet at udvikle.<br />

Det næste delproblem jeg fremlagde, kan også belyses ud fra det teoretiske grundlag:<br />

• Hvordan designes et godt computerspil?<br />

o Besvarelsen af dette spørgsmål skal berøre den teoretiske del af<br />

computerspil, samt belyse den mere praktiske eller metodiske<br />

side af sagen. Herunder hvordan et teoretisk grundlag kan danne<br />

en begrebsmæssig ramme om en analyse af spil, samt hvordan<br />

samme teori kan anvendes praktisk i designprocessen.


I kapitel 4 introducerede jeg en række begreber der kan anvendes praktisk under design<br />

og analyse af computerspil. De vigtigste begreber var meningsfuld leg, design, systemer<br />

og interaktivitet. De udgør tilsammen et computerspils grundsten. Hertil opstillede jeg en<br />

række kvalitetskrav som et spil bør søge at opfylde for at grundstenene bliver stærke nok<br />

til at bære spillet:<br />

• Synlighed, at enhver handling afføder en tydelig og umiddelbar reaktion.<br />

• Integration, at enhver handling påvirker den samlede spiloplevelse på<br />

lang sigt.<br />

• Interessante handlinger, at enhver handling har en negativ og positiv<br />

konsekvens.<br />

• Originalitet, at spillet indeholder en original kontekst.<br />

Når disse ting er til stede i et spil, kan spillet beskrives som objektivt godt. For at styrke<br />

begrebsgrundlaget, og for at hjælpe med at sikre at førnævnte ting er at finde i spillet,<br />

definerede jeg desuden hvad et computerspil, set som et system, består af:<br />

• Objekter, der er elementer eller variable i systemet. De kan være fysiske<br />

såvel som abstrakte, afhængigt af systemet.<br />

• Attributter, der er egenskaberne ved systemet og dets objekter.<br />

• Interne relationer, der beskriver sammenhængen mellem objekterne.<br />

• Miljø, som er de omgivelser systemet eksisterer i.<br />

Det interessante er at disse kan belyses med de sproglige begreber fra kapitel 2. Spil kan<br />

ses i et syntaktisk, et semantisk eller et pragmatisk perspektiv, hvormed sprogteorien<br />

flettes ind i teorien om computerspil, og styrker dennes begreber. Syntaktisk vil et spils<br />

objekter eksempelvis være de konkrete genstande eller karakterer der er at finde i spillet,<br />

mens de semantisk ville være spillerne. Det er det syntaktiske syn på spil jeg primært vil<br />

beskæftige mig med igennem designet af systemet, mens det semantiske har stor<br />

betydning for systemets <strong>interaktion</strong>. Det pragmatiske syn bliver også anvendt, om end i<br />

mindre omfang.<br />

Skal jeg kort opsummere de vigtigste egenskaber ved et godt computerspil, må det blive<br />

følgende: Et godt computerspil skal dynamisk genererer interessante og integrerede valg<br />

med synlige reaktioner, sådan at spilleren oplever det som meningsfuld leg.<br />

De to andre delproblemer (se kapitel 1) kan ikke besvares af teorien bag projektet, men<br />

derimod af det metodiske grundlag. Det er emnet for projektets næste del.<br />

47


Del III<br />

METODE<br />

Since when has the world of computer software design been about what people want?<br />

Bill Gates<br />

Arbejdet med et studieprojekt er todelt. Der skal udvikles et system, og der skal skrives<br />

en rapport som dokumenterer de betydeligste aspekter omkring udviklingen.<br />

Teorien beskrevet i forrige kapitel er ét af de betydelige aspekter, da den er grundlaget for<br />

udviklerens forståelse af, hvordan systemet kan eller skal fungere. Et andet betydeligt<br />

aspekt er den plan eller metode der har styret udviklingen, og sikret at den førte til et<br />

produkt af høj kvalitet. I dette kapitel beskrives de forskellige metoder og teknikker der er<br />

blevet anvendt, modificeret og kombineret for at støtte udviklingen bedst muligt.<br />

På tidligere semestre er der blevet arbejdet meget med metoder, og de overvejelser der<br />

skal ligge til grund for eventuelle tilpasninger af dem. Dette semester har dog et større<br />

fokus på resultatet af udviklingen, end på selve metoden, hvorfor dette kapitel også er<br />

forholdsvis kort, og kun indeholder hvad jeg mener, det er essentielt for læseren at vide<br />

om min udviklingsstrategi. Særligt vil jeg fokusere på de enkelte teknikker i metoden, der<br />

beskæftiger sig med innovation og nytænkning, da det dels er et af semestrets<br />

grundlæggende emner og dels et vigtigt element i udviklingen af spil. Der er også et<br />

kapitel om, hvordan udviklingen af spil er anderledes end udviklingen af anden software,<br />

samt om hvordan udviklingen bedst organiseres, når jeg udvikler spillet ene mand.<br />

Indledningsvis kastes et hurtigt blik på nogle af de systemudviklingsmetoder og teknikker<br />

jeg har erfaring med fra tidligere semestre, og hvad der overordnet er taget med fra hver<br />

enkelt.<br />

49


6 Systemudvikling<br />

Systemudvikling er blevet beskrevet på mange måder, men to modsatrettede tilgange<br />

udgør i dag de mest udbredte definitioner. Den traditionelle tilgang, hvor planlægning,<br />

dokumentation, ledelse og en fast forudbestemt kontrakt mellem kunde og udvikler er<br />

essensen, og den agile tilgang hvor <strong>interaktion</strong>en mellem udvikler og kunde, samt evnen<br />

til hurtigt at reagere på ændrede krav vægtes højst.<br />

De traditionelle systemudviklingsmetoder omfatter flere forskellige procesmodeller<br />

[Pressman, 2000, k3], som f.eks. vandfaldsmodellen og spiralmodellen, og et utal af<br />

forskellige teknikker til at håndtere hvad der ses som de fire centrale discipliner: analyse,<br />

design, implementering og test. Eksempler på traditionelle teknikker er objekt orienteret<br />

analyse og design (OOA&D), Unified Modeling Language (UML) og valideringstests.<br />

De nyere agile systemudviklingsmetoder omfatter blandt andet eXtreme Programming,<br />

Scrum og Feature-Driven Development, hvor især førstnævnte har opnået stor<br />

udbredelse, mens selv enorme Microsoft har indført Scrum på flere større projekter<br />

[eWeek.com, 11-11-2005]. Her er de centrale discipliner ikke længere analyse, design,<br />

implementering og test, men derimod blot design og test. <strong>Design</strong> er dog blevet en proces<br />

hvorunder det der traditionelt kaldtes analyse, design og implementering udføres. Tilmed<br />

er test ikke blot noget der udføres efter implementering, men også før og under.<br />

Der er altså markant forskel på traditionel og agil systemudvikling, hvad der ses tydeligst<br />

på den figur jeg har lavet herunder. Den viser hvilket arbejde der forelægger indenfor de<br />

forskellige discipliner, og hvad resultatet af arbejdet er.<br />

Figur 7: Traditionel versus agil systemudvikling<br />

50


Som det fremgår så er udviklingsforløbet meget forskelligt alt efter hvilken tilgang der<br />

vælges. Det er dog umuligt at sige noget generelt om hvilken tilgang der bedst, og i<br />

praksis er det da også sjældent at én metode følges stringent uden tilpasning til<br />

situationen [Pressman, 2000, k2]. Derfor er det relevant at se på situationen (herunder<br />

ting som økonomi, mandskab, kultur osv.) hvorunder det konkrete system skal udvikles,<br />

og herudfra vælge hvordan det skal forløbe.<br />

6.1 <strong>Design</strong> af projektets systemudviklingsmetode<br />

Grundlaget for min sammensætning af udviklingsmetoder er overvejelser der dels<br />

involverer de erfaringer jeg har fra tidligere semestre, dels situationen hvorunder<br />

systemet skulle udvikles og ikke mindst hvilket system der skulle være processens<br />

resultat. Målet har primært været en let håndterbar proces, med plads til løbende<br />

tilpasning og som opfordrer til innovation. Her følger resultatet af overvejelserne, og<br />

dermed en kort beskrivelse af de teknikker og metoder der har dannet metodisk grundlag<br />

for udviklingen.<br />

• Den traditionelle systemudviklings kravspecifikation kan give systemet<br />

en god begyndelse, da der allerede fra det første design udføres<br />

foreligger et konkret mål. Det betyder, at de første skridt ikke bliver<br />

famlende og tilfældige, og dermed at mindre tid spildes. Dog<br />

umuliggøre et spils behov for innovation, at en fuldstændig<br />

kravspecifikation kan udarbejdes, hvorfor blot en liste over overordnede<br />

krav, samt en generel beskrivelse af systemet vil udgøre min<br />

kravspecifikation. Fra den traditionelle systemudvikling tager jeg også<br />

designdokumentet, dog vil det ikke være et komplet dokument inden<br />

implementeringen påbegyndes, men derimod noget der løbende<br />

udbygges. Det vælger jeg dels for altid at have et overblik over det<br />

eksisterende system, og dels for at bidrage til den dokumentation af<br />

forløbet som denne rapport skal indeholde.<br />

• Forrige semesters arbejde med eXtreme Programming (XP), har<br />

introduceret mig til en arbejdsform med mange fordele i forbindelse med<br />

udviklingen af computerspil, hvad jeg har ønsket at udnytte igen. Først<br />

og fremmest tilbyder den iterative udviklingsform mulighed for at skifte<br />

kurs undervejs, samt for at tage små og hurtige skridt, for dermed at<br />

mindske omkostningerne ved hvert enkelt [Beck, 1999, k5]. Jeg<br />

anvender også samme designbegreb som XP, og kan dermed beskrive<br />

mit spil som voksende frem igennem en designproces bestående af en<br />

lang række korte iterationer der både involverer idé-skabelse og -<br />

konkretisering, samt programmering og test. Salen & Zimmerman<br />

anbefaler i øvrigt også at designprocessen udføres iterativt [Salen &<br />

Zimmerman, 2004, s11], da det ifølge dem højner kreativiteten, tillader<br />

eksperimenter og har bedre chance for at føre til innovation.<br />

51


52<br />

• Fra OOA&D tager jeg den objektorienterede modellering af designet,<br />

beskrevet i UML, da dette kan hjælpe betydeligt under arbejdet med<br />

programmeringen. Dog vil det ikke bliver en formel og detaljeret brug af<br />

objektorienteret modellering, da den iterative arbejdsform umuliggør et<br />

detaljeret overblik over hvordan det færdige system ser ud. I stedet<br />

bliver kun de mest centrale dele af designet beskrevet i UML,<br />

efterhånden som de vokser frem af iterationerne. UML vil desuden blive<br />

brugt i denne rapport for at beskrive spillets tekniske opbygning uden<br />

brug af for meget konkret kode.<br />

• For at teste systemet tager jeg flere metoder i brug. I de første mange<br />

iterationer har jeg udelukkende valgt at bruge tekniske tests placeret i<br />

koden (kaldes ofte en whitebox test), for at sikre et stabilt system.<br />

Desuden udfører jeg løbende selv manuelle tests af systemets<br />

funktionalitet (kaldes ofte en blackbox test), for at sikre at det altid<br />

opfører sig som forventet i alle ekstremer. I den senere test af systemet<br />

og dets funktionalitet, har jeg dog involveret dets brugere. Dette er gjort<br />

via Internettet for at sikre et så lavt ressourcebrug som muligt. Konkret<br />

har det betydet, at jeg har inviteret en række spillere til at downloade og<br />

teste spillet, mens jeg løbende har forbedret det på baggrund af deres<br />

forslag og diskussioner. Det er en metode jeg har været med til at<br />

anvende tidligere, hvor resultatet var en betydelig forbedring af spillet i<br />

de perioder hvor spillerne testede.<br />

Jeg vil ikke gå mere i detaljer med metoderne, da læseren dels må antages at have et<br />

basalt kendskab til de fleste, og dels ikke har behov for at kende dem til bunds for at<br />

vurdere resultatet af udviklingen. Hertil er semestres fokus naturligvis heller ikke<br />

systemudviklingsmetoder og teknikker. Følgende figur beskriver overordnet hvordan<br />

forskellige systemudviklingsmetoder har indgået i min udviklingsproces.<br />

Figur 8: Min systemudviklingsmetode<br />

6.1.1 Prototyping<br />

På grund af det iterative i processen er resultatet en række gradvist større, bedre eller bare<br />

ændrede prototyper. Det kan derfor være interessant at introducere fire begreber der kan<br />

beskrive en prototype. Begreberne er taget fra bogen Paper Prototyping der er blevet


anvendt på semestrets Language Action Perspective (LAP) kursus, og de beskriver en<br />

prototype (ikke nødvendigvis af papir) i fire dimensioner [Snyder, 2003, s260]:<br />

• Breadth er den procentdel af systemets funktionalitet der er<br />

repræsenteret i prototypen. At en funktionalitet er repræsenteret betyder<br />

ikke, at den nødvendigvis fungerer, men blot at brugeren kan se, at den<br />

findes i systemet.<br />

• Depth er detaljegraden og robustheden i de enkelte funktioner. En<br />

prototype med meget depth er en prototype, hvor alle repræsenterede<br />

funktioner reagerer som de burde gøre i det færdige produkt, mens en<br />

prototype uden depth er en prototype uden funktionalitet.<br />

• Look er prototypens visuelle fremtoning, og hvor tæt denne er på det<br />

færdige system.<br />

• Interaction er prototypens evne til at håndtere brugerens in- og output.<br />

Faktorer som reaktionstid og fysisk feedback har også betydning her.<br />

En prototype kan så beskrives, ved at give den en karakter i hver af de fire dimensioner.<br />

Det er anvendeligt i forbindelse med en evaluering af hvor langt fremme i udviklingen<br />

systemet er, ligesom det kan sige noget om hvor stort udbyttet vil være ved en brugertest.<br />

En prototype med meget depth vil eksempelvis være god i en brugertest, mens det<br />

forholder sig omvendt, hvis der ingen depth er. Det er da også de to ting jeg har brugt de<br />

fire dimensioner til; altså til at vurdere hvor langt jeg er og om en brugertest vil være<br />

fordelagtig.<br />

6.2 Opsummering<br />

Kapitlet har været kort, så det bliver opsummeringen også. Jeg har kort belyst<br />

systemudvikling fra to perspektiver, det traditionelle og det agile, for derefter at<br />

konstruere den overordnede procesmodel der har dannet grundlag for udviklingen af mit<br />

spil. Denne procesmodel er i høj grad iterativ, den resulterer i en række prototyper og der<br />

indgår teknikker som UML (under modelleringen af designet), tests i form af<br />

funktionalitetstest og kodetests. Hertil kommer en simpel brugertest, så snart prototypen<br />

har tilstrækkelig implementeret funktionalitet (det der kaldes depth) da det vil give størst<br />

udbytte af testen.<br />

Udover de nævnte metoder, kommer brugen af metoder og teknikker jeg ikke tidligere<br />

har anvendt. Det drejer sig om de helt centrale innovations- og designstrategier der har<br />

udgjort en del af semestrets LAP-kursus. Hvordan disse involveres i processen vil jeg dog<br />

først beskrive, efter følgende kapitel omhandlende udvikling af computerspil, da<br />

innovationsstrategien netop er valgt med udviklingen af computerspil i tankerne.<br />

53


7 Udvikling af computerspil<br />

Udviklingen af computerspil kan overordnet set sammenlignes med udviklingen af alle<br />

andre systemer, og kan derfor struktureres som beskrevet i forrige afsnit - altså som al<br />

anden systemudvikling [Bethke, 2003, s4]. Under overfladen er der dog betydelige<br />

forskelle, der dels skyldes at de kvalitetskrav jeg opstillede i sidste kapitel som<br />

udgangspunkt skal opfyldes - systemet skal underholde, chokere eller udfordre, og<br />

samtidig stimulere vores lyst til leg og udforskning. Men også andre egenskaber gør, at<br />

udviklingen af computerspil adskiller sig. Ingen andre systemer har brug for en så stor<br />

mangfoldighed i designernes evner - selv de simpleste computerspil kræver, at designerne<br />

kan anvende følgende discipliner [Bethke, 2003, k5]:<br />

54<br />

• Grafisk arbejde, herunder skitser og omsætning af disse til 2d- eller 3dgrafik<br />

i produktionskvalitet, samt animation der levendegør skitserne.<br />

• Produktion af lyd, hvorunder der skal komponeres musik og optages<br />

lydeffekter.<br />

• Spildesign, hvad der reelt indebærer praktisk anvendelse af teorien fra<br />

sidste kapitel, i kategorier som banedesign, <strong>interaktion</strong>sdesign og<br />

historiefortælling.<br />

• Programmering, som skal binde det grafiske og lydmæssige arbejde<br />

sammen med spildesignet. Indebærer programmering af blandt andet<br />

grafik, lyd, <strong>interaktion</strong> og kunstig intelligens.<br />

Jeg vil ikke beskrive de enkelte discipliner, og hvad der kræves af dem indgående. Det<br />

der er vigtigt for dette projekt, hvor produktet er i fokus, er at sikre at designprocessen<br />

kan udføres på acceptabel vis.<br />

Da alle processens discipliner er vigtige, og da jeg har lavet projektet alene, må jeg selv<br />

stå for hver enkelt. Jeg vil ikke påstå, at jeg mestrer nogle af disciplinerne, men jeg har<br />

begrænsede evner indenfor dem alle 10 , hvad der har været nok til, at designprocessen har<br />

kunnet forløbe forholdsvis problemfrit. Hertil har det naturligvis heller ikke været et krav<br />

at spillet, efter projektets færdiggørelse, skulle udgøre et færdigt produkt, hvorfor<br />

elementer af mindre relevans for spillet har kunnet udlades i prototypen - eksempelvis<br />

musik (da dette ikke er så centralt i spillet, som det eksempelvis ville være i et musik eller<br />

rytmespil, kan det godt forsvares at kalde musikken for mindre relevant).<br />

At udvikle computerspil alene er nu heller ikke noget nyt. I sin spæde ungdom bestod<br />

spilindustrien hovedsageligt af kreative og talentfulde individer (hovedsageligt<br />

programmører), der udviklede spillene alene eller i meget små grupper. Det er en<br />

10 Fra flere semestre på multimedieanimatoruddannelsen, har jeg erfaring med hvordan både grafik og lyd<br />

laves. Fra flere tidligere projekter, både på universitetet og andre steder, har jeg erfaring med spildesign,<br />

men her vil designet dog være teoretisk begrundet igennem anvendelse af teori fra projektets kapitel XX.<br />

Programmeringen er naturligvis heller ikke noget problem, da vi har haft flere kurser i netop dette. Ligesom<br />

jeg bruger de fleste ferier på det ;-)


situation der efter flere års fravær, grundet store udvikleres dominans på markedet, er på<br />

vej frem under begrebet indie developers. Jeg vil se nærmere på dette begreb, i det<br />

kommende afsnit.<br />

7.1 Indie developer<br />

Det er først og fremmest Internettet der har banet vejen for de såkaldte indie developers -<br />

eller uafhængige spiludviklere, som det ville hedde på dansk. Talentfulde individer har<br />

altid kunnet udvikle spil alene eller i små grupper, men med Internettet er det også blevet<br />

muligt at distribuere spillene sådan at der kan tjenes penge [Michael, 2004, s16]. Det har<br />

fået flere til at prøve lykken, og mange har også haft stor succes. Det er endda lykkedes<br />

enkelte udviklere at udvikle spil der har opnået så stor popularitet, at de har kunnet<br />

konverteret dem til platforme uden Internetadgang, og distribuere dem på traditionel vis.<br />

Alien Hominid (<strong>The</strong> Behemoth, 2004) og Darwinia (Introversion, 2005) er eksempler på<br />

dette. I næste generations spillekonsoller, hvoraf Microsoft’s Xbox 360 netop er<br />

udkommet, er der desuden gjort tiltag der skal lette de uafhængige udvikleres adgang til<br />

platformene, sådan at spillene kan lanceres direkte dertil (stadig via Internet)<br />

[BusinessWeek, 14-10-2005]. Konsolproducenterne, Nintendo, Microsoft og Sony, har<br />

fået øjnene op for den store mængde af kreativitet og innovation der findes i indiespillene,<br />

og kappes om at få flest mulige indie-spil på deres respektive konsoller.<br />

Fænomenet er så stort, at der allerede findes mange gode artikler om det på Internettet,<br />

især hos spiludvikler portalen Gamasutra, ligesom der holdes konferencer og festivaler,<br />

som eksempelvis Indie <strong>Game</strong>s Conference 11 og Independent <strong>Game</strong>s Festival 12 der har det<br />

ene formål at hylde spil udviklet af indie developers. Der er tilmed skrevet en allerede<br />

flot modtaget [Lloyd, 2004] bog, <strong>The</strong> Indie <strong>Game</strong> Development Survival Guide [Michael,<br />

2004], som omhandler alt fra design til økonomi og markedsføring i forbindelse med<br />

indie development.<br />

Det, jeg ønsker at tilføre projektet, ved at indrage begrebet indie development er ikke<br />

forklaringer på, hvordan udviklerne tjener penge, men derimod råd til hvordan<br />

begrænsede ressourcer kan omsættes til produkter af høj kvalitet. Helt centralt for dette er<br />

det i teorien beskrevne kvalitetskrav originalitet. Det er et faktum, at der findes indie-spil<br />

af mindst ligeså høj kvalitet som spil udviklet med millionbudgetter (hvis spilanmelderes<br />

karakterer bruges som et kvalitetsmål) [<strong>Game</strong>rankings, Darwinia] [<strong>Game</strong>rankings, Alien<br />

Hominid], men umiddelbart lyder det jo mærkeligt at det forholder sig sådan.<br />

Forklaringen er originalitet. Udviklere der smider millioner i udviklingen af deres spil,<br />

lever med en stor risiko, hvorfor de ser sig nødsaget til altid at satse på de sikre kort -<br />

spilkoncepter der har bevist at de sælger godt [Michael, 2004, s13]. Det er ikke en<br />

begrænsning indie developers lever under; de kan altid søge at opfylde det, efter min<br />

mening, vigtigste kvalitetskrav af dem alle - originalitet. Kravet som de store sjældent<br />

søger at opfylde.<br />

11 http://www.indiegamescon.com/<br />

12 http://www.igf.com/<br />

55


Selvom de økonomiske ressourcer hos en indie developer pr. definition er lave, så er der<br />

andre ressourcer som bør være i top. David Michael lister tre karaktertræk han ser som<br />

nødvendige hos en indie developer, nemlig et lidenskabeligt forhold til spil, evnen til at<br />

kontrollere og opretholde tempo og en stor udholdenhed [Micheal, 2004, s22]. Det er<br />

ikke meget anderledes end hvad der kræves for at skrive et universitetsprojekt om<br />

computerspil i en enmandsgruppe - det er vigtigt aldrig at gå i stå, ikke at give op når der<br />

ikke er andre til at løse problemerne, og ikke mindst at have en brændende interesse for<br />

det man laver (hvis det da skal blive et godt projekt). Eftersom jeg blev færdig med<br />

projektet, må jeg vel besidde nogle af disse egenskaber... Mere interessant er de<br />

principper der gives for at hjælpe med at kontrollere de begrænsede ressourcer, der<br />

hovedsageligt kommer til udtryk i udviklerholdets størrelse og dermed den tid der er til<br />

rådighed for spillets enkelte elementer [Michael, 2004, s46]. Ved at være bevidst om sine<br />

begrænsninger, kan der skabes et spil som alligevel er af høj kvalitet. Jeg opremser og<br />

diskuterer nu disse principper, og tilføjer nogle jeg selv mener, er værd at tage med.<br />

56<br />

• Vælg ikke en af de store mainstream genrer. Den type spil der sælges<br />

bedst er også den type spil markedet er oversvømmet af. De store<br />

udgivere finpudser konstant koncepterne her, og selv hvis en indie<br />

developer formår at lave noget der er bedre, vil de store udgiveres<br />

mange marketingskroner overskygge det. De store genrer, som<br />

eksempelvis lige nu er førstepersonsskydespil, realtime strategispil og<br />

store online rollespil kræver også alt for mange ressourcer at producere<br />

[Michael, 2004, s52]. At sidstnævnte oplysning er sand er jeg ikke i tvivl<br />

om, kvaliteten af de nævnte genrer kan til dels måles kvantitativt, det vil<br />

eksempelvis sige i antallet af baner, våben og modstandere, hvilket givet<br />

vil gøre det til et tidskrævende projekt at udvikle et sådan spil, som en<br />

lille indie developer. Min opfattelse af genrerne er dog måske lidt<br />

bredere, end den som David Michael giver udtryk for, idet jeg mener det<br />

vil være muligt finde ind til essensen i en af de store genrer, og finpudse<br />

den i en sådan grad at selve omfanget af spillet, det kvantitative indhold,<br />

bliver mindre vigtigt. Det er dog ikke et projekt jeg har tænkt mig at<br />

forfølge for at bevise min påstand, og jeg kan sagtens se at det sikreste<br />

selvfølgelig er at holde fingrene fra det de store leger med.<br />

• Søg ikke at skabe fremtidens teknologi, eller at bruge nutidens. Ikke nok<br />

med at de store udviklere konkurrerer på at skabe f.eks. det bedste<br />

førstepersonsskydespil, så konkurrerer de også på at gøre dette med den<br />

mest imponerende teknologi. Det kan en indie developer ikke<br />

konkurrere på, da det igen kræver mange ressourcer i form at<br />

arbejdskraft, tid og penge. Søg i stedet at skabe noget der nok ser<br />

moderne ud, men gør det med gårsdagens teknologi. Den er billig, ofte<br />

gratis, og der findes masser af eksisterende værktøjer og viden som kan<br />

udnyttes [Micheal, 2004, s55]. Jeg har valgt Nintendo DS som platform<br />

for mit spil, men selvom det er en ret ny platform, så er teknologien<br />

forholdsvis primitiv (se bare på Sony’s PlayStation Portable 13 - et<br />

13 http://www.yourpsp.com


teknologisk vidunder i forhold). 2d-grafisk er den at sammenligne med<br />

det bedste fra 1990, mens den 3d-grafisk ofte er blevet sammenlignet<br />

med en Nintendo 64 (Nintendo, 1996) eller Playstation (Sony, 1994).<br />

Den har dog mere regnekraft og hukommelse til rådighed end disse<br />

maskiner, hvad der kan udnyttes til f.eks. fysik, kunstig intelligens og<br />

stemmegenkendelse. Netop stemmegenkendelsen kan også umiddelbart<br />

lyde som et problem hvis rådet om at bruge gårsdagens teknologi skal<br />

følges, men faktisk har stemmegenkendelse jo i mange år været anvendt<br />

på f.eks. mobiltelefoner, der har en endnu mere begrænset regnekraft.<br />

• Fokuser på det centrale - den meningsfulde leg. Sørg for at finpudse de<br />

dele af systemet der gør spillet sjovt. Det er der masser af plads til, når<br />

teknologien ikke først skal opfindes eller videreudvikles [Michael, 2004,<br />

s57]. Selvom stemmegenkendelse har været brugt i mange år, så er der<br />

desværre ikke mange som deler ud af deres teknologiske viden i en<br />

sådan grad, at jeg kan bruge den direkte på Nintendo DS. Derfor må jeg<br />

bruge kræfter på faktisk at genskabe eksisterende teknologi, hvad der<br />

givetvis vil tage tid andre dele af designet. Jeg anser det dog ikke som<br />

noget stort problem, og i forhold til projektet er en perfekt teknologi<br />

hverken et krav eller en nødvendighed (mit spil udnytter at teknologien<br />

er dårlig). Det centrale er, at jeg kan vise hvordan teknologien på en god<br />

måde anvendes i et spil, og hvordan kvaliteten af dette bliver højt.<br />

• Find en niche der ikke er overeksponeret. En simpel markedsanalyse kan<br />

finde frem til hvilke spil der er populære i dag - lav ikke sådan et spil!<br />

Lav helst heller ikke et spil af en type som andre indie developers laver.<br />

Find i stedet et hul i markedet - en spiltype der ikke eksisterer til den<br />

valgte platform, og lad dette være udgangspunktet. Det vigtigste er dog<br />

at lave et spil, man selv ønsker at spille, og som man har nogle unikke<br />

visioner for [Michael, 2004, s76]. Den sidste bemærkning her er også<br />

hvad jeg selv vil betragte som den vigtigste, da ens udholdenhed ellers<br />

sættes på en større prøve end hvad der er nødvendigt. En undersøgelse af<br />

markedet er dog en god idé, og noget jeg derfor løbende har udført under<br />

designet af spillet. Her sammenligner jeg også enkelte elementer i mit<br />

spil, med sammenlignelige elementer i andre spil, for at lære af andres<br />

erfaringer og fejl. Resultatet ses i designdokumentet i næste kapitel.<br />

• Lad begrænsningerne udgøre en del af spillet. Dette er et af mine egne<br />

principper. Begrænsninger kan indarbejdes i spillet på en sådan måde, at<br />

de ikke længere virker som begrænsninger, men som tiltænkte<br />

egenskaber ved spillet. Der findes mange eksempler på dette -<br />

eksempelvis spil der har en simpel grafisk stil, men som netop pga.<br />

denne fremstår unikke i stedet for primitive, selvom det måske reelt er<br />

hvad de er. Killer7 (Capcom, 2005) og Rez (Sega, 2001) er gode<br />

eksempler på dette. I mit spil har jeg valgt at lade den upræcise<br />

57


58<br />

stemmegenkendelse være en del af spillet, ligesom jeg også har valgt en<br />

grafisk stil der er let (for mig) at arbejde med (se næste kapitel).<br />

• Udnyt dine stærke sider. Endnu et af mine råd til mig selv. Ser jeg på<br />

disciplinerne fra før, er der nogle jeg er bedre til end andre, hvorfor det<br />

giver mening at lade dem jeg er bedst til, dominere designet.<br />

Selvfølgelig kan ingen af disciplinerne undværes, men da jeg ikke er<br />

nogen stor komponist, undlader jeg blot at lave et spil hvor musik indgår<br />

som et element der skal kunne danne den meningsfulde leg.<br />

Programmering bliver den disciplin jeg vægter højst, da det centrale i<br />

spillet bliver kunstig intelligens og stemmegenkendelse, mens arbejdet<br />

med 2d-grafik og naturligvis spildesign også får en central plads i<br />

designprocessen.<br />

Ved at følge disse råd, kan et godt spil udvikles selv med meget begrænsede ressourcer<br />

hvad angår tid, mandskab og penge. Det er værd at bemærke, at jeg ikke har satset på at<br />

udvikle et spil der umiddelbart kan distribueres bredt, da det med valget af Nintendo DS<br />

som platform er svært opnåeligt. Det ville kræve at jeg bruger officielle Nintendo DSudviklingsværktøjer,<br />

og at Nintendo godkender spillet til distribution på deres platform.<br />

Dertil er det ikke realistisk at jeg kan lave et færdigt spil på ét semester, men det<br />

forhindrer mig ikke i at følge rådene og udvikle en prototype på et godt spil, med de<br />

ressourcer jeg har til rådighed.<br />

Et sidste råd fra David Michael er at beskrive sit spils centrale elementer skriftligt, da det<br />

er første skridt på vejen mod et reelt spil. At have noget konkret på papir fungerer som en<br />

motivationsfaktor og en vejviser [Michael, 2004, s81]. I følgende afsnit vil jeg præsentere<br />

de overvejelser der ligger bag formen på det designdokument den næste del af projektet<br />

indeholder.<br />

7.2 <strong>Design</strong>dokumentet<br />

De fleste bøger om spildesign, indeholder et kapitel om hvordan et designdokument<br />

udarbejdes [Michael, 2004, s80] [Rouse, 2005, k19] [Bethke, 2003, k8], eller også<br />

indeholder de bare eksempler på konkrete designdokumenter [Salen & Zimmerman,<br />

2004]. Der er dog ingen faste krav for hvordan et designdokument skal se ud, eller hvad<br />

det skal indeholde, så jeg har set på de forskellige forslag og fundet frem til det de fleste<br />

er enige om. Hertil har jeg tilføjet noget procesdokumenterende, da målet ikke blot er at<br />

stå med et godt spil til sidst, men også at kunne argumentere for, hvorfor det ser ud som<br />

det gør; mit designdokument skal ikke blot støtte designprocessen (som det normalt er<br />

formålet med et designdokument) - det skal også beskrive den. Følgende afsnit vil være at<br />

finde i designdokument:<br />

• Filosofi<br />

Det første et designdokument skal indeholde er en kort introduktion, der<br />

groft beskriver spillets vigtigste elementer, og fortæller hvilken<br />

oplevelse de skal give spilleren. Jeg vælger at kalde dette afsnit for


filosofi, da det er reelt er designerens filosofi for spillet, der skal<br />

videregives. I systemudviklingsterminologi er dette den simple<br />

kravspecifikation jeg tidligere har nævnt.<br />

• System<br />

Selve spillet skal beskrives i detaljer. Målet er som nævnt tidligere i<br />

kapitlet ikke at implementere efter disse detaljer, da jeg arbejder med en<br />

iterativ proces, men i stedet løbende at give et overblik over spillet som<br />

det ser ud. Under system findes en lang række underafsnit, der skal lette<br />

overblikket over spillet ved at opdele det i enkeltdele som eksempelvis<br />

<strong>interaktion</strong> og opbygning.<br />

• Teknik<br />

Så vidt muligt vil teknikken ikke blive beskrevet under system, men det<br />

bliver den til gengæld her. Alle aspekter beskrives kort, men uden at gå<br />

alt for meget i detaljer, da teknikken som sådan ikke har så meget<br />

relevans for projektets problemstilling.<br />

• Prototyper<br />

For at give et overblik over den proces designet har gennemgået, er det<br />

nyttigt at holde styr på hvornår og hvad der er tilføjet eller ændret. I<br />

dette afsnit gives et overblik over funktionaliteten i de enkelte<br />

prototyper.<br />

Ingen afsnit bliver dog, da dette er en projektrapport, rent deskriptive. Hele tiden vil der<br />

blive argumenteret for enkeltdelene ved brug af teorien fra sidste afsnit, ligesom også<br />

selve beskrivelserne vil tage begrænset form efter den teori der blev fremlagt. Det er altså<br />

ikke et traditionelt industrielt designdokument, men også en designanalyse og -<br />

diskussion.<br />

7.3 Opsummering<br />

Jeg indledte kapitlet med at sidestille udviklingen af computerspil med udviklingen af al<br />

anden software. Herefter tog jeg nogle forbehold for den antagelse, idet computerspil på<br />

flere måder er et ganske særlig form for software. Der stilles brede praktiske krav til<br />

udviklerne, som både skal kunne lave grafik, komponere musik, programmere blandt<br />

andet en kunstig intelligens og ikke mindst skal de designe <strong>interaktion</strong> som stimulere<br />

vores lyst til leg og udforskning.<br />

For at optimere mit møde med disse udfordringer, blev begrebet indie developers<br />

inddraget. Disse folk arbejder alene eller i meget små grupper og formår alligevel at<br />

udvikle spil af høj kvalitet. Måden de arbejder og træffer designbeslutninger på kan der<br />

læres meget af, og det er netop hvad jeg har forsøgt. Jeg opstillede en række principper<br />

for indie development som jeg har søgt at følge. De inkluderer blandt andet, det at udføre<br />

en markedsanalyse for at finde en ledig niche, det at udnytte gammel teknologi og ikke<br />

mindst det at søge originaliteten og det unikke.<br />

Den sidste, og måske vigtigste, del af min metode er den der beskæftiger sig netop med<br />

dette. Innovation og hvordan det opnås.<br />

59


8 Innovation<br />

Som beskrevet i teorien er innovation et kvalitetskriterium for spil. Innovation kan<br />

fremkomme på mange måder, og forbindes ofte med kreativitet, opfindelser og<br />

tilfældigheder. Det kan derfor være værd at definere innovation, og hvad der adskiller<br />

innovation fra kreativitet og opfindelser. Jeg har søgt i forskellige opslagsværker<br />

[Wikipedia] [Dictionary.com] [Merriam-Webster], og er nået frem til følgende forståelse<br />

for begreberne:<br />

60<br />

• En opfindelse er en konkret ny idé, detaljeret skitseret men ikke udført i<br />

praksis. Leonardo Da Vinci lavede mange opfindelser, men teknologien<br />

var på daværende tidspunkt ikke god nok til, at de kunne udføres i<br />

praksis.<br />

• En innovation er en praksis udført opfindelse. Thomas Edisons<br />

elektriske pære eller, for at blive ved computerspil, samarbejde frem for<br />

konflikt mellem spillerne i Rip Off (Microvision, 1980) og Bullet Time<br />

(en interaktiv slowmotion effekt) i Max Payne (Remedy Entertainment,<br />

2001).<br />

• Kreativitet er evnen til at skabe noget anderledes. Opfindsomhed er et<br />

synonym for kreativitet.<br />

På dette semester er et af målene at skabe innovation; altså et konkret produkt der<br />

demonstrerer en ny idé, eller mere præcist - et produkt der anvender stemmebaseret<br />

<strong>interaktion</strong> på en ny måde. Som sagt kan innovation fremkommen på flere måder.<br />

Thomas Edison brugte elektricitet på en ny måde, nemlig til at skabe lys 14 , og han har<br />

beskrevet hans fremgangsmåde sådan:<br />

When I want to discover something, I begin by reading up everything that has been done<br />

along that line in the past - that's what all these books in the library are for. I see what<br />

has been accomplished at great labor and expense in the past. I gather data of many<br />

thousands of experiments as a starting point, and then I make thousands more.<br />

[Wikipedia, Edisonian approach]<br />

Lidt groft sagt, så prøvede han sig altså bare frem. Tilfældigheder og held kan dermed<br />

have indflydelse, og det virker ikke umiddelbart særligt videnskabeligt, eller som en<br />

teknik dette projekt vil drage nytte af. Det er dog interessant, at han læser bøger om alt<br />

hvad der tidligere er blevet lavet along that line. Han må altså have haft et mere eller<br />

mindre konkret mål for øje, og faktisk så er hans teknik slet ikke så umoderne som det<br />

kunne lyde - om lidt vil jeg introducere teknikken ludic engineering, der ikke er langt fra<br />

Edisons tilgang til innovation.<br />

14 Faktisk forbedrede han blot den elektriske pære som andre før ham havde opfundet, sådan at den lyste i<br />

længere tid. Han har dog opfundet andre ting helt selv, så han er stadig et godt eksempel.


Tilfældigheder kan der ikke satses på, og det var nok heller ikke hvad Edison gjorde, så i<br />

dag findes der mange forskellige teknikker der forøger chancen for at kreativitet fører til<br />

innovation, og faktisk også teknikker der skaber innovation uden kreativitet. En meget<br />

analytisk tilgang til et problem, kan tilsyneladende skabe innovative løsninger eller<br />

produkter. I kurset Language Action Perspectives (LAP) er vi blevet præsenteret for en<br />

række forskellige teknikker, og i de følgende afsnit vil dem jeg har brugt i dette projekt<br />

blive beskrevet.<br />

8.1 Technology inspiration<br />

I LAP-kurset blev vi introduceret til artiklen Things aren’t what they seem to be:<br />

innovation through technology inspiration [Rogers et al., 2002], der beskriver hvordan<br />

forskere under det såkaldte Equator Project 15 arbejder med innovation. I artiklen<br />

beskrives desuden et konkret projekt, et mixed reality computerspil til børn, hvad der dog<br />

ikke har den store relevans for mit projekt, udover at det viser, at teknikkerne med succes<br />

kan anvendes under designet af et computerspil. Deres grundlæggende princip er, at<br />

innovation opstår mere eller mindre tilfældigt, men at det kan opsøges ved at arbejde<br />

kreativt udforskende og samtidig have et mål for øje - det kunne f.eks. være det mål jeg<br />

satte mig i projektets problemstilling.<br />

For at nå målet arbejder de med to innovationsteknikker; technology inspiration og ludic<br />

engineering. Sidstnævnte vil jeg gemme til næste afsnit, mens det at lade sig inspirere af<br />

eksisterende teknologi vil blive diskuteret her. Rogers et al. beskriver teknikken som en<br />

proces hvori de kigger på eksisterende teknologi og omkonfigurerer den eller<br />

sammensætter den på nye måder, for at skabe nye oplevelser for brugeren af det system<br />

de designer. Min umiddelbare bekymring angående denne teknik vil være om det egentlig<br />

er innovation der opstår af en sådan proces, da brugen af eksisterende teknologi næppe<br />

kan kaldes innovativ. Rogers et al. understreger dog selv, at de ikke ser deres teknik som<br />

teknologistyret, idet teknologien blot inspirerer og sjældent bruges som den oprindeligt<br />

var tiltænkt. Det er et argument, jeg er villig til at acceptere, og i mit eget projekt<br />

anvender jeg da heller ikke ny teknologi - jeg anvender eksisterende teknologi på nye<br />

måder.<br />

Når der skal opnås innovation gennem technology inspiration, er det ifølge Rogers et al.<br />

desuden vigtigt at teknologien der kigges på, den beskues fra flere perspektiver. Det er<br />

ikke nok at se på teknologien med ét forskningsområde eller synspunkt in mente, men<br />

helst med flere, da det vil give større mulighed for nye idéer. I mit projekt er det, hvad jeg<br />

har gjort i sidste kapitel, hvor jeg blandt andet anvender lingvistikken i teorien om<br />

computerspil, for at belyse denne fra nye perspektiver. Det er også, hvad jeg allerede i<br />

indledningen gjorde da jeg så på talegenkendelsesteknikken fra et spildesignersynspunkt,<br />

og fandt frem til, at svaghederne burde indgå som en del af spillet - fra et computer<br />

science-synspunkt ville det naturlige nok i stedet have været at forbedre teknikken.<br />

15 Et tværfagligt forskningsprojekt der arbejder med <strong>interaktion</strong>en mellem det fysiske og det digitale. Deres<br />

web-side findes på http://www.equator.ac.uk<br />

61


Også andre folk har anvendt technology inspiration som en innovationsteknik. Den<br />

respekterede spildesigner og forfatter Ernest Adams præsenterede i 2001 spilindustrien<br />

for Dogma 2001 [Adams, 2001]. Inspireret af danskerne Lars Von Trier og Thomas<br />

Vinterbergs Dogme 95, var målet at adskille teknologien fra kreativiteten i spildesign, da<br />

han mente at teknologien styrede spildesignet, med lav kvalitet til følge. Det er en<br />

påstand han i nogle situationer kan have ret i, men også en påstand der er direkte<br />

modstridende med at technology inspiration skulle motivere til innovation. Det<br />

interessante i denne sammenhæng er da også at Ernest Adams i 2002 rapporterede fra et<br />

arrangement (Indie <strong>Game</strong> Jam) hvor 14 spildesignere (med programmørtalent) brugte tre<br />

dage på at modbevise påstanden [Adams, 2002]. Her var målet netop at lade eksisterende<br />

teknologi inspirere til nye spilkoncepter. Resultatet blev 12 forskellige spil, der alle<br />

brugte teknologien på nye måder og på den måde skabte nye spilkoncepter. Ernest Adams<br />

måtte altså trække sine ord i sig igen - teknologi begrænser ikke nødvendigvis<br />

kreativiteten. Igen er technology inspiration altså blevet anvendt med succes under<br />

udviklingen af computerspil, hvilket naturligvis har gjort teknikken attraktiv for mit<br />

projekt.<br />

I næste kapitels designdokument vil jeg nævne hvor teknologien præcist har inspireret<br />

mig, for at dokumentere brugen af technology inspiration teknikken. Her fortsætter jeg<br />

med den anden teknik anvendt af Rogers et al. - ludic engineering.<br />

8.2 Ludic engineering<br />

Johan Huizinga’s Homo Ludens [Huizinga, 1949] er allerede blevet nævnt i projektets<br />

teoretiske del, men også i forbindelse med udvikling og innovation har han et bidrag til<br />

projektet. Homo Ludens - mennesket som legende væsner, med nysgerrighed,<br />

udforskning og undren som de vigtigste egenskaber. Leg er ikke blot underholdning, men<br />

også en måde at lære om verden og os selv på.<br />

Det er den filosofi som Rogers et al. har bragt med over i deres ludic engineering-teknik.<br />

Idéen er, at innovation opstår, når der leges, fordi vi helt naturligt udforsker teknologien<br />

og undrer os over den. Leger vi med teknologien under udviklingen, det vil sige at vi<br />

afprøver og eksperimenterer med den på en underholdende måde, er der god chance for at<br />

innovation opstår, og at brugeren eller spilleren derefter kan få et produkt som leverer en<br />

ny oplevelse [Rogers et al., 2002]. Skal jeg kritisere teknikkens anvendelighed, er det<br />

klart, at den kun kan fungere ordentligt, hvis det produkt der designes er et produkt der<br />

motiverer til leg - som f.eks. et computerspil. Det er nok tvivlsomt, hvad metoden kan<br />

bidrage med under designet af en kontorapplikation, eller andre systemer med mere<br />

praktiske og konkrete mål, da brugen af dem ikke rigtigt kan klassificeres som leg. Man<br />

kan dog forestille sig hvordan teknologier udviklet til leg ved en tilfældighed får mere<br />

praktiske formål. Et eksempel er de farvede sæbebobler der kommer på markedet til<br />

februar, som udover at være en fantastisk opfindelse i sig selv, også introducerer et<br />

farvestof med den praktiske egenskab, at det forsvinder efter kort tids kontakt med luft<br />

[Popular Science, 11-2005]. I forbindelse med mit projekt, er jeg da heller ikke i tvivl om<br />

at det er en god måde at arbejde på.<br />

62


Det understøttes af det meste litteratur om spildesign, der siger at det virkeligt gode spil,<br />

eller den virkeligt meningsfulde leg, først kan sikres når en del af spillet er lavet kan<br />

afprøves og udforskes af udviklerne selv [Salen & Zimmerman, 2004, k2] [Rouse, 2005,<br />

k15]. At udviklerne selv leger med spillet er i øvrigt ikke noget nyt. Et eksempel kunne<br />

være pc-spillet Syndicate (Bullfrog, 1993), der blev udviklet af en lille flok entusiaster,<br />

en af periodens få indie developers, der sad og spillede det efterhånden som de opfandt<br />

og tilføjede flere features [Skog, 2005]. Udviklerne legede altså selv med spillet, og fik<br />

igennem denne proces skabt et spil der var innovativt for sin tid, og som blev modtaget<br />

godt af både spillere og kritikere.<br />

8.3 Opsummering<br />

Overordnet set er min innovationsstrategi at se på og lege med eksisterende teknologi,<br />

med min problemformulering for øje - det vil, med en lille smule held og dygtighed, give<br />

den innovative løsning der er behov for. De konkrete teknikker kaldes technology<br />

inspiration og ludic engineering.<br />

63


9 Metodisk delkonklusion<br />

Uden at bruge meget plads, og uden for alvor at gå i dybden, har jeg beskrevet hvordan<br />

systemudvikling kan foregå, og hvordan det bør foregå i forbindelse med spiludvikling;<br />

særligt når ressourcerne er små og der er behov for innovation.<br />

De forløbne tre kapitler giver mulighed for igen kan belyse projektets delproblemer, dog<br />

stadig uden at give noget svar på den egentlige problemstilling.<br />

64<br />

• Hvordan designes et godt computerspil?<br />

o Besvarelsen af dette spørgsmål skal berøre den teoretiske del af<br />

computerspil, samt belyse den mere praktiske eller metodiske<br />

side af sagen. Herunder hvordan et teoretisk grundlag kan danne<br />

en begrebsmæssig ramme om en analyse af spil, samt hvordan<br />

samme teori kan anvendes praktisk i designprocessen.<br />

Jeg har tilbage i kapitel 4 allerede belyst dette spørgsmål gennem projektets teoretiske<br />

grundlag, men kan nu sige, at metodisk er et godt computerspil resultatet af en<br />

systemudviklingsproces, hvori en række forskellige discipliner og teknikker indgår.<br />

Meget peger desuden på, at den optimale systemudviklingsproces hvad angår<br />

spiludvikling er struktureret iterativt og giver plads til kreativitet for at innovation kan<br />

opnås.<br />

Overordnet er min proces derfor struktureret således:<br />

Figur 9: Min systemudviklingsmetode<br />

Det er en proces inspireret af eXtreme Programming og andre iterative<br />

udviklingsmetoder, hvortil jeg tilføjer en række teknikker. Under design og test anvendes<br />

teknikkerne UML (under modelleringen af designet), tests i form af funktionalitetstest og<br />

kodetests. Hertil inddrages spillerne kort for at teste enkelte prototyper med høj<br />

funktionalitet (depth). Det giver tilsammen en metode der opfordrer til innovation, men<br />

som samtidig besidder en hvis form for struktur, hvorfor den også kan kontrolleres.


Resultatet af denne proces er dels selve produktet, men også et designdokument der<br />

dokumentere processen og viser hvordan teknikker fra dette kapitel og teorien fra forrige<br />

er brugt i praksis. Dette designdokument udgør hele den næste del af projektet.<br />

Ydermere så kan innovation, der er meget vigtigt for et computerspil, opnås ved<br />

anvendelsen af særlige teknikker, hvoraf technology inspiration og ludic engineering er<br />

dem jeg selv har valgt at anvende, hvad der også er svaret på mit næste delproblem:<br />

• Hvordan skabes innovation?<br />

o Besvarelsen af dette spørgsmål skal give konkrete anvisninger i<br />

hvordan et innovativt produkt eller en innovativ løsning skabes.<br />

Herunder vil en række forskellige metoder blive berørt, og nogle<br />

få vil blive belyst nøjere samt anvendt i praksis.<br />

Anvendelsen af technology inspiration indebærer studier af eksisterende teknologi, samt<br />

efterfølgende omkonfigurering af denne. Det kan foregå ved enten at kombinerer den<br />

med anden teknologi, eller ved at modificere den på forskellig vis. Det vil føre til<br />

teknologi der har mulighed for at levere nye oplevelser til brugeren, og som dermed kan<br />

betegnes som innovativ. Hertil er ludic engineering en uvurderlig teknik, da den<br />

faciliterer udforskningen af teknologien gennem leg. Når leg samtidig er en del af spillet,<br />

altså det produkt der skal udvikles, så er legens plads i selve processen berettiget.<br />

Det sidste delproblem fra projektets første kapitel kan også afklares:<br />

• Hvordan udvikles computerspil af én person alene?<br />

o Besvarelsen af dette spørgsmål skal give konkrete anvisninger i<br />

håndtering af en udviklingsproces med kun én person involveret,<br />

samt i hvordan de deraf begrænsede ressourcer udnyttes sådan at<br />

spillet ikke lider kvalitetsmæssigt.<br />

I afsnit 7.1 introducerede jeg begrebet indie developers, uafhængige udviklere, der<br />

dækker over spiludviklere som udvikler deres spil alene eller i meget små grupper. Disse<br />

folk har beviseligt skabt kvalitet med meget få ressourcer, og kan derfor bidrage med en<br />

række retningslinjer for hvordan computerspil designes af én person alene. De inkluderer<br />

blandt andet, det at udføre en markedsanalyse for at finde en ledig niche, det at udnytte<br />

gammel teknologi og ikke mindst det at søge originaliteten og det unikke. Selv<br />

supplerede jeg med krav om at udnytte sine egne forcer mest muligt i spillets design,<br />

samt om at lade svaghederne i den gamle teknologi indgå som en del af spillet.<br />

Tilbage er nu blot at afprøve teorien og metoderne i praksis, for at se om mine<br />

argumenter holder - om de valgte teorier og metoder rent faktisk vil føre til udviklingen<br />

af et innovativt computerspil. Inden jeg indleder projektets designdel vil jeg dog kort<br />

diskutere svaghederne ved min metode, for at undgå at disse påvirker designet for meget,<br />

samt se på hvilke alternative muligheder jeg har fravalgt.<br />

65


9.1 Fravalgte metoder og ulemper ved de valgte<br />

Som altid når der sammensættes en metode, så er der potentielle problemer ved den. Det<br />

første jeg her vil diskutere er dens egnethed i forhold til udviklingen af et innovativt spil,<br />

hvad der jo er metodens direkte mål. I denne henseende mener jeg dog ikke den<br />

indeholder betydelige problemer. De forskellige metoder og teknikker er udvalgt med det<br />

mål at udvikle et innovativt spil, og den opgave bør de derfor kunne håndtere<br />

tilfredsstillende.<br />

Det som kunne overvejes er om yderligere teknikker kan styrke metoden, og i den<br />

henseende er paper prototyping interessant, da det er en innovationsfremmende teknik<br />

som på samme tid også tillader hurtig og iterativ udvikling af prototyper. På semestrets<br />

LAP-kursus er der blevet undervist i teknikken, og vi er blevet opfordret til at anvende<br />

den i projektet. Problemet med teknikken i forhold til udvikling af spil, er at<br />

papirprototyper er meget dårlige til at simulere kompleks <strong>interaktion</strong> [Snyder, 2003, s74].<br />

Det kan løses ved at lave et spil der <strong>interaktion</strong>smæssigt er simpelt, men det har jeg ikke<br />

haft ønsker om - det er ikke metoden der skal diktere hvordan spillet kommer til at se ud,<br />

og det mener jeg paper prototyping ville gøre. Hertil kommer problematikken i at<br />

simulere stemmebaseret <strong>interaktion</strong> via papir, hvad der naturligvis slet ikke er muligt.<br />

En tænkelig løsning her ville være at indføre såkaldt Wizard of Oz-test, hvor en designer<br />

håndterer den funktionalitet som papirprototypen ikke kan indeholder. Men netop den<br />

komplekse, finmaskede <strong>interaktion</strong> som et spil indeholder, vil stadig ikke kunne<br />

simuleres nøjagtigt, hvorfor også denne udvidelse af paper prototyping-teknikken er<br />

udeladt. Til gengæld har jeg i mindre omfang anvendt Wizard of Oz-test på de<br />

funktionelle prototyper jeg har udviklet. Det er foregået ved at jeg har mappet forskellige<br />

funktioner til knapperne på Nintendo DS, for så at trykke på dem når jeg har afgivet en<br />

talekommando som systemet ikke kunne håndtere. Jeg mener dog ikke, at dette har<br />

bidraget betydeligt til processen og resultatet, hvorfor det ikke vil blive nævnt yderligere.<br />

I en sidste modifikation af paper prototyping kaldes resultatet hybrid prototyper. Her er<br />

dele af systemet reelt implementeret, mens andre dele består af papir. Det er bestemt en<br />

mulig måde at indføre paper prototyping i min proces på, da jeg så blot ville skulle lave<br />

de mest statiske elementer i papir. Igen har jeg dog vurderet at dette ikke var værd at<br />

bruge tid på, da det trods alt ikke er de statiske elementer der er mest spændende i et spil.<br />

Som det også vil fremgå af næste kapitel, så er der ikke brugt tid på at designe mindre<br />

betydende (i forhold til hvad der gør spillet godt) elementer som menuer og lignende.<br />

Det er også interessant at se på metodens begrænsninger i forhold til det at lave et<br />

studieprojekt, som jo også består af en projektrapport. Her er begrænsningerne til<br />

gengæld betydelige, idet metoden først i det øjeblik noget er implementeret i praksis, står<br />

med det detaljerede design som kan beskrives i rapporten. Jeg har taget lidt løst på denne<br />

del af metoden, og i projektperiodens sidste uger forsøgt at designe lidt mere end hvad<br />

der reelt er blevet implementeret, hvorfor de følgende kapitler også indeholder mere end<br />

der i henhold til metoden og den afsatte tid kan forventes.<br />

66


Del IV<br />

DESIGN<br />

<strong>The</strong> man who has no imagination has no wings<br />

Muhammad Ali<br />

Metoden beskrevet i forrige del er blevet fulgt, og teorien beskrevet i rapportens del II er<br />

blevet praktisk anvendt. Målet er nu at dokumentere dette forløb og resultatet heraf. Som<br />

nævnt tidligere er dette ikke et rent deskriptivt designdokument, men også i høj grad en<br />

analyse af hvorfor det ser ud som det gør, tilsat den allerede beskrevne teori. Det<br />

beskrivende designdokument vil være fremhævet og indrammet, mens resten af teksten er<br />

det proces- og produkt-analyserende, dokumenterende og diskuterende som et<br />

studieprojekt skal have mest af.<br />

Jeg bør understrege at ikke alt der beskrives i de følgende kapitler er implementeret i den<br />

prototype jeg står med ved projektets afslutning, men det grundlæggende er dog<br />

implementeret, sådan at spillet kan testes og de for semestret vigtigste egenskaber<br />

demonstreres (stemmebaseret <strong>interaktion</strong>).<br />

<strong>Design</strong>dokumentet indledes med spillets filosofi, der også kan ses som en løst formuleret<br />

kravspecifikation. Derefter følger designet af det system som beskriver spillet og dets<br />

elementer, hvorefter et kapitel dedikeret til alt hvad angår <strong>interaktion</strong>en overtager. Den<br />

tekniske side af sagen belyses i kapitel 13, og til sidst beskrives flere af de prototyper som<br />

spillet har gennemgået samt den proces de er et resultat af.<br />

67


10 Filosofi<br />

Som beskrevet i forrige kapitel er designdokumentets første afsnit en introduktion til<br />

spillet. Her vil jeg beskrive, hvad det overordnet indeholder og hvad det skal udtrykke.<br />

Filosofien har været det nedskrevne mål for designprocessen igennem de første<br />

prototyper, indtil mere blev nedskrevet med denne rapport for øje. Min filosofi for spillet<br />

lyder således:<br />

68<br />

Silent Ninja Scream er det paradoksale og foreløbige navn for<br />

Nintendo DS-spillet der omdanner spilleren til en lydløs og<br />

råbende ninja. I rollen som ninjatræneren Sensei udfører spilleren<br />

et væld af forskellige missioner, hvor lydløshed er påkrævet. Med<br />

sig har Sensei dog sine ninjaelever, der udelukkende er<br />

modtagelige for verbal undervisning og instruktion, hvorfor<br />

lydløsheden må brydes.<br />

Den centrale konflikt i spillet er dermed det paradoks Sensei står i<br />

under missionerne, hvor lydløs snigen nogle gange er den bedste<br />

løsning på et problem, mens det andre gange er bedre at råbe<br />

kommandoer til eleverne, og dermed kaste dem ud i åben kamp<br />

mod farlige fjender. Elever der overlever flere missioner under<br />

Sensei, vil med tiden lære at handle selvstændigt, og faktisk kan<br />

Sensei slet ikke klare de sværeste missioner uden en gruppe<br />

dygtige elever. Både af at se Sensei klare en opgave selv, og af at<br />

modtage og udføre ordrer, lærer eleverne at handle selvstændigt.<br />

Missionerne indeholder elementer af både action, udforskning og<br />

kreativ problemløsning, der vil være uendeligt mange af dem, og<br />

de vil alle kunne gennemføres på få minutter. Spillets visuelle stil<br />

er farverig og simpel i sit udtryk, mens dets historiske tema vil<br />

tage et urealistisk afsæt i det feudale Japan.<br />

Det metodisk set første skridt mod denne filosofi, var en undersøgelse af eksisterende spil<br />

der anvendte talegenkendelse, samt af andre spil til Nintendo DS. Altså den<br />

markedsanalyse som blev foreslået i afsnit 7.1, kombineret med technology inspiration.<br />

10.1 Technology inspiration og markedsanalyse<br />

Her følger formålsbestemte analyser af en række spil der har inspireret min filosofi for<br />

spillet, samt diskussioner af hvordan inspirationen konkret indgår i dette. Det er ikke de<br />

eneste spil jeg har set på, men de er dem som har haft størst indflydelse på spillet.


10.1.1 Nintendogs<br />

Nintendogs (Nintendo, 2005) til Nintendo DS har siden det blev introduceret i april 2005<br />

i Japan opnået stor ros over hele verden, og er et<br />

perfekt eksempel på hvordan et innovativt spil kan få<br />

succes. Spillet går i al sin enkelthed ud på at opdrage<br />

og passe en hund. Den skal gå tur i parken, lege med<br />

sine hundevenner, vaskes når den bliver beskidt og<br />

den skal lære at lystre sit navn, når spilleren kalder<br />

gennem maskinens mikrofon. Spillet adskiller sig fra<br />

andre kæledyrsspil som f.eks. den gamle Tamagotchi<br />

(Bandai, 1996), ved at være langt mere spil (forstået<br />

som at det har valg med konsekvens). Hunden har<br />

eksempelvis en begrænset udholdenhed, hvilket<br />

udnyttes til en abstrakt indførelse af det i computer<br />

science velkendte Traveling Salesman-problem 16<br />

[Wikipedia, Traveling salesman], under gåturen med<br />

hunden. Målet er at gå så langt som muligt rundt i<br />

byen, inden hunden bliver træt. Traveling Salesmanproblemet<br />

er et problem i størrelsesordenen NP 17 , og<br />

er måske netop derfor også udfordrende for spilleren.<br />

Det er en innovation indenfor det der populært kaldes<br />

kæledyrsgenren, idet spilleren udfordres og udsættes<br />

for valg der har konsekvens - går spilleren ikke langt<br />

Figur 10: I Nintendogs (Nintendo,<br />

2005) løser spilleren et NP-problem<br />

som var det det letteste i verden...<br />

nok med hunden, så får den ikke nok motion og får ikke øget sin udholdenhed. Spillet<br />

indeholder altså interessante valg, og er generelt et fremragende eksempel på godt<br />

spildesign.<br />

Stemmegenkendelsen i Nintendogs forsøger at udnytte svaghederne i teknikken, ved at<br />

gøre selve træningen af stemmegenkendelsesmodulet til en del af spillet. Når hunden<br />

opnår et bestemt erfaringsniveau, får spilleren mulighed for at lære hunden nye tricks.<br />

Det foregår ved at spilleren gentagne gange siger en kommando - f.eks. ”sit”, og når<br />

hunden genkender kommandoen viser den det til spilleren. Efterhånden som spilleren<br />

siger ”sit” flere gange, bliver chancen for at hunden forstår det bedre, indtil spillet kan<br />

meddele at hunden har lært noget nyt. Derefter kan spilleren altid bruge kommandoen<br />

”sit”. Dog er det stadig muligt, at hunden ikke forstår kommandoen pga. teknikken, hvad<br />

der ikke tages yderligere højde for.<br />

En anden mindre svaghed ved Nintendogs har det arvet fra de tidlige<br />

kæledyrssimulatorer. Spillet straffer spilleren for ikke at spille hyppigt, hvad der efter<br />

min mening er en forkert måde at opfordre spilleren til at spille på, da det let kan<br />

frustrere. Nogle gange er det bare ikke praktisk muligt at spille, og ved spilleren at<br />

hunden er sur, beskidt og træt efter at være blevet forsømt en halv dag, så må chancen for<br />

16 Indenfor grafteori kaldes det også ”at finde den korteste hamiltonsti”.<br />

17 Non-deterministic Polynomial-time - problemer der kan løses i O(n k ) (polynomial-time) af en nondeterministisk<br />

Turing Maskine, svarende til O(k n ) (exponential-time) på en determistisk Turing Maskine<br />

(det vil sige en computer). Kort sagt problemer som ikke er hurtigt løselige af en computer.<br />

69


at hun slet ikke gider tænde spillet igen være betydelig. Problemet viser at det under det<br />

semantiske syn på spillets system, bør overvejes nøje hvordan de interne relationer (her<br />

tiden) påvirker objekter (spiller) og attributter (hund). Det er i mine øjne bedre at gøre<br />

som i World of Warcraft (Blizzard, 2005), der faktisk belønner spilleren for at holde<br />

pause fra spillet, ved at gøre belønningerne (i form af f.eks. erfaringspoint og guld) større<br />

efter en pause. Her kan faren selvfølgelig være at spilleren holder for lange pauser og helt<br />

glemmer spillet. En mulighed er naturligvis også helt at undlade at forbinde spillets tid<br />

med den virkelige tid, hvad langt de fleste spil traditionelt har gjort.<br />

Disse observationer af Nintendogs indgår i filosofien ovenfor på flere måder. Først og<br />

fremmest er opdragelseselementet fra Nintendogs overført på ninjaeleverne, der igennem<br />

Senseis træning skal lære at opføre sig som en ninja, ligesom de skal lystre Sensei ”som<br />

en hund”. Træningen af selve talegenkendelsesmodulet vil jeg ligesom Nintendogs lade<br />

indgå som en del af spillet (dog på en anden måde, hvad jeg vil beskrive senere), men til<br />

gengæld vil det aldrig ske, at eleverne ikke reagerer på spillerens kommandoer. Det sker<br />

ved (kort fortalt) at anvende samme kunstige intelligens som spillets fjender besidder, til<br />

at kontrollere ninjaeleverne. Reelt vil ninjaeleverne dermed ikke reagere alene på<br />

spillerens kommandoer, men delvist i henhold til den kunstige intelligens. Pragmatiske<br />

forhold tages dermed i høj grad i betragtning, og vægtes gradvist højere jo mere erfaren<br />

ninjaeleven er.<br />

Min observation af et problem i størrelsesordenen NP har også haft en betydning for<br />

spillets filosofi, idet kreativ problemløsning indgår i spillets missioner. Med kreativ<br />

problemløsning forstår jeg problemer det ikke er muligt at løse algoritmisk (på kort tid),<br />

men som kan løses forholdsvis hurtigt af den menneskelige hjerne. Problemer i<br />

størrelsesordenen NP har ofte denne egenskab, og under det senere design af spillets<br />

missioner har jeg derfor undersøgt eksempler på disse. De intelligensrutiner som spillets<br />

fjender og ninjaelever reagerer efter, er dog naturligvis ikke i denne størrelsesorden (det<br />

ville ikke være teknisk muligt). Det betyder at de talekommandoer som det skal være<br />

muligt at give ninjaeleverne, skal have et simpelt mål der kan løses algoritmisk. F.eks. vil<br />

talekommandoen ATTACK automatisk angribe nærmeste synlige fjende, på samme måde<br />

som spillets fjender vil angribe ninjaeleverne så snart de er synlige for dem.<br />

Problemet i forbindelsen mellem virkelig tid og spillets tid har jeg løst på traditionel vis,<br />

ved slet ikke at indføre en sammenhæng. En velprøvet og velfungerende ”løsning”.<br />

10.1.2 Rainbow Six og SOCOM<br />

I holdbaserede førstepersonsskydespil er spilleren leder af en lille gruppe af soldater. I<br />

lang tid blev kommandoer til de andre soldater givet gennem et visuelt interface, hvilket<br />

gav spilleren problemer med at holde opmærksomheden på eget gevær, og tvang<br />

udviklerne til at sænke spillets tempo for at mindske problemet. I de nyeste udgaver af<br />

både Rainbow Six (Ubisoft, 2005) og SOCOM (Sony, 2004) kan der gives kommandoer<br />

gennem en mikrofon, hvilket løser fornævnte problem, og gør det muligt at øge<br />

spiltempoet. Der er stadig problemer med talekommandoer der ikke genkendes, men der<br />

indføres alligevel en forholdsvis uproblematisk måde at interagere med holdet på.<br />

70


Rainbow Six 3 og SOCOM II er nogle af de<br />

bedste eksempler på hvordan talegenkendelse<br />

kan anvendes multimodalt i computerspil.<br />

Fordelene ved taleinput udnyttes til fulde i<br />

dialogen med ens hold, mens tale ikke bruges i<br />

den mere tidskritiske <strong>interaktion</strong> med spillerens<br />

egen soldat. Det jeg også finder interessant ved<br />

spillene er, at langt flere faktorer kontrolleres,<br />

uden at den visuelle <strong>interaktion</strong> øges. Spillene<br />

viser at det selv i hektiske situationer ikke<br />

nødvendigvis er et problem at styre mere end én<br />

karakter, og at flere brikker at flytte med<br />

forøger spillets mulighedsrum.<br />

Denne type spil har inspireret mig til at lade Sensei kontrollere en hel gruppe af<br />

ninjaelever, og ikke blot en enkelt eller ingen, ligesom spillene har inspireret til at lade<br />

eleverne handle selvstændigt i situationer, hvor Sensei ikke er i nærheden.<br />

10.1.3 Strange Adventures in Infinite Space og Weird Worlds<br />

To indie-spil udviklet af tomandsfirmaet Digital Eel har også haft en betydelig<br />

indflydelse på spillets filosofi. Weird Worlds (Digital Eel, 2005) er 2’eren til Strange<br />

Adventures in Infinite Space (Digital Eel, 2002), hvorfor de to spil minder ganske meget<br />

om hinanden. Temaet er den altid populære udforskning af fremmede planeter, tilsat et<br />

overdrevent eller urealistisk teknisk sprogbrug - der findes f.eks. ingen motorer, men<br />

derimod f.eks. stardrives with extreme<br />

spatial performance due to anti-aliasing. I<br />

forhold til Nintendogs er det interessant at<br />

den helt grundlæggende konflikt igen er<br />

opbygget omkring Travelling Salesmanproblemet,<br />

og at parallellerne til dette nu<br />

er endnu tydeligere. Målet i spillet er at<br />

rejse rundt til så mange planeter som<br />

muligt på 2 år, og undervejs tjene så<br />

mange penge muligt, ved enten at handle<br />

med planeternes beboere eller ved at<br />

skyde dem ned. Igen et bevis på at et NP-<br />

problem kan indgå som en altid<br />

udfordrende del af et spil, og her er det<br />

endda vævet flot ind i spillets præmis.<br />

Figur 11: Rainbow Six 3 (Ubisoft, 2005) er<br />

et holdbaseret førstepersonsskydespil<br />

Figur 12: I Weird Worlds (Digital Eel, 2005)<br />

dannes missionerne tilfældigt af en<br />

missionsgenerator<br />

Den egentlig grund til at jeg trækker dette spil frem er dog en anden. Spillet har nemlig<br />

en temmelig interessant måde at håndtere problemet med indie developers’ små<br />

ressourcer på. Det ville naturligvis være kedeligt, hvis rummet altid så ens ud, altså at<br />

planeterne og afstanden mellem dem var den samme hver gang man spillede, for så ville<br />

NP-problemet have samme variable hver gang. Men i stedet for at lave en lang række<br />

71


forskellige missioner, så har Digital Eel programmeret en missionsgenerator der ud fra<br />

nogle få brugerbestemte parametre sammensætter et tilfældigt univers komplet med<br />

planeter, solsystemer og sorte huller. Det ekstra arbejde der ligger i at programmere en<br />

missionsgenerator er minimalt i forhold til den tid det ville tage at sammensætte et stort<br />

antal forskellige missioner, hvorfor de har sparet mange ressourcer her. Faren ved en<br />

missionsgenerator er at de genererede missioner ikke har mulighed for at danne<br />

meningsfuld leg, fordi de ikke er blevet finpudset gennem mange timers test / leg. Det er<br />

åbenlyst i Playstation 2-spillet Dark Chronicle (Sony, 2002), som igen er et studie i<br />

dårligt design. Spillets missioner genereres tilfældigt, men desværre besidder de ofte<br />

egenskaber der gør dem frustrerende og meningsløse. En mission i Dark Chronicle består<br />

groft sagt af en labyrint som skal ryddes for monstre. Problemet er at nogle gange<br />

genereres missionen sådan at målet er meget kort fra hvor spilleren startede, eller også<br />

generes missionen sådan at labyrinten har alt for mange og lange blinde veje.<br />

Udfordringen i designet af en missionsgenerator er at opstille nogle generelle krav for<br />

hvor fleksibelt de forskellige objekter kan placeres i spillets rum og hvor meget deres<br />

attributter kan variere. Det er den udfordring jeg tager op, når jeg indfører en<br />

missionsgenerator i Silent Ninja Scream. Fordelene er dels, at jeg sparer den tid det tager<br />

at designe en masse missioner, dels at der ikke er nogen (tydelig) grænse for antallet af<br />

forskellige missioner og ikke mindst at jeg ikke skal udvikle et værktøj der letter designet<br />

af en stor bunke missioner. I de første prototyper vil der dog kun være én mission, da jeg<br />

mener den grundlæggende <strong>interaktion</strong> skal fungere før konceptet generaliseres.<br />

Strange Adventures in Infinite Space og Weird Worlds har desuden inspireret til at søge<br />

en overdreven og urealistisk tilgang til spillets historiske grundlag, der er det feudale<br />

Japan. Der vides meget lidt om ninjaer [Wikipedia, Ninja], men det er ikke sandsynligt, at<br />

de opførte sig som populærkulturen skildrer det (som lydløse dræbere). Alligevel er det i<br />

denne urealistiske retning jeg vil skildre dem, fordi det trods alt er mest underholdende.<br />

Det skal dog ske uden brug af makaber vold, og i en visuelt lys og munter stil hvor alle<br />

kan være med. En inspirationskilde i forbindelse med ninja-temaet er den ”officielle”<br />

ninja-webside 18 , hvor netop det overdrevne urealistiske syn på ninjaerne dyrkes.<br />

10.2 Opsummering<br />

Grundlæggende er spillets filosofi resultatet af en hastigt udført markedsanalyse (det<br />

handler om ikke at bruge for mange ressourcer på det som ikke er ren udvikling), tilsat<br />

min egen viden om markedet og en dosis opfindsomhed. Jeg har analyseret fem spil med<br />

fokus på de ting jeg har ladet mig inspirere af under udarbejdelsen af spillets filosofi.<br />

Nogle observationer indgår tydeligt i filosofien, mens sammenhængen med andre<br />

observationer først bliver klar i de følgende kapitler - f.eks. hvordan NP-problemer indgår<br />

for at give spilleren evig udfordring.<br />

Efter at have præsenteret den overordnede filosofi for spillet, er det nu tid til at dykke ned<br />

i systemets detaljer.<br />

18 http://www.realultimatepower.net/<br />

72


11 System<br />

Målet med en designproces er at skabe en meningsdannende kontekst. I forbindelse med<br />

spil er konteksten et system, og dette system består af de forskellige elementer der blev<br />

introduceret tilbage i afsnit 4.3, altså objekter, attributter, interne relationer og miljø. I<br />

det følgende afsnit vil disse elementer blive beskrevet, og derefter analyseret som et<br />

syntaktisk system, hvilket som nævnt i afsnit 4.3 vil sige som noget der minder om et<br />

matematisk regelsæt. I det efterfølgende afsnit 11.2 vil jeg analysere systemet semantisk<br />

og pragmatisk, igen i henhold til hvad der blev fremlagt i afsnit 4.3 - der i øvrigt byggede<br />

på afsnit 2.1, for lige at få klarlagt den teoretisk røde tråd.<br />

11.1 Syntaktisk opbygning<br />

Jeg indleder med at beskrive spillets opbygning og de vigtigste elementer der indgår i<br />

dets missioner, for derefter at påbegynde analysen.<br />

Silent Ninja Scream er et spil til én person, og det kan spilles på<br />

to forskellige måder.<br />

1. Campaign<br />

2. Quick mission<br />

I en ”campaign” er spilverdenen opdelt i to lag. Det øverste lag er<br />

hvor der vælges mission, mens den nederste er selve missionen.<br />

Når der skal vælges mission foregår det på et kort over et japansk<br />

landskab, hvor der findes landsbyer, templer, skove og andre<br />

steder hvor der kan hverves nye ninjaelever. Det nederste lag er<br />

selve missionerne som foregår i og omkring landsbyerne og<br />

templerne hvor konkurrerende læremestrer og deres elever<br />

kæmper om at hverve de samme nye elever. De andre læremestre<br />

er dog ikke ninjaer, men derimod pirater der søger at hyre<br />

mandskab til deres skuder.<br />

Under valget af mission udsættes spilleren for en række<br />

strategiske valg… (ikke færdigudviklet).<br />

I en ”quick mission” er det kun nederste lag, altså selve<br />

missionen, som er aktuel. Her er et af målene som sagt at hverve<br />

ninja-elever, før de tager hyre på et piratskib (se mere om øvrige<br />

mål senere i dokumentet). Det gøres enten ved at hverve dem før<br />

piraterne, eller ved at nedkæmpe alle pirater, inklusive en kaptajn.<br />

Sensei skal dog være varsom med, hvem han hverver, for ikke<br />

alle elever er lige autoritetstro, og vil fratage Sensei kontrollen<br />

over de andre elever hvis de får chancen. Når en ninjaelev er<br />

73


74<br />

hvervet, skal han desuden oplæres til at forstå Senseis ordrer,<br />

hvad der kræver, at han ser, hvad Sensei foretager sig.<br />

Landskabet ses på den trykfølsomme skærm fra en perspektivløs<br />

tredjepersons kameravinkel, oppe fra og ned. Spilleren peger på<br />

den trykfølsomme skærm for at vælge hvor hovedpersonen Sensei<br />

skal bevæge sig hen, mens der på maskinens anden skærm vises<br />

et oversigtskort over hele landskabet. Dette oversigtskort vil fra<br />

starten af en mission være blankt, og først efterhånden som<br />

landskabet udforskes vil det blive udfyldt. På kortet vil venner og<br />

fjender fremgå som prikker. Fjenderne dog kun når de er synlige i<br />

forhold til Sensei eller en ninjaelev.<br />

Som det fremgår så er målet at give spilleren en spilverden i to lag. I det øverste lag<br />

udsættes spilleren for strategiske makro-valg, som påtænkes at have en indflydelse på<br />

mikro-valgene i missionerne. Det vil give den nødvendige integration mellem spillets<br />

øverste og nederste lag. Som det fremgår, er dette øverste lag dog ikke færdigudviklet,<br />

hvorfor det ikke vil blive belyst yderligere.<br />

I det nederste lag, altså missionerne, beskrives landskabet af de interne relationer mellem<br />

objekter som landsbyer, templer og skove. Hver landsby vil derunder være beskrevet i de<br />

interne relationer mellem objekter som huse, veje og åbne pladser, ligesom skovene vil<br />

bestå af træer og buske. Hvert objekt vil have en række attributter der beskriver dem,<br />

f.eks. størrelsen på et træ og placeringen af et hus. Disse attributter vil slutteligt have en<br />

indflydelse på den leg som dannes i spilverdenen eller miljøet.<br />

De mere aktive objekter er ninja-eleverne, piraterne, de potentielt nye elever og<br />

selvfølgelig Sensei som spilleren har direkte kontrol med. Hertil kommer andre objekter<br />

jeg vil beskrive nærmere i de følgende afsnit. En interessant attribut er<br />

intelligensniveauet, der beskriver hvor dygtige ninja-eleverne er til at forstå Senseis<br />

ordrer, mens det for piraterne er deres intelligens som beskriver, hvor gode de er til at<br />

finde de nye elever, til at holde vagt og til at nedkæmpe ninjaer. Den mest interessante<br />

attribut hos Sensei og hos ninja-eleverne er den som beskriver deres lederevner. Det<br />

miljø af meningsfuld leg som spillet skal danne, skal nemlig (blandt andet) opstå i<br />

spillerens balancering af Senseis lederevner. Disse begrænser antallet af elever han kan<br />

have under sin kontrol, og hverver han flere elever end hans lederevner rækker til, vil der<br />

være risiko for at eleverne selv begynder at kommandere med hinanden - er deres<br />

intelligens samtidig ikke særlig høj, så vil det hurtigt gå galt. Eksemplificeret vil det sige,<br />

at har Sensei en lederevne på 10, kan han højst lede f.eks. to elever med 5 i lederevne,<br />

eller fem elever med 2 i lederevne. Dette lyder som et simpelt problem, og med en lav<br />

lederevne er det da også tilfældet. Med en høj lederevne er det derimod svært at udnytte<br />

den optimalt, og faktisk er dette et problem i størrelsesordenen NP som også kaldes<br />

Knapsack-problemet [Wikipedia, Knapsack problem]. Det er samme problem man står<br />

overfor, når en rygsæk skal pakkes så mest muligt kan være i den.


Spilles kun en enkelt mission, vil Sensei blive tildelt en tilfældig lederevne, mens den<br />

under en Campaign vil stige efterhånden som flere missioner gennemføres. Jeg forestiller<br />

mig desuden, at Sensei i de sidste missioner har en stor hær af ninja-elever under sin<br />

ledelse, og at disse evt. kan opsplittes i mindre selvstyrende enheder, men jeg er ikke så<br />

langt i designet, at jeg kan sige med sikkerhed, at dette vil fungere teknisk (i Rainbow Six<br />

3 kan man f.eks. kun have tre soldater på sit hold).<br />

I designuddraget ovenfor beskrives også<br />

hvordan landskabet ses fra et perspektivløst<br />

fugleperspektiv. Dette er valgt, fordi jeg godt<br />

kan lide kameravinklen, fordi det er let at<br />

tegne grafik uden perspektiv, fordi det<br />

anvendes meget sjældent 19 og ikke mindst<br />

pga. den intensitet den giver. Et af de bedste<br />

eksempler på anvendelsen af perspektivet er<br />

Amiga-spillet Alien Breed (Team17, 1991),<br />

hvor det klare overblik over de umiddelbare<br />

omgivelser er en stor fordel, mens det<br />

manglende overblik over de lidt fjernere<br />

omgivelser bidrager positivt til den for spillets Figur 13: Alien Breed (Team17, 1991) har en<br />

tema meget passende intense klaustrofobiske klaustrofobisk perspektivløs kameravinkel<br />

stemning. I Silent Ninja Scream, hvor der findes åbne grønne landskaber oftere end<br />

indelukkede rumstationer, er en klaustrofobisk stemning dog ikke passende, hvorfor<br />

perspektivet assisteres af et oversigtskort der viser på maskinens øverste skærm. På den<br />

måde opnås et overblik over andet end de nærmeste omgivelser, og ved samtidig at undgå<br />

afdækning af hele oversigtskortet før landskabet er udforsket, så tilføjes et element af,<br />

ja… udforskning - en af menneskets grundlæggende drifter opfyldes dermed af spillet.<br />

11.1.1 Missioner<br />

Her vil jeg nu beskrive, hvordan missionerne genereres, hvad de består af og hvilke<br />

forskellige mål der er i dem.<br />

Missionerne i Silent Ninja Scream kan have et af følgende<br />

hovedmål:<br />

1. Hvervning af et bestemt antal ninjaelever.<br />

2. Nedkæmpning af et bestemt antal pirater.<br />

3. Nedkæmpning af piratkaptajn.<br />

4. Erobring af værdigenstand.<br />

5. Spionage.<br />

6. Eskort.<br />

19 I sin perspektivløse form. Er der et svagt horisontalt eller isometrisk perspektiv findes der utallige<br />

eksempler på spilverdener som ses oppe fra og ned. At perspektivet anvendes sjældent finder jeg<br />

forbløffende, for den ligeså perspektivløse set-direkte-fra-siden-kameravinkel er anvendt utallige gange<br />

med stor succes.<br />

75


76<br />

7. Forsvar af tempelskat eller lignende.<br />

8. …<br />

Hertil kommer en række frivillige delmål:<br />

1. Træning af ninjaelever.<br />

2. Dressering af panda som ridedyr.<br />

3. Indsamling af mindre værdigenstande.<br />

4. Udfør missionen lydløst (et krav under spionagemissioner).<br />

5. …<br />

Opfyldelse af delmål vil øge Senseis lederevner, ninjaelevernes<br />

intelligens og gøre opfyldelsen af hovedmålet lettere. Opfyldes<br />

hovedmålet afsluttes missionen i succes, ellers afsluttes den i<br />

fiasko.<br />

En mission foregår i et landskab der kan have et af følgende<br />

temaer:<br />

1. Landsby<br />

2. Tempel<br />

3. …<br />

Selve landsbyen eller templet fylder aldrig hele landskabet, og<br />

omgives altid af skov eller vand. I skoven findes pandaer som kan<br />

dresseres til ridedyr, og ved vandet findes piraternes skibe fyldt<br />

med pirater og værdigenstande. I landsbyen og templet findes de<br />

nye elever som både piraterne og Sensei er ude efter at hverve.<br />

Eksempler på ting der kan findes i landskabet:<br />

1. Mudderhuller der sløver tempoet og gør fødderne beskidte.<br />

2. Bambusskov hvori pandaer opholder sig.<br />

3. Floder hvor pandaer kan drikke vand.<br />

4. Rismarker hvor kvinder og børn arbejder.<br />

5. Bygninger (tempel eller hytte) hvori nye elever opholder sig.<br />

6. Indhegninger hvor pirater holder pandaer fanget.<br />

7. Kasser med våben (kastestjerner og sværd).<br />

8. Piratskibe med pirater.<br />

9. Træer og andet der kan bruges som skjul.<br />

10. Tåge der sænker synsradius for både venner og fjender.<br />

Det er disse ting som missionsgeneratoren skal placere tilfældigt i<br />

landskabet, sådan at f.eks. pandaer placeres i deres bambusskov<br />

og pirater ved vandet, ingen træer skal vokse på toppen af et hus,


ligesom et hus ikke må være placeret i en rismark og piratskibe<br />

skal ikke sejle her.<br />

(ikke færdigudviklet).<br />

En lang række af de objekter der findes i landskabet under en mission er blevet nævnt, og<br />

det bør fremgå at missionerne selv uden den tilfældige generering af landskabets layout<br />

kan foregå på flere forskellige måder. Jeg har under designet delvist implementeret<br />

missionstype 1 og delmål 2, mens missionsgeneratoren kan opfylde punkt 9. Det er en<br />

forholdsvis begrænset del af systemet, men mere har ikke været nødvendigt for at<br />

demonstrere hvordan stemmebaseret <strong>interaktion</strong> kan udnyttes på en ny måde.<br />

En realismeforøgende attribut for landskabet som jeg har eksperimenteret med under<br />

udviklingen er tåge med varierende tæthed, som skulle sænke ninjaelevernes synsradius.<br />

Da den samtidig ødelagde overblikket for spilleren er dette dog endnu ikke en<br />

velfungerende attribut. En mulig løsning ville være at gøre tågen gradvist tyndere jo<br />

tættere på Sensei den er, men da dette er beregningsmæssigt tungt er det ikke umiddelbart<br />

opnåeligt på Nintendo DS. Målet med at lade den bølge frem og tilbage var at tilføre den<br />

i teorien omtalte dynamiske generering af interessante valg - det vil være en fordel at<br />

angribe i ly af tågen, men også svært da angrebet skal times sådan at tågens tæthed er<br />

højest i det øjeblik det første slag falder.<br />

11.1.2 Venner og fjender<br />

Her vil jeg beskrive attributterne hos de objekter der har den måske største indflydelse på<br />

spillets miljø af meningsfuld leg, nemlig fjenderne i form af pirater og vennerne i form af<br />

ninjaelever og pandaer.<br />

De aktive karakterer i spillet findes i tre hovedkategorier:<br />

1. Venner, herunder ninjaelever og pandaer<br />

2. Fjender, herunder pirater og piratkaptajner<br />

3. Neutrale, herunder potentielle elever og risbønder<br />

Ninjaeleverne, det vil sige de allerede hvervede elever, har som<br />

deres to vigtigste egenskaber deres intelligens og deres lederevne,<br />

hvis betydning allerede er nævnt. Hertil kommer de statiske<br />

fysiske egenskaber styrke, størrelse, hurtighed, syn og hørelse,<br />

hvor sidstnævnte beskriver den radius som ninjaeleven kan adlyde<br />

Sensei indenfor og synet beskriver den radius som fjenderne kan<br />

ses indenfor. Der er også de dynamiske egenskaber synlighed og<br />

hastighed, hvor sidstnævnte er den hastighed som ninjaeleven<br />

bevæger sig med og førstnævnte er ninjaens aktuelle synlighed<br />

udregnet i forhold til omgivelserne, underlaget og hastigheden. Jo<br />

hurtigere ninjaeleven bevæger sig, jo større er chancen for at blive<br />

opdaget af piraterne.<br />

77


78<br />

For at lette implementeringen har alle andre aktive karakterer<br />

samme egenskaber, om end pandaen f.eks. ikke har brug for at<br />

kende til sin synlighed.<br />

En panda vil være større end ninjaeleverne, og kan derfor ikke gå<br />

på de smalleste stier (evt. uden at lave larm), men til gengæld har<br />

den en større styrke.<br />

Fjenderne har de samme egenskaber som ninjaeleverne, og vil<br />

ligeledes lave larm hvis de bevæger sig for hurtigt. En<br />

piratkaptajn adskiller sig fra de øvrige fjender ved at være større,<br />

stærkere og dygtigere til at angribe.<br />

Karaktererne har udover deres egenskaber, flere forskellige måder<br />

at handle på:<br />

1. Følg Sensei<br />

2. Bestig panda<br />

3. Angrib fjende<br />

4. Angrib fjende lydløst<br />

5. Stop og vent<br />

6. Patruljer tilfældigt omkring i landskabet<br />

7. …<br />

I et senere afsnit om spillets kunstige intelligens vil disse blive<br />

gennemgået.<br />

Som det fremgår, er hvert enkelt aktivt objekt eller karakter udstyret med en lang række<br />

attributter, der beskriver deres egenskaber i forhold til spilverdenen og påvirker de<br />

interne relationer mellem objekterne. Målet med at skabe så komplekse karakterer er at<br />

forøge spillets mulighedsrum, ved at lade karakterernes attributter påvirke de valg der<br />

skal træffes. Det vil eksempelvis være en fordel at bede en ninjaelev med en stor styrke<br />

om at angribe en fjende, mens en ninjaelev med høj hurtighed vil være god at sende ud<br />

for at patruljere omkring i landskabet med det mål at kortlægge det (som beskrevet<br />

tidligere er der på den øverste skærm et kort over landskabet, som først detaljeres<br />

efterhånden som der udforskes). Dermed har flere faktorer en indflydelse på de valg der<br />

skal træffes.<br />

Samtidig er målet med de komplekse karakterer at tilfører troværdighed eller realisme i<br />

de interne relationer mellem objekterne. En interessant attribut er hørelsen, der har<br />

betydning for spillerens brug af talekommandoer, idet piraterne, hvis de har en god<br />

hørelse og står i nærheden af Sensei, vil høre talekommandoerne og dermed opdage<br />

Sensei og hans ninjaelever. Ninjaeleverne vil ligeledes kun kunne angribe en fjende hvis<br />

de kan se ham og bestige en panda hvis de kan se den. Under udviklingen har jeg<br />

implementeret de aktive karakterer som såkaldte ”rigid bodies”, eller objekter der


påvirkes af realistiske fysiske begrænsninger (Newton osv.), men mere om det i kapitel<br />

13 om teknik. Årsagen til fysisk simulation er igen at opnå troværdighed i de interne<br />

relationer mellem objekterne - to karakterer der støder sammen vil f.eks. blive frastødt<br />

hinanden sådan at den stærkeste flytter sig mindst.<br />

11.2 Semantisk og pragmatisk opbygning<br />

Efter at have diskuteret spillets formelle eller syntaktiske opbygning, vil jeg kort belyse<br />

de næste lag.<br />

Semantisk set (eksperientelt ifølge Salen & Zimmerman) er spillets ene objekt spilleren,<br />

attributterne er Sensei og ninjaeleverne, da det er disse spilleren kan kontrollere, de<br />

interne relationer er selve <strong>interaktion</strong>en med spillet og miljøet er de umiddelbare fysiske,<br />

psykologiske og kulturelle omgivelser i form af blandt andet selve maskinen, støjniveauet<br />

og spillerens humør.<br />

I dette lag bliver flere vigtige egenskaber ved spillet fremlagt. Interaktionen er naturligvis<br />

altafgørende, og vil blive belyst detaljeret i næste kapitel, mens objektet i form af<br />

spilleren er sværere at tage hensyn til. Jeg har som nævnt tidligere valgt en munter og lys<br />

stemning og visuel stil til spillet, for netop at sikre at alle kan være med, men selv dette<br />

vil givetvis afskrække nogle. Målgruppeanalyser er dog et helt emne for sig selv, og et<br />

emne jeg har valgt ikke at gå mere ind i. Attributterne belyst semantisk vil beskæftige sig<br />

med blandt andet spillets visuelle fremtoning, hvad jeg vil behandle kort i kapitel 14.<br />

Overvejelser omkring systemets semantiske miljø, er svære og f.eks. spillerens humør er<br />

næsten umuligt at tage hensyn til. At talekommandoer vil være en del af <strong>interaktion</strong>en gør<br />

dog alligevel dette element interessant, for hvordan tages hensyn til om spilleren taler i et<br />

ophidset tonefald? Det er et spørgsmål, jeg vil lade stå åbent, da jeg ikke teknisk kan løse<br />

det. Men det ville da være sjovt, hvis ninjaeleverne hørte bedre efter, hvis spilleren var<br />

sur.<br />

Pragmatisk set (kulturelt ifølge Salen & Zimmerman) er objektet hele spillet,<br />

attributterne er informationer om spillets forskellige dele som campaign, mission, Sensei,<br />

osv., samt om udvikleren (mig) og udviklingsprocessen. De interne relationer beskriver<br />

f.eks. den historiske sammenhæng mellem pirater og ninjaer og grunden til at ninjaer er<br />

klædt i sort, mens miljøet er kulturen som spillet eksisterer i.<br />

At det pragmatiske syn på spil som et system kan være vigtigt, er demonstreret af<br />

spiludvikler og udgiver Electronic Arts, der de seneste år har fået megen dårlig omtale<br />

pga. sine udviklingsmetoder hvor medarbejderne presses hårdt og spillenes kvalitet ofres<br />

til fordel for julesalget [<strong>Game</strong>Daily Biz, 03-12-2004]. En parallel ses i indie-udviklerne<br />

der er blevet populære, fordi det generelt anses for sympatisk og imponerende når små<br />

grupper udvikler gode spil med få ressourcer. Popularitet betyder bedre salgstal, og det<br />

mærker både indie-udviklerne og Electronic Arts. I min situation er det svært at sige<br />

noget fornuftigt om dette, men jeg har da tilpasset både min metode og selve spillet til<br />

mine ressourcer og evner. De historiske paralleller mellem eksempelvis ninjaer i mit spil<br />

og i virkeligheden eksisterer naturligvis, og en analyse af disse ville være mulig. Jeg<br />

79


synes dog ikke det er så interessant i forhold til min problemstilling, at jeg vil bruge tid<br />

på det.<br />

11.3 Opsummering<br />

I kapitlet er spillets formelle og syntaktiske opbygning blevet gennemgået. Opsummeret<br />

så består spillet af to lag, nemlig det øverste campaign-lag og det nederste missions-lag.<br />

Missionerne og deres objekter, attributter, interne relation og miljø er blevet fremlagt og<br />

det ses at de vigtigste objekter er Sensei, ninjaelever og pirater som sammen med<br />

objekterne som danner landskabet beskriver de interne relationer som spilleren skal<br />

påvirke og dermed opleve et miljø af meningsfuld leg. Denne påvirkning er emnet for det<br />

følgende kapitel om spillets <strong>interaktion</strong>, der også kan ses som de mere detaljerede<br />

overvejelser af spillet som et semantisk system.<br />

80


12 Interaktion<br />

Jeg har tidligere beskrevet hvordan den største udfordring under designet af et spil, er<br />

konstruktionen af et system der dynamisk generer interessante og integrerede valg med<br />

synlige reaktioner - altså meningsfuld leg. Det er den del af designet som der er blevet<br />

brugt mest tid på, fordi selve <strong>interaktion</strong>en i forhold til semestrets tema er den mest<br />

interessante, da det er her innovationen skal søges.<br />

Valgene i missionerne handler overordnet set om at vælge de rigtige elever for at have så<br />

mange som muligt med sig, og om at kommandere dem rundt for at løse missionens<br />

hovedmål og eventuelt også delmål. Typen af valg i spillet er dels denne tydelige, næsten<br />

forgrenende type som normalt forbindes med valg, men også endeløse mikro-valg kædet<br />

sammen i en længere sekvens er meget vigtige for spillet. Herunder tæller ting som<br />

hvilken vej rundt om et træ der vælges, hvilken hastighed der bevæges i, hvilken måde<br />

der angribes på osv. Altså består en mission dels af valg på makro-niveauet hvor f.eks.<br />

eleverne hverves, og dels af valg på mikro-niveau omhandlende måden ninjaeleverne og<br />

Sensei bevæger sig rundt på og hvordan de handler.<br />

For at opnå en klarhed i den teoretiske analyse af designet, har jeg udvalgt nogle få af de<br />

valg spilleren kan træffe og vil i de næste afsnit fokusere på hvordan netop de valg gøres<br />

synlige, integrerede og interessante. Der skal naturligvis træffes flere valg end følgende,<br />

men en komplet belysning af spillets valg ville forkludre analysen (og kræve mere tid):<br />

I. Spilleren kan vælge at hverve en ny ninjaelev til Sensei.<br />

II. Spilleren kan vælge at bede Sensei om at bestige en panda.<br />

III. Spilleren kan vælge at bede Sensei om at angribe en fjende.<br />

IV. Spilleren kan vælge at bevæge Sensei i enhver retning i flere hastigheder.<br />

V. Spilleren kan vælge at selektere en ninjaelev, som derefter vil forfølge Sensei.<br />

VI. Spilleren kan vælge at give den selekterede elev besked på at bestige en panda.<br />

VII. Spilleren kan vælge at beordre den selekterede elev til at angribe nærmeste fjende.<br />

VIII. Spilleren kan vælge at få eleverne til at stoppe op og ikke længere følge Sensei.<br />

Listen over spørgsmål der kan hjælpe at sikre at disse valg er synlige, integrerede og<br />

interessante var følgende:<br />

1. Hvad skete der før spilleren fik valget?<br />

2. Hvordan vises muligheden for valg til spilleren?<br />

3. Hvordan udfører spilleren valget?<br />

4. Hvad er resultatet af valget, og hvordan påvirker det fremtidige valg?<br />

5. Hvordan vises resultatet til spilleren?<br />

Hvor spørgsmål 1 og 4 handler om integration og interessante valg, spørgsmål 2 og 5 om<br />

synlighed i output og spørgsmål 3 om synlighed i input.<br />

81


Spillet er på alle måder multimodalt, forstået som at der både gives input og output på<br />

flere forskellige måder. Her beskrives nu inputmodaliteterne, hvor som nævnt især<br />

spørgsmål 3 især er blevet overvejet.<br />

12.1 Taktilt input<br />

Spilleren giver spillet input på to måder. Der er dels en direkte kontrol med Sensei via<br />

knapper og trykfølsom skærm, og dels en indirekte kontrol med ninjaeleverne via<br />

talekommandoer. Den første form for input jeg beskriver, er den der gives via knapperne<br />

på Nintendo DS. Figuren herunder illustrerer de forskellige muligheder maskinen har for<br />

taktilt input:<br />

Figur 14: De taktile inputmuligheder på Nintendo DS<br />

Når den trykfølsomme skærm anvendes, så mistes muligheden for at anvende enten<br />

styrekryds + L eller frontknapper + R da enten højre eller venstre hånd bruges til at holde<br />

den pen der bruges på skærmen. Samtidig er det kun L eller R (afhængig af hvilken hånd<br />

spilleren bruger) der er ergonomisk let tilgængelig 20 , mens brug af styrekryds og<br />

frontknapper kræver at maskinen holdes på en bestemt måde. Her følger<br />

designdokumentets beskrivelse af den taktile input.<br />

20 Subjektiv vurdering<br />

82


Kontrollen med Sensei foregår ved at spilleren via den<br />

trykfølsomme skærm peger på det sted i landskabet Sensei skal<br />

bevæge sig hen. Jo længere væk der peges, jo hurtigere bevæger<br />

Sensei sig - på den måde er det også muligt at få Sensei til at<br />

snige sig af sted ved at pege meget tæt på ham. L eller R,<br />

afhængig af om spilleren er højre- eller venstrehåndet, bruges til<br />

at udføre alle tilgængelige handlinger, og er kontekstsensitiv i den<br />

forstand at når spilleren trykker på den, så reageres der afhængigt<br />

af situationen. Følgende reaktioner kan affødes af et tryk på denne<br />

knap:<br />

1. Hvis Sensei står i nærheden af en potentiel elev vil han hverve<br />

denne som ny ninjaelev.<br />

2. Hvis Sensei står i nærheden af en panda vil han bestige den.<br />

3. Hvis Sensei står i nærheden af en fjende vil han angribe.<br />

4. …<br />

Reaktionerne har gradvist højere prioritet, altså vil der f.eks. ikke<br />

kunne hverves en elev så længe der er en synlig fjende i<br />

nærheden.<br />

Målet med denne opsætning af den taktile input har været at opnå simplicitet for spilleren<br />

(uden at dennes mulighedsrum minimeres), da jeg mener at simplicitet fordrer synlighed i<br />

input - er der kun én knap, så er det meget synligt hvad der kan trykkes på. Udfordringen<br />

ligger ikke i at trykke på de rigtige knapper, men nærmere i at trykke på det rigtige<br />

tidspunkt. Spilleren udfører altså altid et valg med den samme knap, men gennem<br />

systemets pragmatiske analyse af situation i spilverdenen, vælges det automatisk hvad der<br />

sker når der trykkes på knappen.<br />

Det ses at designdokumentet har besvaret spørgsmål 3; hvordan udføres valget, med<br />

hensyn til de fire af de otte valg som spilleren stilles:<br />

I. Spilleren kan vælge at hverve en ny ninjaelev til Sensei.<br />

o Dette gøres ved at placere Sensei i nærheden af ninjaeleven og trykke på<br />

knappen.<br />

II. Spilleren kan vælge at bede Sensei om at bestige en panda.<br />

o Dette gøres ved at placere Sensei i nærheden af pandaen og trykke på<br />

knappen.<br />

III. Spilleren kan vælge at bede Sensei om at angribe en fjende.<br />

o Dette gøres ved at trykke på knappen mens en fjende er nær Sensei.<br />

IV. Spilleren kan vælge at bevæge Sensei i enhver retning i flere hastigheder.<br />

o Dette gøres ved hjælp af den trykfølsomme skærm, hvor der peges på<br />

Senseis destination. Hastigheden afhænger af hvor langt væk der peges.<br />

Besvarelsen af spørgsmål 3 med hensyn til de fire andre valg følger i næste afsnit.<br />

83


Ergonomisk besværlig brug af maskinen er i øvrigt søgt undgået, ved at vælge L eller R<br />

som den vigtigste knap. At spillet kan kontrolleres med kun én knap har dog selvfølgelig<br />

gjort dette designvalg meget let at træffe - det ville være dumt at vælge en anden knap.<br />

12.2 <strong>Stemmebaseret</strong> input<br />

Her fortsættes beskrivelsen af spillets input, der som nævnt flere gange også inkluderer<br />

input via tale.<br />

84<br />

Den anden måde spilleren giver input på er via talekommandoer.<br />

Hver gang Sensei gør noget som han ikke tidligere har gjort, vil<br />

spilleren skulle indtale en talekommando der kan forbindes med<br />

denne handling. Derefter vil eleverne (de som så Sensei udføre<br />

handlingen) kunne instrueres i at gøre det samme som Sensei kan.<br />

Følgende talekommandoer skal indtales:<br />

1. ”STOP” når Sensei første gang stopper op. Denne kommando<br />

vil få eleverne til at stoppe op og lade være med at følge<br />

Sensei.<br />

2. ”NINJA” når Sensei første gang hverver en ninjaelev. Denne<br />

talekommando bliver den mest brugte, idet den også bruges til<br />

at vælge en ninjaelev der er stoppet op og få denne til følge<br />

Sensei igen, ligesom den kan kædes sammen med de følgende<br />

kommandoer. Siger spilleren ”NINJA” er det den ninjaelev<br />

som Sensei kigger på der vil blive valgt, og altså ikke blot den<br />

nærmeste.<br />

3. ”MOUNT” når Sensei første gang bestiger en panda. Kan<br />

senere bruges for at få ninjaeleverne til at bestige en panda<br />

med kommandoen ”NINJA” (hvorefter den elev som Sensei<br />

kigger på vælges) + ”MOUNT” (hvorefter den for den valgte<br />

elev nærmeste panda bestiges).<br />

4. ”ATTACK” når Sensei første gang angriber en fjende. Kan<br />

ligesom ”MOUNT” kombineres med ”NINJA” for at<br />

kommandere en bestemt elev til at angribe nærmeste fjende.<br />

5. …<br />

Talekommandoerne er valgt sådan, at der er adgang til flere instruktioner end der er<br />

talekommandoer til, ved at tillade kombination af talekommandoer. Dette er<br />

hovedsageligt gjort af tekniske årsager, men den opnåede simplicitet er et uventet plus.<br />

Med kun en håndfuld forskellige talekommandoer at huske på, kompliceres input ikke<br />

unødigt og det undgås at spilleren skal huske på en større grammatik. Et interessant<br />

designvalg findes i måden ninjaeleverne selekteres på. Her tages igen pragmatiske<br />

hensyn 21 , idet ninjaeleverne kun er modtagelige for talekommandoer mens Sensei kigger<br />

21 Pragmatisk i spilverdenens kontekst, og ikke som i det tidligere omtalte kulturelle syn på selve systemet.


på dem. På den måde undgås det at skulle kalde hver ninjaelev ved navn, hvilket ville øge<br />

antallet af ord der skulle trænes betydeligt (hvad der heller ikke rent teknisk ville gå an).<br />

Følgende grammatik i BNF beskriver formelt hvordan talekommandoerne kædes<br />

sammen.<br />

COMMAND → X Y<br />

X → NINJA<br />

Y → STOP | MOUNT | ATTACK | ε<br />

Yderligere er ordene valgt sådan at de fonetisk ikke<br />

minder om hinanden, og ikke indeholder hviskende<br />

lyde der er svære at genkende digitalt pga. deres<br />

spektrale lighed med støj. Den fonetiske<br />

transskription af kommandoerne ser ud som på Figur<br />

15Error! Reference source not found., og<br />

sammenlignes med IPA-kortet i bilag A ses det at der<br />

ikke findes foner fra kolonnerne ”dental” (lyde dannet<br />

lige bag tænderne) og ”glottal” (lyde dannet nederst i<br />

halsen), der dem som har størst lighed med<br />

Figur 15: Fonetisk transskription af<br />

spillets grammatik ifølge Longman<br />

Dictionary of Contemporary English<br />

[Longman].<br />

almindelig støj. Det mest problematiske ord er ATTACK, fordi trykket ligger efter første<br />

stavelse, hvad der kan forvirre genkenderen til at tro, at den første del af ordet er støj som<br />

skal fjernes, mens den sidste stavelse så forveksles med STOP. Praktiske tests (læs: ludic<br />

engineering / leg med spillet) har dog vist at problemet er meget lille, med den genkender<br />

jeg har lavet, pga. den pragmatiske tilgang. En af mine overvejelser har været at udskifte<br />

de engelske ord med tilsvarende japanske da de vil passe godt ind i spillets tema, og da<br />

disse ifølge mine egne undersøgelser (via engelsk-japansk ordbøger) har meget simple og<br />

forskellige fonetiske transskriptioner. Slutteligt valgt jeg dog, at dette ville virke<br />

unaturligt på de fleste spillere, da engelsk er mere almindeligt brugt - selv i japanske spil<br />

bruges der ofte engelsk. En multilingual udvidelse af spillet ville dog være forholdsvis<br />

simpel at implementere, og spilleren kan da også selv vælge at indtale andre ord end der<br />

bliver bedt om, da talegenkenderen ikke har noget forhåndskendskab til ordenes fonetiske<br />

opbygning.<br />

Medregnet de nævnte ergonomiske begrænsninger hvad angår taktilt input (at der kun<br />

kan bruges én knap), så tilfører talekommandoerne mulighed for at give spillet input på<br />

flere måder end det ellers ville være muligt. Selv den ”pragmatisk opmærksomme” knap<br />

der bruges som den eneste af maskinens knapper, ville ikke kunne gætte hvornår spilleren<br />

ville have ninjaeleverne til at stoppe, hvormed jeg vil påstå at talekommandoerne er den<br />

optimale form for input i dette spil.<br />

Problemet med talekommandoer er at de ikke altid genkendes korrekt, hvorfor jeg<br />

inddrager pragmatisk analyse i genkendelsen, for at udelukke nogle muligheder og<br />

dermed øge chancen for at det korrekte ord genkendes. Er en ninjaelev ikke i nærheden af<br />

en panda, så er det ikke sandsynligt, at spilleren sagde MOUNT, bevæger ninjaeleven sig<br />

ikke er det ikke sandsynligt, at spilleren sagde STOP, er der ingen fjender i nærheden kan<br />

85


ATTACK udelukkes og kigger Sensei ikke på en ninjaelev kan det udelukkes, at spilleren<br />

sagde NINJA. På den måde kan det med stor sikkerhed altid afgøres, hvad spilleren<br />

sagde, og denne pragmatiske analyse af situationen i spilverdenen kan derfor udnyttes,<br />

når talekommandoens semantiske betydning skal fortolkes. I spillets kode er det f.eks. et<br />

funktionskald som dette; ninjaelev.mount(panda) 22 , der bliver den semantiske logik som<br />

kaldes når genkenderen opdager ordet MOUNT (efter først at have genkendt NINJA og<br />

valgt en bestemt ninjaelev til at modtage kommandoen). Viser den efterfølgende<br />

pragmatiske analyse, at handlingen ikke er meningsfuld, vil den ikke blive udført. Mit<br />

navn for denne teknik er kontekstsensitiv talegenkendelse.<br />

I dette afsnit er spørgsmål 3; hvordan udføres valget, blevet besvaret med hensyn til de<br />

fire sidste muligheder for valg som spilleren har:<br />

V. Spilleren kan vælge at selektere en ninjaelev, som derefter vil forfølge Sensei.<br />

o Dette gøres ved sige NINJA mens Sensei kigger i retning af den ninjaelev<br />

som ønskes selekteret.<br />

VI. Spilleren kan vælge at give den selekterede elev besked på at bestige en panda.<br />

o Dette gøres ved at sige MOUNT mens en ninjaelev er selekteret.<br />

VII. Spilleren kan vælge at beordre den selekterede elev til at angribe nærmeste fjende.<br />

o Dette gøres ved at sige ATTACK mens en ninjaelev er selekteret.<br />

VIII. Spilleren kan vælge at få eleverne til at stoppe op og ikke længere følge Sensei.<br />

o Dette gøres ved at sige STOP, hvorved alle elever der følger Sensei<br />

stopper op.<br />

Med dette er det belyst hvordan alle (de otte udvalgte) valg i spillet udføres, og den del af<br />

<strong>interaktion</strong>en der beskæftiger sig med spillets output kan nu analyseres.<br />

12.3 Output<br />

God <strong>interaktion</strong> opstår først, når spillet synligt reagerer på spillerens input, og ligesom i<br />

denne så er multimodalitet også brugt i spillets output. Der anvendes grafisk output via de<br />

to skærme, auditivt output i form af tale, lydeffekter og musik og til sidst taktilt output<br />

via en vibrator 23 . Flere af disse outputmodaliteter er dog ikke meget længere end idé eller<br />

testkode-stadiet, hvorfor jeg i de følgende afsnit vil koncentrere mig om af grafisk output<br />

af forskellig art, og lyd i form af talesyntese.<br />

Målet med spillets output er at opnå den altafgørende synlighed i alt hvad spilleren<br />

foretager sig. At dette er vigtigt ses også i de fem tidligere nævnte spørgsmål, hvoraf både<br />

2 og 5 drejer sig om synlighed i output. For at genopfriske dem:<br />

86<br />

2. Hvordan vises muligheden for valg til spilleren?<br />

5. Hvordan vises resultatet [af et valg] til spilleren?<br />

22 Pseudokode - spillet er implementeret i C++<br />

23 Nintendo DS har mulighed for at afspille både Nintendo DS og <strong>Game</strong> Boy Advance-spil. Nogle <strong>Game</strong><br />

Boy Advance-spilkassetter har indbygget vibrator der kan kontaktes fra et Nintendo DS-spil.


Det er disse to spørgsmål, jeg søger at besvare for de (otte udvalgte) valg spilleren har<br />

mulighed for at træffe.<br />

Grafisk har spillet to måder at reagerer på spillerens handlinger.<br />

Det sker enten via grafiske reaktioner fra karaktererne eller<br />

landskabet, eller via information placeret i et grafisk interface<br />

synligt over selve spilverdenen. Hertil kommer det nævnte<br />

grafiske oversigtskortet på maskinens øverste skærm.<br />

Her følger en liste over handlinger spilleren kan udføre, efterfulgt<br />

at den reaktion spillet vil levere:<br />

1. Sensei styres mod et bestemt mål med en bestemt fart.<br />

Sensei vil begynde at bevæge sig mod målet, i en fart der<br />

afhænger af afstanden derhen. I det grafiske interface vil en måler<br />

vise, hvor meget støj Sensei laver, mens han bevæger sig, og<br />

spilleren vil kunne se sammenhængen mellem hastighed og<br />

støjniveau.<br />

2. Sensei hverver en ny ninjaelev.<br />

Eleven vil trække i ninjabeklædning og begynde at følge efter<br />

Sensei. På oversigtkortet vil den nye ninjaelev blive tilføjet som<br />

en prik i landskabet. I det grafiske interface vil en måler tilføje<br />

ninjaelevens lederevner til summen af alle ninjaelevers<br />

lederevner, og hvis de overstiger Senseis egen lederevne vil det<br />

fremgå. Måleren er udformet som en lodret bar der farvelægges<br />

efterhånden som flere ninjaelever kommer til. Den er grøn, når<br />

Senseis lederstatus ikke er truet, og rød når den er overgået af<br />

eleverne - oftest er den dog en gradientfarve mellem grøn og rød.<br />

3. Sensei bestiger en panda.<br />

Sensei kravler op på pandaen, mens hans prik på oversigtskortet<br />

bliver større for at vise, at han ridder.<br />

4. Sensei angriber en fjende.<br />

Sensei kaster kastestjerner efter fjenden eller slår på ham med sit<br />

nærkampsvåben (ikke færdigudviklet). På oversigtkortet skifter<br />

prikken der repræsenterer Sensei farve til rød, for at vise at han er<br />

i kamp.<br />

Er det første gang i en campaign eller quick mission at de nævnte<br />

handlinger forekommer, skal spilleren tilknytte en talekommando<br />

til handlingen, for at kunne beordre ninjaeleverne til også at<br />

udføre handlingen. Når der skal indtales en ny talekommando<br />

fortælles dette til spilleren i en tankeboble hvor Sensei skal<br />

87


88<br />

forestille at tænke over situationen. Eksempler på tankebobler er<br />

følgende:<br />

1. ”…yes, this panda is a fine MOUNT”<br />

2. “…hmm, I feel he will develop into a first-class NINJA”<br />

3. “…speed is crucial, why did I STOP?”<br />

4. “…the enemy has fallen to my deadly ATTACK”<br />

Hvor spilleren forventes at sige ordet skrevet med store bogstaver.<br />

En anden dialog vil derefter instruere spilleren I hvordan<br />

talekommandoen indtales (evt. kun første gang) (ikke<br />

færdigudviklet).<br />

Med talekommandoerne indtalt, har spilleren mulighed for at<br />

udføre følgende handlinger:<br />

1. Spilleren selekterer en ninjaelev.<br />

Er eleven ikke allerede blandt de elever som følger efter Sensei,<br />

vil han gøre det nu. Selve selekteringen vises ved, at en lysende<br />

cirkel placeres omkring eleven både i spilverdenen og på<br />

oversigtskortet. I det grafiske interface vil ikoner vise elevens<br />

intelligensniveau som de kommandoer han kan forstå - altså de<br />

handlinger han har set Sensei udføre, ligesom støjmåleren vil<br />

stige kortvarigt. Selve selektionen vil være aktiv i fem sekunder,<br />

hvorunder spilleren har mulighed for at afgive yderligere<br />

talekommandoer.<br />

2. Spilleren beordrer den selekterede elev til at bestige en panda.<br />

Eleven kravler op på pandaen, mens hans prik på oversigtskortet<br />

bliver større for at vise at han ridder. I det grafiske interface stiger<br />

støjmåleren kortvarigt.<br />

3. Spilleren beordrer den selekterede elev til angreb på en fjende.<br />

Eleven kaster kastestjerner efter fjenden eller slår på ham med sit<br />

nærkampsvåben (ikke færdigudviklet). På oversigtkortet skifter<br />

prikken der repræsenterer eleven farve til rød for at vise, at han er<br />

i kamp. I det grafiske interface stiger støjmåleren kortvarigt.<br />

4. Spilleren beordrer eleverne til at stoppe op.<br />

Hvad der selvfølgelig får eleverne til at stoppe op. I det grafiske<br />

interface stiger støjmåleren kortvarigt.<br />

Fjenderne vil reagere på lignende måder, så de vil ikke blive<br />

gennemgået yderligere. Alle fjender og potentielle elever vil<br />

desuden kommunikere deres statiske egenskaber grafisk. Her vil<br />

eleverne f.eks. vise deres lederevner, inden Sensei hverver dem i


farven på deres pandebånd. Røde pandebånd betyder høj<br />

lederevne, mens grønne betyder lav. Også intelligensniveauet vil<br />

fremgå af ninjaelevens beklædning - jo flere kommandoer han<br />

forstår, jo mørkere vil ninjadragten være.<br />

Til sidst vil der være output i form af tale. Ninjaeleverne vil<br />

bekræfte deres ordrer verbalt, ligesom de selv vil afgive ordrer<br />

hvis Sensei ikke har tilstrækkelig høj lederevne til at kontrollere<br />

alle ninjaelever. De afgivne ordrer vil være identiske med dem<br />

spilleren har mulighed for at give, dog begrænset af elevens<br />

intelligensniveau. Har eleven f.eks. ikke set Sensei angribe, kan<br />

han ikke kommandere andre elever til at gøre det. Også piraterne<br />

afgiver talekommandoer, hvilket gør at spilleren kan høre dem, og<br />

se dem kortvarigt på oversigtskortet selvom de er ude af syne.<br />

(taktilt output, musik og lydeffekter er ikke færdigudviklet)<br />

Ovenstående del af spillets designdokument har beskrevet hvordan spillets output<br />

fungerer. Jeg har valgt at give grafisk output på flere måder, alt afhængigt af hvad jeg<br />

fandt, ville give den synligste reaktion på de forskellige handlinger. At jeg har valgt at<br />

have et grafisk interface med yderligere information ovenpå selve spilverdenen, er valg<br />

der er inspireret af teknologien som spillet udnytter. Uden at fordybe mig i de tekniske<br />

detaljer, så er årsagen, at det er teknisk fordelagtigt kun at lade spilverdenen dække et<br />

udsnit af skærmen, sådan at en tynd kant i både højre og venstre side ikke udnyttes.<br />

Denne tomme plads kan så i stedet bruges til et grafisk interface, hvor målere af<br />

forskellig art placeres. En anden overvejelse jeg havde omkring udnyttelsen af denne<br />

tomme plads, var om der kunne placeres yderligere knapper her (skærmen er trykfølsom),<br />

men den simple input som talekommandoerne indførte gjorde dette overflødigt. Dermed<br />

bruges den trykfølsomme skærm som nævnt tidligere kun til at kontrollere Sensei.<br />

På trods af dette grafiske interface, har jeg dog søgt at holde mest mulig output i selve<br />

spilverdenen, da det er her spilleren vil have sit fokus og outputtet vil derfor få den største<br />

synlighed her. Utallige målere, tal og anden information ville blot fjerne spillerens<br />

opmærksom fra spilverdenen, hvad der kan få uheldige følger og føre til frustration, fordi<br />

synligheden ikke er høj nok, når spillerens fokus er andetsteds.<br />

Informationen der gives på oversigtskortet er ikke af tidskritisk afgørende karakter,<br />

hvorfor den kan placeres på den anden skærm hvor synligheden givetvis vil være lavest.<br />

Spilleren vælger selv, hvornår det er nødvendigt at kigge på den øverste skærm.<br />

Jeg har noteret mig at intelligens i spil (og i den virkelig verden) ofte modelleres som et<br />

tal, eller en IQ. Jeg mener dette er en forkert måde at måle intelligens på, fordi det er<br />

muligt at være dygtig på ét område og dårlig på et andet. Derfor vælger jeg i stedet at<br />

modellere intelligens som en tilstandsmaskine - jo flere strenge den accepterer, jo højere<br />

intelligens. Det er dette princip der fremgår af de ikoner som viser hvilke<br />

talekommandoer en selekteret ninjaelev kan forstå. Grunden til at jeg har valgt ikoner,<br />

89


frem for eksempelvis symboler er, at spillerens muligheder for valg i dette tilfælde skal<br />

have en høj synlighed, hvad en direkte afbildning af reaktionen på valget vil give.<br />

Output via tale har på nuværende stadie en ret begrænset rolle, men imitationen af<br />

spillerens måde at give talekommandoer medfører nogle interessante overvejelser. For det<br />

første vil en talekommando fra en ninjaelev selvfølgelig lyde fra maskinens højtalere,<br />

hvad der samtidig betyder, at talegenkenderen opfanger den. Minder spillerens stemme<br />

tilfældigvis om ninjaelevens, vil det betyde, at spillet tror, at spilleren har afgivet en<br />

talekommando, da det jo er trænet i at genkende spillerens stemme. Sandsynligheden for<br />

at dette sker, er dog ret lille og det kan helt undgås ved at afbryde talegenkenderen når<br />

elverne taler. En lignende problematik ligger i støjmåleren, og hvornår den skal give<br />

udsving. Skal det give udsving uanset hvad spilleren siger, eller kun når et ord<br />

genkendes? Jeg har valgt første løsning, pga. originaliteten i det, men flere praktiske tests<br />

må vise om det reelt kan fungere uden at frustrere.<br />

En mere interessant konsekvens af imitationen er at den kan have en opdragende effekt<br />

på spilleren, hvorfor man kunne forestille sig en introduktionsmission hvor en højere<br />

rangerende ninja underviste Sensei i brugen af talekommandoer. Dette er dog indtil<br />

videre ikke afprøvet i praksis, hvorfor jeg ikke diskuterer det yderligere. Til sidst er det<br />

interessant, at piraterne anvender samme talekommandoer til at kommunikere, hvad der<br />

kan have den samme opdragende effekt.<br />

Målet var som nævnt at besvare spørgsmål 2 og 5, altså hvordan muligheden for, og<br />

reaktionen af, et valg vises. Her besvares disse spørgsmål med henblik på alle de (otte<br />

udvalgte) valg som spilleren kan træffe.<br />

I. Spilleren kan vælge at hverve en ny ninjaelev til Sensei.<br />

o Den potentielle elev viser, at han kan hverves ved at have et pandebånd på,<br />

som yderligere med sin farve viser konsekvensen af en hvervning, nemlig<br />

i hvor høj grad Sensei vil kunne bibeholde sin lederstatus. Den faktiske<br />

hvervning vises ved at eleven får ninjabeklædning på og begynder at følge<br />

efter Sensei.<br />

II. Spilleren kan vælge at bede Sensei om at bestige en panda.<br />

o Der er intet som viser, at pandaen kan bestiges, idet der antages et<br />

kendskab til spillets muligheder. Den logiske konsekvens af, at Sensei<br />

bestiger en panda er at han placeres på den, mens en mindre grafisk<br />

reaktion finder sted på oversigtskortet.<br />

III. Spilleren kan vælge at bede Sensei om at angribe en fjende.<br />

o Der er intet som viser, at fjenden kan angribes, idet der antages et<br />

kendskab til spillets muligheder. Konsekvensen af, at Sensei angriber en<br />

fjende, er, at en kamp indledes, mens en mindre grafisk reaktion finder<br />

sted på oversigtskortet.<br />

IV. Spilleren kan vælge at bevæge Sensei i enhver retning i flere hastigheder.<br />

o Det antages, at spilleren ved, at Sensei kan bevæges ved at der peges på<br />

skærmen, men valget vises ved at Sensei bevæger sig. På det grafiske<br />

interface påvirkes en måler der viser hvor meget Sensei larmer.<br />

90


V. Spilleren kan vælge at selektere en ninjaelev, som derefter vil forfølge Sensei.<br />

o Spilleren er informeret om at målet med missionen er at hverve<br />

ninjaelever, hvorfor muligheden for at selektere en elev er kendt. Selve<br />

selektionen vises med en lysende ring omkring ninjaeleven, mens det<br />

grafiske interface opdateres med informationer om elevens intelligens.<br />

Selektionen vil være aktiv i fem sekunder, hvorefter den afbrydes.<br />

VI. Spilleren kan vælge at give den selekterede elev besked på at bestige en panda.<br />

o I det grafiske interface vises hvilke talekommandoer den selekterede elev<br />

kan forstå. Reaktionen af valget er, at eleven bestiger pandaen.<br />

VII. Spilleren kan vælge at beordre den selekterede elev til at angribe nærmeste fjende.<br />

o Som ovenstående.<br />

VIII. Spilleren kan vælge at få eleverne til at stoppe op og ikke længere følge Sensei.<br />

o Muligheden for dette valg er blevet vist, da Sensei stoppede op første<br />

gang. Reaktionen på valget er at eleverne stopper.<br />

Med dette er synligheden i <strong>interaktion</strong>en analyseret færdig. Integrationen i valgene og om<br />

de er interessante diskuteres kort i næste afsnit hvor der argumenteres for hvordan disse<br />

tre elementer til sammen vil føre til dannelsen af meningsfuld leg.<br />

12.4 Meningsfuld leg<br />

Det blev nævnt i kapitel 4, at alle spillets valg skal have konsekvens, da de ellers ville<br />

være overflødige og ikke interessante. Jeg vil ikke gennemgå alle valgene, men<br />

eksempelvis er konsekvensen af noget så simpelt som at bestige en panda, at Sensei eller<br />

ninjaeleven bevæger sig langsommere og er større, mens styrken samtidig vokser. Der er<br />

dermed både fordele og ulemper ved at ride på en panda. Det samme gælder i valget af<br />

den hastighed Sensei skal bevæge sig med - bevæger han sig hurtigt kan missionen<br />

hurtigere fuldføres, men bevæger han sig langsomt kan han undgå at blive opdaget af<br />

piraterne. Jeg mener, at alle spillets valg i en eller anden forstand, er interessante.<br />

At de også er integrerede i hele spillet er sværere at argumentere for, da spillets øverste<br />

lag, dens campaign, ikke er færdigdesignet. Valgene er dog på et lavere plan integrerede i<br />

den kontekst der hedder den aktuelle mission, hvor f.eks. valget af en ninjaelev med høj<br />

lederevne på senere tidspunkt vil medføre at en anden ninjaelev enten må overgå til<br />

piraterne, eller forstyrre Senseis lederskab hvis han alligevel hverves.<br />

Spillet indeholder masser af interessante valg, der samtidig er integrerede i mindst den<br />

aktuelle mission. Dermed vil muligheden for at det danner meningsfuld leg være stor. Her<br />

fortsætter jeg med en teoretisk analyse af spillets input og output set gennem Winograd &<br />

Flores’ conversation for action-model.<br />

12.5 Conversation for action<br />

Jeg har gennem de sidste kapitler omtalt, hvordan ninjaeleverne inddrager deres viden om<br />

situationen, når de modtager og fortolker talekommandoer, og vil nu analysere dette<br />

gennem conversation for action-modellen, for at klarlægge eventuelle svagheder i<br />

91


dialogen mellem spiller og spil, samt hvilke pragmatiske forhold spillet skal kende til for<br />

at kunne tillægge en talekommando den rette mening.<br />

Først er det dog værd at klassificere dialogmanagermodellen der anvendes i spillet. Jeg<br />

har valgt en agent based command and control-tilgang, hvilket konkret vil sige at kunstig<br />

intelligens anvendes i meningsdannelsen af de kommandoer som spilleren kan give<br />

ninjaeleverne. Når en command and control-tilgang anvendes, så kan talekommandoerne<br />

klassificeres i henhold til speech acts-teorien som directives, altså som talers forsøg på at<br />

få modtager til at udføre en handling. Reaktionen fra ninjaeleverne når der siges NINJA<br />

og de dermed selekteres, kan yderligere klassificeres som commisives, altså noget der<br />

binder taleren til en fremtidig handling, idet selekteringen markerer at de er modtagelige<br />

for en talekommando. Til sidst kan beklædningsskiftet der forekommer, når en ninjaelevs<br />

intelligens stiger, betragtes som en expressive speech act da en mental tilstand udtrykkes.<br />

Det er altså ganske ligetil at betragte dialogen som speech acts, og derfor også muligt at<br />

beskrive den med de følgende conversation for action-modeller. Her først modellen for,<br />

når Sensei vil selektere en ninjaelev med talekommandoen NINJA.<br />

Figur 16: conversation for action-model over Senseis selektering af Ninjaelev<br />

Den primære vej (fra punkt 1 til 5) gennem dialogen er fuldt udfyldt. Talekommandoen<br />

NINJA fører til selektering, som ninjaeleven viser med en lysende ring omkring sig selv,<br />

mens ikoner viser hvilke mulige talekommandoer dialogen kan afsluttes med. Dermed<br />

kan dialogen reelt klassificeres som en dialog, og den vil virke realistisk hvis den<br />

fuldføres uden forhindringer. Der er tilmed markeret tre tilfælde hvor dialogen kan<br />

afbrydes. Det er først i tilfældet, hvor Sensei ikke kan se ninjaeleven, eller hvor<br />

ninjaeleven ikke kan høre Sensei. Til sidst er der den mere frivillige afbrydelse af<br />

dialogen, i det tilfælde hvor spilleren venter mere end fem sekunder før næste kommando<br />

afgives. Det, som mangler i modellen, er hele den forhandlende del, der skulle have været<br />

i midten. Jeg mener ikke dette er et problem for hvis det pragmatiske (kulturelle)<br />

systemsyn tages i betragtning - en kulturel viden om militære forhold (det er trods alt en<br />

krigslignende situation Sensei befinder sig i) vil fortælle spilleren, at man ikke forhandler<br />

med en overordnet, ligesom en overordnet ikke forventes at trække en ordre tilbage. De<br />

pragmatiske forhold som spillet skal kende til for at forstå en talekommando, er dermed<br />

92


hvorvidt Sensei ser på ninjaeleven, hvorvidt ninjaeleven er tæt nok på Sensei til at høre<br />

ham, og til sidst er et kendskab til varigheden på dialogen nødvendig.<br />

En svaghed ved dialogen i spillet er også blevet tydeliggjort, idet intet fortæller spilleren<br />

at dialogen er afbrudt pga. syns- eller hørelsesproblemer hos Sensei eller ninjaelev. Det<br />

samme gælder for de fem sekunder - der er ikke nogen indikation af hvornår de fem<br />

sekunder er gået. Det første problem kunne løses ved at lade Sensei verbalt fortælle, at<br />

han intet kan se, at eleven må være døv eller en lignende kommentar. En af grundene til<br />

at jeg ikke tidligere har valgt ikke at lade Sensei tale var dog, at spilleren dermed vil have<br />

bedre mulighed for at identificere sig med ham. Det er set mange gange at et spils<br />

hovedperson ikke taler, netop for at øge spillerens indlevelse. De tidligere nævnte<br />

tankebobler er også en mulighed, men da de vil risikere at blokere for udsynet til<br />

spilverdenen i en kritisk situation er denne løsning heller ikke brugbar. Til sidst er der<br />

muligheden for subtile effekter, som f.eks. at få Sensei til at trække på skulderne eller på<br />

anden måde virke forvirret. Det er den løsning jeg vil søge. Problemet med de fem<br />

sekunder løses derimod meget simpelt, ved blot at lade den lysende ring gradvist miste<br />

sin intensitet, for at vise at selekteringen ikke holder evigt.<br />

Den næste dialog jeg vil analysere gennem conversation for action-modellen, er den som<br />

følger af talekommandoen MOUNT:<br />

Figur 17: conversation for action-model af Sensei der beordrer en ninjaelev til at bestige en panda<br />

Denne gang er den primære vej gennem dialogen ifølge Winograd & Flores ikke fuldt<br />

udfyldt, idet det sidste skridt, hvor Sensei bekræfter overfor ninjaeleven at kommandoen<br />

er accepteret, er blankt. Her mener jeg dog, hvad jeg også diskuterede da modellen blev<br />

gennemgået teoretisk, at stilhed kan fungere som accept. Selve den observationen af at<br />

pandaen bestiges kan også betragtes som accept. En mulig ændring kunne være at lade<br />

Sensei klappe af ninjaeleven, eller nikke med hovedet, om end jeg ikke finder dette<br />

realistisk eller nødvendigt for at ovenstående model kan betragtes som en reel dialog.<br />

Situationen, hvor talekommandoen ikke accepteres, eksisterer også i denne model, og<br />

heller ikke her vises spilleren årsagen. Igen vil jeg løse problemet med små subtile<br />

animationer af Sensei eller ninjaelev der ryster på hovedet eller på anden vis virker<br />

93


forvirrede. Behovet for forhandling kan afvises af samme grund som ovenfor, mens en<br />

sidste udvej (fra punkt 4 til 9) umuliggøres af at stilhed bekræfter kommandoen. Her er<br />

ludic engineering eller test eneste måde at afgøre om dette vil virke realistisk, eller om<br />

stilheden skal aflyses af en bekræftelse for også at muliggøre den sidste udvej.<br />

Som det ses er det meget givtigt at analysere dialogen gennem conversation for actionmodellen,<br />

idet flere problemer kan tydeliggøres inden spillet testes. Jeg vil dog ikke<br />

bruge plads på de to næste talekommandoer, STOP og ATTACK, da analysen af dem<br />

minder meget om modellen for MOUNT.<br />

12.6 Opsummering<br />

Igennem dette kapitel har jeg fremlagt og analyseret spillets <strong>interaktion</strong>. Både hvad angår<br />

input og output er den multimodal. På inputsiden anvendes taktilt input til kontrol af<br />

spillets hovedperson Sensei, mens talekommandoer anvendes til kontrol af de hvervede<br />

ninjaelever. De vigtigste for den taktile input er at der kun bruges én knap (plus den<br />

trykfølsomme skærm), for at sikre en høj synlighed. Den ene knap er ”pragmatisk<br />

opmærksom” på hvad der foregår i spilverdenen, og den kan dermed bruges til udførelsen<br />

af flere forskellige handlinger eller valg. Talekommandoerne er ligeledes pragmatisk<br />

opmærksomme, idet eksempelvis Senseis synsretning og ninjaelevernes hørelse har en<br />

betydning for hvordan en talekommando tolkes. En anden betegnelse for pragmatiske<br />

opmærksomhed er kontekstsensitivitet - en betegnelse jeg brugt i projektets titel.<br />

På outputsiden anvendes primært grafisk output i form af bevægelige og animerede<br />

karakterer og et grafisk interface indeholdende informationer om den selekterede elev,<br />

om Senseis støjniveau og om hans lederevner. Hertil kommer et grafisk oversigtkort over<br />

hele det landskab som missionen foregår i, hvorpå positioner og tilstande for ninjaelever<br />

og pirater kan aflæses. Sekundært giver ninjaeleverne hinanden talekommandoer på<br />

samme måde som Sensei / spilleren gør, hvad der igen øger synligheden af den<br />

kommunikation som finder sted i spilverdenen.<br />

Hertil er det søgt at gøre alle valg interessante og integrerede, for på den måde at skabe<br />

et spil der danner meningsfuld leg. Det sidste jeg gjorde i kapitlet var at sammenholde<br />

spillet dialogmodel eller management med Winograd & Flores’ conversation for actionmodel,<br />

hvilket tydeliggjorde nogle designmæssige svagheder som bør søges løst i en<br />

senere prototype. Her følger nu et kort kapitel omhandlende teknikken som spillet<br />

udnytter.<br />

94


13 Teknik<br />

I dette kapitel vil jeg beskrive spillets tekniske arkitektur, dog uden at belyse de mindste<br />

detaljer. Indledningsvis kan et klassediagram i UML give et overblik over hvad der<br />

håndteres af den største CPU i Nintendo DS:<br />

Figur 18: Klassediagram indeholdende systemets vigtigste klasser, med nogle af deres attributter og<br />

metoder. Klasserne her håndteres af den største CPU.<br />

Den centrale klasse er <strong>Game</strong>World som repræsenterer spilverdenen, endnu kun i form af<br />

en mission (altså ikke kampagne delen). I spilverdenen / missionen findes op til 32<br />

95


objekter af RigidBody-klassen, der praktisk anvendes til at repræsentere Sensei,<br />

ninjaelever, pandaer og pirater - altså de aktive fysisk simulerede objekter. Mindre<br />

præcist simulerede objekter, såsom kastestjerner og træer, dannes af objekter af klassen<br />

MovingEntity, hvoraf der kan være op til 64 i spilverdenen. Klassen Sprite beskriver de<br />

aktive elementer som spillets grafik består af, og der kan være op til 128 af dem i<br />

spilverdenen. Den grafiske repræsentation af både en MovingEntity og en RigidBody er<br />

en Sprite, ligesom også dele af det grafiske interface er opbygget af Sprites - her kan op<br />

til 32 anvendes, da 64 går til MovingEntity-objekter og 32 til RigidBody-objekter. Viser<br />

en mindre statisk fordeling af Sprite-objekter mellem MovingEntity, RigidBody og det<br />

grafiske interface sig nødvendig, er refaktorering muligt, men 32 er et teknisk maksimum<br />

for antallet af RigidBody-objekter, da disse udnytter maskinens rotationsregister som<br />

maksimalt kan indeholde 32 rotationsvariable.<br />

Spilverdenen indeholder desuden op til fire grafiske Background-objekter eller lag, der<br />

bruges til at indeholde landskabet i de to nederste lag, evt. tåge i næste lag og grafisk<br />

interface i det øverste lag. Selve landskabet genereres af metoden setupTerrain på<br />

<strong>Game</strong>World-objektet, mens også det grafiske interface håndteres af en metode her. En<br />

Background kan desuden være animeret, hvilket kan udnyttes til f.eks. bølgende tågeeffekter.<br />

Den måske mest komplekse klasse er SteeringBehavior, der udnyttes af alle RigidBodyobjekter.<br />

Her udregnes objekternes fysiske påvirkning af hinanden, og deres<br />

bevægelsesmønstre styres også her. SteeringBehavior fungerer som en tilstandsmaskine,<br />

hvor forskellige metoder kan være aktive eller inaktive og påvirke den fysiske kraft som<br />

returneres af metoden calculate i form af en vektor, og anvendes i bevægelsen af en<br />

RigidBody. Vektorer er et objekt der anvendes meget gennem hele systemet, og som<br />

dannes af klassen Vector 24 , hvorpå metoder til udregning af alt fra længde til prikprodukt<br />

findes.<br />

I metoderne handleButtons og handleVoice håndteres spillerens forskellige former for<br />

input. Knapperne er lette at håndtere, mens talekommandoerne håndteres i samarbejde<br />

med objekter kørende på maskinens anden CPU. En multiprocessor-arkitektur er altså<br />

taget i anvendelse, for at udnytte maskinens regnekraft bedst muligt. Den fysiske<br />

simulering er meget beregningskrævende, mens genkendelsen af talekommandoer også er<br />

meget beregningskrævende, hvorfor en uddelegering af opgaverne har været nødvendig.<br />

Jeg havde foretrukket hvis alt beregning kunne klares af én CPU, da det er klart lettere at<br />

arbejde med, men det har bestemt været lærerigt at arbejde med to CPU’er, og resultatet<br />

er da også bedre end hvad det ville have været med kun den ene CPU.<br />

I alt er der skrevet over 12.000 linjer kode, hvorfor jeg ikke har vedlagt det som et printet<br />

bilag. Til gengæld kan koden hentes fra min web-side. Det anvendte objektorienterede<br />

programmeringssprog er C++, der er kompileret med det frit tilgængelige Nintendo DSudviklingsmiljø<br />

DevkitPro [Devkitpro, 2005], der kort fortalt er en modificeret udgave af<br />

open source-kompileren GCC, tilsat dygtige hackeres udforskning af Nintendo DS.<br />

24 Ses ikke på figuren.<br />

96


13.1 Talegenkendelse<br />

I forhold til teorien beskrevet tilbage i afsnit 3.1, hvor det talegenkendelses-system som<br />

jeg ville udvikle blev beskrevet, er der gennem det praktiske arbejde opstået en ændring.<br />

En yderligere forsimpling af talegenkendelsesteknikken er indført, idet jeg ikke har haft<br />

tid og behov til at implementere dynamic time-warping-teknikken. Målet med denne er<br />

som nævnt at skalere de opfangede ord sådan at de har samme længde som de optagne /<br />

indlærte ord, og tilmed at skalere dem dynamisk over tid, altså sådan at det søges at<br />

matche de forskellige udsving overfor hinanden. En simplere mulighed, der giver en<br />

teoretisk dårligere genkendelse på 5 %, er at skalere ordet lineært [Furui, 2001, s270].<br />

Eftersom jeg tager mere hensyn til de pragmatiske forhold, er præcisionen i den egentlige<br />

genkendelse ikke så vigtig og denne lette løsning er derfor anvendt.<br />

På de andre niveauer er min talegenkender stort set identisk med den som blev beskrevet<br />

teoretisk i sidste del af afsnit 3.1. En vital forskel er dog at den før det pragmatiske lag<br />

stort set intet genkender. Det har (ikke helt overraskende) vist sig at være en enorm<br />

udfordring at programmere en talegenkender fra bunden. Med spillets afhængighed af<br />

den pragmatiske genkendelse, er det dog uden betydning, da spillet tager højde for dette<br />

ved udelukkende at basere sin genkendelse på pragmatiske forhold. Ekstrem<br />

kontekstsensitiv talegenkendelse.<br />

13.2 Opsummering<br />

Jeg har ikke beskrevet teknikken bag spillet i mange detaljer, da det både for forståelsen<br />

af spillets funktionalitet og for besvarelsen af problemstillingen er mindre væsentligt.<br />

Derfor er der ikke meget at opsummere. De over 12.000 linjer kode der er skrevet har dog<br />

på ingen måde været en lille del af projektet, og det er udarbejdelsen af disse der har<br />

været den centrale aktivitet igennem en stor del af projektperioden. De erfaringer jeg har<br />

gjort mig, er jeg meget glade for og jeg er bestemt blevet en bedre programmør de seneste<br />

måneder. Især arbejdet med fysiksimulation og kontekstsensitiv talegenkendelse har<br />

været udfordrende, og illustrerer perfekt hvordan brede evner indenfor mange områder er<br />

nødvendig for at lave et spil.<br />

97


14 Prototyper<br />

Udviklingen af spillet har været præget af meget korte iterationer, hvor resultatet altid har<br />

været en ny prototype med en eller flere nye elementer i form af f.eks. ny funktionalitet<br />

eller ny grafik. Da ændringerne fra iteration til iteration har været meget små, vil jeg ikke<br />

beskrive resultatet af dem alle, og har derfor udvalgt nogle få prototyper hvorigennem<br />

udviklingen som spillet har gennemgået kan beskrives i store træk.<br />

14.1 Nummer 1<br />

I løbet af projektperiodens første måned lavede jeg en grundlæggende prototype, hvori<br />

bevægelsen af Sensei blev finpudset gennem ludic engineering og mikrofonen til<br />

Nintendo DS blev afprøvet. Målene var at implementere den mest grundlæggende og<br />

oftest udnyttede inputmulighed (bevægelsen af Sensei via trykfølsom skærm), at lave de<br />

klasser der senere kunne anvendes til andre bevægelige objekter og ikke mindst at<br />

implementere en papegøje-funktion der anvendte mikrofonen til at gentage spillerens<br />

kommentarer. Disse ting blev alle implementeret.<br />

For at gøre det lidt sjovere at finpudse styringen af Sensei, gjorde jeg det desuden muligt<br />

for ham at skyde og jeg tilføjede en ninjaelev (reelt bare endnu en Sensei, da de teknisk<br />

ikke adskilte sig fra hinanden) som fulgte med ham. Så blev situationen mere som et spil,<br />

hvormed princippet fra ludic engineering om, at det virker bedst i en legende kontekst<br />

viste sig korrekt. Et af delmålene før Sensei kunne bevæge sig var et landskab han kunne<br />

gøre det i. Det var under implementeringen af dette, at begrænsninger eller svagheder ved<br />

maskinen inspirerede til at udnytte den yderste højre og venstre side af skærmen til et<br />

grafisk interface. Skulle disse områder af skærmen i stedet have været brugt til visning af<br />

landskabet, så ville hukommelsesforbruget være fire gange så stort for hvert grafisk lag i<br />

landskabet 25 . Den sparede hukommelse kunne i stedet udnyttes til at lade et af<br />

landskabets lag, nemlig tågen, være animeret. Det viser, hvordan technology inspiration<br />

kan bidrage positivt under designet, og det er en opfyldelse af indie-udvikler princippet<br />

om at udnytte begrænsningerne til sin fordel.<br />

Papegøje-funktionen havde jeg også meget sjov udad, og den fik endda lært min søn at<br />

sige et par nye ord. Mere praktisk viste det sig at, når min søn og kæreste talte i<br />

mikrofonen blev deres ord oftere gentaget korrekt, end når jeg selv gjorde det. Senere<br />

fandt jeg ud af at dette skyldtes frekvensforskellen, og at det faktisk er vist at, når lyden<br />

opdeles i stykker på omkring 20ms fungerer talegenkendelsen bedst til kvinder og børn,<br />

mens stykker på omkring 40ms er bedst til mandlige talere [Furui, 2001, s54]. Det bør<br />

derfor overvejes om spilleren skal indtaste alder og køn inden spillet startes, for at gøre<br />

genkendelsen bedre. Resultatet af papegøje-funktionen var et kendskab til mikrofonen og<br />

dens svagheder (lav volumen og meget støj), og en grundlæggende arkitektur for hvordan<br />

selve genkendelsesdelen skulle opbygges; med papegøje-funktionen blev de ord der<br />

senere skulle genkendes opfanget - de manglede ”bare” at blive genkendt.<br />

25 Beregningsmæssigt ville det dog være en fordel, men jeg fandt det vigtigst at spare på hukommelsen.<br />

98


I prototypen blev der i øvrigt ikke brugt original grafik til repræsentation af Sensei, men i<br />

stedet (lettere modificeret) grafik lånt fra spillet Alien Breed (Team17, 1991) der som<br />

nævnt tidligere har samme kameravinkel. Grafik var ikke vigtigt så længe der kun blev<br />

arbejdet med inputmulighederne. Landskabet bestod i øvrigt af græs, der var taget (og<br />

nedskaleret) fra det spil jeg var med til at udvikle på sidste semester - igen fordi grafikken<br />

ikke var afgørende for legen med spillets inputmuligheder.<br />

I henhold til begreberne fra kapitel 6.1.1 omkring prototyping, kan jeg klassificere<br />

prototypen sådan:<br />

• Breadth: 5%<br />

o Meget lidt af spillets tiltænkte funktionalitet er repræsenteret. Sensei kan<br />

bevæges, mikrofonen reagerer (men ikke som den skal i sidste ende), det<br />

fremgår hvilken kameravinkel spillet vil få og det ses at der vil være et<br />

grafisk interface ved skærmens kanter.<br />

• Depth: 65%<br />

o Blandt de repræsenterede funktioner, er der ingen, som ikke er reelt<br />

implementeret. Kamerahåndtering er dog grov og uden bløde bevægelser,<br />

mikrofonen opfanger ikke altid hele ord og det fremgår ikke hvilke<br />

funktioner, der vil være at finde i det grafiske interface.<br />

• Look: 10%<br />

o Selvom ingen original grafik anvendes, så viser kameravinklen alligevel<br />

lidt om hvordan det færdige spil vil se ud.<br />

• Interaction: 50%<br />

o Prototypen håndterer brugerens input, og giver output på alle de<br />

repræsenterede funktioner. Bevægelsen af Sensei fungerer nogenlunde<br />

som den skal, mens mikrofonen opfanger lyden dog uden at forsøge på at<br />

analysere den. Der er intet output fra det grafiske interface.<br />

Procentangivelserne er anslåede i forhold til<br />

spillets nuværende status - skulle jeg tildele<br />

dem senere ville de formentlig være<br />

anderledes, da nye idéer kommer til hele<br />

tiden. Med spillets meget begrænsede<br />

funktionalitet valgte jeg ikke at lave en<br />

egentlig brugertest. Jeg viste det dog til nogen<br />

som laver hardware som gør Nintendo DSudviklingsarbejdet<br />

lettere 26 , og de fandt det<br />

lovende nok til, at de ville donere et særligt<br />

Nintendo DS-flashkort, der da også siden har<br />

været til nytte.<br />

Figur 19: Den første prototype. Dette er den<br />

nederste skærm - den øverste indeholder<br />

bare debug-informationer.<br />

26 De officielle udviklingsværktøjer fra Nintendo er der ingen mulighed for at anvende, medmindre man har<br />

licens fra Nintendo til at lave Nintendo DS-spil. Ikke-licenseret hardware i form af særlige flashkort er<br />

derfor eneste mulighed for at teste spillet på maskinen.<br />

99


14.2 Nummer 2<br />

Meget tid gik i periodens næste to måneder til arbejdet med den teori der er anvendt i<br />

projektet, mens også semestrets kurser tog noget tid, hvorfor udviklingen af spillets anden<br />

prototype gik langsommere. Målet var at tilføje ninjaeleverne og gøre det muligt for<br />

Sensei at kommandere med dem på forskellig vis, samt at berige landskabet med træer.<br />

Grafisk skulle den lånte grafik også skiftes ud, sådan at spillets tema blev tydeligere.<br />

Under tilføjelsen af ninjaeleverne var en af udfordringerne at få dem til at holde afstand<br />

til både Sensei og hinanden, og især var problemet at få dem til at stoppe op hurtigt nok.<br />

Mange halve løsninger blev forsøgt, indtil jeg opdagede at min fysiksimulation ikke<br />

medregnede friktion, altså gnidningsmodstand, hvad der så blev tilføjet, og flere<br />

problemer løste nærmest sig selv derefter. Tilføjelsen af friktion gav både Sensei og<br />

ninjaelever en mere naturlig bevægelse, og viser at for megen fokus på de spilmæssige<br />

sider kan give bagslag. En teknisk bedre fysiksimulation var en klar forbedring af spillet.<br />

Tilføjelsen af træer gjorde det sjovere at bevæge Sensei omkring i landskabet, og<br />

muliggjorde bedre test af ninjaelevernes evne til at forfølge Sensei. Samtidig gav ludic<br />

engineering teknikken bedre resultater, fordi det nu var muligt at gemme sig for<br />

ninjaeleverne bag træerne, som en form for fange- eller gemmeleg. Dermed blev det<br />

sjovere at teste spillet i længere tid, og yderligere finpudsning af bevægelse og<br />

fysiksimulation var mere motiverende.<br />

En ny funktion der blev tilføjet, var muligheden for at bede ninjaeleverne smide<br />

kastestjerner. Da talegenkenderen endnu ikke var udviklet, placerede jeg funktionen på en<br />

af maskinens knapper. Det gav muligheden for at levere den input der senere skulle<br />

leveres via talekommandoer, og forberedte koden til dette. Selvom min metode byggede<br />

på eXtreme Programming, så kan en smule forudseenhed være fordelagtig. Yderligere<br />

blev den tilstandsmaskine som beskriver ninjaelevernes intelligens og tilstand delvist<br />

implementeret. På den måde blev det muligt at bede ninjaeleverne følge efter Sensei,<br />

samt at afbryde forfølgelsen igen, ligesom andre tilstande også kunne stoppe og startes<br />

efter behov. Det var et betydeligt skridt mod muligheden for at tildele talekommandoerne<br />

en semantisk betydning som ninjaeleverne kan forstå.<br />

Det første rigtigt grafiske arbejde med spillet<br />

forløb uden de store problemer. Den valgte<br />

kameravinkel gjorde det let at lave grafik der<br />

så forholdsvis godt ud, på trods af mine evner<br />

indenfor dette område. Indie-princippet om at<br />

udnytte sine stærke sider og undgå de svage<br />

viser sig nyttig, og princippet om at bruge<br />

gammel teknologi var også særdeles nyttig. På<br />

Internettet findes mange forskellige værktøjer<br />

der kan hjælpe med konverteringen af grafik<br />

til et format som Nintendo DS kan anvende,<br />

og blot det at jeg har valgt 2d-grafik frem for<br />

3d-grafik har også lettet arbejdet en del.<br />

100<br />

Figur 20: Den anden prototype. Igen er der<br />

kun spændende ting på nederste skærm.


Fysiksimulering sås i øvrigt ikke særligt ofte for 10 år siden, hvor de 2d-evner som<br />

Nintendo DS besidder, var imponerende, men i dag anvendes fysiksimulering i stort set<br />

alle 3d-spil. Dermed kan der argumenteres for, at jeg har anvendt gammel teknik på en ny<br />

måde, hvad der jo var et af indie-principperne.<br />

Igen kan prototypen klassificeres, for at afgøre om den er værd at teste<br />

yderligere og for at få en idé om hvor langt i udviklingen spillet er.<br />

• Breadth: 20%<br />

o Mere af den tiltænkte funktionalitet er nu repræsenteret, om end ikke<br />

sådan at spilleren kan se det. Koden giver flere muligheder, end der reelt<br />

er tilgængelige i spillet.<br />

• Depth: 45%<br />

o Denne gang er der mere halvfærdig funktionalitet, hvorfor procenttallet er<br />

mindre. Der er meget funktionalitet i koden, men for spilleren vil<br />

prototypens depth virke lav.<br />

• Look: 35%<br />

o Den lånte grafik er udskiftet med mine egne kreationer, hvorfor spillets<br />

tema og den endelige visuelle stil fremgår tydeligere.<br />

• Interaction: 65%<br />

o Interaktionsmæssigt har den forbedrede fysiksimulation gjort det lettere at<br />

give input, og output virker mere troværdig. Talekommandoer fungerer<br />

stadig ikke, men der er heller ikke blevet arbejdet med dem.<br />

Med en lavere depth end tidligere, blev denne prototype, vurderet uegnet til brugertest.<br />

Mere breadth har dog gjort ludic engineering mere effektfuld, og med tilføjelsen af<br />

ninjaelever og træer som af spilmotoren kan tilføres spilverdenen dynamisk, har flere<br />

blackbox-tests hjulpet med at sikre spillets stabilitet i f.eks. en spilverden med et<br />

maksimalt antal træer. De mere kodenære whitebox-tests er i øvrigt blevet anvendt<br />

igennem alle prototyper, og har løbende givet debug-informationer på maskinens øverste<br />

skærm, hvor oversigtskortet endnu ikke er implementeret. Det er altid nyttigt at kende<br />

f.eks. den nøjagtige hastighed af Sensei, eller at vide hvilket objekt koden mener han<br />

kolliderer med, for at kunne sammenholde det med den faktiske situation i spilverdenen.<br />

14.3 Nummer 3<br />

I den forrige periode havde jeg studeret meget teori om talegenkendelse, så i denne sidste<br />

periode skulle min egen genkender implementeres. Hertil kom designet af spillets<br />

centrale mål og delmål, såsom hvervning af ninjaelever og muligheden for at ride på<br />

pandaer. De nødvendige pragmatiske målinger skulle også implementeres, sådan at spillet<br />

fik en viden om f.eks., hvorvidt Sensei kan se en ninjaelev. Til sidst skulle landskabet<br />

dannes tilfældet, hvilket indtil videre betyder tilfældig placering af træer.<br />

Arbejdet med talegenkenderen blev besværliggjort af mikrofonens kvalitet, og af at kun<br />

udviklere i besiddelse af den officielle hardwaredokumentation ved hvordan lydniveauet<br />

indstilles. Jeg fik den grundlæggende arkitektur på plads, sådan at frames kunne opfanges<br />

101


og laves til (simple) feature-vektorer, der kunne samles til speech-patterns som blev<br />

sammenlignet med hinanden. Succesraten var dog alt for lav til, at systemet kunne have<br />

en praktisk anvendelse, hvorfor jeg i stedet fokuserede på finpudsning af de semantiske<br />

og pragmatiske lag i genkendelsen. Ved at antage at et opfanget ord kan være en hvilken<br />

som helst talekommando, og derefter udelukkende basere genkendelsen på konteksten i<br />

spillet, kunne en semantisk mening, i form af et logisk udtryk eller et funktionskald,<br />

tildeles alle spillerens talte input. Da spillet samtidig er opbygget sådan, at der ikke kan<br />

opstå pragmatisk tvetydighed, er behovet for at de lavere lag i genkenderen fungerer ikke<br />

så stort. I prototypen blev den pragmatiske genkendelse af talekommandoerne NINJA og<br />

MOUNT implementeret, sådan at det er muligt at gå omkring i landskabet og hverve<br />

ninjaelever, for derefter at bede dem bestige en panda.<br />

I mit tidlige design havde jeg forventet at de laveste lag i talegenkendelsen ville have<br />

større betydning, men den egentlige implementering og efterfølgende ludic engineering /<br />

leg med spillet viste, at det semantiske og det pragmatiske lag var klart vigtigst. Faktisk<br />

er jeg nu af den opfattelse, at det i spillet vil være nok med et delvist fungerende<br />

morfologisk lag, som kan opfange unikke ord men ikke genkende dem, er det eneste<br />

nødvendige supplement til den semantiske og pragmatiske genkendelse. Dette er delvist<br />

implementeret (og har været det siden papegøje funktionen i prototype 1), så egentlig vil<br />

jeg mene, at talegenkenderen er tæt på at indeholde al den funktionalitet, der er<br />

nødvendig for genkendelse i den begrænsede kontekst som mit spil udgør. Det vil jeg<br />

selv betegne som en stor bedrift - at jeg har implementeret en funktionsdygtig<br />

talegenkender helt fra bunden. Det er i høj grad technology inspiration og en opfyldelse<br />

af indie-princippet om at udnytte de tekniske svagheder til egen fordel.<br />

<strong>Design</strong>et af de pragmatiske målinger var<br />

forholdsvist hurtigt klaret, idet de blot<br />

udnytter objekternes eksisterende attributter<br />

for syn og hørelse, samt fysikvektorerne der<br />

indeholder informationer om blandt andet<br />

retning og hastighed. Med dem udregnes<br />

hvornår Sensei kan se en ninjaelev, hvor<br />

meget Sensei larmer og om en ninjaelev kan<br />

høre Sensei, og det er disse informationer der<br />

udgør de indtil videre implementerede<br />

pragmatiske målinger. Den semantiske logik<br />

er nogle funktionskald der returnerer<br />

sandhedsværdier baseret på de pragmatiske<br />

målinger, og som på den måde kan afgøre hvilket funktionskald der skal afvikles.<br />

Synliggørelsen af genkendelse af NINJA blev den førnævnte lysende ring omkring den<br />

valgte elev, og da jeg samtidig udførte den omtalte analyse af dialogen gennem Winograd<br />

& Flores’ conversation for action-model, fik jeg også synliggjort, hvordan en selektion<br />

kun holder fem sekunder.<br />

Det andet arbejde som blev udført i forbindelse med denne prototype var den grafiske<br />

udarbejdelse af en panda (se Figur 21), og den tilfældige placering af træer. Sidstnævnte<br />

102<br />

Figur 21: Prototype 3, ninjaelev med<br />

selektion og en omvandrende panda


lev realiseret ved at lave en funktion der returnerede et tilfældigt punkt i landskabet med<br />

en angivet fri radius omkring sig, hvor træet så kunne placeres. En sidegevinst ved denne<br />

funktion var at den også kunne bruges til at placere ninjaeleverne tilfældigt med,<br />

hvormed et udforskende element allerede her blev tilført spillet. Nu indeholdt spillet den<br />

udfordring det er at finde en flok tilfældigt placerede ninjaelever, hvormed det igen blev<br />

sjovere at teste og finpudse de forskellige funktioner.<br />

Her en klassificering af prototypen:<br />

• Breadth: 40%<br />

o Den tiltænkte funktionalitet er stadig ikke fuldt ud repræsenteret, men med<br />

tilføjelsen af talekommandoer, tilfældig generering af landskab og pandaer<br />

er der alligevel sket meget siden sidst.<br />

• Depth: 65%<br />

o Der er stadig mere funktionalitet i koden end hvad spilleren kan se, men<br />

spillet har med tilføjelsen af talekommandoer en betydeligt højere depth,<br />

da spilleren nu kan tilgå mere af denne funktionalitet.<br />

• Look: 40%<br />

o Med tilfældigt placerede træer opnår landskabet en større troværdighed, og<br />

pandaerne hjælper også på den højere score her.<br />

• Interaction: 75%<br />

o Talekommandoerne har givet spillet en <strong>interaktion</strong> der ligger meget tæt på<br />

den det endelige spil vil have. Med den lysende cirkel omkring den valgte<br />

ninja, er output-delen af <strong>interaktion</strong>en også tydeligere.<br />

Spillet har nu en funktionalitet, som jeg vurderede ville være egnet til en mindre test der<br />

involvere andre end mig selv. Jeg viste spillet til andre udviklere via et web-forum, og i<br />

det lokale spiludviklernetværk Dreamgames.dk, hvormed det blev en slags uformel<br />

heuristisk inspektion (testet af eksperter), og fik udelukkende positiv feedback.<br />

Kommentarerne har endnu ikke fået betydning for spillet, da dette er den sidste prototype<br />

jeg beskriver i projekt, men en kommentar er dog værd at gengive: Haha very weird, I<br />

like it ... 27<br />

I al beskedenhed er innovation altså ikke det forkerte ord at bruge om mit spil.<br />

14.4 Opsummering<br />

Med prototype nummer 3 er den del af udviklingen som overlapper med dette projekt<br />

beskrevet. I det store hele har udviklingen forløbet uden nævneværdige problemer, og de<br />

valgte metoder og teknikker har støttet den perfekt. Teorien har ligeledes været givtig, og<br />

især anvendeligheden af Winograd & Flores’ conversation for action-model har<br />

overrasket. Jeg har løst projektets problemstilling, idet et spil der ikke synliggør tekniske<br />

svagheder i den stemmebaserede <strong>interaktion</strong> er blevet udviklet.<br />

27 http://forum.gbadev.org/viewtopic.php?t=7732<br />

103


104


Del V<br />

KONKLUSION<br />

So, this is it then. <strong>The</strong> showdown. Today there shall be a conclusion.<br />

Azala, Chrono Trigger<br />

I den teoretiske og den metodiske delkonklusion (kapitel 5 og 9) er projektets<br />

delproblemer allerede blevet besvaret, men efter at have gennemgået designprocessen har<br />

svarene ændret sig. De praktiske erfaringer har bidraget med en bedre forståelse af de<br />

fremlagte problemer, og det er denne forståelse, jeg her vil fremlægge, inden projektets<br />

egentlige problemstilling konkluderes.<br />

Det første delproblem lød som følger:<br />

• Hvad er stemmebaseret <strong>interaktion</strong>?<br />

o Besvarelsen af dette spørgsmål skal belyse den teoretisk og<br />

praktiske side af stemmebaseret <strong>interaktion</strong>. Herunder hvordan<br />

sprog og tale kan defineres, samt hvordan det genskabes og<br />

genkendes digitalt i og af en computer.<br />

Den teoretiske besvarelse i kapitel 5 bidragede med den grundlæggende viden der kræves<br />

for at kunne anvende stemmebaseret <strong>interaktion</strong> i praksis. Det vil sige viden om, hvordan<br />

alle lingvistiske lag digitaliseres, sådan at en computer kan udlede eller afgive mening.<br />

Efter at have fulgt de teoretiske anvisninger igennem hele designprocessen, har det vist<br />

sig at især digitaliseringen af det pragmatiske lag har afgørende betydning for hvor godt<br />

den stemmebaserede <strong>interaktion</strong> fungerer. Talekommandoer, der fortolkes uden systemets<br />

hensynstagen til konteksten, har ringe chance for succes i forhold til talekommandoer der<br />

tager konteksten i betragtning. Det er dog ikke en generel anvisning, idet mange systemer<br />

ikke vil kunne opnå den nødvendige viden om de pragmatiske forhold, men i forbindelse<br />

med computerspil kan talekommandoerne vælges sådan, at der ikke kan opstå pragmatisk<br />

tvetydighed, hvormed genkendelsen altid vil være præcis og meningsfuld.<br />

Det næste delproblem lød således:<br />

• Hvordan designes et godt computerspil?<br />

o Besvarelsen af dette spørgsmål skal berøre den teoretiske del af<br />

computerspil, samt belyse den mere praktiske eller metodiske<br />

side af sagen. Herunder hvordan et teoretisk grundlag kan danne<br />

105


106<br />

en begrebsmæssig ramme om en analyse af spil, samt hvordan<br />

samme teori kan anvendes praktisk i designprocessen.<br />

Den teoretiske besvarelse i kapitel 5 har leveret det ønskede begrebsapparat som igennem<br />

designet er blevet anvendt til at analysere både det udviklede spil, og de spil som det er<br />

delvist inspireret af. Teorien har altså vist sig praktisk anvendelig. Det er tilmed min<br />

opfattelse, at den teoretiske ramme om designet har været særdeles givtig, idet den flere<br />

gange har påvist svagheder i spillet som ellers først ville være blevet opdaget ved en<br />

ressourcekrævende test. Det eneste, der skal sikres er, at hvert eneste valg er interessant,<br />

integreret, synligt og helst også dynamisk dannet - så vil resultatet være et godt spil. Det<br />

er dog i den metodiske besvarelse i kapitel 9, at jeg fandt det efter min mening bedste<br />

svar på, hvordan et godt computerspil designes. Ludic engineering er en uvurderlig teknik<br />

i forbindelse med udvikling af computerspil, idet selve spillets natur, den meningsfulde<br />

leg, overføres på designprocessen. Det har tilmed vist sig, at den iterative procesmodel<br />

jeg har arbejdet efter, har været et nødvendigt grundlag for praktisk anvendelse af ludic<br />

engineering - uden iterationerne ville der ikke have været plads til legens spontane<br />

ændringsforslag.<br />

Det tredje delproblem lød:<br />

• Hvordan skabes innovation?<br />

o Besvarelsen af dette spørgsmål skal give konkrete anvisninger i<br />

hvordan et innovativt produkt eller en innovativ løsning skabes.<br />

Herunder vil en række forskellige metoder blive berørt, og nogle<br />

få vil blive belyst nøjere samt anvendt i praksis.<br />

I kapitel 8 fremlagde jeg to teknikker, der skulle medføre innovation. Den ene var ludic<br />

engineering, og den anden var technology inspiration. Begge er blevet anvendt i praksis,<br />

og erfaringerne kan nu vise om, de reelt har medført innovation. Som altid er det dog<br />

svært at afgøre, hvornår noget er innovation, og hvornår det er set før. Det er klart, at mit<br />

spil ikke er innovativt på alle områder, idet f.eks. ninja-temaet er brugt mange gange<br />

tidligere. Tilfældig missionsgenerering er også set før, og det samme gælder brugen af<br />

talekommandoer i et holdbaseret spil. Alt dette er resultatet af technology inspiration - en<br />

teknik som skulle medføre innovation, men som nu lader til blot at medføre plagiering.<br />

Sådan mener jeg dog ikke det forholder sig. Disse elementer er i forhold til hele spillet<br />

meget små, og tilsammen er de med til at danne meningsfuld leg på en helt ny måde. Det<br />

er selve kombinationen af eksisterende elementer, der er det innovative, og som gør at<br />

mit spil skiller sig ud. Technology inspiration har i øvrigt også bidraget med tydeligt<br />

innovative indslag, som f.eks. menuer placeret i kanten af skærmen for at spare på<br />

hukommelsen, og hele idéen med kontekstsensitiv talegenkendelse er et resultat af<br />

observerede tekniske begrænsninger. Det vel nok mest innovative i hele spillet, den<br />

kontekstsensitive talegenkendelse, er altså et resultat af technology inspiration. Om idéen<br />

er innovativ i forhold til feltet stemmebaseret <strong>interaktion</strong> ved jeg ikke, men i forhold til<br />

feltet computerspil er der ingen tvivl om, at jeg har skabt noget innovativt, hvormed<br />

semestrets mål om at anvende stemmebaseret <strong>interaktion</strong> på en ny måde opfyldt. Den<br />

feedback jeg har fået på spillet via web-fora og spiludviklernetværk peger på samme.


Det sidste delproblem kan også løses:<br />

• Hvordan udvikles computerspil af én person alene?<br />

o Besvarelsen af dette spørgsmål skal give konkrete anvisninger i<br />

håndtering af en udviklingsproces med kun én person involveret,<br />

samt i hvordan de deraf begrænsede ressourcer udnyttes sådan at<br />

spillet ikke lider kvalitetsmæssigt.<br />

I kapitel 9 blev dette spørgsmål besvaret med henvisning til de metodiske indieprincipper<br />

som blev fremlagt i afsnit 7.1. Flere af disse har vist sig nyttige under<br />

designprocessen, om end det er svært at vurderer i hvor høj grad, da spillet ikke er<br />

færdigudviklet, hvorfor det samlede ressourceforbrug er ukendt. Det mest brugte princip<br />

har været det om at bruge gammel teknologi på en ny måde, hvad der efter min opfattelse<br />

har været givtigt for både spillet og udviklingen. Det har gjort udviklingen mindre<br />

ressourcekrævende fordi der enten fandtes eksisterende værktøjer (f.eks. til konvertering<br />

af 2d-grafik), eller fordi det som skulle programmeres var simpelt i forhold til de mere<br />

moderne paralleller (talegenkendelse). At bruge gammel teknologi på en ny måde har<br />

tilmed gjort spillet bedre (i kraft af at originalitet jo er en kvalitetsfaktor), hvor f.eks.<br />

fysik-simuleret 2d-grafik er sjældent set. Den gammeldags talegenkendelsesteknik har<br />

også nødvendiggjort den pragmatiske tilgang, hvad der igen viser, at gammel teknik kan<br />

bruges på nye måder og tilmed øge spillets kvalitet, alene fordi det er originalt. Det<br />

bedste svar de praktiske erfaringer kan give på problemet er dog, at et spil kun kan<br />

udvikles af én person alene, hvis denne arbejder hårdt med innovation for øje.<br />

Med de fire delproblemer løst, er der nu kun tilbage at besvare problemstillingen:<br />

• Hvordan designes et computerspil der har stemmebaseret <strong>interaktion</strong><br />

som en primær <strong>interaktion</strong>sform, sådan at dette samtidig udgør den<br />

optimale <strong>interaktion</strong>sform uden at synliggøre de tekniske svagheder?<br />

Det vigtigste skridt mod dette mål er at sikre, at spillet kan udlede en utvetydig<br />

pragmatisk mening af enhver speech act eller handling udført af spilleren. Jeg kalder<br />

dette kontekstsensitiv talegenkendelse. For at sikre at der også er tale om den optimale<br />

<strong>interaktion</strong>sform, må det sikres, at den øger spillets mulighedsrum, altså de valg som er<br />

tilgængelige for spilleren, mens den samtidig gør <strong>interaktion</strong>en mere naturlig. I dette<br />

projekts spil kommunikeres der verbalt med alle andre end hovedpersonen selv, hvad der<br />

virker naturligt i konteksten, ligesom mulighedsrummet forøges ved at der ikke er andre<br />

måder at give de samme input på. I andre spil kan der være andre måder at gøre det på -<br />

der er ingen generelt anvendelig måde at indføre stemmebaseret <strong>interaktion</strong> på - jeg har i<br />

det mindste ikke fundet den. Disse to retningslinjer er det bedste svar der kan gives:<br />

usynliggørelse af tekniske svagheder kan sikres gennem pragmatisk utvetydighed, mens<br />

optimal <strong>interaktion</strong> opstår når <strong>interaktion</strong>en er naturlig og forøger mulighedsrummet.<br />

Dermed er projektet konkluderet. I det næste og sidste (det lover jeg!) kapitel vil jeg kort<br />

diskutere projektet og dets forskellige bidrag i et lidt bredere perspektiv.<br />

107


15 Perspektiverende diskussion<br />

Med projektet afsluttet er det interessant at se på hvad det kan bidrage med, udover en<br />

forhåbentlig fremragende bedømmelse til eksamen ☺<br />

Der er i projektet er blevet arbejdet med teori fra flere forskellige forskningsområder, og i<br />

kraft af at teorien ikke blot er blevet sat i anvendelse, men også videreudviklet, har<br />

projektet et reelt teoretisk bidrag. Det forskningsområde der bidrages til er primært de<br />

teoretiske studier af computerspil, i det sprogvidenskaben er blevet brugt til at forklare<br />

visse spilteoretisk fænomener eller begreber. I den forbindelse vil jeg trække to af mine<br />

nok mest interessante observationer frem. For det første blev det oplevelsesorienterede<br />

eller eksperientelle syn på et computerspil sammenholdt med semantikken. To begreber<br />

der har forståelsen eller udledningen af mening som deres centrale mål. Semantikken er<br />

det ældste og stærkest belyste begreb og kan levere en masse viden, der direkte kan<br />

bruges, når konteksten er computerspil i stedet for sprog. I kraft af semestrets mål og min<br />

problemstilling har en tilbundsgående undersøgelse af dette ikke været nødvendig, men<br />

jeg mener der ligger et stort potentiale i at uddybe sammenhængen mellem semantik og<br />

computerspil.<br />

Det andet interessante bidrag som mit projekt har til spilteorien, er brugen af Winograd &<br />

Flores’ conversation for action-model til at analysere dialogen i et computerspil. Ikke nok<br />

med at det kan lade sig gøre, hvad der vel næppe er en overraskelse, så har analysen den<br />

praktiske sideeffekt at den synliggør dialogens problemer uden at en egentlig test er<br />

nødvendig. I forbindelse med implementering af kontekstsensitiv talegenkendelse, er det<br />

naturligvis også praktisk at få belyst hvilken pragmatisk viden spillet skal have, hvad der<br />

jo også var årsagen til, at jeg anvendte modellen.<br />

Teorien har naturligvis ikke været uproblematisk at anvende, men jeg mener, at det eneste<br />

egentlige problem jeg har, er den begrebsforvirring der kan opstå hos læseren, når der i<br />

forbindelse med computerspil tales om stemmebaseret <strong>interaktion</strong>, fordi dette område<br />

bruger de samme begreber (pragmatisk mening i en lingvistisk struktur kontra pragmatisk<br />

syn på systemet der skal forstå eller danne strukturen). Jeg håber ikke problemet er alt for<br />

stort i projektrapporten, og ved opmærksom læsning skulle det fremgå klart, hvad der<br />

menes hvor.<br />

Metodisk har projektet ikke et ligeså originalt bidrag til udviklingen af computerspil, idet<br />

eksisterende metoder og teknikker blot er anvendt. Teknikkerne ludic engineering og<br />

technology inspiration, er groft sagt blot en akademisk navngivning af det som<br />

udviklerne længe har gjort. Den succesfulde anvendelse af dem viser dog, at udviklerne<br />

eksempelvis ikke må glemme at lege med spillet hele vejen igennem udviklingen, hvad<br />

der godt kan være en tendens til i mange nyere spil. Computerspil er blevet en industri<br />

hvor effektivitet ofte sættes højere end kvalitet, hvorfor spillets grundlæggende mål, den<br />

meningsfulde leg, tilsidesættes. Med ludic engineering sker dette ikke, men anvendelsen<br />

af den vil dog nok ikke øge udviklingstempoet - ”kun” kvaliteten af det færdige produkt.<br />

108


Generelt til computerspilsmediet bidrager mit spil med en helt ny <strong>interaktion</strong>sform,<br />

nemlig kontekstsensitiv talegenkendelse. Implementeres den rigtigt, og sikres det at der<br />

aldrig opstår pragmatisk tvetydighed, så har den potentialet til at revolutionere brugen af<br />

stemmebaseret <strong>interaktion</strong> i computerspil. Aldrig mere vil spilleren frustreres over dårlig<br />

genkendelse af talekommandoer. Hver opfanget talekommando tildeles alle tilgængelige<br />

semantiske betydninger, men grundet den pragmatiske analyse vil kun én af dem vise sig<br />

korrekt og blive udført. Det er både simpelt for udvikleren at implementere (i forhold til<br />

at skulle udvikle talegenkendelse på alle lingvistiske lag), og for spilleren at anvende. Der<br />

er ikke noget forudbestemt ordforråd der skal anvendes, så spilleren kan sige hvad han<br />

mener giver meningen i situationen. Jeg har valgt at forsøge at uddanne spilleren til at<br />

bruge en bestemt grammatik, men reelt er det ikke nødvendigt. Fordelen, og grunden til at<br />

jeg har valgt at bruge en grammatik, er at synligheden øges - jeg fandt det vigtigt at<br />

fortælle spilleren om sine muligheder, og det virkede bedst, hvis spillet bad spilleren om<br />

et bestemt ord, frem for at bede spilleren sige noget tilfældigt.<br />

Afslutningsvis kan projektet dermed siges at være innovativt på to plan: det teoretiske<br />

fordi sprogvidenskaben inddrages i computerspilsteorien, og det produktmæssige fordi en<br />

helt ny <strong>interaktion</strong>sform, kaldet kontekstsensitiv talegenkendelse, er opfundet og afprøvet<br />

på et computerspil. Dermed mener jeg ikke, der kan være tvivl om, at jeg opfylder<br />

semestrets krav om innovation.<br />

Slutteligt vil jeg blot nævne at det har været spændende at få lov at arbejde med<br />

innovation. Det har været et stort pres, at der absolut skulle udvikles noget innovativt på<br />

få måneder, men at det alligevel er lykkedes, er jeg bestemt stolt af. Jeg håber det har<br />

været en fornøjelse at læse projektrapporten, men skal jeg være realistisk så har den nok,<br />

visse steder, været lidt tung og kedelig - den slags er svært at undgå, når et så stort<br />

teoretisk grundlag tages i anvendelse.<br />

Tak for din tid ☺<br />

109


16 Litteraturliste<br />

Posterne i litteraturlisten er sorteret alfabetisk efter henvisning (forfatter, år), og ved<br />

flere poster med samme henvisning også kronologisk. Følgende formatering anvendes:<br />

Henvisning<br />

Titel, Forfatter(e)<br />

Udgiver, År<br />

Evt. Internetadresse<br />

16.1 Bøger<br />

Aronoff & Miller, 2001<br />

<strong>The</strong> Handbook of Linguistics, Mark Aronoff & Janie Rees-Miller<br />

Blackwell, 2001<br />

Austin, 1962<br />

How to Do Things with Words, J. L. Austin<br />

Harvard University Press, 1962<br />

Beck, 1999<br />

Extreme Programming Explained: Embrace Change, Kent Beck<br />

Addison-Wesley, 1999<br />

Bethke, 2003<br />

<strong>Game</strong> Development and Production, Eric Bethke<br />

Wordware Publishing, 2003<br />

Bourg & Seemann, 2004<br />

AI for <strong>Game</strong> Developers, David M. Bourg & Glenn Seemann<br />

O’ Reilly, 2004<br />

Buckland, 2005<br />

Programming <strong>Game</strong> AI by Example, Mat Buckland<br />

Wordware Publishing, 2005<br />

Crawford, 2003<br />

On <strong>Game</strong> <strong>Design</strong>, Chris Crawford<br />

Prentice Hall, 2003<br />

Crystal, 1985<br />

Linguistics, David Crystal<br />

Penguin, 1985 (second edition)<br />

110


Fowler, 2004<br />

UML Distilled 3 rd Edition, Martin Fowler<br />

Addison-Wesley, 2004<br />

Furui, 2001<br />

Digital Speech Processing, Synthesis, and Recognition, Sadaoki Furui<br />

Marcel Dekker, 2001<br />

Huizinga, 1949<br />

Homo Ludens, Johan Huizinga<br />

Elektronisk udgave hos Ebrary, 2004<br />

Littlejohn, 1999<br />

<strong>The</strong>ories of human communication, Stephen W. Littlejohn<br />

Wadsworth, 1999<br />

Jurafsky & Martin, 2000<br />

Speech and Language Processing, Daniel Jurafsky & James H. Martin<br />

Prentice Hall, 2000<br />

McTear, 2004<br />

Spoken Dialogue Technology, Michael F. McTear<br />

Springer, 2004<br />

Michael, 2004<br />

<strong>The</strong> Indie <strong>Game</strong> Development Survival Guide, David Michael<br />

Elektronisk udgave hos Ebrary, 2004<br />

Norman, 1990<br />

<strong>Design</strong> of Everyday Things, Donald Norman<br />

Doubleday, 1990<br />

Pressman, 2000<br />

Software Engineering: a practitioner's approach, Roger S. Pressman<br />

McGraw-Hill, 2000<br />

Rabiner & Juang, 1993<br />

Fundamentals of Speech Recognition, Lawrence Rabiner & Biing-Hwang Juang<br />

Prentice Hall, 1993<br />

Rollings & Morris, 2003<br />

<strong>Game</strong> Architecture and <strong>Design</strong>, Andrew Rollings & Dave Morris<br />

New Riders, 2003<br />

111


Rouse, 2005<br />

<strong>Game</strong> <strong>Design</strong>: <strong>The</strong>ory and Practice, Richard Rouse III<br />

Wordware, 2005<br />

Saeed, 2003<br />

Semantics<br />

Blackwell, 2004<br />

Salen & Zimmerman, 2004<br />

Rules of Play: game design fundamentals, Katie Salen & Eric Zimmerman<br />

MIT Press, 2004<br />

Searle, 1969<br />

Speech Acts, John R. Searle<br />

Cambridge University Press, 1969<br />

Snyder, 2003<br />

Paperprototyping, Carolyn Snyder<br />

Morgan Kaufmann, 2003<br />

Winograd & Flores, 1986<br />

Understanding Computers and Cognition, Terry Winograd & Fernando Flores<br />

Ablex Publishing, 1986<br />

16.2 Artikler og opslagsværker<br />

Adams, 2001<br />

Dogma 2001: A Challenge to <strong>Game</strong> <strong>Design</strong>ers, Ernest Adams<br />

Gamasutra, 2001<br />

http://www.gamasutra.com/features/20010129/adams_01.htm<br />

Adams, 2002<br />

Technology Inspires Creativity: Indie <strong>Game</strong> Jam Inverts Dogma 2001! , Ernest Adams<br />

Gamasutra, 2002<br />

http://www.gamasutra.com/features/20020531/adams_01.htm<br />

BusinessWeek, 14-10-2005<br />

Microsoft Seeds the Indie-<strong>Game</strong> Ecosystem<br />

BusinessWeek, 2005<br />

http://www.businessweek.com/innovate/content/oct2005/id20051014_827471.htm<br />

Costikyan, 2005<br />

Death to the <strong>Game</strong>s Industry: Long Live <strong>Game</strong>s, Greg Costikyan<br />

<strong>The</strong> Escapist, #8<br />

http://www.escapistmagazine.com/issue/8<br />

112


Dictionary.com, <strong>Design</strong><br />

http://dictionary.reference.com/search?q=design<br />

Dictionary.com, Innovation<br />

http://dictionary.reference.com/search?q=innovation<br />

Dictionary.com, Creativity<br />

http://dictionary.reference.com/search?q=creativity<br />

Dictionary.com, Invention<br />

http://dictionary.reference.com/search?q=invention<br />

eWeek.com, 11-11-2005<br />

Microsoft Lauds 'Scrum' Method for Software Projects<br />

eWeek.com, 2005<br />

http://www.eweek.com/article2/0,1895,1885883,00.asp<br />

<strong>Game</strong>Daily Biz, 03-12-2004<br />

EA Feeling Pressure, May Reclassify Overtime<br />

http://biz.gamedaily.com/features.asp?article_id=8464<br />

<strong>Game</strong>rankings, Darwinia<br />

Gennemsnitlig anmelderkarakter for Darwinia (kun engelske anmeldelser)<br />

http://www.gamerankings.com/htmlpages2/925872.asp<br />

<strong>Game</strong>rankings, Alien Hominid<br />

Gennemsnitlig anmelderkarakter for Alien Hominid (kun engelske anmeldelser)<br />

http://www.gamerankings.com/htmlpages2/922130.asp<br />

Lloyd, 2004<br />

Book Review: <strong>The</strong> Indie <strong>Game</strong> Development Survival Guide<br />

Gamasutra, 2004<br />

http://www.gamasutra.com/columns/books/20040413/index.shtml<br />

Longman<br />

Longman Dictionary of Contemporary English, brugt til fonetisk transskription<br />

http://www.ldoceonline.com<br />

Ludologica, 31-08-2005<br />

Lars Konzacks er spilforsker ved AAU, Ludologica er hans webside<br />

http://konzack.blogspot.com/<br />

Marcus Larsen, 2005<br />

Hvordan traditionelle systemudviklingsmodeller dræber kreativiteten i spilbranchen,<br />

Jimmy Marcus Larsen i forbindelse med kurset i systemudviklingsfilosofi på INF2, 2005<br />

http://chrono.moogle.dk/originalitet.php<br />

Merriam-Webster, Innovation<br />

http://www.m-w.com/dictionary/innovation<br />

113


Merriam-Webster, Creativity<br />

http://www.m-w.com/dictionary/creativity<br />

Merriam-Webster, Invention<br />

http://www.m-w.com/dictionary/invention<br />

Ordbogen.com, <strong>Design</strong><br />

http://www.ordbogen.com/opslag.php?word=design&dict=auto<br />

Popular Science, 11-2005<br />

<strong>The</strong> 11-Year Quest to Create Disappearing Colored Bubbles<br />

Time Warner, 2005<br />

http://www.popsci.com/popsci/science/0a03b5108e097010vgnvcm1000004eecbccdrcrd.html<br />

Rogers et al., 2002<br />

Things aren’t what they seem to be: innovation through technology inspiration, Rogers,<br />

Y., Scaife, M., Harris, E., Phelps, T., Price, S., Smith, H., Muller, H., Randell, C., Moss,<br />

A., Taylor, I., Stanton, D., O'Malley, C., Corke, G. and Gabrielli, S.<br />

In proceedings DIS2002, ACM Press<br />

Sheffield, 2005<br />

Interview: Going Handheld, Living Vicariously, Brandon Sheffield<br />

Gamasutra, 2005<br />

http://www.gamasutra.com/features/20050107/sheffield_01.shtml<br />

Skog, 2005<br />

Syndicate: En klassiker fødes, Oskar Skog<br />

Egmont, 2005<br />

SuperPLAY #004, januar 2005<br />

Spector, 2003<br />

GDC 2003 Video: Warren Spector's "Sequels and Adaptations: <strong>Design</strong> Innovation in a<br />

Risk-Averse World", Warren Spector<br />

Gamasutra, 2003<br />

http://www.gamasutra.com/features/20030416/spector_01.shtml<br />

Sylvester, 2005<br />

Decision-based <strong>Game</strong>play <strong>Design</strong>, Tynan Sylvester<br />

Gamasutra, 2005<br />

http://www.gamasutra.com/features/20050321/sylvester_pfv.htm<br />

Wikipedia, Creativity<br />

http://en.wikipedia.org/wiki/Creativity<br />

Wikipedia, Edisonian approach<br />

http://en.wikipedia.org/wiki/Edisonian_approach<br />

114


Wikipedia, Innovation<br />

http://en.wikipedia.org/wiki/Innovation<br />

Wikipedia, Invention<br />

http://en.wikipedia.org/wiki/Invention<br />

Wikipedia, Ninja<br />

http://en.wikipedia.org/wiki/Ninja<br />

Wikipedia, Klingon language<br />

http://en.wikipedia.org/wiki/Klingon_language<br />

Wikipedia, Knapsack problem<br />

http://en.wikipedia.org/wiki/Knapsack_problem<br />

Wikipedia, Traveling salesman<br />

http://en.wikipedia.org/wiki/Traveling_salesman<br />

115


17 Softwareliste<br />

Posterne i litteraturlisten er sorteret alfabetisk efter henvisning (udvikler, år), og ved<br />

flere poster med samme henvisning også kronologisk. Følgende formatering anvendes:<br />

Henvisning<br />

Titel<br />

URL på Internetside med mere information<br />

17.1 Spil<br />

Blizzard, 2005<br />

World of Warcraft<br />

http://www.worldofwarcraft.com<br />

Bullfrog, 1993<br />

Syndicate<br />

http://www.mobygames.com/game/dos/syndicate<br />

Capcom, 2005<br />

Killer7<br />

http://www.killer7.com/<br />

Digital Eel, 2002<br />

Strange Adventures in Infinite Space<br />

http://www.digital-eel.com/sais/<br />

Digital Eel, 2005<br />

Weird Worlds<br />

http://www.shrapnelgames.com/digital_eel/Weird_worlds/1.htm<br />

Introversion, 2005<br />

Darwinia<br />

http://www.darwinia.co.uk/<br />

Microvision, 1980<br />

Rip-Off<br />

http://www.klov.com/R/Rip_Off.html<br />

Nintendo, 2004<br />

Mario Party 6<br />

http://marioparty6.com/launch/<br />

Nintendo, 2005<br />

Nintendogs<br />

http://www.nintendogs.com/<br />

116


Remedy Entertainment, 2001<br />

Max Payne<br />

http://www.remedygames.com/games/max_payne.html<br />

Sega, 1999<br />

Seaman<br />

http://www.mobygames.com/game/dreamcast/seaman<br />

Sega, 2001<br />

Rez<br />

http://www.mobygames.com/game/dreamcast/rez<br />

Sony, 2002<br />

Dark Chronicle<br />

http://www.mobygames.com/game/ps2/dark-cloud-2<br />

Sony, 2004<br />

Singstar<br />

http://www.singstargame.com/<br />

Sony, 2004<br />

SOCOM II, US Navy SEALs<br />

http://socom2.playstation.com/<br />

Team17, 1991<br />

Alien Breed<br />

http://www.mobygames.com/game/amiga/alien-breed<br />

<strong>The</strong> Behemoth, 2004<br />

Alien Hominid<br />

http://www.alienhominid.com/<br />

Ubisoft, 2005<br />

Rainbow Six 3<br />

http://www.rainbowsix3.com<br />

17.2 Værktøjer<br />

Devkitpro, 2005<br />

Devkitpro, Nintendo DS kompileringsværktøj<br />

http://www.devkitpro.org<br />

117


18 Bilag A – International Phonetic Alphabet<br />

Det internationale fonetiske alfabet fra dets officielle hjemmeside 28 :<br />

28 http://www2.arts.gla.ac.uk/IPA/ipa.html<br />

118

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!