Feature

Feature: Tilfeldighetenes spill

Dataskapt innhold i dataspill

Hvordan brukes tilfeldigheter og matematikk for å skape spillinnhold?

1: Side 1
2: Side 2
3: Side 3

Mange ulike bruksområder

Selv om spill som fokuserer nesten utelukkende dataskapt innhold fortsatt er relativt sjeldne, er det mange utviklere som benytter seg av slikt innhold på en litt mer begrenset måte. Ta SpeedTree-systemet, for eksempel. Dette gir utviklerne mulighet til å lage varierte og realistiske trær, uten å modellere dem for hånd. I gamle dager var det vanlig med klonetrær, hvor de fleste trærne i et spill var basert på en håndfull forskjellige modeller. Ved hjelp av SpeedTree og andre slike systemer kan dette lett unngås.

Datamaskinen styrer zombiene i Left 4 Dead 2.

Det er forresten ikke bare omgivelsene som godt kan være dataskapte. Left 4 Dead-spillene er et glimrende eksempel på dette. Her styres fiendene av datamaskinen, og er ikke satt ut for hånd. Dermed blir hver gjennomspilling unik, selv om selve omgivelsene generelt er de samme fra gang til gang. Left 4 Dead leser hele tiden situasjonen, og endrer dynamisk taktikk basert på hva spillerne foretar seg. Det er vanskelig å tenke seg at disse spillene hadde hatt samme varighet og dynamikk om spilldesignerne selv hadde plassert ut zombiene.

Et annet kjapt og enkelt eksempel er Geometry Wars. Igjen har vi en håndfull fiender som oppfører seg forutsigbart, men som slenges inn i spillet av datamaskinen selv. I starten er maskinen rimelig snill og grei, og gir deg ikke mer enn du kan takle. Etter hvert virker det imidlertid som monsteret i maskinen kommer frem, og du får den ene nesten-umulige utfordringen etter den andre, helt til du dør. Dermed er hver runde unik, i motsetning til i mange tradisjonelle skytespill, hvor fokus ser ut til å være på å lære fiendens angrepsmønstre utenat, og det blir dine reflekser og egenskaper som kommer i sentrum, ikke hvor godt du husker.

I starten var jeg inne på det å spare plass ved hjelp av datagenerert innhold. I dag er vanligvis ikke hensyn til plass veldig stort, men det finnes likevel et par eksempler på spill hvor teksturer og grafikkdetaljer genereres av spillet selv, for å holde filstørrelsen nede. Det mest åpenbare er gratisspillet .kkrieger, et førstepersons skytespill som får plass på 96 kB (altså 0,094 MB). Dette spillet kommer fra demoscenen hvor slike metoder er vanlige å bruke. Her gjør man ofte et poeng av å gjøre så mye som mulig ut av plassen, og resultatet er ofte svært imponerende.

.kKrieger er et skytespill på 0,096 MB.

Men også kommersielle spill har brukt slike metoder. Da Microsoft fortsatt krevde at Xbox Live Arcade-spill skulle være på 50 MB eller mindre, laget for eksempel Naked Sky Entertainment et Unreal 3-basert spill som het RoboBlitz - med skarpe teksturer som ble generert av spillet selv. Resultatet var et 50 MB-stort spill som så ut som om det kunne vært et ordinært butikkspill solgt på DVD.

Animasjoner er også noe man kan få datamaskinen til å ta seg av. I Spore kan spillerne skape uendelig mange forskjellige vesener, og de fleste av dem animeres på troverdige måter, ved hjelp av matematiske regler matet inn i programmet. Grand Theft Auto IV bruker et system som heter Euphoria for å sørge for at ikke-spillene figurer oppfører seg realistisk og dynamisk (for eksempel når du «dulter borti» dem, og de forsøker å unngå å falle). Det er litt på kanten av denne artikkelens fokus, men det viser litt av mulighetene man har når man samarbeider med datamaskinen om å lage innhold.

Et litt morsomt eksempel på et spill som bruker datastyrte tilfeldigheter på en uvanlig måte er ROM CHECK FAIL, et gratisspill for PC. Her har utvikleren lagt inn spillmekanismer og grafikk fra en haug klassiske arkade- og konsollspill, fra Mario Bros. til Defender, og alt dette er selvsagt laget for hånd. Men når selve spillet starter, blandes mekanikk fra ulike spill sammen på en helt tilfeldig måte. Det betyr at du kan risikere å måtte kjempe mot spøkelsene fra Pac-Man med et Space Invaders-romskip i som kun kan bevege seg frem og tilbake, i omgivelser fra Bubble Bobble. Og etter få sekunder, oppstår en ny tilfeldig blanding.

Asteroids møter Mario.

Det mest interessante med ROM CHECK FAIL er hvordan det er selve spillet som stadig forandres på tilfeldige måter. Datamaskinen skaper med andre ord gameplay selv, ved å kombinere ulike spilletmekanikk på samme måte som nivådesigneren i Diablo gir oss stadig nye omgivelser. Konseptet er veldig enkelt utført i dette spillet, og slett ikke alltid vellykket (det er også noe av spillets sjarm), men det får tankene til å vandre. I dette spillet har man brukt vidt forskjellige gameplaytyper som settes sammen på måfå, men det burde være mulig å gjenta eksperimentet på en mye mer subtil måte, og med regler for hvordan ting settes sammen.

Konklusjon

Det er tusenvis av måter å bruke dataskapt innhold på, og jeg tror vi vil se mer og mer til slikt i fremtiden. De mest åpenbare bruksområdene har med å få hjelp til å skape spillomgivelser på, enten fordi de er så store og detaljerte at de ikke kan lages 100% for hånd, eller fordi man trenger systemer som kan skape uendelig varierte nivåer for å øke spillets gjenspillingsverdi og gjøre det mindre forutsigbart.

Nok et bilde fra Infinity Universe.

Den kanskje største utfordringen man har med datagenerert innhold er, som vi ser i Diablo og de mange klonene, å få det hele til å virke ekte. Datamaskiner er i dag flinke til å lage relativt realistiske landskap og simulere naturlige fenomener, men det er noe annet å få dem til å leke arkitekter. For å lage noe som faktisk ser menneskeskapt ut, må de ha mye hjelp. Vi legger raskt merke til ting virker unaturlig, og for å lage naturlige miljøer må datamaskinene også, til en viss grad, kunne tenke som et menneske.

Men spillomgivelser (enten de er katakomber i Diablo eller hele univers i Elite-serien) er selvsagt bare én bit av kaka. Alt fra hvordan spillerskapte vesener animeres i Spore til hvordan et fullverdig førstepersons skytespill passer inn i 100 kilobytes (med teksturer, musikk og fiender) er resultat av hvordan spillutviklerne får datamaskinene til å arbeide for seg på spennende måter.

1: Side 1
2: Side 2
3: Side 3

Siste fra forsiden