Another World gir interne problemer
Det var ikke bare advokater som satte prosjektet i fare. Actioneventyrspillet Another World skilte seg klart ut fra de andre spillene i prosjektet. For det første var det ikke et pek-og-klikk-eventyr, men et adskillig mer actionfylt spilleventyr. For det andre var det laget med vektorer og polygoner, ikke bitmap-grafikk som alle andre ScummVM-spill.
Derfor skapte det intern debatt da dette spillet var på vei til å bli en del av motoren. Utviklerne hadde så sterke meninger at noen truet med å slutte om spillet ble støttet. Og alternativet var ikke stort bedre, for andre truet med å slutte om det ikke fikk innpass i prosjektet.
Situasjonen løste seg mer eller mindre av seg selv da den originale skaperen Éric Chahi tok kontakt og ba om å få fjernet motoren ettersom han hadde planer om å utgi en jubileumsutgave av spillet. I følge Eugene Sandulenko fikk han dra nytte av kildekoden teamet allerede hadde produsert.
For å unngå tilsvarende problemer i fremtiden definerte de hva slags spill som var akseptable. Kriteriene er at spillet skal være i eventyrsjangeren, og skal styres ved hjelp av pek-og-klikk-grensenittet. Men det er enkelte unntak: Dersom en spillmotor blir brukt til flere sjangere er det akseptabelt at alle spillene støttes. Det er grunnen til at at rollespillet Lands of Lore kan spilles i ScummVM. Den bygger nemlig på samme spillmotor som eventyrspillene Legend of Kyrandia, Hand of Fate og Malcolm's Revenge.
Observante spillere har kanskje lagt merke til at Sierras tidlige spillmotor AGI er støttet, og husker at spillene benyttet seg utelukkende av tastaturet. Grunnen til at de likevel er godkjent er at Amiga og Mac-versjonene av disse spillene hadde full støtte for mus. Dermed har ScummVM valgt å støtte samtlige versjoner av disse spillene, og forøvrig gitt alle musestøtte.
Google Summer of Code
At ScummVM støtter så mange ulike spill, spillmotorer og plattformer er ekstremt imponerende med tanke på at det hovedsaklig er laget av utviklere på fritiden sin. Men det er faktisk enkelte studenter som har fått betalt for å bidra på ScummVM. Hvert år siden 2007 har ScummVM deltatt i Google Summer of Code, som er et studentprogram hvor Google betaler studenter for å bidra i prosjekter med åpen kildekode.
Dersom Google aksepterer prosjektet betaler de studenten 36 000 kroner for tolv ukers arbeid på prosjektet. For å hindre at systemet misbrukes må blant annet prosjektet være av en viss størrelse, og prosjektet må godkjenne studentens arbeid før utbetalingen skjer.
NTNU-studenten Einar Johan Trøan Sømåen var en av fire aksepterte studenter i 2012. Han har vært aktiv i utviklingsmiljøet helt siden den gang, og har også mer nylig påtatt seg oppgaven med å være mentor for nyere studenter.
– Oppgaven i 2012 var å portere Wintermute-spillmotoren til ScummVM, mer spesifikt kun subsettet av motoren som støttet 2D-spill. Prosjektet var en suksess, og motoren finnes nå som del av ScummVM. Nylig fikk det første Wintermute-spillet støtte i ScummVM: Chivalry is NOT Dead, forklarer han i en e-post til Gamer.no.
– Det står en halv kjøkkenvask med spill igjen til den motoren, som stort sett bare mangler mindre justeringer, eller testing. I det store og hele er det som har manglet for å mangedoble antallet Wintermute-spill stort sett bare tid, for miljøet rundt den motoren har vært veldig hjelpsomt, og svart på alt jeg har lurt på.
– Jeg har forøvrig også ansvaret for den norske oversettelsen av ScummVM, både bokmål og nynorsk. Så hvis noe høres litt rart ut i den norske oversettelsen, er det nok meg man har å skylde på. Heldigvis har jeg så langt bare fått én kommentar på oversettelsen.
Hva med 3D-spill?
Det kritikerroste LucasArts-spillet Grim Fandango ble lansert i 1998 og pensjonerte samtidig SCUMM-motoren. Istedet ble en helt ny 3D-motor, GrimE, benyttet. Denne ble gjenbrukt på Escape from Monkey Island noen år senere.
3D-spill er helt klart utenfor målområdet til ScummVM, men allerede i 2003 startet James Brown et underprosjekt kalt Residual. Målet var omtrent det samme som ScummVM, støtte LucasArts klassiske spill, men altså 3D-spillene.
Det er kanskje ikke så vanskelig å forstå at det tar lengre tid å gjenskape en mer moderne 3D-motor. Faktisk skulle det ta hele ni år før den første versjonen som støttet Grim Fandango kom ut. Da hadde prosjektet endret navn til ResidualVM for å markere at det er søsterprosjektet til ScummVM. De to prosjektene deler en viss kodebase, og enkelte programmerere.
Einar Johan Trøan Sømåen har hatt mer enn en liten finger med i spillet på dette prosjektet også. Han er idag en av to prosjektledere for ResidualVM. Faktisk så startet han som tester på ResidualVM allerede før han ble med i Google Summer of Code for ScummVM:
– ResidualVM lå nærmest død i lang tid uten at noe skjedde før en italiener ved navn Giulio «giucam» Camuffo tok initiativ til å begynne å fikse de utestående tingene der. Jeg hang på IRC-kanalen deres på det tidspunktet, og ble involvert med testing og hvis jeg husker riktig, etterhvert litt småplukk av fiksing. Etter litt om og men, ble jeg tipset av Paweł «aquadran» Kołodziejski om at ScummVM hadde en oppgave tilgjengelig under Google Summer of Code 2012 som kanskje var av interesse.
Fikser tekniske problemer
I tillegg til å få gode gamle spill til å kjøre på moderne plattformer har både ScummVM og ResidualVM fikset bugs og glitches i de originale spillene. Det mest imponerende er kanskje en bug i Grim Fandango som hindrer en viktig dialog i å avspilles. Spilldesigneren Tim Schafer var ikke engang klar over at feilen fantes, men var raskt ute på Twitter for å skryte av ResidualVM-teamet.
Sandulenko forklarer at også i ScummVM forbedrer de originalspillene:
– Samtlige spillmotorer har blitt fikset på i en eller annen form. Det vanligste er at vi oppdaterer lagringssystemet. Vi legger til skjermbilder og øker antall lagringsfiler. I enkelte spill var det kun mulig med tre lagringer, mens ScummVM utvider dette til tusen.
– I tillegg fikser vi feil som var i det originale spillet. En av de verste spillmotorene er SCI fra Sierra. Det var så dårlig at vi har blitt nødt til å utvikle et helt eget system for å tolke innskrevet tekst som fungerer med de originale spillskriptene.
– Sierra-spillene er litt spesielle fordi det ofte finnes veldig mange ulike versjoner av hvert enkelt spill. Man kunne kjøpe et spill på en butikk en dag, og dagen etter finne en litt annen versjon på nabobutikken. Forskjellen var gjerne en liten bugfiks, men de klarte ikke å fikse alle feilene. Målet i ScummVM er du skal få den samme spillopplevelsen uansett hvilken versjon du hadde i utgangspunktet.
Det er en nulltolleranse for piratkopiering i ScummVM.
Stor spillsamling
Når jeg spør hvordan de får tak i alle disse versjonene forstår jeg at det ikke alltid er like enkelt:
– Det er en nulltolleranse for piratkopiering i ScummVM. Enkelte spill er veldig vanskelig å få tak i idag, men på eBay finner man ofte gode gamle klassikere. Jeg antar at jeg har rundt 350 spill i papirbokser hjemme, flesteparten av dem støttet i ScummVM.
– Jeg har for eksempel alle kjente eksemplarer av Inherit the Earth, det er sytten-atten-nitten stykker. Ekstra morsomt er det hvordan jeg har et eksemplar som forfatteren Joe Pearce mangler. La meg fortelle en artig historie rundt dette: Da de trykket opp CD-platene oppstod det en feil som gjorde at dialogen enkelte steder fikk diskettkvalitet. De høyoppløslige filene manglet rett og slett på alle versjoner, til og med nyere gjenutgivelser.
– Jeg aner ikke hvorfor, men av en eller annen merkelig grunn fant jeg de manglende lydfilene på en australsk utgivelse. Jeg har sørget for at Pearce nå har mottatt de manglende filene for fremtidige utgivelser. Han forsøkte seg forøvrig nylig på en kickstarter for oppfølgeren. Selv om den gikk i vasken har han planer om å lage en oppfølger på en eller annen måte.
ScummVM Music Enhancement Project
Det er i tillegg en annen person som skal ha skryt for å ha forandret spillopplevelsen av gamle klassikere. Det er James Woodcock, gjennom hans «ScummVM Music Enhancement Project». Han forteller i en e-post til gamer.no om bakgrunnen:
– Simon the Sorcerer var for meg det første eksempelet på hvordan et spill kunne fange deg og ta deg på et fantasieventyr. Spesielt grunnet de vakre bakgrunnene og animerte dyrene som viste seg frem når man vandret rundt. Legg til de mange parodiene på klassiske eventyr, Simons sarkastiske humor, samt bruke tiden på å utforske en utrolig ny verden. Det var rett og slett en fantastisk opplevelse for en guttunge.
– Flere år senere kom jeg over ScummVM, slik at jeg kunne gjenoppleve Simon the Sorcerer uten behov for DOS. Det var fantastisk å kunne nyte alle de magiske øyeblikkene om igjen. Men da jeg hørte MIDI-musikken i spillet følte jeg at det var mulig å legge til noe mer. Jeg gjenskapte lydsporene i et eksternt høyoppløselig format.
Å få eksterne lydfiler inn i spillet skulle vise seg å være litt vanskelig. Teamet i ScummVM var i utgangspunktet skeptisk til å legge til nytt innhold i spillene, men de lot seg overbevise etterhvert. Woodcock innhentet også tillatelse fra spilldesigner Simon Woodruffe til å publisere lydsporet.
Med en suksesshistorie var det enklere å fortsette musikkprosjektet forteller James:
– Det tok adskillig kortere tid å få tillatelse fra andre utviklere og utgivere. Beneath a Steel Sky og Discworld fulgt raskt etterpå. Å få en personlig respons fra Terry Pratchett (forfatteren av Discworld-bøkene, red. anm.) var helt klart en fantastisk følelse.
Så langt har han laget seks forbedrede lydspor til ScummVM-spill. I tillegg til de som er nevnt overfor har kan gitt ut musikk til Touché: The Adventures of the Fifth Musketeer, Inherit the Earth og The 7th Guest. Samtlige lydspor kan lastes ned gratis fra Woodcocks hjemmeside.
Ikke alle er like begeistret
Mens Éric Chahi ikke var så begeistret for at spillmotoren hans havnet som åpen kildekode er de fleste andre positive. Eugene Sandulenko forklarer:
– Nesten alle de originale utviklerne av spill elsker at vi gjenoppliver spillene deres ved å inkludere motoren i ScummVM. Idag er det riktignok mulig å kjøpe klassiske spill på tjenester som GOG.com, men for bare noen få år siden var eBay eneste mulighet til å få tak i gamle spillperler.
– Vi forsøker alltid å komme i kontakt med de som i sin tid programmerte spillet. Omtrent en tredjedel av spillmotorene er basert på originalkildekode som vi har mottatt. I de fleste andre tilfellene eksisterer ikke kildekoden lengre. Men vi har også vært borte i at noen sier, «jo vi har kildekoden, men dere får den ikke». De prøver ofte å si at vi ikke får lov til å reverse engineere koden heller, men de har ingen juridiske rettigheter til å nekte oss det.
Det er forøvrig flere selskaper som benytter ScummVM når spillet skal gjenutgis på moderne plattformer.
Det kreves at noen er gærne nok til å sitte dag og natt, uke etter uke, dra seg i håret og sakte, men sikkert bygge opp en motor.
Hører ikke på syting
Det er ingen hemmelighet at det fortsatt finnes haugevis av eventyrspill som er innenfor målområdet til ScummVM, men som foreløpig ikke støttes. Jeg spør Sandulenko om hvilket spill som er mest ettertraktet, men han flirer og forteller:
– Vi følger ikke med på forumene for å se hvilket spill vi skal prioritere. Det krever ikke at noen ønsker seg et spill, det kreves at noen setter seg ned og gjør jobben. Det kreves at noen er gærne nok til å sitte dag og natt, uke etter uke, dra seg i håret og sakte, men sikkert bygge opp en motor.
– Det er ganske vanlig at utviklere blir med i ScummVM-prosjektet for å få støtte for et enkelt spill. Når de har nådd dette målet takker de for seg. De har ikke nødvendigvis noen interesse for andre spill.
Akkurat hvilke spill som blir støttet i nær fremtid er ikke godt å si, men det er over 30 spillmotorer som er på en eller annen måte påbegynt i prosjektet. Og allerede i dag er det mer enn 200 spill som støttes. Flere av disse kan man kjøpe fra GOG.com, eller Steam. Det er faktisk ikke umulig at ScummVM er grunnen til at de i det hele tatt er i salg idag. Heldigvis er det ingenting som tyder på at prosjektet kommer til å dø ut med det første heller.
ScummVM kan fritt lastes ned fra http://scummvm.org/.