Uusimmat

Ur-Quan Masters HD kulissien takaa – kuinka Star Control 2 modernisoitiin

21.06.2013 14:00 Muropaketin toimitus

Bang. 1993. Olen 9-vuotias, käymässä serkullani Oulussa ja fiilis on mahtava. Serkkuni on nimittäin kunnon nörtti ja tämä on pelivisiitti.

Yleensä näillä vierailuilla pelattiin serkun kanssa koko ilta Amigalla hiin hemmetisti Larryja, Road Raideria, Jumping Jacksonia sun muita. Samaan aikaan aikuiset puuhailivat olohuoneessa mitä puuhailivat. Välillä otettiin PC:llä modeemiyhteys BBS:ään, ladattiin sharewarea ja napalminteko-ohjeita ja huudettiin olohuoneen puolelle, että nyt näpit irti puhelimesta tai menee downloadi pilalle. PC:llä pelattiin harvemmin mitään, sillä tuolloin Amiga moppasi muilla koneilla lattiaa mennen tullen.

Tällä kertaa kuitenkin käynnissä oli PC, enkä ehtinyt tuijottaa harmaata DOS-ruutua kauaakaan kun serkku naputteli ruudulle MELEE.EXE. Sen jälkeen mikään ei ollut enää entisensä. Ne grafiikat… Ne värikkäät alukset, ne jymisevän realistiset räjähdysten äänet, se uskomaton taistelumusiikki.

Vaikka serkkupoika hakkasi minut pelissä sata-nolla, Star Control 2:n supermelee-taistelu oli koukuttanut minut pahemmin kuin piritorin keittiökemistien puuhapussi.

Enkä ollut edes vielä nähnyt pelin seikkailumoodia…

Star Control 2 suurten kysymysten äärellä

 

Tästä alkaa Jaakko Seppälän jo 20 vuotta kestänyt matka Star Control 2 –pelin syvyyksissä. Tänään Jaakko Seppälä työstää Star Control 2:een pohjautuvaa Ur-Quan Masters HD –uusioversiota, joka päivittää legendaarisen pelin nykyaikaan ja hioo teosta muutenkin paremmin nykykoneille sopivaksi.

Vieraskynä-artikkelin on kirjoittanut Jaakko Seppälä.

Kaikki pelikuvat ovat Ur-Quan Masters HD:stä, ellei toisin ole mainittu.

 

Miksi Star Control 2 rokkaa

Star Control 2 oli minulle SE peli. Vaikka yhdeksänvuotiaan enklanninkielen taitoni ei yliopistotasoa ollutkaan, pelin juoni, nokkela dialogi ja hienosti kirjoitetut hahmot syöpyivät tajuntaani kuin kuningashappo. Rakentelin kotona koulun jälkeen legoista Chmmr-aluksia ja raivosin maailman epäoikeudenmukaisuutta siitä, että ei ollut olemassa vaaleanvihreitä legopalikoita, joista olisi voinut rakentaa Ur-Quanien uskomattoman Dreadnought-avaruuslaivan.

Koulussa nimesin parhaan kaverini hirmuliskopyyhekumin Yankiksi, koska se muistutti pelistä tuttuja Yehat- ja Pkunk-rotuja.

Hänen kanssaan otimmekin supermelee-matsia niin useasti, että muistan vieläkin, että kopiosuojauksen kysymä tähti paikassa 022.9 : 366.6 on nimeltään Tauri. Istuimme vierekkäin PC:n ääressä ja lensimme hyperavaruudessa halki Ur-Quanien valtaamien aurinkokuntien päiväkolmesta iltayhdeksään.

Mielimusiikkiani olivat Star Control 2:n musiikit. Hyräilin niitä salaa suihkussa.

Vaikka vuodet vierivät ja kasvoin, pelimaailman estradille nousivat Doomit, Quaket, NHL:t, GTAt, Half-Lifet, Simsit ja Halot, niin Star Control 2 veti minua yhä puoleensa magneettisen monopolin tavoin. Aina, kun olin pelannut pelin läpi – yläasteella, lukiolaisena, nuorena yliopistosällinä, toivoin että unohtaisin sen mahdollisimman nopeasti. Että voisin nauttia siitä taas uudestaan.

Deep space nine.

Maailmanlaajuinen mania

Oli vuosi 2004, kun sain ilokseni huomata, että en ollut hulluudessani yksin. Serge van de Boomin ja kumppaneiden luotsaama fanitiimi oli saanut pelin luojilta Star Control 2:n alkuperäisen lähdekoodin, josta he koodasivat vaivojaan säästelemättä ilmaisversion Ur-Quan Masters.

Alkuperäisen nimen, Star Control 2:n, oikeudet olivat ja ovat edelleen pelin julkaisseella Accoladella, vaikka mikään muu peliin liittyvä ei enää olekaan.

Ur-Quan Mastersin, UQM:n, fanipohja oli todella, todella aktiivista. Pelin foorumi kihisi elämää, joista osa oli vuoden 1993 vanhoja jääriä, osa taas uusia onnekkaita pelaajia, jotka saivat kokea pelin taian ensimmäistä kertaa.

Osa foorumivieraista oli vain onnellisia päästessään pelaamaan jotakin niin valtavaa, toiset taas olivat kunnianhimoisempia ja halusivat liittyä Ur-Quan Mastersin tekijätiimiin – ehkä jopa tehdäkseen pelille jatko-osan!

Uunituoreena tietoteekkarina koin välittömästi kipinän: ehkä voisin antaa oman panokseni pelin kehitystyöhön. Niinpä latasin Ur-Quan Mastersin lähdekoodeineen, minkä jälkeen pelasin seikkailuosion läpi pari kertaa ja hakkasin supermeleetä kämppisteni kanssa kaksi viikkoa.

Tämän jälkeen tutustuin UQM:n koodiin. Ja yllätyin. Jos mikään, niin juuri UQM:n koodiläjä on varsinainen clusterfuck. Parisen sataa C-lähdekooditiedostoa, huikea määrä erilaisia mystisiä grafiikka- ja muita kirjastoja, joista en tajunnut mitään. Kryptisesti nimettyjä tiedostoja. Logiikan ja fysiikan lakeja uhmaavia, kertakaikkisen käsittämättömiä satojen rivien funktioita, joiden nimi saattoi olla kuvaavasti vaikkapa ’calcvis’ tai ’brm_32d’. Kaikkea oli yllin kyllin. Kaikkea, paitsi kommentteja koodissa tai ohjeita siitä, miten koko kammotusta pitäisi lähestyä. Mikään ei voinut olla tätä pahempaa.

UQM:n tekijätiimi oli jo aiemmin ollut mielestäni kokoelma velhoja. Nyt pidin heitä Yodan, Gandalfin ja Harry Dresdenin megamutatoituneina ristisiitoksina.

Masennuin. Jätin UQM:n kovalevynnurkkaan.

Päägraafikko Damon Czanik tuijottaa ”human control”-bokseista.

Uusi yritys

Oli vuosi 2009, kun sain ilokseni huomata, että olin valmistunut, uunituore sinkku ja hyvin kyllästynyt kaikkeen.

Olin ammatiltani ohjelmoija tietoliikennelabrassa ja olin saanut vuoden alussa ristikseni erään suuren, nimeltä mainitsemattoman matkapuhelinfirman simulaattorin, johon olin saanut kunnian koodata lisäosia C:llä. Lähdekooditiedostoja oli viitisensataa, mukana huikea määrä erilaisia kirjastoja, joista en tajunnut mitään. Kryptisesti nimettyjä tiedostoja. Kaikkia mahdollisia lakeja uhmaavia tuhansien rivien funktioita, jotka oli tietysti kommentoitu aikakautemme valtakielellä, eli unkariksi.

Mikään ei voinut olla tätä pahempaa.

Silloin muistin jotain. Muistin erään pikku koodiviidakon, jonka olin jättänyt kovalevylleni oman onnensa nojaan viisi vuotta aiemmin. Kipinä iski aivoissani: oliko se tosiaan ollut muka niin vaikeaa?

Kämpillä täräytin UQM:n koodin tulille. Sain ilokseni huomata, että viiden vuoden puolivastenmieliset tietotekniikan opinnot eivät olleet menneet hukkaan. Osasin ohjelmoida.

Melee-taistelukenttä ja uudet, isommat tähtigrafiikat pelkkien pikseleiden sijaan.

Project6014 ja sivuprojekti

UQM-HD:n tekeminen käynnistyi oikeastaan sivuprojektina. Uusiseelantilainen herrasmies nimeltä Cedric Horner oli käynnistänyt 2009 alussa projektinsa Ur-Quan Mastersin jatko-osan, Project 6014. Hän kyseli UQM:n foorumilla mukaan innokkaita tekijöitä. Niinpä hyppäsin kelkkaan koodariksi. Jossain vaiheessa mukaan tuli myös amerikkalainen herrasmies nimeltä Damon Czanik. Hän on siitä harvinainen yksilö, että hän osaa piirtää. Todellakin osaa.

Alun perin Project 6014:n tarkoitus oli vain jatkaa UQM:n tarinaa uudella juonella ja kenties muutamalla uudella aluksella. Siinäkin, luoja nähköön, olisi ollut täysipäiväinen työ, kiitos mm. koodin arkaaisuuden ja hyvin epämuunneltavan luonteen. Mutta nälkä kasvaa syödessä ja jenkit ovat suuruudenhulluja.

Se kävi ilmi vuoden 2010 puolella, kun Damon ehdotti, että mitäpäs jos parannettaisiin grafiikat kertaheitolla, esimerkiksi resoluutioon 1600×1200.

Itse olin vaatimattomasti jonkin aikaa leikitellyt ajatuksella tuplata resoluutio alkuperäisestä 640×480:een. Olin itse asiassa saanut tempun onnistumaankin muutaman päivän ahkeralla koodauksella. Olin tehnyt sen lähinnä sen takia, koska foorumeilla kaikki pitivät moista temppua yhtä mahdollisena kuin juosta maratonin alle tuntiin.

Talking pet antaa pelaajalle hyvän vihjeen.

Mikä siinä sitten on niin vaikeaa?

UQM:n resoluution muuttaminen olisi haastavaa, koska sitä varten joutuisi ensinnäkin muuttamaan tuhansia kuvatiedostoja. Mikä pahempaa, suuri osa grafiikoista toteutetaan ohjelmakoodilla lennosta. Planeettojen pintagrafiikat luodaan koodilla, koodi määrää miten pitkälle lasersäde piirretään, mihin pääaluksen moduulit sijoitellaan, miten planeettojen painovoimat toimivat, miten törmäykset toimivat… Muunnettavia kohtia koodiriveillä on todennäköisesti enemmän kuin kuvatiedostoja.

Joka tapauksessa, olin ohjelmiston puolesta saanut pelin mitenkuten pyörimään paremmalla resolla. Itse asiassa olin myös täyttä häkää muuntelemassa olemassa olevia 320×240-grafiikoita pikseli pikseliltä 640×480-tarkkuuksisiksi lisäämällä yhden pikselin sinne, yhden tänne… Täysin typerää touhua, mutta tuolloin ajattelin, että äkkiäkös nämä 16000 .png-kuvaa käsittelee uusiksi tällä metodilla. Elämässäni tapahtui tuolloin jokseenkin vähän.

Mutta tosiaan, Damon-graafikko teki Cedricin ja minun kanssani diilin: hän piirtäisi nuo 16000 kuvaa uusiksi (siis piirtäisi oikeasti alusta alkaen, eikä nyhertäisi pikseleitä), jos minä koodaisin hommat toimimaan ja Cedric rekryäisi lisää porukkaa meidän molempien avuksi.

Päädyimme tarkkuuksiin 320×240, 640×480 ja 1280×960, koska ajattelin, että saisin koodin suorittamaan ne tuhansien laskutoimitusten skaalaukset eri resoille jouhevasti ja nopeasti käyttämällä left-shift-operaatiota. Käytännössä tämä tarkoittaisi, että alkuperäinen tarkkuus voidaan helposti kertoa kahdella tai neljällä. Se oli jalo ja hyvä idea, joka noudatti ohjelmoinnin ideaaleja. Ja meni niin totaalisen pieleen kuin vain mennä voi.

Harvinainen work-in-progress-luonnos Melnormen uudesta ihosta.

Voittoja ja jämähdyksiä

Pitempään UQM- ja Project6014-kuvioissa pyörineet tietävät, että julkaisimme Project6014:stä demot 0.1 ja 0.2.Tämän jälkeen se jäi luovalle tauolle. Cedric Horner jätti 0.1:n jälkeen Project6014:n ohjausvastuun minulle, kun Todellisen Elämän ™ armoton ääni kutsui hänet mukaansa.

Se oli sääli, sillä Cedric oli erittäin hyvä houkuttelemaan innostuneita ja vieläpä taitavia tekijöitä mukaan peliprojektiin.

Sain ohjattua yli 20-päiseksi kasvaneen tekijätiimin (muusikoita, koodareita, graafikoita, kirjoittajia) julkaisemaan demon 0.2, joka suurimpana parannuksena piti sisällään huolella hiotut 640×480- ja 1280×960-resoluutiot aiemman 320×240:n lisäksi.

Project6014:n demoja on ladattu jo tuhansia kertoja, ja ovatpa Star Control 2:n todelliset isät Fred Ford ja Paul Reiche III:kin kokeilleet sitä. Tuntui hyvältä lukea näiden lapsuuden idolien kehuja demosta starcontrol.com:in foorumilla. Se oli yhden lapsuuden unelman täyttymys!

Valitettavasti sen jälkeen homma saavutti vaiheen, jota kutsutaan nimellä development hell. Meidän tapauksessamme se oli sitä, että liian moni innokas kirjoittajanalku tarjosi liian montaa hyvää ideaa juonenkulkua varten, eikä kukaan halunnut tietystikään halunnut luopua ideoistaan – onhan kirjoittaminen hauskin osa pelinkehittämistä.

Koska myös halusimme pitää kehitysprosessin avoimena prosessina, johon kuka tahansa voi osallistua, huomasin että hirvittävän suuri osa ajastani menee sähköpostien lähettelyyn ja juonta punovien kirjoittajien keskinäisten erimielisyyksien sovitteluun.

Tällainen työskentelytapa olisi vaatinut projektille raudanlujan johtajan, joka ei epäröi ampua alas kehnoja ideoita, vaikka niiden ideoija sitten pahoittaisikin mielensä. Valitettavasti en ollut tarpeeksi luja. Sain huomata, että kirjoittelin sähköposteja kaiken maailman ideanikkareille tuntikaupalla ilman, että mitään saatiin edes lopulta aikaiseksi.

Mikä vielä pahempaa, jouduin edelleenkin vastaamaan miltei kaikesta koodauksesta itse, koko projektin johtamisen lisäksi. Projektiin mukaan tulleet uudet ohjelmoijat kävivät lähinnä kääntymässä, säikähtivät koodin vaikeutta ja lähtivät pois. Se oli lähinnä ajantuhlausta.

Tämä kaikki vei hirveästi aikaa ja energiaa. Siksi jätin Project6014:n kehitystyön pitkäksi aikaa.

Alkuperäisen SC2:n mukana tullut paperitähtikartta on toteutettu betassa pelin sisälle.

Tuhkasta nousee Feenix

Onneksi Damon Czanik on paitsi suuruudenhullu ja loistava graafikko, myös itsepintainen. Koko vuoden 2012 ajan hän paitsi väsäsi UQM-HD:hen uusia grafiikoita, myös kiusasi minua sähköposteilla niin kauan, että lopulta lupauduin tulemaan hänen avukseen. Että saisimme ainakin valmiin UQM-HD:n pihalle, vaikka Project6014 olikin enemmän tai vähemmän telakalla.

Tämä tapahtui marraskuussa 2012. Mikäli käyt vilkaisemassa SVN-sivuamme (http://code.google.com/p/uqm-hd), voit nähdä, että pistimmekin ison pyörän pyörimään heti tämän jälkeen. Nelisensataa päivitystä hieman yli kuukaudessa!

Julkaisimme UQM-HD:n alfa-demon aivan vuoden 2012 lopussa. Ja se todellakin on alfa-demo, joskin harvinaisen bugittomasti toimiva sellainen. Kommentaattorit useammallakin palstalla ovat epäilleet, että pitäisimme UQM-HD:n ikuisesti alfa-demona, syistä joita en käsitä. Mutta beta-versio on tulossa ennemmin kuin he odottavatkaan…

Fred Fordkin kävi heittämässä kehuja tekemästämme elokuvahenkisestä pelin trailerista, joissa 3D viittaa vitsinä HD-versioon:

”That trailer is awesome!  I can’t wait for the ‘3D’ version (I’ve saved some glasses from the movie theater). Yeah, making games is hard and it’s just been getting harder (at least in the console realm).  Someday, though, Paul and I plan to get back to the Star Control universe…”

Aurinkokunnan planeettojen pinnat ovat kokeneet radikaalin muodonmuutoksen.

Mutta jos voisimme palata ajassa taaksepäin, tekisimme UQM-HD:n suhteen monta asiaa toisin. Itse ensinnäkään en olisi jättänyt alfaan keskeneräistä 640×480-moodia setup-valikkoon. Tästä on tullut uskomaton määrä valituksia ja bugiraportteja, vaikka kyseistä resoluutiota valittaessa pelaajalle kyllä tulostetaan hienovarainen ”EI EI EI! Älä helvetissä pelaa tällä bugisella resolla” tai jotain siihen suuntaan. Samoin olisimme ennen julkaisemista etsineet keinon saada peli skaalautumaan kaikille näyttötarkkuuksille (tämä ominaisuus tulee betassa olemaan), sillä nyt alfa ei kikkailematta toimi esimerkiksi vanhempien läppäreiden ruuduilla.

Meidät kuitenkin yllätti positiivinen ongelma: UQM-HD nousi pelaajakansan suosioon niin kuin mikäkin Feenix tuhkasta. Toisin kuin Project6014, UQM-HD:n alfa herätti pelisaittien kiinnostuksen ympäri maailmaa. Brittiläisen Rock, Paper, Shotgun -sivuston jutun myötä peliä ladattiin yhtenä päivänä parikin tuhatta kertaa. Mutta se oli vielä pientä…

Nimittäin, kun Youtubessa Let’s play -videoita postaava Yogscast-poppoo otti UQM-HD:n ohjelmistoonsa, pelin päivittäiset latausmäärät nousivat parhaillaan miltei kymmeneentuhanteen. Nämä hyväntahtoisella huumorilla kommentoidut pelivideot ovat saaneet huikean määrän katsojia, ja mikä parasta, uusia, nuoria tulokkaita Ur-Quan Mastersin maailmaan. Yogscast oli minulle uusi tuttavuus, mutta sen konsepti voitti välittömästi puolelleen: videossa näytetään yhtäaikaisesti peliä, ja alalaidassa puolestaan peliä pelaavia kahta heppua. Siinä he istuvat vierekkäin tietokoneen ääressä, juttelevat pelistä hellyttävän innostuneeseen sävyyn. Hieman niin kuin silloin 20 vuotta sitten kaverin luona koulun jälkeen…

Yleisön pyynnöstä: betassa tallennukset voidaan nimetä.

Uusi sukupolvi

Onkin ollut mahtavaa nähdä, miten kokonainen uusi pelaajasukupolvi on löytänyt Ur-Quan Mastersin HD-versiomme myötä. Ehkä eniten sydäntä on lämmittänyt vanhojen veteraanien kertomukset siitä, miten he pelasivat lapsena alkuperäistä ja miten he pelaavat parhaillaan HD-versiota omien lastensa kanssa!

Mikä välillä hieman huvittaa Minecraft-sukupolven näppiksenkäpistelijöissä on se, miten eri tasolla tekninen osaaminen tuntuu olevan verrattuna parinkymmenen vuoden takaisiin keskivertopelaajiin.

Vuonna 1993 jokainen kymmenvuotias osasi ropeltaa autoexec.batit ja config.sysit boottidisketille, että vanhan 286:n muisti riitti juuri ja juuri pyörittämään Star Control 2:a. Vuonna 2013 taas… noh. Useammalle kuin yhdelle kysyjälle resoluution vaihtaminen pelin setup-valikosta on ollut ylitsepääsemätön haaste. Vielä useampi taas on kysynyt hädissään maililla, miten ratkaistaan sellainen tekninen ongelma kuin zip-paketin purkaminen.

Omalla tavallaan tämä tosin kertoo hyvästä kehityksestä tietokoneiden saralla: pelit, käyttöjärjestelmät ja laitteistot ovat kehittyneet (onneksi) siihen pisteeseen, että suurin osa turhasta säätämisestä on automatisoitu ja viety käyttäjän näkymättömiin. Enää ei ole pakko kuluttaa aikaa typerään kilotavujen viilailuun, mikäli haluaa vain nauttia pelaamisesta.

Alt-näppäin tuo esiin nätit SC1-tyyliset inforuudut supermeleessä alusta valittaessa.

Silti, en voi toisinaan olla muistelematta sitä, miten taianomaiselta tuntui ohjelmoida tekstiseikkailupelejä ja grafiikkaeditoreja C64:lle basicilla, miten taitavaksi itsensä tunsi, kun sai 12-vuotiaana konffattua äänikortin toimimaan ihan ilman vanhempien apua, tai miten voittajalta tuntui reverse-engineerata liian vaikean pelin assembly-koodia ja muuttaa sitä hivenen helpompaan suuntaan.

Siitä tuli sellainen olo, että nämä värkit, joiden sisässä lymyilee prosessoreja ja muistipiirejä eivät olekaan niin mystisiä ja joidenkin toisten jossain tekemiä mustia laatikoita, vaan laitteita, joita voi ymmärtää ja muunnella mielensä mukaan. Se on jotenkin sellainen olo, että ei ole muiden armoilla tai vedätettävissä. Kuulostaa ehkä typerältä, mutta minusta on jollakin tavalla lohdullista tietää käyttävänsä laitetta, jonka toimintaperiaatteen ymmärtää ja jonka voi jopa korjata itse – oli sitten kyseessä kitaravahvistin, moottoripyörä, filmikamera, tai tietokonepelin ohjelmakoodi.

Teksti ja kuvitus: Jaakko Markus Seppälä

 

Linkkejä:

UQM HD –lataussivusto: http://sourceforge.net/projects/urquanmastershd

SVN-repositorio (lähdekoodi, päivitykset): http://code.google.com/p/uqm-hd

Facebook: https://www.facebook.com/UrQuanMastersHd

UQM:n tekijöiden foorumi: http://forum.uqm.stack.nl

Star Control – fanifoorumi: http://www.star-control.com

Star Control II: http://www.mobygames.com/game/star-control-ii

Star Control: http://www.mobygames.com/game/star-control

 

Työskenteletkö pelialalla tai sen lähikulmilla? Tai onko sinulla muuten vain sanottavaa? Julkaisemme mieluusti vieraskynä-henkisesti myös toimituksen ulkopuolisten kirjoittamia kolumneja ja artikkeleja. Tarjoa juttuasi osoitteeseen posti[ät}edome.net.

 

Lisää aiheesta

Star Control -jumalat Paul Reiche III ja Fred Ford haastattelussa

GOG julkaisi molemmat Star Controlit

Lue myös

1960: Making of a President (lautapeli)

Gran Turismo 6 – haastattelussa Sonyn Euroopan toimitusjohtaja Jim Ryan (1-5)

Grand Theft Auto V –ensikosketus – megakuprun tavoittelijat (osa 1)

PlayStation Network – vitsistä vakavaksi Plus-vaihtoehdoksi

Runescape 3 –ensikosketus – morppiklassikko päivittyy rankasti nykyaikaan

Suuri hiirimattovertailu 2013

Xbox Live Arcade -pelit testissä (osa 15)