Betrakninger om spillets byggeklosser

Stein Sørlie

Publisert fredag, den 22. august, 2003.

En spillproduksjon av Siidas dimensjoner er tidkrevende og krever tverrfaglig kompetanse. Produksjonen kan godt sammenlignes med en filmproduksjon der man drar veksel på et stort antall fag og spesialiseringer. Til produksjonen av Siida trenger man musikere, porgrammerere, regissører, fagmedarbeidere, scenarieforfattere, prosjektledere etc. Nedefor er en kort oversikt over hva slags grunnleggende "moduler" som skal til for å sette sammen Siida til en troverdig og engasjoerende verden:

Tamagochimotor.

Når spilleren er logget av vil vi kunne ha en egen tjeneste som kun jobber mot databasen. Den velger ut handlinger avloggende spillere kan foreta seg, og legger disse til i spillerens drømme eller dødsrikelogg (som senere spilles av av brukerens flashklient ved login). Siden denne tamagochiserveren kun snakker med databasen direkte vil avloggede spillere kun interagere med andre avloggede spillere. I klassroms situasjonen vil det vel være slik at alle enten er logget på eller logget av men funksjonen er alikevel spennende i forhold til å se plattformen som utgangspunkt for andre spill og muligheten for at Siida også skal kunne spilles i situasjoner utenfor klasserommet.

Om man velger å utvikle denne drømmemodusen kan man også gi en drømme oppsumering - når du logger deg på og får opp din klient får du tilbud om å se hva avataren din har bedrevet siden sist du var online. Da henter klienten koordinater og informasjon fra serveren som gjør at avataren automatisk beveger seg og utfører handlinger (highlights )i fort film.

Kommunikasjon.

For å kunne gi muligheten for fri men alikevel spillrelevant samtale mellom elevene utvikler vi et språkfilter hvor fortellingen som gir utgangspunktet til den enkelte spilleren også representerer ordforrådet til denne. I utvikling tar vi utgangspunkt i en meget rask søkemotor som ligger hos den enkelte spillerens konto og som slår opp alle utsagn fra spilleren og bare slipper igjennom de ordene som finnes i historien. Spilleren må selvfølgelig ha tilgang på denne ordlisten slik at han/ henne an slå opp ordene og etterhvert bli fortrolig med hvilke ord han/ henne har til rådighet. En mulighet som også ekisterer er å kunne tillate nye ord. Der spillmotorene registrer samhandling kan man bytte ordlister og man kan spare på effektive setninger.

Eksempel på en grunnfortelling:

To villreinjegere (#72 - samiske berettninger)

En gang gikk to menn på villreinjat, og da de hadde gått i mange dager og ikke funnet noe, slapp maten opp for dem. De gikk inn i en øde gamme som var bygd i marka for at villreinjegere skulle kunne overnatte der når de var underveis. Da det ble kveld, laget de en stor ild og satte matgryta over ilden. Men de hadde ikke noe å ha i gryta annet enn bare vann. Idet gryta begynta å koke, gikk den eldsteut og ble lenge borte, og da han kom inn, hadde han med et rått reinhjerte og la det i gryta. Han som hadde vært i gammen. trodde at kameraten hadde hatt reinhjertet i tursekken sin etter at de var ferdige med å spise, la de seg.

Om morgenen da de våknet opp fra søvnen og gikk ut av gammen, sto det en stor villreinokse like ved gammen. Den yngste mannen grep buen sin og skjøt. Oksen falt, og de begynte å flå. Men da de var ferdige og den yngste mannen ordnet med innvollene, oppdaget han at hjertet manglet. Han spurte kameraten hvor det var blitt av hjertet på reinen. Han svarte: - Hva var det vel du spiste til kvelds?

Den unge mannen ble redd da han hørte at han hadde spisst hjertet før reinen ble drept. Han lot kameraten bli igjenn alene, og gikk sin vei og brydde seg ikke lengere om selskapet hans.

Johan Nilsen Kitti, 1888, Øksfjord, Loppa

Alfabetisk sortert ser ordlisten fra denne vilkorlige fortellingen ut som følende:
annet, bare, begynne, bli, borte, bygge, bue, bry, dager, dem, eldst, en, falle, ferdig, finne, flå, gamme, gang, gryte, gå, ha, hjerte, hvor, høre, igjenn, ikke, ild, inn, jakt, kamerat,  koke,  komme, kveld, lage, ligge, like, lenge, mann, mangle, mark, mat, med, men, morgen, noe, når, om, okse, over, overnatte, rein, redd, rått, sekk, seg,  selskap, sette, skal, skyte, spise, spørre, slippe, sove, stor, stå, svare, tro, tur, underveis, vann, ved, vei, vill, være, våkne, yngst, øde,  å...

Man ser umiddelbart at disse ordene har en spesifikk relevans i forhold til jakt og livet på fjellet. Dette prinsippet må justeres og bearbeides slik at det blir spillbart men vi tror det vil være en god løsning i forhold til  å rette samtalene elevene seg i mellom mot spillmessige oppgaver. Her er det også en mulighet for at spillerne kan arve ordlistene til hverandre. Hva hvis listen ovenfor ble machet med en fiskefortelling?

Vi vil benytte snakkebobler for å formidle tekst spillerne imellom. Snakkebobler har vist seg å være en effektiv måte å formidle tekst i denne type grafiske situasjon fordi boblen kan "peke" på spilleren som ytrer seg, og gir i tillegg et mer dynamisk bilde i klienten. Snakkebobler kan dessuten i større grad integreres grafisk med de andre dynamiske objektene i klienten.

Telepatibobler og hviskebobler innenfor egen kultur vil få en annen grafisk utforming de ordinære boblene. og vil bare bli synlige for dem det gjelder (Her kan man diskutere muligheter for å vise andre at det alikevl foregår en samtale de ikke kan delta i. en nærliggende mulighet i flash er å skalere teksten slik at en hviskeboble kan bli større jo næmere du kommer spilleren som hvisker).

Andre kommunikasjonsformer:

En annen interessant egenskap er en mulighet for å utvikle en form for gestikulereing som kan tilhøre de enkelte gruppene. Avhengig av hvilken type avatar man utviler for Siida kan man kanskje lagre enkelte bevegelser sik at gruppene kan bygge en intern kodeks seg i mellom.  "Tegnspråk" er også et spor som er verdt en tanke. Om det begrensede språket i chattingen ikke strekker til kunne kanskje spillerne prøve seg på en form for gestikulering her også.... alternative kan samtlige spillere utstyres med et sett med universelle uttrykk som man kan bruke der språket ikke finner veien. (venn, fiende, mat, etc.) Disse tilnærmingene er orøvrig av en så eksperimentell art at de trenger nærmere analyse og utprøving før man kan si noe om spillbarhet og effektivitet.

Visuell utforming

Målgruppen, i alle fall deler av den, er etterhvert blitt vant med spektakulære effekter og en høy grad av fotorealisme i de VR verdene som de har opplevet på de kommersielle spill konsollene.  I den visuelle utformingen av Siida er det to faktorer som gjør seg gjeldende.

For det første er Siida primært et online spill slik at man må ta hensyn til nedlastningstiden for brukere uten de kraftigste internett-oppkoblingene (Et moderne konsollspill ligger f.eks. på en DVD plate som kan inneholde 6 Gigabyte med data - det tar det 10-16 timer å laste ned på en god bredbåndslinje.).  Det innebærer at man ikke kan bruke veldig omfattende grafikk og animasjon i spillet .

Vi tar sikte på å bygge klienten i Flash5 som har dobbelt så stort nedslagsfelt som Flash 6. Flash 5 har ca 98% dekning og derfor mer utbredt enn internet explorer, m.a.o et godt valg. Flash er en meget godt egnet grafikk motor i den forstand at den er lett tilgjengelig og at den er lett å ta tak for utviklingteamet i sin helhet. Flash er i midlertid relativt prosessorkrevende og krever en balansert bruk av efekter og virkemidler for å ikke stoppe helt opp på en litt eldre maskin. Et annet positivt aspekt  ved å bruke flash er at vi slipper å bygge vår egen grefikkmotor,

I tilegg er flash et godt format for relativt enkle med alikevel effektive tilleggs effekter som skinning eller å avspeile sesonger og vær grafisk. (Siida kan være full av snø om vinteren og solen kan for den skaks skyld gå ned på selve spillebrettet, det er bare et spørsmål om budsjett). Begrensningen til flash er at plugin/ playeren  er relativt prosessorkrevende slik at mulighetene (eks. alfa, animasjon, og programmeringssløyfer) må til en hver tid veies opp mot cpu ressurser og båndbredde. En av fordelene med flash er at man kan bygge menyer og vinduer innover og i lag og kan på den måten få et sofistikert grensnitt hvor funksjoner dukker opp når du trenger dem (for eksempel et ønske om å bytte noe med en annen spiller åpner et bytte vindu). All spillopplevelse vil derfor foregå gjennom denne klienten.

Den andre avgjørende faktoren er spørsmålet om tilgjengelige ressurser til utvikling av disse. Tung animasjon og spektakulære iscenessettelser er meget kostbare og er som prosjekt like omfattende som det man finner i andre medier.  
Prosjektet er i landskapet av kommersielle online multiplayer spill og blandt konsollspillene et "lavbudsjetts spill", men skal alikevel utvikles til å bli et fullverdig multiplayer spill fra bunnen av. Denne prosessen vil i seg selv legge beslag på betydelige ressurser og må prioriteres slik at løsningen blir så generelt anvendbar som mulig.

Svaret på disse utfordringene er å bryte med rådende estetikk og å gjøre spillet så anderledes at målgruppen må se det med sine egne øyne og at det slik skaper sin egen plass i deres bevissthet. Siida vil benytte seg av en  slags pseudo 3d , - et såkalt kinesisk pespektiv der lange skroller kan rulles ut over skjermen uten at det fordreier rommet. I et kinesisk perspektiv ser man landskapet fra én bestemt vinkel i et jukseperspektiv hvor objektene har samme størrelse uansett om de er plassert i forgrunnen eller ikke. Fordi dette spilleren er representert som en karakter blandt mange skal rommet til en hver tid være rundt spillerens avatar. Med forbehold om avgjørelser m.h.t. prosessorkraft  beveger spillerens avatar seg litt rundt midten av bildet mens landskapet beveger seg under. Dette er en av verdens elste animasjonsteknikke for hvordan man beveger seg gjennom et landskap sammen med en karakter (steamboat willy) og er en måte å represenrer bevegelse på som få tenker over.

Det er foreløpig ikke tatt avgjørelser m.h.t. om spilleren skal kunne bevege seg i fire  åtte eller i ubegrenset antall retninger. Det vil forøvrig ligge en rekke hindringer i landskapet ( andre spillere, fjell, skog, elver etc.) som vil begrense avatarens bevegelsesmuligheter. Denne avgjørelsen er avhengig av hvilken form for perspektiv vi benytter oss av og hvordan vi representerer medspillerne hos den enkelte spilleren.  Det finnes forøvrig en type perspektiv som er blitt standard og det den såkalte isometriske framstillingen. Her konstruerer man landskapet med en rekke  "fliser" sett fra samme vinkel (eks: 30°, 60°) og som går opp i hverandre.  

En av grunnene til at det isometriske perspektivet er blitt så populær er at man kan stable mer informasjon enn i en mer flat fremstilling. Her kan man interagere med objekter på flere nivåer i bildet og i tilegg øke plassen for de enkelte grafiske objektene, noe som er serdeles relevant i dynamiske universer. Denne modellen legger forøvrig strenge begrensninger på hva slags uttrykk Siida kan ha. Denne tilnærmingen innebærer et mer pixelert og symbolpreget uttrykk på prosjektet. Det er en utfordring å prøve å løfte også dette et skritt videre mot et mer forførende og suggesivt univers.

En annen utfordring er å gi gode bilder på avstand og nærhet. Vi er nødt til å finne måter å kroppsliggjøre følelsen av avstand samtidig som en reise må være mulig uten å bruke en hel sesjon på det. Spillet kan ha portaler og alternative måter å reise på. Avstand kan abstraheres ved at fjellet ligger rett over grensen fra byen  og at denne grnsen har en form for barriere som gjør den vanskelig å forsere.

Miljø (Siida spesifikt)

Miljøene i Siida skal hentes fra grunnfortellingene som brukes i spillet (om reindrift, om bjørnejakt, om koking av tran til europeiske oljelamper etc.). Disse grunnfortellingene kan stamme fra samiske eventyr, fra snorre eller fra den seismiske rapporten fra Snøhvitfeltet.

I klienten vil spilleren i utgangspunktet være i det landskapet som spillsjåføren har plassert han/henne i det de ble tildelt  roller/grunnkarakterer. Vi kan "skinne"/ utforme klienten slik at den gjenspeiler hva slags etnisitet eller kultur du tilhører. Man kan for eksempel bruke en form for ornamentering i klienten som gjør det mulig å kjenne igjen objekter man finner som kjente eller ukjente, som vennlige eller fientlige. Det samme gjelder utformingen av kostymer som vi kommer tilbake til senere. Klienten vil være grunnleggende lik for alle, men objektene og måten de brukes på vil være ulik fra kultur til kultur. Noen kulturer vil ha en kollektiv beholdning der man deler på gjennstandene sine mens andre vil ha en individuell beholdning og er nødt til å samarbeide på andre måter.  I siida finnes det mange typer objekter. Noen kan man høstbare (stein, trær, sølvårer, gasslommer, olje, gull etc.) andre objekter kan betraktes som verktøy og kan være en forrutsetning for å kunnne høste. Man kan f.eks ikke begynne å gjete reinsdyr før man har funnet opp lassoen. Andre objekter er peronlige og kan brukes til å få kontakt med åndeverdenen eller garve skinn med. Alle disse objektene er bygget på samme lest men funksjonen og utformingen av dem kan variere.

Man skal kunne bytte artefakter for kunne oppå tjenester og tilegne seg verdier. Det kan også tenkes at et gitt objekt oppfører seg forskjellig i de forskjellige kulturene og at noen også kan modifisere et objekt slik at det får større nytteverdi for andre. Noen kan kanskje lage artefakter og på den måten skape kulturbærende symboler som kan arves av de forskjellige kulturene. Her kan det oppstå mutasjoner som kan gi uventede resultater. (potte historien med skillelinjer mellom tekstilkjeramikk er et eksempel - prikkmønster som møter linjemønster og som blir prikklinjemønster) I spillet kan man både bygge og rive ned. Avhengig av hvilken tid man spiller i vil f.eks de fleste former for sesong og helårsboliger ligge som muligheter alt etter hvor langt man kommer vil man kunne oppgradere basen sin. Man kan også om man vil, og om man får det til med spillsjåførens tillatelse ødelegge for andre.

Alle uttrykk og adferder har en direkte tast på tastaturet. Disse finner du også i en meny i klienten som kan trigges av musen.

Lyd

Siida benytter seg av lyd på mange nivåer. I samtalene mellom spillerne ville det øke fornøyelsen av å innlede en samtale om setningene ble akkompagnert av et lydmessig tullespråk. Lydbildet skal også informere spilleren intuitivt om hva slags tilstand univeret befinner seg i. Er det konflikt skal lydbildet bli mørkere og utløse kollektiv spenning hos spillerne. Et interessant dramatisk virkemiddel er når lyden plutselig opphører og man får en følelse av å holde pusten. En slik effekt er avhengig av at man til vanlig har en jevnt lydbilde som ligger under spillet for det meste av tiden. Lydeffekter benyttes for å kvittere for handlinger båre i landskapet og i grensesnittet på klienten. En hvør interaksjon med spillet skal bekreftes med en liten audibel kvittering. Vi ønsker å bruke kjenningsmelodier for spillerne. Melodiene er enkle og varer noen få sekunder. Disse melodiene vil vi i begynnelsen ha et utvalg av på serveren som man kan velge i. Melodien blir avspilt til brukeren ved login, og blir avspilt til alle i et rom som brukerens avatar går inn i. Dette er forholdsvis enkelt å implementere, men vil tilføre mye til spillet for brukerne.

Kunstig intelligens

En del av miljøet i spillet vil bestå av spilldrevne ogjekter med sin egne agenda. Dette kaller vi for NPC's  (Non Player Characters) Alle objektene som er komplekse og skal endre seg over tid trenger en slags intelligens, - adferdsmønster å gjøre dette etter men der dette vil merkes best er i forhold til dyreliv. En sildestim sller reinflokk skal være organisert på en sånn måte at man er nødt til å samarbeide for å kunne høste av dem og for å gjre dette spillbart og troverdig må man gi dem en egen styrende kraft som de følger. Dette adferdsmønsteret kan spillsjåføren tilen viss grad justere slik at det for spillerne fremstå som autonome enheter med full integritet.

En mulig utvidelse av spillmotoren til er at Siida styres alternativt av en Kunstig intelligens som erstatter spillsjåføren i andre sammenhenger enn klasserommet (auto game)

Gjenstander:

Det vil være en hel rekke med typer av ting i Siida. Våpen, utstyr, ressurser etc. Typene har informasjon om hvordan tingene ser ut, hva man kan gjøre med dem (til en viss grad), hva de heter, hvor mye de koster, osv. Vi vil åpne for at administratorer kan legge til nye typer ting, men bare i begrenset utstrekning: Man vil kunne legge til helt enkle ting som bare har navn og bilde, men ingen funksjon. Og man vil kunne legge til nye versjoner av enkelte eksisterende typer som allerede har en funksjon - og kunne stille inn aspekter ved funksjonen. Som f. eks. en ny type kniv til fisk ting i stedet for kniv til flåing, eller bil i steden for snøscooter

Utgaver av disse tingene vil ligge lagret i databasen med informasjon om hvor de befinner seg (på et koordinat i et rom, eller i beholdningen til en avatar). Det vil være informasjon om hvem som opprinnelig eide tingen, og hvilken tilstand den er i (hvis den har flere tilstander). For enkelte typer ting (f. eks. telt) vil hver enkelt utgave ha sin egen tilstand ( teltets innhold ).

NPCer og spesielle objekter

Non Player Characters er figurer i rom som ikke er spillere, men som spillerne allikevel kan snakke med og / eller gjøre handlinger på. Et typisk eksempel er reinflokken eller siedesteinen som forteller ting om landskapet. NPCer vil være spesielt programmert inn i serverne, og ha sin egen kommunikasjon med databasen (dersom de trenger dette). Disse kan dermed ikke masseproduseres (annet enn at man kan ha mange utgaver av hver type) i noen særlig grad.

Spesielle objekter faller inn under samme kategori - dette er typisk et huler (som man kan finne ting i) eller en vindebro (som man kan heise ned). Også disse må programmeres inn direkte - vi kan ikke ha en generell mekanisme for å legge til nye typer av disse.

Avatar:

I tradisjonelle medier trenger publikum en følelsesmessig motivasjon får å investere energi i verket, - ofte tilfredstilles dette behovet gjennom en hovedperson. Dette gjelder for dataspill også men her er hovedpersonen alltid tilstede gjennom spilleren selv. Et spill kan derfor være mer abstrakt enn en film eller en bok fordi spilleren selv fyller hoverollen i opplevelsen av innholdet. Spillet involverer sitt publikum mer direkte og med større krav till innsats enn noe annet media.

Avataren er en viktig brikke for å sikre den grad av identifisering man ønsker at spilleren skal ha med sin avatar. For å sikre en initierende interesse fra spilleren bør man "bestikke" spilleren med en god og sjarmerende avatar. Det er tross alt spillerens alterego vi snakker om. Avatarens troverdighet er operativ i å minske spillerens ironiske distanse til den virtuelle verden.

Avataren vil ha en rekke egenskaper. Mange av disse er ikke klarlagt ennå. Avatarer skal ha ren informasjon som navn, navn på eier, osv. Et relevant spørsmål, er om navnene på spillerne skal hinte egenskaper (i.e. Ante børnejeger )? I tillegg er det en del dynamisk informasjon som Avatarens basiskarakter, kultur, status, evner, osv. som forandrer seg over tid.

Avatarens karakteristikk, med tanke på utseende vil også være lagret i databasen, men det er foreløpig uklart hvilke elementer som skal være valgfrie fra brukerens side, og hvilke som skal bestemmes av kulturen/ Siidaen avataren blir satt inn i.  Kulturen vil automatisk si noe om etnisitet, egenskaper, uniformering/klære. mens brukeren til en viss grad kan balansere fysiske evner mot åndelige evner. Noen av disse dataene vil også komme av grunnfortellingen som spilleren er uttdelt. Er spilleren f.eks. reinjeger vil nokk fysikk og en pil-og-bue være en del av avatarens egenskap og beholdning.

De karakteristikker som blir valgfrie vil ligge lagret lokalt hos brukeren, de som kommer fra kulturen vil komme fra kulturens data. Informasjon om hvem avatren er i slekt med vil også være lagret i kultur-dataen og hentes ut derfra dynamisk ved behov. Dermed vil vi ikke trenge å oppdatere alle medlemmer av en kultur ved en ny inntreden (selv om vi vil sørge for at alle medlemmer får beskjed).

Avataren har også en del tilstandsdata som f. eks. spillpoeng, komminikasjonspoeng og kulturpoeng. Avatarens posisjon må bevares - selv om dette begrenser seg til å vite hvilket koordinat spilleren er på for databasens vedkommende.

Avataren har også en eventuell drømmelogg som vokser etterhvert som brukeren ikke har vært logget på. Logg-data (som skal brukes til å vise når brukeren var på osv.) vil antagelig plasseres i et separat system.

Avataren skal også ha en del grafiske og kinetiske egenskaper som skal gjøre det underholdene å kontrollere den. Spilleren skal til en viss grad kunne justere på spillerens utseende, velge kjønn og klesdrakt (dette må skje før grunnfortellingen blir delt ut, klesdrakten kan ha førende egenskaper som f.eks. om du kan reise langt eller om du må holde deg i nærhten av leiren).

De kinetiske egenskapene er viktig for å gi spilleren respons på handlinger i spillet og for å øke avatarens sjarme.  Avataren skal kunne vise at den løper eller går, - om den gir eller tar o.s.v. Muligheter for gesitkulereing samt noen kulturrelaterte bevegelser vil også underbygge eierskapet spilleren har til sin avatar.

Disse egenskapene skal også bidra til å underbygge muligheten for å uttrykke, signalisere, gestikulere følelser som aggresjon, vennlighet, forsvar på en taktil og troverdig måte. Her vil også bruk og flytting av ting måtte illustreres med representative bevegelser.
-+-