F I Oculus Rift vs. 2 1 6 .3 Tietokonekulttuurin erikoislehti 2016.3 S K R O L L I . Vive The International: miljoonat eurot pelissä Uutta koodia vanhaan rautaan: VIC-20, Spectrum, C=64 Torrent: näin se toimii Doom, Fallout 4, XCOM 2: klassikot palaavat Yhdessä Assembly 2016 Uutta koodia vanhaan rautaan VIC-20, Spectrum, C=64
30 The International Miljoonaluokan videopeliturnaus. 80 Assyille mahtuvat kaikki Vain Suomessa: koko tietokonekulttuuri saman katon alla.. Näpertele ansa, joka paljastaa missä se menee. 8 Avaruusnatsit apinasaarella Peliklassikot tulivat takaisin. 78 Ei näin: Sinclair QL Sinclair ZX Spectrumin seuraajan piti olla kvanttihyppy tulevaisuuteen. 72 Demoskenen nettiradiot Kun demomusajalkaa vipattaa, virittäydy näille taajuuksille. 3 2 4 Hajautetut torrentit Torrent toimii niin, että kun kaikki jakaa, kaikki saa. Skrolli järjesti alkusyksystä ensimmäisen tilaajaarvonnan: Oculus Rift -virtuaalilasit menivät Tampereelle. 21 Kolumni: Janne Sirén Virtuaalimaailma on hirveä paikka. 18 Todellisesta virtuaaliseen View-Masterin jättämä jano. 68 Kirja: X-COM-tietokonepelien klassikot Avaruusmuukalaisten invaasio paketoitiin koviin kansiin. 28 Hiirenloukku Katoaako kursori Windowsissa. 42 Taistelurobotit kohtaavat kehässä Areena heiluu ja peltisilppu lentää, kun suomalainen metalli kirskuu. 70 Soluautomaatti Pythonilla Vielä yksi Game of Life. 35 Polttomoottorin varjossa Sähköauto on tehnyt tuloaan 1800-luvulta saakka. Toinen Oculus Rift arvotaan tilaajien kesken loppuvuodesta 2016 vielä ehtii tilata! tilaaskrolli.fi 2 1 6 . Miksi. Ei ollut. 76 Aseistettu koodi Ykköset ja nollat sodankäynnin välineinä. Tee itse parempi. 58 Omia pelejä Spectrumille Aloittelevan speku-devaajan opas. 16 Virtuaalisilmikko kannettavalla Toimisiko Vive työläppärillä. 44 Tuunaa tulikettua Ovatko valmiit selainlaajennukset kehnoja. 12 Keinotodellisuus nyt Testissä Oculus Rift ja HTC Vive. 22 Esoteeriset ohjelmointikielet Oudot kielet venyttävät koodaajan äärirajoilleen. 52 Vanha koti uudelle koodille Hessian – parasta kuusnepalla juuri nyt. 62 Kovempi kuin kuvittelet: Vic-20 Vic-guru paljastaa demojensa salaisuudet. 50 Vanhoja pelejä Oulun yössä Suomen Amiga-käyttäjien gurut meditoivat yhä
Mielipiteillä on jälleen merkitystä, ja jokainen haluaa saada oman sanansa sanottua. Nämä näkemykset eivät ole Skrollin näkemyksiä, ellei niitä ole tähän lehteen sellaisina painettu. Kauppinen, Ronja Koistinen, Ninnu Koskenalho, Toni Kuokkanen, Teemu Likonen, Sakari Lönn, Janne Sirén, Suvi Sivulainen. Samalla sivulla olemme kuitenkin siitä, että suomalainen tietokonekulttuuri tarvitsee Skrollin kaltaista lehteä, ja me pystymme yhdessä sellaista tuottamaan. Poliittiselle keskustelulle on onneksi nykyisin tarjolla runsaasti foorumeita, joten tietokonekulttuuria käsittelevän lehden ei tarvitse olla sellainen. Uudet viestintäkanavat ovat huomattavasti kaventaneet etäisyyttä yksityisen ja julkisen välillä. Pääkirjoitus Etukannen kuva: Toni Kortelahti TUXERA YOUR DATA WHERE YOU WANT IT HÄMEEN KIRJAPAINO OY 4041 0209 Painotuote. Pääosin vapaaehtoisvoimin tehtävän Skrollin toimittajat toimivat yhteiskunnassa sen täysivaltaisina jäseninä ja tuovat usein esiin omia mielipiteitään eri asioista. Skrollin kautta olen saanut tutustua ihmisiin, joita tuskin olisin muuten tavannut, ja tehdä heidän kanssaan merkityksellistä työtä koko harrastuskentän hyväksi. Myös Skrolli on jokusen kerran törmännyt tilanteeseen, jossa meidän on lehtenä joko oletettu olevan jotakin mieltä yhteiskunnallisesta asiasta, tai sitten mielipidettämme sellaiseen on kysytty. Olemme kirjoittaneet ja kirjoitamme jatkossakin kaikista aiheista, jotka koskettavat yhteistä harrastustamme – silloinkin, kun on jo etukäteen selvää, että artikkelista tullaan käymään jälkipyykkiä. Julkaisija Skrolli ry Painopaikka Hämeen Kirjapaino, Tampere, ISSN 2323-8992 (painettu) ISSN 2323-900X (verkkojulkaisu) Kenen joukoissa seisot. Torvinen, Mitol Meerna, Aino Valovirta. Kuluvana vuonna on jo nähty useampi somekohu, eikä tahti ole ainakaan hidastumaan päin. Itselleni aika Skrollin toimituksessa onkin ollut huomattavan opettavaista. Myös tietokonekulttuurissa on runsaasti asioita, joita pitäisi kyseenalaistaa paljon enemmän kuin nykyisin tehdään. Skrollin toimitus on heterogeenisempi kuin moni ehkä tulee ajatelleeksi. 3 Mikko Heinonen asiantuntijatoimittaja Skrolli Tietokonekulttuurin erikoislehti Yhteydenotot toimitus@skrolli.fi Ircnet: #skrolli skrolli.fi Päätoimittaja Ville-Matias Heikkilä Toimituspäällikkö Valhe Kouneli Taiteellinen johtaja, taitto Nasu Viljanmaa Taitto Manu Pärssinen Kuvatoimittaja Laura Pesola Mediamyynti Jari Jaanto Talous Anssi Kolehmainen Muu toimitus Tapio Berschewsky, Mikko Heinonen, Jukka O. Muu on tähän tavoitteeseen nähden toissijaista ja sovittavissa. On ollut hienoa nähdä, miten hyvin erilaisista lähtökohdista tietotekniikan pariin päätyneet ihmiset voivat toimia yhdessä. Yhteisenä nimittäjänä on elinikäinen kiinnostus tietotekniikkaan, mutta muuten edustamme monimuotoista joukkoa muun muassa iän, sukupuolen, poliittisen aktiivisuuden ja aatesuuntien suhteen. Tämän numeron avustajat Jarno Niklas Alanko, Mats Antonsson, Tuomas Grannas, Philippe Grussenmeyer, Marko Haarni, Ville-Veikko Heinonen, Vesa-Pekka Holappa, Juha Immonen, Jiggawatt, Jussi Kasurinen, Jari Komppa, Toni Kortelahti, Markus Kuula, Sakari Leppä, Asser Lähdemäki, Mitol Meerna, Heikki Mustonen, Mikael Peltomaa, Mikko Rasa, Kimmo Rinta-Pollari, Oona Räisänen, Jari Sihvola, Benjamin Särkkä, Terho Tanskanen, Mikko O. E i tarvitse olla kummoinenkaan selvänäkijä havaitakseen, että keskustelukulttuuri niin internetissä kuin sen ulkopuolella on polarisoitunut. Olemme usein asioista eri mieltä. Skrolli ei kuitenkaan ota lehtenä kantaa muihin kuin tietokonekulttuuriin liittyviin asioihin. Tämä linjaus ei tarkoita, että pakenisimme vastuuta
2 1 6 . Kullekin palaselle lasketaan kryptografinen SHA-1 sormenjälki, joista jokainen on uniikki. Mitä enemmän dataa solmu jakaa, sitä enemmän muut asiakkaat lähettävät sille dataa. Se valjastaa käyttöön kaikkien tiedostosta kiinnostuneiden asiakkaiden yhteenlasketun upload-kapasiteetin, joka on potentiaalisesti valtava. Suuri askel laajempaan käyttöön oli, kun Linux-yhteisö otti protokollan omakseen käyttöjärjestelmien ja ohjelmien jakeluun. Academictorrents.com Hajautetut torrentit Bittorrent on suosittu tapa jakaa tiedostoja internetin välityksellä. client) lataa tiedostoa. Teksti: Jarno Niklas Alanko Kuvat: Toni Kortelahti, Mitol Meerna, Nasu Viljanmaa Tekniikka Torrent Tiedosto, jonka avulla asiakasohjelma osaa ladata muun tiedoston tai tiedostoja. Bittorrent rohkaisee asiakkaita jakamaan tiedostoja eteenpäin mahdollisimman paljon. Esimerkiksi World of Tanks -pelin päivitykset jaetaan pelaajille Bittorrenttia käyttäen. Vaikka Bittorrent tunnetaan etupäässä laittomasta tiedostojen jaosta, käytetään sitä myös täysin laillisissa sovelluksissa. Protokolla oli alunperin ohjelmoija Bram Cohenin oma harrasteprojekti. Miten lataajat löytävät toisensa ja kommunikoivat keskenään. Torrent-sanalla voidaan myös viitata sisältöön, jota ollaan lataamassa.. Kaikkia asiakkaita ohjaa träkkeri eli seurantapalvelin, joka pitää asiakkaista kirjaa ja jakaa heidän IP-osoitteitaan toisilleen. Sormenjäljen avulla voidaan tarkistaa, että palanen tulee ehjänä perille, eikä sitä ole tahallisesti tai tahattomasti muokattu. Lopullinen läpimurto tuli, kun TVja elokuvapiraatit löysivät protokollan vuoden 2004 tienoilla. Heti kun asiakas alkaa ladata tiedostoa, protokolla lähettää samalla juuri lataamiaan osia muille asiakkaille. Sen avulla tiedostojen jakaminen on sitä tehokkaampaa, mitä useampi asiakas eli asiakasohjelma (engl. Kun kansansuosio on kyllin suurta, tämä lähestymistapa on turhauttava. Palvelimen käytettävissä oleva kaista asettaa rajan sille, kuinka paljon dataa saadaan asiakkaalle aikayksikköä kohti, eli kuinka nopeasti tai hitaasti lataus onnistuu. Bittorrent-protokolla kiertää ongelman. Vanhan mallin mukaan tarvittava tiedostopaketti laitetaan palvelimelle, josta halukkaat käyvät sen hakemassa. Lisäksi torrenttiedosto sisältää jaettavan tiedon tiivisteen, jonka perusteella lataaja voi tietää, onko tieto tullut vahingoittumattomana perille. Saadakseen sille käyttäjiä Cohen keräsi ilmaiseksi saatavilla olevaa pornoa, ja laittoi tiedostot jakoon. 3 4 K un kaikki haluavat suositun tankkipelin uusimman päivityksen itselleen yhtä aikaa, mikä on tehokkain tapa jakaa sitä. tietoa tiedostoista, joita ollaan jakamassa ja tietoa, jonka avulla voidaan löytää tiedostojen jakajat. Jaettava tiedosto jaetaan pieniin, tyypillisesti 256 kilotavun kokoisiin palasiin. Torrent-tiedosto sisältää mm. Kuinka tiedostojen jakaminen onnistuu ilman keskitettyä seurantapalvelinta
Alkuperäinen kyselijä voi nyt pyytää torrentia vastaavan arvon tältä asiakkaalta. On tiedossa, millaisia osoitteita avaimilla voi olla. Jokainen asiakas jakaa 1 Maymounkov, Petar ja David Mazieres, Kademlia: A peer-to-peer information system based on the xor metric. Keskeisin ongelma järjestelmässä, joka ei käytä keskitettyä seurantapalvelinta, on se, miten asiakkaat löytävät toisensa. Tätä jatketaan, kunnes löytyy asiakas, joka on vastuussa halutusta torrentista. Torrentit, joita vastaava avain on ”lähellä” asiakasohjelman osoitetta, säilötään tämän asiakkaan tietokoneelle. Kademlian xor-metriikan teoreettiset ominaisuudet takaavat sen, että vaikka verkossa olisi paljon solmuja, kahden solmun välinen etäisyys ei koskaan ole suhteettoman suuri. Torrentilla tarkoitetaan nyt tiedoston jakamiseen liittyvää metadataa, ei itse jaettavaa tiedostoa. Kademlia Yksi laajimmin käytetyistä tavoista toteuttaa DHT on käyttää ns. Samoin Kademlia-verkossa on mahdollista päästä mistä tahansa solmusta mihin tahansa toiseen solmuun yllättävän pienellä määrällä linkkejä. BitTorrent käyttää keskitettyjä seurantapalvelimia, mutta systeemin toimintavarmuuden parantamiseksi on kehitetty järjestelmiä, jossa keskitettyä seurantapalvelinta ei tarvita lainkaan. International Workshop on Peer-to-Peer Systems (2002) ”naapurustonsa” vyöhykkeisiin sen perusteella, miten kaukana osoitteet ovat siitä. Tällöin järjestelmän toimivuus ei ole yksittäisten palvelimien pystyssä pysymisen varassa, mistä on myös juridisia etuja. Sitten ne palauttavat uusia yhteystietoja alkuperäiselle kyselijälle. hajautettu tiiviste). Jokaisesta vyöhykkeestä asiakas pyrkii tallentamaan muutaman muun asiakkaan ip-osoitteen ja portin. Träkkerivastuu on hajautettu asiakkaiden kesken, ja jokainen asiakas on samalla myös eräänlainen seurantapalvelin. Nyt alkuperäinen kyselijä toistaa kyselyn uusille kontakteille. Uuden torrentin lisääminen tauluun tapahtuu vastaavasti. Esimerkiksi jos solmun A tunniste on 1101, ja solmun B tunniste on 0100, niin A ja B välinen etäisyys on 1001, eli luku 9 kymmenkannassa. Samoin voidaan määritellä etäisyys kahden asiakkaan tunnusten välille. Avaimen ja tunnisteen välinen etäisyys määritellään ottamalla bittikohtainen xor avaimesta ja tunnisteesta. Siinä yksikään asiakas ei pidä itsellään koko hajautustaulua, ellei asiakkaita ole erittäin vähän. Avainta (eli torrenttia) vastaavan arvon (eli jakajatietojen) hakuoperaatio toimii seuraavasti: Asiakas laskee ensin, miltä vyöhykkeeltä siitä itsestään katsottuna torrent löytyy. Nyt polun pituus mistä tahansa solmusta toiseen on verrannollinen solmujen kokonaismäärän logaritmiin. Jokainen asiakas (solmu) on suoraan yhteydessä pieneen joukkoon muita asiakasohjelmia (solmuja). Sitten asiakas kysyy kyseessäolevan vyöhykkeen kontakteilta yhteystietoja asiakkaisiin, jotka ovat lähempänä torrentia. Tiedon hajauttamisessa käytettävää tietorakennetta kutsutaan nimellä distributed hash-table (DHT) (suom. Kademliassa jokainen asiakasohjelma ja torrent arpoo itselleen uniikin tunnusluvun. Ovelan toteutuksen avulla asiakkaat pystyvät kommunikoimaan keskenään, vaikka yksikään niistä ei pidä itsellään kaikkien muiden asiakkaiden tietoja. Träkkerittömässä torrentissa asiakkaat järjestävät kaiken tiedostonjakoon tarvittavan keskenään. Etäisyydellä ei ole mitään tekemistä asiakkaiden fyysisen etäisyyden kanssa – kaksi samassa huoneessa olevaa tietokonetta voivat olla kaukana toisistaan avainten etäisyysmitan suhteen. 1.4e+07 1.6e+07 1.8e+07 2e+07 2.2e+07 2.4e+07 2.6e+07 2.8e+07 3e+07 Mon Tue Wed Thu Fri Sat Sun Es tim at e # of no de s 2011.03.07 2011.03.13 2012.03.05 2012.03.11 2013.04.08 2013.04.14 Mainline DHT -verkon käyttöaste tippuu, kun Euroopassa tulee yö. Ongelma on ratkaistu hajauttamalla tyypillisesti keskitetyllä seurantapalvelimella oleva tieto kaikkien asiakkaiden kesken. Träkkereistä eroon Koko torrentin toimivuus nojaa seurantapalvelimiin. Jos torrentista vastuussa olevaa asiakasta ei löydy, uudet kontaktit laskevat, miltä vyöhykkeeltä avain löytyy niistä katsottuna. Asiakas kyselee iteratiivisesti yhteystietoja muihin asiakkaisiin yhä lähempänä ja lähempänä Kademlian XOR-metriikka Kademliassa sekä avaimet että asiakkaiden tunnusluvut ovat 160-bittisiä binäärilukuja. 5 -sivustolta löytyy laillisia, tieteellistä dataa jakavia torrentteja. Kuva artikkelista 1 .. Kademliaarkkitehtuuria 1 . Tunnusluku on kuin asiakasohjelman tai torrentin osoite tunnisteavaruudessa. Kademlia-arkkitehtuuri ikään kuin luo virtuaalisen verkon asiakkaiden välille. Sanotaan, että kaikki ihmiset ovat kytköksissä toisiinsa korkeintaan seitsemän kaverisuhteen välityksellä. Näin yksittäinen asiakas on parhaiten kytköksissä ”lähiympäristöönsä”, mutta tietää muutaman kaukaisemmankin kontaktin
Se on 160-bittinen SHA-1-sormenjälki torrentin metatiedoista, kuten tiedoston palasten koosta ja palasten SHA-1-sormenjäljistä. Torrenttia vastaava arvo on nyt lista asiakkaiden IP-osoitteista ja porteista, jotka osallistuvat torrenttiin. a b c a b c Kuvissa on esitetty avainhakukyselyn etenemistä Kademlia-verkossa kun solmu a haluaa selvittää, mitkä solmut ovat lähimpinä avainta c (merkitty katkoviivoin). Se tapahtuu pilkkomalla jaettava tiedosto paloihin, laskemalla tarvittava infohash ja lisäämällä omat yhteystiedot Kademlia-verkkoon infohashia avaimena käyttäen. Tällaista kyselyä toistetaan uudestaan lähimpänä oleville juuri saaduista solmuista, kunnes löytyy solmu, joka on tarpeeksi lähellä avainta, että siltä löytyy avainta vastaava arvo.. Kun lähemmäs ei enää pääse, asiakas asettaa muutaman itseään lähimpänä olevan asiakkaan vastuuseen torrentista, ja tallettaa oman iposoitteensa ja porttinsa jakajalistaan. Kun uusi torrent luodaan, lasketaan sille niin sanottu infohash. Liittyessään torrenttiin asiakas liittyy Kademlia-verkkoon, hakee infohashin avulla torrentin metatiedot ja listan torrenttiin osallistuvista IP-osoitteista lisäten samalla itsensä listaan. Vasemmassa kuvassa solmu a tekee yhteystietokyselyn solmulle b. Punaiset solmut kuuluvat sillä hetkellä kyselyä tekevän solmun reititystauluun: vasemmassa kuvassa a:n ja oikeassa b:n. Jokainen solmu jakaa avaruuden vyöhykkeisiin: vasemmassa kuvassa a:n ja oikeassa kuvassa b:n näkökulmasta. Infohash toimii avaimena torrentille Kademlia-verkossa. 3 6 torrentia. 2 1 6 . Kademlian soveltaminen Bittorrentiin Hajautetut torrentit toimivat siten, että asiakkaat ovat seurantapalvelimia satunnaisille torrenteille. Oikeassa kuvassa b katsoo omasta listastaan lähimmät solmut oikealta vyöhykkeeltä itsestään katsottuna, ja lähettää ne a:lle. Uuden seurantapalvelimettoman torrentin voi luoda kuka vain
IEEE Peer-to-Peer (2013) 3 Wang, Liang; Kangasharju, Jussi. Solmut kyselevät jatkuvasti toisiltaan, ovatko ne vielä elossa. Vuonna 2013 sillä arvioitiin olevan 24–27 miljoonaa käyttäjää 2 . On näyttöä siitä 3 , että MainLine DHT -verkko sisältää satoja tuhansia solmuja, jotka keräävät tietoa verkosta ja kaappaavat liikennettä itselleen. Suomessa tekijänoikeuden alaisen aineiston lataaminen ei ole lainvastaista, mutta sen jakaminen muille on. 7 Suurin olemassa oleva KademliaDHT verkko on nimeltään Mainline DHT. Verkossa liikkuu myös epäilyttäviä solmuja. On tärkeää, että solmut päivittävät jatkuvasti kontaktilistaansa. Kun asiakas saa lisää kontakteja, vyöhyke jaetaan ensin kahteen ja sitten edelleen pienempiin osiin, kun uusia kontakteja löytyy. Liittyessä DHT-verkkoon tietokoneesta tulee mahdollisesti seurantapalvelin satunnaisille torrenteille. IEEE GLOBECOM (2012) juuri ole. Uudelle asiakkaalle kaikki avaimet kuuluvat aluksi yhteen vyöhykkeeseen. Real-world sybil attacks in BitTorrent mainline DHT. Bittorrent-verkko ei yritä lainkaan piilottaa sitä, kuka lataa ja jakaa mitäkin. DHT-järjestelmien kehittäminen hyökkäysten estämiseksi on aktiivinen tutkimusalue hajautettujen järjestelmien tutkimuksessa.. Julkisissa DHT-verkoissa on se ongelma, että asiakkaat saattavat katoilla ja ilmestyä verkosta milloin vain. bootstrappalvelimelta, jota ylläpitävät torrentasiakasohjelmien (kuten ?Torrent) valmistajat. Tietokoneelle alkaa kertyä niiden torrenttien metatietoja ja asiakkaiden IPosoitteita, joiden infohash sattuu olemaan lähellä oman clientin arpomaa tunnistetta. Measuring Large-Scale Distributed Systems: Case of BitTorrent Mainline DHT. Jos asiakas ei ole ennen yhdistänyt Mainline DHT -verkkoon, ensimmäisen kontaktin saa ns. Jos vastausta ei kuulu, poistetaan kontakti listasta, ja etsitään tilalle uusi kysymällä lähistöllä olevilta kontakteilta elossa olevia kontakteja. Jokaista torrenttia on siis helppo seurata ja kerätä tieto lataajista. Tarpeeksi suurella määrällä pahansuopia solmuja olisi myös mahdollista vallata koko verkko ja käyttää sitä esimerkiksi palvelunestohyökkäyksiin. Yksityisyyttä verkossa ei siis 2 Wang, Liang; Kangasharju, Jussi. Myös tekijänoikeutta valvovat järjestöt liikkuvat Bittorrent-verkossa ja keräävät tietoa valvomiensa elokuvien ja musiikin lataajista, kuten mediassa on uutisoitu
Wolfenstein annettiin MachineGamesin käsiin, joka teki räjäyttävän, hauskan ja lähestulkoon täydellisen reboottauksen vanhalle klassikolle. Teksti ja kuvat: Jukka O. Elite IV:ää oli yritetty tehdä jo vuosikymmen ellei ylikin, mutta taloudelliset realiteetit eivät sallineet sen Pelit Klassikkojen paluu Comebackejä haudan takaa Moni vanha pelisarja katoaa historian hämäriin, kun sen jatko-osat epäonnistuvat tai niitä ei edes tehdä. 3 8 S krolli muistelee muutamia muinaisia pelejä ja pelisarjoja, jotka ovat saaneet uuden elämän, joskus vastoin kaikkia odotuksia tai todennäköisyyksiä. Kolmas Wolffi nappasi nimen ja idean, mutta loitsi niistä 1992 maailman siihen saakka järeimmän räiskinnän. Pelin vaihtoehtoinen 1960luku loitsi peliruuduille häkellyttävän monipuolisen, pieteetillä rakennetun pelottavan yksityiskohtaisen ja yhtä aikaa lumoavan maailman, jossa natsit olivat voittaneet toisen maailmansodan ja talloivat maailman rautakorkojensa alle. Vaan sitten tapahtui mahdoton. Uudessa Wolfensteinissa kaikki vain toimi, ja ehkä yllättäen se oli myös raudanluja tarina vahvoilla, omaperäisillä henkilöhahmoilla, tapahtumaketjuilla ja kommentaarilla. Kauppinen Mitä Iron Sky edellä, sitä Wolfenstein perässä. Natsien kurmotusta neljällä vuosikymmenellä Wolfenstein-pelisarja on siitä jännä, että se on syntynyt uudelleen jo monta kertaa. Se ei tyytynyt juoksuttamaan pelaajaa checkpointilta toiselle, vaan löi tätä koko ajan rautakangella pollaan. Jatko-osissa alkuperäisen magia muuttui hieman erilaiseksi, joskin toki laajemmaksi. Return to Castle Wolfenstein (2003) ja Wolfenstein (2009) farmattiin eri tiimeille, laimein tuloksin. Ensimmäinen Wolffi oli Apple II:lla, vuosi 1981. Kuussa on natseja! The New Order teki aiemmin räiskintään painottuneista Wolfensteineista myös erittäin väkevän tarinapelin.. New Order ehti saada jatkoakin, mutta ikävämmin Wolfenstein: The Old Bloodissa jäi tarina sivuseikaksi räiskinnän taakse. Halpoja ratkaisuja ei käytetty, draamaa tykitettiin päin kasvoja, ja ihmiskohtaloita paiskottiin kasvoille niin, että herkempiä itketti. Joskus kuitenkin käy tuuri ja vanhus palaa keskuuteemme entistä ehompana. 2 1 6 . Olihan sekin ihan toimivaa, mutta New Orderin tarinallinen sävytys puuttui. Pelisarja: Wolfenstein Sarjan esikoispeli: Castle Wolfenstein, 1981 Uusin julkaisu: Wolfenstein: The Old Blood, 2015 Ääretön avaruusooppera David Brabenin ja Ian Bellin avaruusooppera Elite on yksi 1980-luvun häikäisevimmistä, upeimmista peleistä. Se ei peittele kuitenkaan sitä, että The New Order on ehkä kaikkien aikojen upein, onnistunein ja täräyttävin reboottaus millekään pelisarjalle, ikinä kuunaan. Wolfenstein: The New Order teki aikahypyn, siirtyi vaihtoehtohistoriaan ja rakensi klassisista natseista aivan uudenlaisia, aiempaakin pelottavampia hirviöitä. 1995 saapuneen Frontier: First Encountersin jälkeen Eliten lumo kuitenkin hiipui. Se tuli kuin tyhjästä ja loi jotain täysin uutta, erilaista ja uskomatonta
Molemmilla on puolensa ja faninsa. Se on hatunnoston arvoinen saavutus. Miksi olisin. Alkujaan joukkorahoituksen avulla tuotettu Wasteland 2 rakensi saagaa uusiksi alkuperäisteoksen hengessä, mutta tietenkin peli muistutti paljon Fallouteja. Uusi Elite on siinä mielessä entisensä, että se on hirvittävän laaja seikkailu, jossa pelaajia ei juuri kädestä pidetä. 9 täysitehoista tuotantoa. Mutta se mitä saimme oli loppujen lopuksi jotain varsin erikoista ja yllättävää. Aivan alkujaan Wasteland (1988) oli se aivan ensimmäinen postapokalyptinen roolipeli, jonka tiimi loi myöhemmin ikimuistoiseksi muovautuneen Falloutin. Se on aihio leikeille ja käpistelylle. Siinä välissä tekeillä oli Fallout jos toinenkin, jopa morppimuodossa. Pelin hurja modattavuus on tarjonnut valtavan areenan näpertelijöille, ja omien kaupunkien rakentelu Rautalankavektoreista silmiähäikäisevään avaruusgrafiikkaan. Muistan vahvasti kuinka Fallout 3 -ensikosketusjuttujani kritisoitiin ennen kaikkea siitä, etten haukkunut uutta peliä maanrakoon. Ei silti, on nostalgikkojakin muistettu hyvällä. Fallout . Kaikki tämä on nostanut avaruudelliset seikkailut uuteen uskottavuuden valokeilaan, herättäen koko genren uudelleen eloon. Pelisarja: Elite Sarjan esikoispeli: Elite, 1984 Uusin julkaisu: Elite: Dangerous Horizons, 2016 Matkoja ydintuhon raunioilla Wastelandja Fallout-pelisarjojen historia on pitkä ja toisiinsa nivoutunut. Eikä kenenkään ole pakko kaivautua vastapäiseen juoksuhautaan, sillä itsekin tykkään yhtä lailla ihan kaikista. Sitten tapahtui Kickstarter. Fallout-poppoon käsissä syntyi vielä Fallout 3, sitten pitkä ja synkkä säteilevä yö laskeutui. Bethesdan Fallout 3 kun hylkäsi kasarityylisen lintukuvakulman ja loitsi ruuduille 3D-grafiikalla ja pärstäperspektiivillä toteutetun modernin toimintaroolipelin. Dangerousissa on tapahtunut paljon peliä suurempia asioita. Fallout . Minähän pidin siitä! Ja kiistämätöntä on, että Fallout 3 oli todella hyvä modernisointi, joka puri nykyajan pelaajiin, eikä vain vanhaan jämähtäneisiin. Siinä samalla Fallout 4 on kuitenkin muutakin. Pelaajien nettiliittoumat touhuavat verkossa, mutta yksinpelaaminenkin onnistuu. Ja ihasteltavaa: miten tämäkin on osattu tulkita ydinlasien läpi tällaiseksi. Wasteland 2. Fallout 2 . Asiat on löydettävä ja opeteltava itse, usein kalliillakin hinnalla. Fallout 4 sijoittuu ydintuhon jälkeiseen raunioituneeseen Bostoniin. Wastelandista onkin rakentunut kaksi erillistä ydintuhoseikkailupolkua: Wasteland . Se oli monille liikaa, on itse asiassa vieläkin. Myös Fallout 4:stä, jonka hieno tarinankerronta ja upea Yhdysvaltain itärannikon Bostonin tienoille sijoittuva rappiomaailma tarjosi monia upeita elämyksiä. Elite IV:stä tuli Elite: Dangerous ja galaksit avautuivat rohkeiden avaruuslentäjien eteen. Wasteland 2 on se seikkailu, jota Fallout 1:n ja 2:n hardcore-fanit odottivat.. Fallout 4. Moni kuuluisa paikka on tuotu peliinkin, sopivasti vinksahtaneina. Ei vähiten siksi, että olen käynyt Bostonissa, joten samojen polkujen tallaaminen ja nähtävyyksien kummastelu tarjosivat rutkasti ihmeteltävää. Wasteland . Pelaajakansa luo omia seikkailujaan ja tarinoitaan, vaikuttaen niillä jopa galaktiseen tarinaan. Miten ne ovat voineet keksiä näin hulluja juttuja. Sen myötä peli myös lumoaa, sillä se mikä on verirahalla ostettu, se muistetaan. Elite: Dangerous modernisoi klassikon ensiluokkaisella tavalla. Jossain vaiheessa Bethesda Softworks kuitenkin sai hankittua Falloutsarjan oikeudet, joskin niistä on kinasteltu aivan viime vuosiin saakka. Fallout 3 . Fallout 2 . Fallout: New Vegas . Eliteä on laajennettu jatkuvasti julkaisun jälkeen, joskaan ei aina ihan täysin napakymppimeiningillä. Mikäs ihme se, sama idea ja samat tekijät kaikilla
Viiden jakson mittainen tarina teki kunniaa esikuvilleen ja loitsi vanhoista rakastetuista hahmoista uudet, alkuperäisille uskolliset, silti tuoreet ja rakastettavat tulkinnat. Sen jälkeen ei ollut enää edes vanhaa LucasArtsia, ei seikkailupelejä. Ja sehän toimi, toimi todella hyvin. Orionit kun olivat firman vanhan koulun kaverien suosikkeja silloin, kun kaverit olivat aloittelevia, pennittömiä koodinvääntäjiä. Julkaisun jälkeiset lisärit ovat edelleen tuoneet leikkiin niin kahjoja ideoita kuin hauskoja tarinoita, ja eipä voi sanoa muuta kuin että pisteet sekä Bethesdalle että inXilelle. Firman pääpomo ynnäsikin, että hän koki velvollisuudekseen pelastaa Master of Orion konkurssihuutokaupasta nettirosvojoukkojen käsistä. Jatko-osissa sukellettiin myös syvälle moninpelaamisen ja räiskintäkauhun maailmoihin. Ja se ihme oli pieni, vanhan koulun seikkailunikkarien pelitalo Telltale, joka teki pienen pelin nimeltään Bone, Luupäät. Apinasaarten tarinat jatkuivat kaikkiaan neljän pelin verran, joskin vuosien 1997 ja 2000 jatko-osat eivät yltäneet kahden ensimmäisen tasolle. Pelisarja: Master of Orion Sarjan esikoispeli: Master of Orion, 1993 Uusin julkaisu: Master of Orion: Conquer the Stars, 2016 Puraise BFG:tä, sinä kyberdemoni Vuoden 1993 ylivoimaisuutta pelihistoriassa todistaa myös id Softwaren Doom, joka räjäytti ties miten monen pelaajan mielet. Siihen päälle vielä viiltävän hauskaa huumoria, absurdiutta, kunnon puzzleja ja vieläpä erinomaiset tuotantoarvot, niin jo puhutaan kerrassaan hyvästä comebackistä. X-Wing, The 7th Guest, Maniac Mansion, Myst, Syndicate – ja kaiken kukkuraksi peli, joka sinkautti monet meistä galaksien valtiaiksi. Se yhdisteli taitavasti aineksia kymmenkunnasta genren aiemmasta edustajasta ja loitsi niiden päälle aivan omanlaisensa tunnelman, tarinan ja mukaansatempaavan pelattavuuden. No, tehtiin hyvä peli. Omakohtaisesti uuden MoO:n suurin ongelma on se klassinen: yksi vuoro vielä... Talesin Guybrush tai Elaine Marley-Threepwood eivät pilanneet fanienkaan muistoja, vaan tekivät niistä entistä ehompia. Simtex-studion varsin piukalla aikataululla ja budjetilla työstämä 4X-strategia oli monella tapaa edeltävän puolentoista vuosikymmenen avaruussotastrategioiden kulminoituma. Yli 20 vuotta alkuperäispeliä myöhemmin, galaksin tähdet odottavat taas valloittajaansa.. Kaksi eri firmaa tarttui samaan ikivanhaan pelijatkumoon ja teki siitä kaksi erilaista, nykyaikaista ja äärimmäisen pelattavaa uutta tulkintaa. Pinnassa on toki vähän karkkia, mutta nopsatahtinen pelattavuus, diplomatia ja avaruussodankäynti kaikkine nyansseineen viehättävät kympillä. 3 10 keuli aivan päättömäksi. Hyvin onnistuikin. Sen jälkeen vasta mietittiin, mitä sille tehtäisiin. Telltale loi episodipohjaisia pieniä seikkailuja, jotka pohjautuivat tunnettuihin viihdesarjoihin. Tarvittiin ihme. Siinä samalla Talesin Monkeymodernisointi todistaa, että myös hahmoja tarinavetoinen pelisarja voidaan herättää hienosti henkiin, alkuperäisteoksia ja hahmoja kunnioittaen. Pelisarja: Wasteland / Fallout Sarjan esikoispeli: Wasteland, 1988 / Fallout, 1997 Uusin julkaisu: Wasteland 2, 2015 / Fallout 4, 2015 Vitsejä ja apinoita Monkey Island -pelit sulattivat pelaajakansan sydämet 1990-luvun alussa. Tales of Monkey Island -episodiseikkailut toivat iloisia comeback-tuulia komedian ystäville. 2 1 6 . Uusi MoO sukeltaa retrotunnelmoinnin syvään päähän, sillä se keskittyy täysipainoisesti hyvään pelikokemukseen ja kunnon 4X-sodankäyntiin. Tai raunioituviksi sivilisaatioiden jämäkökkäreiksi. Sekä julkaisija että kehittäjä olivat vaihtuneet, ja vuoden 2003 jälkeen oltiinkin hiljaa vuosikymmenen ajan, kunnes valkovenäläinen Wargaming.Net yllätti. Pelimaailma muuttui, ihmiset muuttuivat, teknologia muuttui ja Escape putosi aikakausien väliseen murrokseen. Niin hyvin, että muun muassa entisistä lucasartslaisista koostuva pikkufirma onnistui nappaamaan luvan LucasArts-klassikon herättämiseen henkiin. Silti, etenkin Escape from Monkey Island sai aikoinaan liikaakin dissausta – ehkä siksikin, että se saapui niin kivuliaaseen aikaan. Oivaltavat, hauskat ja ennen kaikkea rakastettavat komediaseikkailut olivat silkkaa mannaa, ja ne lumosivat myös monia, jotka eivät pelanneet normaalisti lainkaan tietokonepelejä. Doomit olivat kuitenkin pitkällä, Onko hauska kohdata vanha tuttu. 3D-FPS-räiskinnät eivät olleet enää koskaan entisensä, ja siinä samalla syntyi myös valtaisa teese-itse-kulttuuri. Jatko-osassa meno vain parani, mutta kolmosessa mentiinkin sitten komeasti turvalleen. Pelisarja: Monkey Island Sarjan esikoispeli: The Secret of Monkey Island, 1990 Uusin julkaisu: Tales of Monkey Island, 2009 Tähdet, 4X-tähdet Vuosi 1993 oli pelaajille hieno vuosi
Deux Ex toi suorasukaisten pyssyleikkien maailmaan taktiikkaa, hiiviskelyä, roolipelielementtejä ja ennen kaikkea valinnanvapauden. Se loitsi ruuduille uskomattoman visuaalisen, upeasti toimivan tarinan, joka jatkuu elokuussa ilmestyneessä Deus Ex: Mankind Dividedissa. Ufo/X-COMit kuitenkin menettivät magiaansa sitä mukaa kun jatkoosia syntyi. 2K Games teetätti kahta X-COMia yhtaikaa, joista The Bureau: XCOM Declassified jäi aika vaisuksi räiskinnäksi, kun taas Civilization-puotina tunnettu Firaxis loitsi XCOM: Enemy Unknownista loistavan uusioversion. Pelisarja: UFO/X-COM Sarjan esikoispeli: UFO: Enemy Unknown, 1994 Uusin julkaisu: XCOM 2, 2016 Pyssyleikkejä varjossa Vuonna 2000 Warren Spector ja Ion Storm mullistivat räiskintäpelit. Muut tulivat sähläämään, Gollopit menettivät otteensa luomukseensa ja viimeiseksi jäänyt X-COM: Enforcer (2001) oli kehno kolmannen persoonan räiskintä. Matka Marsiin, Helvettiin ja sieltä takaisin on yhtä uskomatonta kyberdemonista orgiaa, joka ei voi kuin rakastaa. Siinä riitti yhdelle pelille paljon kannettavaa. Sen teemat olivat muutakin kuin pelimekaniikkaa. Jos vanhoja pelisaagoja pitää kaivaa haudastaan, kaivetaan ne näin. Pelisarja: Doom Sarjan esikoispeli: Doom, 1993 Uusin julkaisu: DOOM, 2016 X:stä on hyvä lähteä Gollopin veljesten mestariteos UFO: Enemy Unknown osui aikoinaan hyvään rakoon. Ufoja, vainoharhoja ja salaliittoja pursusi juuri samaan aikaan myös televisiosta X-Files-sarjan myötä. Osa virityksistä tuli modeina pelaajayhteisön kullannupuilta, loput sitten vuoden 2016 XCOM 2:ssa, jossa homma vietiin oikein kunnon kunnarilla kotiin saakka. Eipä ollut ihan sattumaa, että jenkkiversio ja jatko-osat tunnettiin X-COMeina, olihan iso Äksä kunnon myyntivaltti. Vaatimattomampien jatko-osien jälkeen Deux Ex palasi ryminällä vuoden 2011 Deux Ex: Human Revolutionissa, joka modernisoi klassikon teemat onnistuneesti nykyaikaan. Vaan ei se vielä sinänsä mitään, legendaarisinta oli ajoitus. Jensen kuitenkin kantoi taakkansa hienosti, vaikka eihän peli aivan särötön ollut. Siitä ei ufosota enää paljoa voinut parantua. 11 lähes vuosikymmenen mittaisella tauolla, joskin vuoden 2013 BFG Edition remasteroi kolmosen uudemmille koneille. Ja voi herranjestas miten se näkökulma löydettiinkin uuteen Doomiin. XCOM 2 on vuosikymmeniä jatkuneen, kaikkineen kymmeniä pelejä synnyttäneen jatkumon huipentuma. Siinä nostettiin vanha kunnon vuoropohjainen taktiikkasota kunniaan, samoin ihmiskunnan epätoivoinen sota alieneita vastaan. Human Revolution puntaroi ihmisyyttä ja teknologian uhkia/mahdollisuuksia. Ehkä vaikuttavinta Deus Exin paluussa onkin se, kuinka videopeli tarttuu räväkästi suuriin ja todellisiin kohtalonkysymyksiin. Sitten menikin 11 vuotta, kunnes XCOM saatiin uuteen uskoon. Se rakensi Gollopien pitkäaikaisen taktisen sodankäyntisaagan päälle klassisen, oivaltavan kaksitahoisen pelimoottorin ja oli pelinä kaikin puolin hyvä. Eihän tämä olekaan enää pelkkää aivotonta viihdettä! Pelisarja: Deus Ex Sarjan esikoispeli: Deus Ex, 2000 Uusin julkaisu: Deus Ex: Mankind Divided, 2016 Terkkuja helvetistä. Doomin hirviöt ovat ällöydessään upeita. Sekään ei päästä pelaajia helpolla, sillä seikkailun kantava teema on apartheid ja ihmisoikeudet. Myös raha, kapitalismi, politiikka ja ihmiskunnan sosiaaliset kysymykset olivat väkevästi esillä. Kyllä näissä pelivanhuksissa on yhä potkua, varmasti mietittiin id:llä ja Bethesdalla, kunhan vain näkökulma on oikea. Se on sinusta kiinni. Se on yhtaikaa uskomaton räisketoiminnallinen mestariteos kuin myös pelisarjan reboottaus uuteen alkuun, silti vanhoja juuria ja faneja unohtamatta. Hiivitkö varjoissa, käytätkö vempaimia, juonitko vai heilutatko pyssyjä. Uutta täysimittaista Doomia on kuitenkin pyöritelty käsissä pitkään, ja projekti sai varmasti kunnon vauhtipotkun MachineGames-studion Wolfenstein-tulkinnasta The New Order. Ainekset olivat hienosti kasassa, joskin olihan siinä vielä viritettävää. Human Revolution oli samalla peli, joka kysyi kysymistään. Päähenkilö tosin vaihtui JC Dentonista Adam Jenseniin. Vain harva peli on uskaltanut miettiä ihmisyyden syviä saloja yhtä analyyttisesti kuin Deus Exit.
Se on myös hieman kevyempi, mutta ero ei ole merkittävä. Lunastavatko ne lupauksensa. Se ei aivan riitä kattamaan ihmisen näkökenttää, joten vaikuttaa siltä kuin keinotodellisuutta katselisi hiihtomaskin läpi. Molemmissa laitteissa on säätö silmien välimatkalle. Silmikot ovat muotoilultaan varsin erilaisia, mutta molemmista löytyy samat perusosat: silmien eteen tuleva pehmustettu maski, linssit sen sisällä sekä panta jolla silmikko pysyy päässä. Ihmiset ovat erilaisia, ja silmikon on kyettävä mukautumaan tähän. Tässä artikkelissa tutustumme Riftiin ja Viveen. Käytännössä se ei kuitenkaan häiritse, ja tiiviin toiminnan keskellä asiaa tuskin edes huomaa. Molemmissa on kaksi 1080×1200 kuvapisteen näyttöpaneelia, yksi kummallekin silmälle. Oculuksen hioessa laitettaan ja ohjelmistoaan kilpailijatkin ehtivät jo markkinoille. Riftissä heijastumia ei esiinny läheskään yhtä paljon. Näyttöpaneelin kuva päivittyy 90 kertaa sekunnissa. Viven linssien fresnel-renkaat ovat sen verran karkeat että ne muodostavat heijastumia tummalla pohjalla olevien kirkkaiden esineiden ympärille. Silmikko sisältää myös antureita, joilla käyttäjän pään asentoa ja sijaintia voidaan seurata. Voimakkaasta suurennoksesta johtuen oledmatriisin osapikselit näkyvät himmeänä tekstuurina tasaisissa pinnoissa, mutta tyypillisen pelisisällön grafiikka peittää sen alleen. Molemmat laitteet käyttävät fresnellinssejä painon vähentämiseksi. 3 12 Taustaa Nykyinen keinotodellisuuslaitteiden sukupolvi sai alkunsa elokuussa 2012 Oculuksen julkistaessa joukkorahoituskampanjansa. Ulkoisista eroista huolimatta silmikot ovat teknisiltä ominaisuuksiltaan hyvin samankaltaiset. Vertailun vuoksi tavallinen LCD-monitori päivittyy 60 kertaa sekunnissa ja pelinäytöt jopa 144 kertaa sekunnissa. HTC on saanut yhteistyökumppanikseen Steam-alustastaan tunnetun Valven. Viiveiden minimoimiseksi ohjauspiiri on mahdollisimman yksinkertainen eikä sisällä skaalausta. Skrolli testasi laitteet. Sulavan kokemuksen varmistaa pään liikkeiden ennakointi, jonka avulla kuvan asento saadaan vastaamaan silmikon asentoa sillä hetkellä, kun kuva ilmestyy näytölle. Viven säätöruuvi on tarkempi kuin Riftin liukusäädin, eikä asetus muutu yhtä helposti vahingossa. Se sulkee todellisen maailman näkyvistä ja luo sen tilalle keinotekoisen näkymän näyttöpaneelien ja linssien avulla. Neljä vuotta kestäneen tuotekehityksen aikana julkaistiin kaksi kehittäjäversiota, joita on käsitelty Skrollin numeroissa 2013.3 ja 2015.2. Tietokone käsittelee niitä yhtenä 2160×1200 kuvapisteen näyttönä, joten yksi HDMI-kaapeli riittää kuvan siirtämiseksi silmikkoon. Rift näyttää sirolta ja pelkistetyltä verrattuna Viven pulleaan muotoon ja lukuisiin anturisyvennyksiin. Samalla ne laajentavat näkökentän noin 110 asteeseen. Silmikoiden linssit muuttavat näyttöpaneelien näennäistä etäisyyttä niin, etteivät silmät rasitu niitä katsoessa. Riftin linssien muotoilu on muutenkin hienostuneempi ja sallii tarkennuksen muuttamisen siirtämällä silmikkoa pystysuunnassa. Silmikot Keinotodellisuuslaitteen tärkein osa on päähän laitettava silmikko. Merkittävin niistä on HTC, jonka Vive-laite julkaistiin myös keväällä. Vivessä on mahdollista muuttaa myös linssien etäisyyttä silmistä ja siten tarTekniikka Oculus Rift + HTC Vive Pitkän odottelun jälkeen keinotodellisuussilmikoiden kuluttajaversiot on julkaistu. Keväällä 2016 Riftin ensimmäinen kuluttajaversio (CV1, consumer version 1) näki viimein päivänvalon. Teksti: Mikko Rasa Kuvat: Kimmo Rinta-Pollari, Mikko Rasa. 2 1 6
Peleissä esitystapa saattaa olla futuristinen versio ohjaimista, pelihahmon kädet tai jokin työkalu tai muu ohjattava esine. Sen kanssa on pystyttävä myös vuorovaikuttamaan. Viven Roomscale-nimellä kulkeva. Parhaiten toimivat käteen sopivat ohjaimet kuten pädiohjaimet, lentotikut, kaasukahvat ja muut joita voi käyttää näppituntumalta. Ohjainten ulkonäkö virtuaalimaailmassa vaihtelee pelistä ja sovelluksessa toiseen. Kuvien perusteella niissä on XBox-ohjaimesta tutut tikut ja A-, B-, Xja Y-napit jaettuna epäsymmetristen ohjainten kesken. Koska silmikon läpi ei pysty näkemään todellista maailmaa, näppäimistön ja hiiren käyttö voi olla hankalaa. Keinotodellisuuden kotinäkymässä ohjaimet näkyvät itsensä muotoisina, helpottaen niiden poimimista pöydältä tai lattialta. Viven mukana toimitetaan pari keinotodellisuusiohjaimia. Piilolinssien käyttö luonnollisesti onnistuu myös. Parhaan kosketuksen keinomaailmaan saa käyttämällä erityisiä keinotodellisuusohjaimia. Kuulokkeet on myös mahdollista irrottaa ja käyttää erillisiä kuulokkeita. Riftissä tätä ei tarvita epäsymmetrisesti muotoiltujen linssien ansiosta. Vivessä ei ole integroituja kuulokkeita, mutta silmikossa on 3.5 mm audiolähtö langallisia kuulokkeita varten. Kaikkia taittovirheitä ei ole järkevää korjata silmikon optiikalla, koska se vaatisi laajan valikoiman vaihdettavia linssejä. Etuja keskisormien alla on liipaisimet ja lisäksi ohjainten yläpinnalla on kotinäppäin. Muotoilu sopii hyvin käteen, ja ohjaimet ovat riittävän kokoiset suuremmillekin käsille. Keinotodellisuusjärjestelmä seuraa kädessä pidettävien kapuloiden liikkeitä ja peilaa ne virtuaalimaailmaan. Isompikätisten käyttäjien lienee syytä kokeilla ohjaimen istuvuutta ennen ostopäätöstä. Molemmissa laitteissa on ulkoinen paikannusjärjestelmä sijainnin seurantaan. Ympäristö Luonnollisen keinotodellisuuskokemuksen täydentää mahdollisuus liikkua lumemaailmassa. Ohjaimet Keinotekoisen maiseman näkeminen on vasta puoli voittoa. Niinpä silmikon alle on jätetty tilaa käyttäjän omille silmälaseille. Mikäli omat kuulokkeet ovat langalliset, kaapelin on syytä olla riittävän pitkä ylettääkseen tietokoneelle asti. Pakkaus sisältää nappikuulokkeet. Ohjaimet ovat keskenään identtiset. Pieneen kokoon nähden äänenlaatu on yllättävän hyvä. Työkalut ja muut tosimaailman jäljitelmät toimivat kuten niiltä voisi odottaa. Ohjainten julkaisua odotellessa Riftin ostajat saavat XBox One -peliohjaimen. Oculuksen odotetaan julkaisevan omat ohjaimensa vuoden loppuun mennessä. Kummassakin on kosketusherkkä levy, kaksi nappia, liipaisin ohjaimen alla sekä puristusnappi kyljissä. Harjoittelua ei juuri tarvita, vaan ohjainten käyttö tuntuu yhtä luonnolliselta kuin omien käsien, mikä tietysti on tarkoituskin. Tästä on hyötyä etenkin moninpeleissä, sillä integroitua mikrofonia ei ole. Riftissä on pantaan kiinnitetyt kuulokkeet, jotka liikkuvien varsien ansiosta sopivat korvaan kuin korvaan. Äänimaailma Kuvan ohella äänet ovat perinteisesti kuuluneet peleihin. Joissain käyttöliittymissä ohjaimella täytyy koskettaa käyttöliittymän elementtejä, toisissa voi sohia niitä kohti kuin laserosoittimella ikään. 13 kennusta. Keinotodellisuuspelit eivät tee tästä poikkeusta. Riftin seuranta-alueen laajuus on noin 1,5 metriä. Myös vuorovaikutuksen toteutustavat vaihtelevat
Niiden ja tasapainoaistin välille syntyvä ristiriita saattaa aiheuttaa huimausta ja pahoinvointia. Liikkumisen helpottamiseksi kaapeli on pitkä ja taipuisa, mutta kompastumisen riski on silti olemassa. Oculuksen kaupassa peleille on annettu kolmiportainen mukavuusarvosana sen mukaan miten paljon ja nopeaa liikettä niissä esiintyy. Silmikon vaatiman massiivisen datavirran vuoksi se on vielä toistaiseksi kytkettävä tietokoneeseen kaapelilla. 2 1 6 . Ensimmäisen persoonan peleissä pelihuoneen rajojen ulkopuolelle liikkuminen tapahtuu yleensä osoittamalla sijaintia maassa ja painamalla ohjaimen nappia, jolloin pelihahmo teleporttaa sinne. Pakettiin kuuluu kaksi infrapunavaloa lähettävää majakkaa. Joissain peleissä taas pelimaailma on paljon laajempi kuin keinotodellisuuslaitteiden seuranta-alue. Silmikon ulkopinnassa on useita kymmeniä infrapunaledejä, joiden sijainnista kameran kuvassa ohjelmisto pystyy laskemaan silmikon sijainnin ja asennon suhteessa kameraan. Laserkeilausta ja tarkkaa ajoitusta käyttäen laitteet pystyvät selvittämään majakan suunnan ja sitä kautta oman sijaintinsa suhteessa siihen. Ohjelmistojätin kehittämä OpenVRohjelmistoalusta tukee liitännäisten kautta myös muita laitteita. Pelit löytyvät luonnollisesti Steamistä. Oculus on rakentanut oman kauppapaikkansa ja pyrkii saamaan peleistä yksinoikeussopimuksia. Käyttäjän lähestyessä näitä rajoja keinotodellisuuteen piirtyy vihreä ruudukko merkiksi uhkaavasta törmäyksestä. Viven ohjelmistolle on mahdollista määrittää vapaan liikkumisalueen rajat. Kokemuksen miellyttävyys riippuu toki pelistäkin. Riftissä seurantalaitteena toimii infrapunakamera. LibOVR-ohjelmointirajapinta tukee ainoastaan Oculuksen laitteita. Silmikon ja ohjainten pinnassa on lukuisia valoherkkiä antureita. Viven kolmoiskaapeli on noin kolme kertaa niin leveä ja raskas kuin Riftin yksittäinen johto. Tämä vähentää aistihavaintojen ristiriidasta johtuvaa pahoinvointia. Kokemus kattaa toistaiseksi lähinnä näköja kuuloaistin. Riftissä vastaavaa toimintoa ei ainakaan toistaiseksi ole. Softatuki Pelkät keinotodellisuuslaitteet sinällään ovat aika tylsiä ilman pelejä ja ohjelmia. Tulevien ohjainten mukana toimitetaan toinen kamera huoneen toiselle puolelle asetettavaksi, jotta seuranta ei katkeaisi ohjaimen siirtyessä käyttäjän taakse. Yhtiö suhtautui alkuun nuivasti yrityksiin sovittaa pelejä muille laitteille kolmannen osapuolen apuohjelmien avulla mutta käänsi kelkkansa kuukautta myöhemmin ja lupasi olla käyttämättä laitteistotarkistuksia jatkossa. HTC on ulkoistanut ohjelmistopuolen yhteistyökumppanilleen Valvelle. Vaikka. 3 14 järjestelmä mahdollistaa liikkumisen hulppealla 4,5×4,5 metrin alueella. Kaikille keinotodellisuus ei sovi. Laitteistosuosituksena on 3,3 gigahertsin prosessori ja GeForce GTX 970, Radeon R9 290 tai parempi näytönohjain. Jos sinulla on taipumusta matkapahoinvointiin, kannattaa kokeilla keinotodellisuutta kaverilla tai liikkeessä ennen ostopäätöstä. Lentoja ajopeleissä pelaaja on kahlittu penkkiin, mutta pienten pään liikkeiden seuranta parantaa silti immersiota. Muuta Tietokoneen on oltava riittävän suorituskykyinen jotta keinotodellisuuskokemus ei kärsisi hitaasta ruudunpäivityksestä. Mahdollisuudet vapaaseen liikkumiseen vaihtelevat pelin mukaan. Viven seuranta toimii päinvastoin. Tosimaailmassa liikkuminen keinotodellisuussilmikko kasvoilla altistaa törmäilylle, kun todellisia esineitä ja seiniä ei näe
Myös Portal 2:sta inspiraatiota ammentava robotinkorjaustehtävä on riemukas kokemus. Valmiin mestariteoksen voi jakaa muille käyttäjille joko keinotodellisuuselämyksenä tai kaksiulotteisena kuvana. Pelaajan tehtävänä on kartoittaa planeetan eläimistöä ja kasvillisuutta. Pelihahmo jopa reagoi, jos naamansa työntää riittävän lähelle. Suomalaisessa Verkkokauppa.comissa Rift maksaa 739 ja Vive 979 euroa. Myöskään OpenVR ei ole virallisesti tuettu Windowsin ulkopuolella, mutta joitakin viitteitä kulissien takana tapahtuvasta kehityksestä on. Lajeina on niin perinteistä myyrien mätkintää (whack-a-mole) ja saviesineiden ammuntaa kuin eksoottisempaa limanruiskutusta ja jousiammuntaa liekehtivillä nuolilla. Jokaisesta uudesta havainnosta saa pisteitä. Molempien valmistajien seuraava tuotejulkaisu saattaisi tapahtua ensi vuonna. NVIDIA® VR Funhouse (Lightspeed Studios™, ilmainen / Vive) Hupitalo on kokoelma tivoliaiheisia minipelejä. Huhuja uusista laiteversioista on jo liikkeellä. Oikealla kädellä mielikuvituksensa voi vapauttaa ympärillä olevaan tyhjään tilaan – kolmiulotteisesti. Vasempaan käteen kiinnitetyn työkaluja väripaletin käyttö tuntuu luontevalta. 15 OpenVR:ää voivat käyttää myös Steamin ulkopuoliset pelit, rajapinta nojaa SteamVR-ajoaikaympäristöön, joten Steamin on oltava asennettuna. Lucky’s Tale (Playful, ilmainen / Rift) Tasoloikan ei heti uskoisi hyötyvän keinotodellisuudesta, mutta Lucky’s Talen toteutus on kerrassaan toimiva. Aina kun jotain uutta löytyy, ylitsevuotavan pirteä robottiapuri antaa sille eriskummallisen nimen. Farlands (Oculus, ilmainen / Rift) Kaukaisella planeetalla on käynnissä tutkimusprojekti. Pistetilin karttuessa avautuu uusia alueita tutkittavaksi ja välineitä tutkimuksen avuksi.. LibOVR:stä oli alkuun tarjolla myös Linuxja Mac-versiot, mutta tuotteistuksen edetessä niiden kehitys lopetettiin, eikä jatkosta ole tietoa. Pelikokemuksia The Lab (Valve, ilmainen / Vive) Laboratorio sisältää kahdeksan erilaista pientä keinotodellisuuskokemusta. Pelissä on myös piilotettuja esineitä joiden löytämiseksi on katseltava ympärilleen ja kurkittava esteiden taakse – jopa tunnelien ja rakennusten sisään. Tilt Brush (Google, 27,99 € / Vive) Tilt Brush ei ole peli vaan taiteiluohjelma. Ohjaimissa ja liikkeiden seurannassa Vive on toistaiseksi etulyöntiasemassa. Monipuolisesta työkaluvalikoimasta löytyy niin perinteisiä kuin futuristisia ja jopa animoituja siveltimiä. Rift on toisaalta tuntuvasti halvempi. Peli on samalla Nvidian teknologiademo ja toimii parhaiten GeForcenäytönohjaimilla. Vaikka peli on kuvattu kolmannesta persoonasta, pelaaja tuntee olevansa mukana pelimaailmassa. Luotihelvetti saa aivan uuden ulottuvuuden kun pelivälineenä toimiva avaruusalus on sidottu pelaajan käteen. Laitteiden ominaisuudet ovat vielä arvailun varassa. Pääpaino on älyllisten olentojen ja niiden käytöksen tutkimisella. Sekä libOVR että OpenVR ovat suljettua koodia. Merkittävin ero on linsseissä, jotka ovat Riftissä aavistuksen paremmat. Loppusanat Silmikot ovat teknisesti tasaväkiset, jopa lähes identtiset. Valmistajien omat hinnat ovat Riftille 599 ja Vivelle 799 dollaria. Tilanne tasoittunee loppuvuodesta, kun Oculus julkaisee omat ohjaimensa. Mukana on rauhallista ympäristön tutkimista, fysiikkamallinnuksella leikkimistä sekä yksi ihan oikea minipeli
Pöytäkoneiden puolella Viven on raportoitu joskus näyttävän pelkkää turkoosia ristikkoa mustalla taustalla, jos työpöytä ja silmikko on kytketty kahteen eri näytönohjaimeen. Onneksi HTC Vive tukee myös Extended Modea – Direct Mode SteamVR:stä pois, Windowsista Extended Mode päälle ja kakkosnäytön tarkkuudeksi 2160×1200/90 Hz. Kaikilla ei ole pöytä-pc:tä saati omaa vr-tilaa. Optimuksen kanssa voi yleensä vain valita ohjelmille gpu:n näytönohjaimen ohjelmistoasetuksista ja toivoa parasta. 3 16 E nsikokemukseni virtuaalitodellisuuden paluusta tuli vuonna 2013, kun työkaveri esitteli Oculus Rift Development Kit 1:tä ThinkPad W510 -kannettavassa. Surface Bookin Nvidiaja Alienwaren AMD-gpu eivät ole koskaan suorassa yhteydessä näyttöportteihin. Extended Mode on vähän kenkku. Nvidian terminologialla puhutaan ns. Törmäsimme siihen Alienwaren kanssa, josta emme saaneet sopivaa kuvaa ulos hdmi:llä. Teksti ja kuvat: Janne Sirén Testikoneet (Windows 10 Pro, Anniversary Update) 3DMark Fire Strike 3DMark Sky Diver 3DMark Cloud Gate VRMark Preview (monitorilla) HTC Vive toimii Alienware M17x R3 i7-2670QM 2.2 GHz, 8 GB, AMD HD 6900M/2GB GDDR5 8–11 fps 2107 28–29 fps 6334 74–77 fps 10314 Scene1: Hyvä Scene2: Pelattava Ei Surface Book i7-6600U 2.6 GHz, 16 GB, custom nVidia GPU/1GB GDDR5 7–10 fps 1890 28–32 fps 6341 48–53 fps 7735 Scene1: Pelattava Scene2: Siedettävä Kyllä Surface Book i7-6600U 2.6 GHz, 16 GB, integrated Intel HD Graphics 520 3–4 fps 714 13 fps 3075 27–30 fps 5428 Ei Ei ThinkPad W701 i7-X920 2.0 GHz, 12 GB, nVidia Quadro FX 3800M Ei Ei 29–38 fps 5401 Ei Ei ThinkPad W520 i7-2620M 2.7 GHz, 8 GB, Nvidia Quadro 1000M/2GB DDR3 3–4 fps 737 10–11 fps 2522 25–26 fps 4772 Scene1: Siedettävä Scene2: Tahmea Kyllä Ei se teho, vaan miten sitä käytetään – hitain testikannettavista oli HTC Viven kanssa luotettavin. Lopulta selvisi, että silmikon kannen alla hdmi-kaapeli oli irronnut... Kokeilimme Viveä myös integroidulla näytönohjaimella. Hdmi:n vanha maksimitarkkuus oli 1920×1200/60 Hz. Suuri osa nykykannettavista käyttää Optimusta – jopa niin sanotut pelikannettavat, kuten monet Alienwaret. Direct Mode ei toiminut edes Surface Bookilla tai Alienwarella, vaikka kokeilimme Leshcats-ajuripakettiakin. Tilanteen voi tarkistaa Nvidia Control Panelin Set PhysX Configurationtai AMD Radeon Softwaren Display-välilehdeltä. Onko toivoakaan. Raivasimme kolme neliötä lattiaa, ripottelimme siihen HTC Viven osaset ja kytkimme silmikon duunikannettavaan. 90 hertsin tähden Varhaiset Oculus Riftit toimivat kuin kahdelle näytölle jaettu Windows-työpöytä, Extended Modessa. ”Optimus”-kannettavia on usein vaikeaa tai mahdotonta pakottaa käyttämään diskreettiä gpu:ta, jolloin vähintäänkin osa ohjelmista ajautuu integroidulle gpu:lle. Tarkkuus 1280×800 – 1920×1080, 60–75 Hz oli myös peruskauraa. 2 1 6 . Sulavan 90 Hz:n tavoittelu on johtanut sekä Oculus Riftillä että HTC Vivellä uuteen Direct Modeen, joka ohittaa moninäyttöpolun. Jos siellä ei näy diskreettiin gpu:hun kytkettyjä portteja tai näytMinimispeksiä etsimässä Virtuaalisilmikko kannettavalla. Jos esim. Ongelmallisinta onkin kannettavien näytönohjainarkkitehtuuri. Vive tukee onneksi myös mini-DisplayPort-kaapeleita, joten ratkaisu oli kytkeytyä DP-porttiin. HTC Viven ja Oculus Riftin unboxingvideot Skrollin YouTubessa: skrolli.fi/youtube. Joskus se toipuu, joskus ei – uudelleenkäynnistys yleensä auttaa. Kun ulostulo 2160×1200/90 Hz:lle on löytynyt, pitää silmikon kelpuuttaa se. raahaa kakkosnäytölle vahingossa ikkunan, Viven ”Compositor” tippuu koko näytön tilasta ja lakkaa toimimasta. Oculus Rift ja vakiona HTC Vive kytketään hdmi-porttiin. 1280×800/60 Hz -tarkkuus toimi ilman pelirautaakin, ja samaa kuului myöhemmin 75 hertsin DK2-mallista. Tähän ongelmaan törmäsimme Alienware-läppärillä myös. Myös usbportin vaihtaminen tietokoneen päässä on tunnettu ratkaisuehdotus. HTC Vive ei silti alkuun inahtanutkaan. Optimus viittaa joukkoon Nvidian dynaamisia gpu-ratkaisuita (AMD:llä on omansa), mutta vrpiireissä siitä on tullut yleisnimi tälle haasteelle. Kokeilimme HTC Viven kanssa neljää erillisen grafiikkasuorittimen (ns. DPja hdmi-kaapeleita on useampaa versiota, joten vanha kaapelikin voi olla ongelma. Optimus pain Kun sekä näyttöettä usb-yhteydet silmikkoon toimivat, on seuraavien ongelmien aika. Kokeilimme ohittaa Viven linkkiboksin ja kytkeä silmikon hdmi:n suoraan tietokoneeseen. Optimus-tilasta, jossa kuva näyttöliitännöille menee usein tai aina integroidun gpu:n kautta. Puolet kannettavistamme olivat pahanlaatuisia optimuksia. Ei apuja. Minimivaatimukset kuitenkin kasvoivat hurjasti, kun 90 hertsin nykyversiot Oculus Riftistä ja HTC Vivestä ilmestyivät. Integroidun gpu:n sammuttaminen ja Leshcats-ajurien tapaiset ratkaisut auttavat nekin vain, jos käytössä ei ole Optimus-ratkaisu. diskreetti gpu) sisältävää i7-läppäriä kuluvalta vuosikymmeneltä: ThinkPad W701 ja W520, Alienware M17x R3 sekä Surface Book. Myös viimeisin 2160×1200-tarkkuus on lisännyt vaatimuksia liitännöille
17 töjä, kyseessä on Optimus tai vastaava arkkitehtuuri. Diskreetti gpu on custom-versio, joka sijaitsee irrotettavassa näppäimistöosassa ja kuva kulkee aina integroidun gpu:n kautta. Uusi Gear VR on kevyempi ja musta väri vähentää heijastuksia, vaikka takalevyä ei voi enää pitää käytössä paikoillaan. 0.5 – 2.5) Viralliset minimispeksit HTC Vive: • nVidia GeForce GTX 1060 / AMD Radeon RX 480 • Intel i5-4590 / AMD FX 8350 • 4+ GB RAM • HDMI 1.4 / DisplayPort 1.2 -näyttöliitin • 1 USB2-portti • Windows 7 SP1 tai uudempi Oculus Rift: • nVidia GTX 970 / AMD R9 290 • Intel i5-4590 • 8+ GB RAM • HDMI 1.3 -näyttöliitin • 3 USB3-porttia, 1 USB2-portti • Windows 7 SP1 64-bit tai uudempi Päivitys: Uusi Samsung Gear VR ja S7 Edullisempi kasuaalipelaajan vr-vaihtoehto on Samsung Gear VR -kännykkäratkaisu. ”renderTargetMultiplier”: 0.5 puolittaa piirtotarkkuuden – ja minimispeksin. Kokeilemamme Fantastic Contraptions ja The Last Sniper VR toimivat Surface Bookilla erinomaisesti ja W520:llakin kelvollisesti. Viimeinen uhkapeli Seuraava haaste on DirectX 11 -vaatimustaso. Silti tarvitaan tietokone DirectX 11 -yhteensopivalla gpu:lla (tai gpu-lisälaitteella) ja mielellään suoralla yhteydellä näyttöporttiin. Skrolli testasi valkoiset Samsung Gear VR -virtuaalilasit Galaxy S7 edgeja S6 edge+ -älypuhelimien kanssa numerossa 2016.2. W701 ei kelvannut HTC Vivelle lainkaan, mutta ei kelvannut tuore integroitu gpu:kaan, jota kokeilimme Surface Bookilla kytkien diskreetin gpu:n pois päältä. Surface Book on W520:ntä krantumpi käyttöönotossa, mutta lähti lopulta toimimaan. Puolitarkkuuskaan ei haittaa, kun kanaverkkoilmiö on vakio. Lisäksi yhteensopivuudessa tarvitaan tavallista enemmän tuuria. Vive lähti toimimaan suoraan. Vive ei pitänyt piirisarjaa DirectX 11 -kelvollisena, vaikka paperilla se sitä onkin. on riski • Säädä tarkkuutta: ”renderTargetMultiplier” (esim. Uusi Gear VR ja perus-S7 on toistaiseksi paras vr-vaihtoehto HTC Viven ja Oculus Riftin jälkeen.. Näkökenttä on kasvanut 14 astetta, samaan kuin HTC Vivessä ja Oculus Riftissä. Liikkumista seuraaville majakoille esitetään kiinteää asennusta, mutta oikeasti riittää, että asettelee ne käsin sinne päin. W520 olikin joukosta ennustettavin: diskreetti DirectX 11 -gpu, josta suora yhteys 2560×1200/90 Hz -kykenevään DisplayPort-liittimeen. Integroitu näytönohjain välissä voi lisätä latenssia ja vaikeuttaa kuvan ja liikkeen synkronointia. Samsung julkaisi loppukesästä päivitetyn version silmikosta. Huonetila 2×1,5 m on suurehko vaatimus, mutta järjestettävissä – ja paikallaankin voi pelata. Aina tämä ei kuitenkaan ole kaiken loppu, vaikka usein niin väitetään. Tässä ylikellottajien löytämä kikka auttaa kasuaalipelaajaakin: C:\Program Files (x86)\Steam\Config\ steamvr.vrsettings-tiedoston steamvrosioon lisättävä ”renderTargetMultiplier”: 2.5 (jossa 2.5 olisi grafiikkaa parantava ylitarkkuus) toimii myös käänteisesti. Lopuksi täytyy vielä korjata (epäviralliset) SteamVR-asetukset vastaamaan tehoja. 3DMarkin mukaan HTC Viven -minimispeksistä päästään ehkä puoleen. Joskus tätä voi säätää biosista, mutta yhä harvemmin. Linkkivinkkejä HTC Viven suorituskyvyn optimointiin: skrolli.fi/numerot Skrollin Vive-tarkistuslista • 2160×1200/90 Hz -yhteensopiva hdmi-/DP-liitin ja kaapeli • Vähintään DirectX 11 -yhteensopiva, diskreetti gpu • Mielellään suora yhteys gpu:lta näyttöliittimeen, Optimus tms. Älä usko speksejä Muu Viven käyttöönotto on helppoa. Galaxyjen näyttötarkkuus on pc-silmikoita parempi, tosin edulliset linssit tekevät kuvasta silti vähän epämääräisemmän. Alienware oli mielenkiintoisin. W520:ssa on Optimus-tila, mutta myös rautaa jolla integroitu gpu voidaan kytkeä kokonaan pois päältä biosista. Jos suora liitäntä ulos puuttuu, virtuaalilasien toimiminen on tuuripeliä. Tämä oli tarpeen, sillä Optimus-tilassa ViveSetup.exe kaatui. Majakat virtalähteineen nurkkiin, silmikko linkkiboksin läpi koneeseen ja ohjaimet käteen. Kosketuslevyä on parannettu ja kotipainike on uusi. Keventynyt silmikko ja kasvanut näkökenttä olivat ilmeisiä parannuksia. Vähänkään monimutkaisemmat vr-sovellukset saivat systeemin sekoamaan turkoosiksi ristikkosotkuksi, joka näkyi sekä silmikossa että näytön peili-ikkunassa. Perus-S7:n kanaverkko on myös S7 edgeä vähäisempi ja näkökenttä pysyi silläkin erinomaisena. Virallisesti virtuaalilasivalmistajat eivät tue Optimus-ympäristöjä. Skylakepiirisarja ja suoritin ovat uudemmasta päästä, mutta silti tuomio oli nopea. Testasimme uuden Gear VR:n S7 edgen sekä dpi:ltään tarkimman perusS7:n kanssa. Tällöin kannattaa mieluummin hankkia vaikkapa Samsung Gear VR. Vive Dashboard -perusnäkymä toimi sulavasti, mutta vain osa elementeistä näkyi. Ajureiden ja asetusten vaihtamiset eivät auttaneet. Perusliittimenä on Note 7:ää varten usb-c, mutta liitinpalikaksi voi kätevästi vaihtaa myös micro-usb:n. Näytönohjainkysymys sekä muistija cpu-vaatimukset jättävät monet ultrabookit, edullisemmat ja vanhemmat kannettavat sekä jotkut kompaktit pöytäkoneet pc-vr:n ulkopuolelle. Uudehkon Surface Bookin näytönohjainarkkitehtuuri on erikoinen. Virtuaalilasien käyttö kannettavalla tietokoneella ei siis ole mahdotonta eikä virallisia vaatimuksia kannata tulkita orjallisesti
Vaikka muistan huikean määrän kiinnostavia leikkejä, on myös se ”äiti, mulla on tylsää, en keksi tekemistä” -huomio syöpynyt aivoihini. Sellaisen kun saisi. 3 18 V arsinkin silloin ammoin Kekkosen kauden lopuilla ja Koiviston alussa todellisuus oli usein vähän tylsä. Pikakelataan 90-luvun alkuun ja siihen, kun eräs suomalainen kotitietokonejulkaisu esitteli minulle kunnolla virtuaalitodellisuuden käsitteen. Ennen digitaalista vallankumousta piti pärjätä mielikuvituksella tai pääosin kököillä telkkariohjelmilla. Eihän sitä jaksanut katsoa kuin videokasettia pikakelaten. Bumpmappaus oli heikoille. Vaikka ne olisivat varmaankin painollaan runnelleet teini-ikäisen kynäniskani, olisin antanut paljon päästäkseni kokeilemaan itse. Lopulta näin Dennis Potterin minisarjan Cold Lazarus ennen sitä Lawnmower Mania, vaikka Cold Lazarus valmistui 4 vuotta myöhemmin. Mitä nyt joskus oli hauska pelata kaverien kanssa Super Mario Bros 3:sta mahdollisimman nopeasti läpi. Ne vuosittaiset lintsireissut olivat onneksi yhä aika palkitsevia. Mietin jo silloin, että nämä kun saisi ViewMasterille, niin a vot. Olin Povrayn ja sittemmin 3D Studion myötä tutustunut kolmiulotteiseen mallintamiseen ja halusin päästä näkemään ammattilaisen kädenjälkeä. Silti kolmiulotteista avaruusasemaa ja sen tutkimuslaboratoriota mallintaessa olin niin syventynyt, että niissä lowpoly-malleissa oli siellä olon tunnetta riittämiin. Siitä asti olen odottanut tätä vuotta. Kummajaisen floppaamisesta tosin meni yli kymmenen vuotta siihen, että sain nähdä sellaisen oikeasti, enkä silloinkaan päässyt käyttämään. Radar Rat Racen huikea rottasokkelo, Omega Racen avaruustaistelut ja River Rescuen mahtavat veneajelut siirsivät minut toiseen maailmaan. Mutta se Virtual Boy, sen olisin tahtonut. Kukapa nyt ei haluaisi mallintaa jokaista tutkimuskeskuksen lattiassa olevaa kaakelimaista metallilevyä erikseen. Ainakin enemmän kuin valtaosassa 3d-pelejä. Jos nyt ei lasketa Ultima Underworldeja tai myöhemmin System Shockia. Tunsin toki jo telkkarin takia Star Trekin holokannen konseptin, mutta olin pitänyt sitä vain haihatteluna. Vaikka myöhemmin japanilaisfirma sulatti sydämeni GameCubella, ei Nintendo niinä vuosina kauheasti kiinnostanut. Itse asiassa se tapahtui jo silloin, mutta ei minulle. Lupaus oli, että se voisi tapahtua jopa aika pian. Lintsillekin pääsi vain kerran vuodessa. Teksti: Tapio Berschewsky Kuvat: Petri Olli (SeAMK), Tapio Berschewsky, Justin Hall (Mobygames.com), Frontier Developments Plc, Dennis Potter – Cold Lazarus (BBC1 / Channel 4) Tekniikka 30 vuotta virtuaalitodellisuuden odotusta Todellisesta virtuaaliseen. Unohduin käpistelemään typeriä yksityiskohtia tunneiksi. Se yhdisti kaksi digitaalista intohimoani: vr:n ja mallinnuksen. En nähnyt pikseleitä, näin kokonaisen vaihtoehtoisen todellisuuden, joka oli vain napin painamisen päässä. Se toistui monesti, kunnes Vic-20 astui elämääni. 2 1 6 . Myös siitä syystä, että siellä pääsi näkemään Lapsena 80-luvulla minulla oli View-Master. Virtuaalitodellisuushan se mielessä Jouduin tyytymään sijaiskokemiseen. Luin uutisryhmistä kateellisena pari kokemuskertomusta Virtualityn arcade-mallien käytöstä. Mahdollisuutta ei koskaan suotu. Kuulin huhuja Lawnmower Manista. Olin välittömästi myyty. En minä kovin hyvä siinä mallintamisessa koskaan ollut. Vasta luettuani, että virtuaalitodellisuus on asia, jonka parissa ihmiset oikeasti tekevät töitä, ymmärsin pääseväni ehkä kokeilemaan jotain vastaavaa. Cold Lazaruksen ihanan futuristiset vr-kypärät, jotka päästivät käyttäjänsä seuraamaan alaistensa laboratoriotyöskentelyä näkymättöminä kärpäsinä katossa toiselta puolelta maata, saivat dopamiinin erittymään. Semmoista se elämä oli ennen internetiä. Lawnmower Man taas olikin lopulta ihan silkka Yawnmower Man. Kököksi ovat sanoneet. Ahmin Neuromancerin kirjana useamman kerran ja pelasin siihen perustuvaa seikkailua ensimmäisellä pc:lläni vähän väliä
Varsinkin, kun myöhemmin aloittaneet kaverit olivat jo ihan superisti parempia. Nyt tiesin, että se on kokemuksena mahdollinen. Olisinpa voinut jäädä luolaan Mallinnus jäi millenniumin taitteessa taakse. Siis ne joskus pen & paperiksi kutsutut variantit eli pöytäropet, joissa joukko kaltaisiani todellisuuspakoisia kerääntyi pöydän ääreen leikkimään, että ovat jotain muita tyyppejä jossain ihan muualla. Lopulta käänsin koneen nokan syöksyyn kohti kaupungin keskustoria. 20 vuoden rupeama himopelaajana oli niin aivopessyt minut normaaliin peliparagidmaan, että meni kymmenisen minuuttia, ennen kuin sisäistin, että kulman taakse voi kurkata ohjaimen nappien lisäksi myös kävelemällä sinne ja katsomalla. Ei se toki huijannut aisteja, mutta hiveli kytevää odotusta. Kuva pysähtyi, mutta aivot olivat niin huijaantuneet, että horjahdin pahasti ja lähes lensin naamalleni CAVEn lattialle. Jäin odottamaan kotiversiota. Sitä seurasi jatkuva lelujen virta. Vanha kaipuu vain syttyi täyteen roihuun ja korvensi sisuksia. Maaliskuussa 2013 silmikot todella lähtivät tilaajille. Jos sinä hetkenä sarvipää olisi ehdottanut vaihtokauppaa, olisin tarttunut tilaisuuteen. Ai mikä CAVE. Tämä oli Suomessa. Näin hieno oli Neuromancerin kyberavaruus. CAVE oli pieni huone, joka koostui taustaprojisoiduista pinnoista. Sinnehän suorastaan uppoaa näytön läpi. 19 elokuvia, jotka oli kuvattu katsojan näkökulmasta ja joissa mentiin hurjaa vauhtia pöljissä ympäristöissä tuolin heiluessa alla. Miten vielä innostua peleistä kotona, vaikka siellä olikin projektorin ansiosta seinän kokoinen kuva. Joka viikko posti toi monta pakettia pöydälle. Elokuussa 2012 Oculus Riftin Kickstarter-kampanja keräsi 9 522 tukijalta noin 2,5 miljoonaa dollaria ja lupasi tuottaa ensimmäiset vr-silmikot joulukuuhun mennessä. Vielä joskus tuntuisi ihan aidolta, kun dinosaurus puraisee. Parin mailin vaihdon jälkeen olin matkalla Seinäjoelle. Parhaan siirtymän toiseen maailmaan tarjosivat kuitenkin koko 80-luvun ja 90-luvun ajan roolipelit. Tämä se oli. Yleensä pelejä, mutta usein myös erilaisia hassuja laitteita, joita piti tutkia ja hutkia ja sitten ulostaa mielipiteensä tekstiksi. Avioeroja ja rytmipelejä tuli ja meni. Kokeilin Oculuksen DK1:tä ja DK2:ta nopeasti messuilla, mutta huonon ympäristön, lällyjen demojen ja takana hiostavien jonojen takia kokemukset jäivät vaisuiksi. Ei ensi vuosikymmenellä, ei ensi vuonna, ei huomenna, vaan ihan parin tunnin päästä. Se päästi amerikkalaisen pikkukaupungin taivaalle tekemään surmansilmukoita. Metri ennen törmäystä painoin nappia, joka pisti simulaation pauselle. Silloin CAVEja oli Suomessa viisi, joista edistynein oli Seinäjoen ammattikorkeakoululla informaatioja kommunikaatioteknologian yksikössä, teknologiakeskus Framissa. Vaikka aistit vakuuttivat, että ympäristö on keittiö tai makuuhuone, mieli sai silti uskoteltua itselleen, että nyt mennään metsään mättämään örkkejä turpaan. Ensimmäisen laitetestini kirjoitin Tapwave Zodiacista. Käyttäjän päähän kiinnitettiin asennon ja paikan tunnistavat sulkijalasit, jonka avulla projektiopinnoille kuvaa laskevat IRIX-palvelimet osasivat piirtää sen stereokuvana oikeaan perspektiiviin käyttäjän kannalta. CAVEn synnyttämä vimmainen halu ei laantunut – ei enää kadonnut tyynen pintani alta. Maailmani vavahti. Se vaan ei enää kiinnostanut. Tai no ainakin näyttäisi, tai jotain. Ensimmäisenä kokeilin CaveQuakea, eli CAVElle portattua Quake 2:ta. No, onneksi tylsyys ei silti palannut elämääni. Junassa tutisin innosta. Maailma vilisi eteenpäin. Virtuaalitodellisuus, nyt. Pari vuotta myöhemmin välähti. Vähintään niitä oli yleensä kolme seinää, mutta joissain myös lattia ja katto. Näin CAVEssa liikkuessa näytti siltä, kuin olisi jossain toisessa maailmassa. Uskoin yhä siihen, että tämä tekniikka hallitsisi vuosikymmenen loppupuolen viihdekokemuksiani, mutta sävärit jäivät puuttumaan. Lopulta sitä ei oikein edes enää miettinyt. Katsokaa nyt miten hieno! Dennis Potterin kirjoittaman ihanan Cold Lazarus minisarjan orgaanisesti muotoiltu aivokypärä pieksee Oculuksen ja Viven designin 256–0.. Lopulta joku keksi tuotteistaa joukkorahoitusalustan niin hyvin, että aika oli kypsä. Nappasin asemalta taksin, joka muuten oli naurettavan halpa, ja olin hyvin pian pukemassa laseja päähäni. Vuonna 2004 minut palkattiin toimittajaksi siihen erääseen kotitietokonelehteen, joka tosin oli monen Skrollin lukijan mielestä pilalla jo silloin, tai ainakin viimeistään minä pilasin sen. En ollut yksi heistä, sillä tuona kesänä en ollut kauhean varoissani ja ajattelin tyhmästi, että kuluttajaversion saisi kuitenkin pian. Sain nähdä monta kaunista ja kiinnostavaa demoa, mutta kaikkein innostavin muisto CAVEsta on peräisin graafisesti erittäin yksinkertaisesta pienestä lentosimulaattorista. Minähän voisin tehdä CAVEsta jutun. Abrakadabra, hoculus poculus Kotimatka meni tätä miettiessä: Mitä seuraavaksi. Miten mikään enää voisi ylittää tätä kokemusta. Sitten yhtenä päivänä yksi niistä mallintajakavereista kertoi toisen ystävänsä pelehtineen CAVEssa. Juuri tätä kokemusta olin odottanut siitä View-Masterista ja holokannesta asti. Tämä oli leikkinyt lumisotaa virtuaalisessa todellisuudessa jonkun kollegansa kanssa, joka sijaitsi toisessa kaupungissa. Virtuaalitodellisuuden odotus oli myös muuttunut polttelevasta kaipuusta lähes puhtaasti ironiseksi. Semmoinen rekursiivinen akronyymi kuin Cave Automatic Virtual Environment
Vaivalloisuus syntyi silmälaseista. skrolli.fi/ youtube), asensin ajurit ja softan, kalibroin laitteen ja ostin Elite: Dangerousin, jota olin pihdannut tähän asti. Latasin taidegalleriasovelluksen ja tutkin hienoja maalauksia virtuaalisessa museossa. Niin tekisin itsekin, jos tämä olisi ollut jäämässä minulle pidemmäksi aikaa. Olin paskoa alleni, kun törmäsin avaruusasemaan. Ja vaikka se oli huonoa pornoa, se oli silti jotenkin parempaa. Aivan tajuttoman paljon liikaa. Ystäväni istui vastapäätä ja tarkkaili ihmisten reaktioita. Gearin tai siis Galaxyn tehot eivät juuri riittäneet peleihin, joten 360 asteen video oli kuningas. Kaikki ne 3D Studiolla mallinnetut avaruusasemat. Pelasin myös lentoreppupeliä, mutta koska minulla ei ollut Samsungin virallista ohjainta, jouduin käyttämään PlayStationin pädiä ohjaamiseen. Mutta se syventymisen tunne minkä silmikko toi kokemuksiin aiheutti välillä kokovartalokramppeja. Minusta ei ollut siihen. Luovuin Oculus Riftistä Assemblyjen aikaan. Jouduin kertaalleen repimään silmikon naamalta, että en olisi oksentanut. Pääsin omassa rauhassani, kotonani, uppoutumaan johonkin, jota ei ollut siellä. Kuuntelin keikkaa pianon päällä istuen. III:n kiikkerää kuorta kuusnepalla, olin halunnut tähän. Minähän olen sohvaperuna, en avaruuspilotti enkä huippureflekseillä varusteltu taistelija. Kaikki ne Deluxe Paintilla piirretyt avaruusalukset. Näin amatöörimäisesti visualisoin ajatusta virtuaalitodellisuudesta 90-luvulla 3d Studion avulla. Jos liipasin pääsi pois keskikohdasta, alkoi lentolaite kieppua vinhasti ilmassa. Kauhu sai ohimoni tykyttämään, kun lensin liian lähelle tähteä. Ei edes harmittanut, että olin juhannuksena kipeä. Avaruus on lähes tyhjä, mutta tuoksuu silti jännäkakalta. Nainen ei tehnyt mitään, mutta katsoi minua erittäin vihaisesti, kun loppumatkasta otin laitteen pois päästäni ylikuumenemisen vuoksi. Puhelimen onneton grafiikkapiiri tuskaili tehojensa äärirajoilla piirtääkseen edes kohtuullista kuvaa silmieni eteen. Se oli liikaa. Kolmen viikon testirupeamani Gear VR:n kanssa on unohtumaton kokemus. Kyllähän tämä nyt vähän nolottaa, kun elämän pituisen kaipuun päässä joutuukin katsomaan peiliin ja myöntämään, että fantasia oli kivempaa silloin, kun se oli vähemmän todellista. Vedin vaivalloisesti silmikon päähäni. Pian yritin uudelleen. Lähettifirman edustaja katsoi kieltämättä juuri herännyttä habitustani ja silmieni hullunkiiltoa vähän pelokkaan näköisenä ja poistui vilkkaasti paikalta raapustettuani puumerkin. Siitä asti kun olin ensimmäistä kertaa ohjannut Cobra Mk. Minua ei häiritse, kun maailma liikkuu tai horisontti kallistuu, vaikka itse en tee niin. Tein unboxing-videon (ks. Elite Dangerous Oculus Riftillä opetti minulle, että olen pelkuri nyhverö. Vähän väliä se ylikuumeni ja käski lopettamaan käytön hetkeksi. Vaan kuinkas kävikään Vähän alle vuosi sen kipeän juhannuksen jälkeen ovikello soi. Viimein olin siellä itse. Ostin kuukauden jäsenyyden pornosaitille, koska pitihän sekin kokea. Varttia myöhemmin otin silmikon päästäni. Vioistaan huolimatta se oli viimein se, mitä olin toivonut. Ja uudelleen ja uudelleen ja uudelleen. Virtuaalitodellisuus on koukuttava ja ihana. Vasemmalla puolellani istunut nainen oli ystäväni mukaan silminnähden ahdistunut, kun käänsin pääni hänen suuntaansa ja kuvailin sanallisesti ystävälleni maalausta, jota silmikon sisällä katsoin. Virtuaalitodellisuuden 150-vuotinen historia Skrollin numerossa 2016.2. En koe vr-pahoinvointia. Nappasin helikopterin jalustasta kiinni ja lensin taivaalla. Se oli vain lainassa ja päätyisi eteenpäin Skrollin onnelliselle lukijalle. Gear VR tarjoili minulle myös ensimmäisen kyborgifobisen kokemukseni. Kutsutaan sitä vaikkapa avaruushäkkyräksi psykedeelisessä metaversessa. Kyllä tällä ainakin irtosi Jaffalta greetsit.. Minä jään odottamaan sitä, että omaan on joskus varaa. Avaruuden pimeässä tyhjyydessä, jossa vain pieni pleksi ja reaktiokykyni erottivat minut kuolemasta. Kokeilin erilaisia demoja, katselin videoita ja kuvia. Ja toivoakseni joskus vielä pystyn pelaamaan pelejä sen tulevan silmikkoni kanssa niin, että pääsen yli nynnyilystäni. 2 1 6 . Käynnistin Oculuksen surkeasta launcherista Eliten ja astuin oman avaruusalukseni ohjaimiin. Minua pelottaisi jäätävästi sotatantereella. Alunperin julkaistu lyhytikäisen Regeneration demogroupin ensimmäisellä graffadiskillä. Astelin Marsin pinnalle. 3 20 Kesällä 2015 sain Digitodayn toimittajaa lomittaessani käsiini Samsungin Galaxy S6:ta tukevan Gear VR -silmikon. Jos haluatte mukavamman kokemuksen, hankkikaa piilolinssit. Vedin silmikon päähäni junassa kotimatkalla töistä. Valitettavasti ohjaukseen tarvittavista kahdesta analogisesta tatista toisen akselit olivat mappautuneet pleikkaohjaimen analogisiin liipaisimiin niin, että kummankin liipasimen keskikohdassa oli joko pystytai vaaka-akselin origo
Perinteisissä videopeleissä rajallinen näkökenttä on turvallisesti laatikoitu näyttöön. Virtuaalitodellisuus on pelottavaa myös siksi, että vaistonvaraisia reaktioita ei aina seuraa odotettu vastine. Virtuaalitodellisuus on kuin unta. Kun vr:ssä ohjelmakoodilla voidaan peittää koko näkö ja kuulo, siinä voi säikähtää aikuinenkin. Milloinkohan viimeksi pelkäsin tähän tapaan tietokonepelatessani. Janne Sirén Kolumni. Suurin ongelma kuitenkin on, että aistimme ympäristöämme lukemattomilla tavoilla. Herääminen eli tosimaailmaan palaaminen voi tällöin olla helpotus – viimeinkin maailma toimii odotusten mukaisesti. Vaikka peli pyöri turvallisesti pienessä matkatelkkarissa, tämä arvaamattomuus säikäytti kymmenvuotiaan. Tosielämässä havaitsemme vieressämme tapahtuvat asiat ennen kuin käännymme katsomaan. Juuri intensiivisyydessä piilee vraloittelijan suurin haaste. Löydä sisäinen pelkurisi Onko virtuaalitodellisuus siis paljastanut sisäisen pelkurini. HTC Vive -silmikon alkututoriaaliin kuuluu eräänlainen futuristinen olohuone, jossa testataan paitsi lasien, myös äänten toiminta kuulokkeiden kautta. 21 O culus-kaupassa virtuaalitodellisuussisällöt on rankattu kolmiportaisella asteikolla, mukavasta intensiiviseen. Kauhuelokuvista sanotaan, että mitä vähemmän näytetään, sitä enemmän pelko kasvaa. Tosielämässä on myös vaikeampi teleportata ketään viereemme tai mielivaltaisesti avata lattiaa altamme. Joskus jo tietoisuus siitä, että jotain pelottavaa voi tapahtua, alkaa pelottaa. Virtuaalijärjestelmän rajoista sekä ohjelman toteutuksesta riippuen keinotodellisuus vastaa toimintaasi vähän sinne päin. Mutta vr:ssä odottaa aina iso yllätys, kun käännät päätäsi. Katseen kääntyessä, meren, kivien ja etäisten bulevardien keskeltä ilmestyi aivan vieressä seisova ihminen. Vr-pelko on silti eri pelko. Epäilemättä minua olisi pelottanut hypätä laskuvarjolla Normandiaan kesäkuussa 1944. En silti luopuisi unista. Kuulemme pienetkin risahdukset, tunnemme lämmön, ilman liikkeen, kehomme koskettaa ja näemme sivusilmällä. Ensisijainen tarkoitus lienee varoitella virtuaalitodellisuuden terveyshaitoista, jotkut kun kärsivät matkapahoinvoinnin tapaisesta vr-pahoinvoinnista. Painajaistodellisuus Miksi virtuaalitodellisuus pelottaa niin perkeleesti. Virtuaalilaskuvarjohyppy ei itseäni ahdistanut (päinvastoin), mutta jotkut korkeanpaikankammoiset ovat kaivanneet ohitusmahdollisuutta. Tämä oli staattinen valokuva, mutta kun virtuaalilasit huijaavat aivot tulkitsemaan näkemänsä aidon kokoisena, lähellä oleva ihminen – jopa paikalleen jäädytetty harmiton turisti – yllätti. Edes HTC Viven sinänsä ilmiömäinen kehon ja käsien seuranta pienen tilan sisällä ei vielä vastaa aidon kiväärin käsittelyä, saati isompaa liikkumista sen kanssa. Virtuaalitodellisuus on nimittäin käsittämättömän pelottavaa. Henkilökohtainen tila Ensikerran säpsähdin, kun katselin Gear VR:llä 360-asteen rantakuvaa. Tavanomainen ihmisen näkökenttä, noin 180 astetta, on suurempi kuin nykyisten lasien 110 astetta, jossa loput on peitetty. Ääni ja liike lisäävät intensiivisyyttä. Tunsin samaa epämiellyttävää oloa kuin ”rannalla”, kun vieressä seisoi hyppyä odottavia sotilashahmoja kiinni naamassa. Toiseen maailmansotaan sijoittuva The Last Sniper VR alkaa kohtauksella, jossa hypätään laskuvarjolla lentokoneesta. Kenties se oli Friday the 13th Commodore 64:llä 1986 – peli yllätteli tietyissä tilanteissa murhakuvilla. Virtuaalikokemus voi ottaa vatsanpohjasta tai huimata, mutta kuolemanpelkoa tai putoamisen tunnetta lasit eivät pysty välittämään. Hyvää unta tai painajaista, unen aikana kaikki näyttää jokseenkin tutulta, mutta mikään ei kuitenkaan toimi aivan kuten pitäisi. Virtuaalitodellisuudesta monet vihjeistä puuttuvat. Mietin, että henkilökohtaisen tilan maksimointiin tähtäävä suomalainen bussipysäkkisimulaattori voisi olla mieleeni. Sen sijaan minäkin revin silmikon naamaltani ensimmäisen kerran, kun saksalaiset rynnivät maassa päälle. Tosimaailmassa sivusilmällä ja silmämunan liikkeellä nähty valmistaa katseen kääntymiseen. Säikähdin heti ensimetreillä oikein kunnolla, kun katseen kiertäessä huoneessa yhtäkkiä kuuluu valtavaa ryminää ja lattia alta aukeaa. Virtuaalitodellisuus kauhistuttaa, koska se valtaa aistit kokonaisvaltaisesti, mutta silti puutteellisesti. Tätä epäkohtaa ei ole fysiikan lakien hallitsemassa tosimaailmassa. Toissijaisesti viitataan tehosteiden intensiivisyyteen. Seikkailuhenkisessä Rilix VR -vuoristoratasimulaattorissa jännäsin koko ajan koska jotain hyökkää yllättäen kimppuuni koko näkökentän mitalla
Entäpä, jos käytetty kieli olisikin tarkoituksellisesti vaikeaselkoinen tai vaatisi käyttäjää toistuvasti laskemaan trittien jakojäännöksiä. Käytännössä tämä tarkoittaa sitä, että esoteerinen ohjelmointikieli voi vaikkapa olla suunniteltu näytelmäkäsikirjoituksen tai minimalistisen komentokirjaston pohjalta, kuten esimerkiksi maailman tunnetuimman esoteerisen ohjelmointikielen Brainfuckin tapauksessa on tehty. Yleisesti ottaen myös tiedetään, että ohjelmointi on lopulta yksi vaikeimpia taitoja oppia, erityisesti jos lähdetään suuntaan joka ei ole täysin tavallinen, kuten vaikkapa matalan järjestelmätason ohjelmointi. Esimerkki: Brainfuck-lähdekoodi joka tulostaa tekstin ”Skrolli”; koko kielen rakenne perustuu 8 syntaksimerkin käskykantaan (ks. Turing-täydellisiä (Turing-vahvoja) ohjelmointikieliä. Esoteeriset ohjelmointikielet muodostavat takaperoisen, mutta laajan kieliperheen, joka kokeilee ja venyttää ohjelmointikielten rajoja. Useimmiten esoteeristen kielten perhe jaetaan viiteen kategoriaan: minimalistisiin kieliin, jotka pyrkivät olemaan mahdollisimman kompakteja ja pienikokoisia, teemakieliin jotka toteuttavat ohjelmointikielen jostain aiheesta kuten vaikkapa korttipakasta, konseptikieliin jotka toteuttavat ohjelmointikielen jollain aiemmasta poikkeavalla tavalla, omituisiin jotka ovat vain erittäin outoja sekä vitsikieliin, Esoteeriset ohjelmointikielet Haitarisoolo toistorakenteena Ohjelmointityö on yksi tavallisimpia tehtäviä tietotekniikan maailmassa, ja jokainen joskus koodia kirjoittanut on luultavasti ainakin kerran hermostunut kehitysympäristön kanssa kikkailuun sekä turhautunut käytettävään ohjelmointikieleen. Mihin sitten tarvitaan ohjelmointikieliä, joiden perusajatuksena on olla merkittävästi normaalia ohjelmointikieltä vaikeampia käyttää. Teksti: Jussi Kasurinen Kuvat: Sakari Leppä, Jussi Kasurinen, Wikimedia Commons: Rocky Acosta, Wattcle. 3 22 Koodi K aikki tietotekniikan parissa työskentelevät osaavat muutamia ohjelmointikieliä, joista tavallisimpia ovat vaikkapa C, Java sekä Python, ja tietävät että useimpien mielenkiintoisten asioiden toteuttaminen on työlästä ja aikaa vaativaa puurtamista. Tähän mennessä ohjelmointikieliä on määritelty muun muassa ruuanlaittoresepteistä, ajoohjeista, musiikkikappaleista sekä esimerkiksi 1800-luvun modernistisesta taiteesta, ja näitä kaikkia yhdistää se, että kielellä periaatteessa voisi ratkaista minkä tahansa loogisen ongelman tai esimerkiksi rakentaa täysin normaalilta vaikuttavan graafisen käyttöjärjestelmän. Esoteerisyys lisää luomisen tuskaa Esoteeriset ohjelmointikielet ovat ohjelmointikielten kieliperhe, jossa ohjelmointikielen perusajatus, kuten teema tai suunnittelullinen konsepti, ohittaa käytettävyyden tarpeen. myös Skrolli 2014.4). Esoteerisiä ohjelmointikieliä harvemmin näkee mediassa tai muussa ammattikirjallisuudessa huolimatta siitä, että kyseisiä kieliä on määritelty yli kolmesataa kappaletta, ja niistä monet ovat toiminnaltaan ns. +[>+<+++]>--.>++++++++[<++++>-]< --------.+++++++.---.---..---. 2 1 6
Kaikenkaikkiaan voidaan kai sanoa, että nimenomaan minimalistisuuteen pyrkivät, uusia konsepteja ja teknologiaa kokeilevat tai tietyn teeman sisältävät kielet ovat esoteerisista kielistä kaikkein mielenkiintoisimpia, joten niitä on syytä tarkastella hieman lähemmin. Kielen koko syntaksi perustuu Internetmeemeihin. Käytännössä tämä tarkoittaa ohjelmistotyön tilaa, missä käytetyt työvälineet tai -menetelmät estävät kaiken tehokkaan ja hyödyllisen toiminnan. Vaikka kieli jäi hyvin marginaaliseen asemaan, on se silti yksi maailman vanhimpia alustariippumattomia ohjelmointikieliä. Turingin kuopasta taas puhutaan tavallisesti erityisesti esoteeristen kielten yhteydessä. Skrolli 2014.4). Malbolge on nimetty Danten Helvetti-teoksen helvetin alimman tason mukaisesti, ja kieltä pidettiin pitkään käytännössä mahdottomana ohjelmointikielenä käyttää minkään merkityksellisen lähdekoodin tuottamiseen. Teknologisesti haastavat uranuurtajat Monissa tapauksissa esoteeristen ohjelmointikielten kehitteleminen ei ole pelkästään hupailua tai hyödytöntä ajanhukkaa, vaan kielten rakenteeseen liittyy jokin yleishyödyllinen ominaisuus tai tarve osoittaa jonkin innovaation toimivuus. Brainfuck on rakenteeltaan eittämättä yksi esoteeristen kielten vaikuttavimmista tapauksista; kielelle on olemassa yli 120 erilaista muunnosta tai varianttia, ja siitä on kirjoitettu esoteeristen kielten mittakaavassa hyvin paljon (esim. Turingin kone itsessään on Alan Turingin 1900-luvun alkupuolella kehittämä teoreettinen laskukone, joka pystyy lukemaan ohjelmakoodia annetusta käskytaulusta sekä reagoimaan syötteisiin, joita laite lukee määräämättömän mittaiselta muistinauhalta. Toinen esoteerisen maailman ulkopuolellakin menestynyt ohjelmointikieli on esimerkiksi Biota, jonka toiminta perustuu 2-ulotteiseen vapaaseen suuntaan luettavaan lähdekoodiin. Kyseinen kieli perustui Böhmin konseptiin rakentaa mahdollisimman yksinkertainen Turingin koneen ideoita toistava käskysarja ja täten tehdä järjestelmä minkä tahansa operaation toteuttamista varten millä tahansa tietokoneella, koska tuohon aikaan tietokoneiden välinen yhteensopivuus oli hyvin epätavallista. Turing-täydellisyys tai Turing-vahvuus. P” hävisi ensimmäiselle siirrettävänä pidetylle Fortranohjelmointikielelle vain muutamia vuosia, ja oli teoriassa merkittävästi yksinkertaisempi tapa toteuttaa laiteriippumatonta lähdekoodia. (=<`#9]~6ZY32Vx/4Rs+0No-&Jk)"Fh}| Bcy?`=*z]Kw%oG4UUS0/@-ejc(:'8dc Esimerkki: Malbolge-lähdekoodi joka tuottaa tulosteen ”Hello World!” Turingin kone, Turingin kuoppa ja Turing-täydellisyys Tavallisin mittari ohjelmointikielen kyvykkyydelle ja toiminnalle on ns. Kyseessä on Adam Perliksen määrittelemä mietelause ” Varo Turingin kuoppaa, missä kaikki on mahdollista mutta mikään mielenkiintoinen ei ole helppoa”. Tavallisimmin esoteeristen ohjelmointikielten perheestä esiin nousevat teemakielet sekä minimalistiset ohjelmointikielet, koska ne sisältävät eniten oivaltavia ideoita. Kuvaavaa onkin se, että kielellä toteutettu 99 Bottles of Beer -ohjelmaesimerkki julkaistiin seitsemän vuotta kielen julkaisua myöhemmin, eikä Malbolgelle ole tänäkään päivänä kuin kourallinen toimivia, tunnettuja esimerkkikoodeja. Esimerkiksi pelkkiä ei-tulostuvia merkkejä kuten välilyöntiä, rivinvaihtoa ja sisennystä käyttävä Whitespace-kieli ponnahti käyttäjien tietoisuuteen tietotekniikkasivusto Slashdotin aprillipilan kautta, samoin kuin Internet-meemejä käyttävä LOLCODE, jonka ensimmäinen kosketus julkisuuteen oli houstonlainen sanomalehtiartikkeli oudoista ohjelmointikielistä. Tämä ei kuitenkaan ole itsestäänselvyys, sillä esimerkiksi Befunge ja Malbolge eivät ilmestyessään olleet Turing-täydellisiä kieliä, koska molemmissa oli merkittäviä muistiavaruuteen liittyviä rajoituksia. Fyysinen Turingin kone – yleisemmin kone esiintyy teoreettisena mallina.. 23 jotka lähinnä sisältävät huumoriarvoa. Teknologisesti haastavien kielien joukosta voidaan myös poimia Malbolge, ohjelmointikieli jota syystä pidetään maailman haastavimpana ohjelmointikielenä ja samalla kielen tulkinnan työsuoritteena, joka kompleksisuudessaan ylittää monet aikoinaan käytössä olleet sotilassalausalgoritmit. Minimalistisista kielistä tunnetuin on Brainfuck, joka on samalla ainoa esoteerinen ohjelmointikieli, josta suurin osa ohjelmoijista on joskus saattanut kuulla. Kielen ominaisuuksiin kuuluu kahdeksalla yksimerkkisellä käskyllä toteutettu Turing-täydellinen syntaksi sekä aikanaan maailman pienin Turing-täydellinen kääntäjä, joka käännettynä konekielisenä koodina mahtui 240 tavuun, eli teoriassa kahteen Twitter-viestiin. Tämä tarkoittaa ohjelmointikielen rakennetta, jossa kyseinen kieli pystyy toteuttamaan kaikki Turingin koneen käskyt sekä sisältää kaikki kyseisen koneen komponentit. Historiallisena esimerkkinä tällaisesta ajatusleikin pohjalta syntyneestä ohjelmointikielestä voidaan ottaa vaikkapa P”-ohjelmointikieli, jonka kehitti 1960-luvun puolivälissä tietotekniikkainsinööri nimeltä Corrado Böhm. VISIBLE "HAI WORLD!" KTHXBYE Esimerkki: Hello World LOLCODElla. Esimerkiksi Brainfuck tai vanhin tunnettu esoteerinen kieli P” ovat enemmän tai vähemmän käytännön toteutuksia Turingin koneesta, ja kaikki oikeat ohjelmointikielet (Java, C, Python jne.) ovat myös Turing-täydellisiä, kuten suurin osa pidemmälle viedyistä esoteerisistä kielistäkin. HAI CAN HAS STDIO. Periaatteessa koko nykyaikainen tietotekniikka perustuu tämän koneen peruskonsepteihin, ja laitteen avulla on teoriassa mahdollista ratkaista mikä tahansa tietokoneella laskettavissa oleva matemaattinen tai looginen ongelma. Vaikka kieli onkin jäänyt vähälle huomiolle osittain samaa ideaa käyttävän Befungeohjelmointikielen suosion ansiosta, oli Biota aikanaan kaupallinen menestys, koska kielen kehittäjä onnistui kaupallistamaan esoteerisenä kielikokeiluna alkaneen ideansa
Käskyt ohjelmointikielelle annetaan kahden muistirekisterin muutosarvoina, joista lasketaan jokaisen käskyn kohdalla jakojäännöksen perusteella arvo, joka määrää mitä ohjelma tekee. Vaikka tässäkin on onnistuttu, on käytännössä helpompi ratkaisu toteuttaa kielen tulkki jonkinlaisen simulaattorikerroksen ja muistikerroksen yhdistelmänä. Uudet konseptit ohjelmointikielen rakenteena Tietokone on tietyssä mielessä varsin yksinkertainen laite. Kun kaikki ylimääräinen otetaan pois tietokoneohjelmien päältä ja mennään alimmalle ohjelmoinnin tasolle jolla laitteita hallitaan, asiat toimivat joukolla yksinkertaisia konekielisiä toimintaohjeita. Epätavallisen lukusuuntansa sekä erikoisominaisuuksiensa lisäksi kieli on muuten lähes poikkeuksellisen normaali. Jokaisen suoritetun käskyn jälkeen suoritettavien käskyjen arvotaulukkoa muutetaan, jotta ohjelman lähdekoodiin ei tulisi systemaattisesti toistuvia rakenteita. Molemmat ominaisuudet, vapaa lukusuunta ja ajonaikainen muokattavuus, tekevät kielestä hyvin vaikean tapauksen, jos halutaan toteuttaa kaikki ominaisuudet toteuttava kääntäjä, joka tekee lähdekoodista pysyvän konekielisen koodin. Itse asiassa suurin osa Malbolgen käyttöä helpottavista ominaisuuksista on keksitty nimenomaan kryptoanalyyttisten lähestymistapojen avulla, eikä ensimmäinen kielellä toimimaan saatu lähdekoodikaan ollut ihmisen, vaan heuristisen generaattorialgoritmin kehittelemä. Lisäksi Befunge osaa muuttaa omaa lähdekoodiaan ajonaikaisesti. Vaikka tietokoneet mahdollistavat vaivattomasti verkossa surffailun, sähköpostin lähettämisen tai vaikkapa kolmiulotteisissa pelimaailmoissa liikkumisen, on tietokone rautatasolla suoraviivainen laite, jossa on muistipaikkoja, rekistereitä ja näiden väliseen kommunikointiin tarkoitettuja väyliä. Toinen teknisesti haastava esoteerinen ohjelmointikieli on esimerkiksi Befunge, joka toisin kuin äsken mainittu Malbolge ei ole käyttäjän kannalta vaikeaselkoinen, vaan rakenteestaan johtuen haastaa lähinnä kääntäjien ja tulkkien kehittäjät. Esimerkiksi lähdekoodin ei tarvitse olla kirjoitettu yksinomaan tympeään ja tylsään tekstin muotoon, vaikka se varmasti onkin yksi helpoimmista tavoista lukea, kirjoittaa ja muokata ohjelmakoodin rakennetta. Ensinnäkin kieli käyttää kaiken kuvaamiseen trittejä, eli bittiarvojen tapaista kolmen kantalukuista järjestelmää, jossa nollan ja ykkösen lisäksi on myös vaihtoehto kaksi. Koska kaikki käskyt ja tulkittava syntaksi on yhden merkin mittaista, voi ohjelmakoodin suoritussuunta vaihtua vapaasti mihin suuntaan tahansa, jolloin seuraava suoritettava käsky luetaan jostain merkin ympärillä olevasta pääilmansuunnasta. Koska ohjelmointikielet toimivat siten, että niiden kääntäjät tai tulkit muodostavat ohjelmoijan kirjoittamasta lähdekoodista konekielisen version, tarkoittaa tämä sitä, että ohjelmointityökaluilla luotava lähdekoodi on ainoastaan joukko käskyjä. 3 24 Käytännössä Malbolgella koodaaminen ei ole niinkään vaikeaselkoista vaan työlästä. Malbolgen käyttämiseen on olemassa muutamia oikoteitä, jotka perustuvat toistuviin lukusarjoihin, mutta todellisuudessa kielen lähdekoodissa käytetty muuntoalgoritmi on merkittävästi monimutkaisempi kuin esimerkiksi Saksan ja ItävaltaUnkarin armeijoiden ensimmäisessä maailmansodassa käyttämät ADFGVX-viestinsalausalgoritmit. Lisäksi käskykanta on suunniteltu siten, että arvojen manipulointi tapahtuu muistissa olevien trinääriarvojen trittioperaatioilla tai sekoituskäskyllä, joka muuttaa trittejä toisiksi oman sisäisen laskukaavansa mukaisesti. Se, Hello World Piet-ohjelmointikielellä.. Käytännössä tämä tarkoittaa siis sitä, että Befungen valintarakenteessa ohjelmakoodi haarautuu oikeasti: valintaehdon ollessa tosi lukusuunta kääntyy oikealle, epätoden tapauksessa vasemmalle. Befunge-kielen erikoisominaisuus on sen kyky liikkua kaksiulotteisessa lähdekoodimatriisissa oikealle, vasemmalle, ylöspäin tai alaspäin. Matalimman tason toimintaohjeet ovat luokkaa ”lue muistipaikasta merkki”, ”siirry seuraavaan muistipaikkaan” sekä muita vastaavia toimenpiteitä, joilla asiat kulisseissa tapahtuvat. Koska näitä komentoja voidaan suorittaa monella eri tietokoneen komponentilla, kuten suorittimen ytimillä tai näytönohjaimen piirillä miljoonia käskyjä sekunnissa, muodostuu käskyjen lopputuloksena toteutuneesta tapahtumasta illuusio, että tietokone kykenee monimutkaiseen ajatteluun, kuten tulkitsemaan käyttäjän kosketusnäytölle piirtämiä eleitä. >25*"!dlrow ,olleH":v v:,_@ > ^ Esimerkki: Befungen Hello World-koodi. 2 1 6 . Muistinhallinta perustuu tavalliseen First In First Out (FIFO) -pinoon, kielen käskyt sisältävät kaikki normaalit lasku-, vertailuja logiikkaoperaatiot, ja kommenteiksi kelpaa kaikki se teksti, joka ei osu suoritettavan lähdekoodipolun varrelle. Kieli pystyisi siis teoriassa käyttämään omaa lähdekoodiaan eräänlaisena pysyväismuistina tai optimoimaan omaa suoritustaan käytönaikaisten tulosten pohjalta. Allaoleva koodi syöttää merkit pinoon sekä muodostaa nuolilla fyysisen silmukan, jota toistetaan kunnes kaikki muistipinossa olleet merkit on saatu tulostettua
Put dark chocolate into the mixing bowl. Pre-heat oven to 180 degrees Celsius. Stir the mixing bowl for 4 minutes. Put cocoa powder into the mixing bowl. Liquify contents of the mixing bowl. Esimerkkikoodin erikoisuus on siinä, että se toimii myös oikeana suklaakakkureseptinä, joskin jättää kakkupohjan hieman kuivaksi. Put chocolate chips into the mixing bowl. Pour contents of the mixing bowl into the baking dish. agitate the sugar until dissolved. dissolve the sugar. Muihin toimiviin lähdekoodiresepteihin Chef-ohjelmointikielelle kuuluu mm. This prints hello world, while being tastier than Hello World Souffle. Refrigerate for 1 hour. ~ bottles { latlh 1 rap'a' "" tam { woD "s" } ghobe'chugh " bottle" tam tlheghrar tam woD " of beer" tlheghrar } pong ~ print-verse { latlh latlh bottles tlheghrar " on the wall" tlheghrar cha' latlh latlh bottles tlheghrar cha' "Take one down and pass it around" cha' wa'boqHa' latlh latlh { "No" } ghobe'chugh latlh bottles tlheghrar " on the wall" tlheghrar cha' "" cha' latlh { print-verse } HIja'chugh } pong 99 print-verse ~ morebottles { “No bottles of beer on the wall,” cha’ “No bottles of beer.” cha’ “Go to the store, buy some more,” cha’ “99 bottles of beer on the wall.” cha’ } pong morebottles Esimerkkikoodi 2: 99-bottles Var’aq-ohjelmointikielellä.. INTERCAL oli ensimmäisiä parodiaksi suunniteltuja ohjelmointikieliä. Combine double cream into the mixing bowl. 111 g sugar 108 ml hot water 108 ml heated double cream 101 g dark chocolate 72 g milk chocolate Method. 25 DO ,1 <#13 PLEASE DO ,1 SUB #1 <#238 DO ,1 SUB #2 <#108 DO ,1 SUB #3 <#112 DO ,1 SUB #4 <#0 DO ,1 SUB #5 <#64 DO ,1 SUB #6 <#194 DO ,1 SUB #7 <#48 PLEASE DO ,1 SUB #8 <#22 DO ,1 SUB #9 <#248 DO ,1 SUB #10 <#168 DO ,1 SUB #11 <#24 DO ,1 SUB #12 <#16 DO ,1 SUB #13 <#162 PLEASE READ OUT ,1 PLEASE GIVE UP Hello World. Serve with chocolate sauce. When he gets the sous chef to make the ”Hello” chocolate sauce, it gets put into the baking dish and then the whole thing is printed when he refrigerates the sauce. Put baking powder into the mixing bowl. Pour contents of the mixing bowl into the baking dish. Put flour into the mixing bowl. Put hot water into the mixing bowl. Put beaten eggs into the mixing bowl. Esimerkkikoodi 1: Chef-kielen Hello World -suklaakakkuresepti. Put sugar into the mixing bowl. Ingredients. bake the cake mixture. Fuguen Hello World-esimerkkikoodi pianolle. Liquify the contents of the mixing bowl. Stir the mixing bowl for 1 minute. Ingredients. Put heated double cream into the mixing bowl. Liquify the milk chocolate. Liquify the dark chocolate. Hello World Cake with Chocolate sauce. Wait until baked. Put butter into the mixing bowl. Put milk chocolate into the mixing bowl. Clean the mixing bowl. 33 g chocolate chips 100 g butter 54 ml double cream 2 pinches baking powder 114 g sugar 111 ml beaten eggs 119 g flour 32 g cocoa powder g cake mixture Cooking time: 25 minutes. chocolate sauce. Hello World -kohokas. Put sugar into the mixing bowl. Method. When actually cooking, I’m interpreting the chocolate sauce baking dish to be separate from the cake one and Liquify to mean either melt or blend depending on context. The main chef makes a ” world!” cake, which he puts in the baking dish
Tämä siis tarkoittaa samalla sitä, että kieli tukee rinnakkaisia prosesseja. Kielen tulkki tunnistaa kymmeniä erilaisia haukkumaja kehumasanoja, joiden kombinaatioista kieli rakentaa kuvausta vastaavan binääriarvon. Fugue on siis ohjelmointikieli, joka käyttää lähdekooditiedostonaan MIDI-musiikkia. Hello World sekä muutamia muita perusohjelmointiongelmia. Muut repliikit kuten ”Sano mitä ajattelet” (Speak your mind) ovat syntaksikäskyjä, joilla toinen muuttuja laitetaan vaikkapa tulostamaan sisältämänsä arvo merkkinä ruudulle. Esimerkiksi kaikille tutun ”Ukko Nooan” alkutahdit CCCE/DDDF/EEDDC tuottavat normalisoidun lähdekoodin (aloitusnuotti) # # + v # # + v # v # v joka poistaa muistipinosta arvoja samalla siirtyen pinosta seuraavaan. 3 26 miten käskyt annetaan tai missä muodossa ne pitää kirjoittaa, onkin kiinni käytetystä ohjelmointikielestä ja tietokoneen näkökulmasta jopa triviaalia, kunhan vain konekielisen käännöksen tekevä ohjelma ymmärtää, mistä käskystä milloinkin on kyse. Kielessä on kymmenen erilaista käskyä, joiden avulla kieli saadaan toteuttamaan Turing-täydelliseltä kieleltä vaadittavat toiminnot. Teknisesti Var’aq muistuttaa Lispohjelmointikieltä, ja se sisältää viitisenkymmentä erilaista sisäänrakennettua funktiota tai muuta toiminnallista operaattoria, mikä tekee siitä yhden teknisesti kehittyneimmistä esoteerisistä ohjelmointikielistä sekä periaatteessa oikeasti täysin toimivan kielen. Fuguelle on sovitettu mm. Osaresepteillä, kuten esimerkin kuorrutteella, voidaan kuvata ohjelman sisäisiä funktioita. Act I: Hamlet's insults and exodus. Hamlet, the insulter of disrepute. Scene I: The insulting of Romeo. [Enter Hamlet and Romeo] Hamlet: You lying stupid fatherless big smelly half-witted coward! You are as stupid as the difference between a handsome rich brave hero and thyself! Speak your mind! [Exeunt Hamlet and Romeo] Esimerkkikoodi 3: Katkelma Shakespeare-lähdekoodia Esimerkin lähdekoodissa muuttuja Hamlet muuttaa muuttujan Romeo arvoa haukkumalla tätä näyttämöllä.. Näille kielille ominaista on se, että niihin liittyy jokin konsepti jolla kielen syntaksi ja esitysasu tulisi toteuttaa. Erilaisilla kielillä puhumisen lahja Viimeinen pääryhmä kielistä, jotka pääsääntöisesti saavuttavat Turingtäydellisen kielen rakenteen, ovat teemakielet. Fuguessa annettava käsky määräytyy laskentakaavalla aina säveltason muutoksena edellisestä soitetusta nuotista. 2 1 6 . Tähän teemaan tarttuu esoteeristen kielten ”uusien konseptien” perhe; esimerkiksi Fugue-ohjelmointikielessä näitä toimintaohjeita syötetään midisävellysten avulla, ja toisaalta Piet käyttää lähdekoodina kuvia. Alunperin kielen tarkoitus oli kehittyä kolmessa osassa ohjelmointikielestä klingoninkieliseksi käyttöjärjestelmäksi, mutta kielen kehitys näyttäisi päättyneen ensimmäiseen vaiheeseen, eli toimivan ohRomeo, the quiet gentlemen of a wealthy family. Esoteerisempi esimerkki teemakielestä on kuitenkin Var’aq, ohjelmointikieli joka on rakennettu kokonaan klingoninkielisen syntaksin päälle. Kielen perusteosta on tähän mennessä myyty yli 300 000 kappaletta, ja sarjan huippuvuosina kielellä arvioidaan olleen enemmän käyttäjiä kuin monilla oikeilla vähemmistökielillä. Var’aq tukee myös englanninkielistä syntaksisanastoa, mutta pitäisi olla kovin batlhbe’ ohjelmoija käyttääkseen tätä apukeinoa, eikä kieli muutenkaan pääse oikeuksiinsa kuin alkuperäisellä klingoninkielellä. Kielen esimerkkejä voisivat olla vaikkapa Chef, jossa ohjelmointikieli toteutetaan reseptin muodossa, tai aiemmin esimerkkinä käytetty Shakespeare, jossa lähdekoodina toimii näytelmäkäsikirjoitus. Työn alla on myös ohjelmointikieli, joka käyttää valokuvien metatietoja, väriarvoja ja histogrammeja, sekä useampi projekti jossa kaikki koodi tuotetaan erilaisten hymiöiden tai emojien avulla. Klingon on myös yksi ainoista keinotekoisista kielistä, jolla on oma ISO 639-koodi sekä aiemmin erillinen wikipedia-alue, joten natiivi ohjelmointikieli oli luonnollinen jatke kyseisen kielen kehityskululle. Kielen syntaksisanat on otettu suoraan muukalaiskielen sanakirjasta, jonka aikanaan kokosi ja systematisoi kielitieteilijä Marc Okrand televisiosarjan käsikirjoittajien luomasta pohjasta. Shakespearessa näyttelijät ovat muuttujia, jotka vaihtelevat toistensa arvoja kehumalla ja haukkumalla muita lavalla olevia näyttelijöitä. Esimerkiksi Hello World -kappale kuulostaa modernilta taideperformanssilta ja Quine (itsensä tulostava ohjelma) vaadittuine toistoineen oletusinstrumenteilla pitkältä merimieshenkiseltä haitarisoololta. Lisäksi kielessä on mahdollisuus käyttää useita äänikanavia, eli rinnakkaisia tai yhtäaikaisia ääniä, kuvaamaan samaan aikaan tapahtuvia prosesseja. Vastaavasti esimerkiksi Chef-ohjelmointikielessä muuttujat annetaan reseptin ainesosina, jossa niille alustetaan alkuarvo lukumäärinä, ja reseptin työvaiheet kuvaavat itse ohjelman toimintaa
Esimerkiksi Brainfuckilla tehty käyttöjärjestelmä voisi olla yksi tällainen projekti, tai miksei vaikkapa Befungella luotu MOOC-ohjelmointikurssi. Kirjoitus sisältää lainauksia Jussi Kasurisen esoteerisiä ohjelmointikieliä ja tietojenkäsittelytekniikan perusteita käsittelevästä Docendon julkaisemasta kirjasta ”Outoa ohjelmointia”. • 1950-luku: Laitteistoriippumattomat, tietokoneesta toiseen siirrettävät ohjelmat mahdollistavat ohjelmointikielet syntyvät (Fortran, 1957). • 1940-luku: Conrad Zuse kehittelee teorian laitteistoriippumattomasta ohjelmointikielestä nimeltä Plankalkül (1943), joka olisi ollut yli 10 vuotta aikaansa edellä, mikäli Zuse olisi toteuttanut suunnitelmansa myös käytännössä. Esoteeristen kielten aikajana Kuten esoteeristen kielen wikisivusto esolang (esolangs.org) osoittaa, ovat esoteeriset ohjelmointikielet olleet olemassa jo yli 60 vuotta. Kaikki jutussa mainitut kielet ovat oikeita ohjelmointikieliä, jotka ovat oikeasti olemassa. Lisäksi Esolangs-wikistä löytyy myös ideointisivusto, josta voi napata muiden ideoimia mutta vielä kehittämättömiä konsepteja ohjelmointikielille, mikäli haluaa itse päästä kokeilemaan kielen tai kääntäjän rakentamista. Toisaalta taas vakavamielisen käyttötarpeen puuttuminen ei sekään ole esoteeristen kielten yksinoikeus, sillä esimerkiksi Logo-ohjelmointikieli kilpikonnineen oli lähinnä luotu tavoitteena tehdä jotain yksinkertaista, jota on helppo opettaa, ilman että kielellä oli tarkoitus luoda mitään varsinaisia ohjelmia. P”, ja myöhemmin ilmestynyt Brainfuck, ovat käytännössä Turingin koneen toteutuksia oikealle ohjelmointikielelle sovitettuina. 27 jelmointikielen syntymiseen, eikä kieli ole enää juurikaan kehittynyt eteenpäin vuoden 2004 jälkeen. • 1970-luku: INTERCAL-ohjelmointikieli julkaistaan (1972). • 2000-luku: Whitespace, pelkkiä ei-tulostuvia merkkejä käyttävä ohjelmointikieli julkaistaan (2003). • 1980-luku: Adam Perliksen lista 130 erilaisesta suunnittelullisesta huomiosta julkaistaan, käsite Turingin kuoppa (Turing tarpit) määritellään. Tosiasia on se, että Befungeohjelmointikielellä ei luultavasti tulla lähiaikoina tekemään selainsovelluksia eikä Whitespace ehkä ole ensimmäinen vaihtoehto kaupalliseen ohjelmistohankkeeseen. Esoteerisyydessä on etunsa Esoteeristen kielten ei tosiaankaan ole tarkoitus olla käytettäviä sen enempää kuin yksinkertaisia tai käyttäjäystävällisiäkään. Kaiken kaikkiaan listalla on kolmatta sataa erilaista konseptia ja ideaa, joita vielä toistaiseksi ei ole tehty kokonaiseksi kieleksi asti. Useimmiten kielen suunnittelu ja ainoa valmiiksi asti saatu toteutus on tasolla, joka on luotu tarkoituksenaan osoittaa että ”kyllä, linja-autoaikataulusta pystyy tekemään ohjelmointikielen”. Malbolge, maailman vaikein ohjelmointikieli, julkaistaan vuonna 1998. • 1990-luku: Ensimmäinen kaksiulotteisesti toimiva ohjelmointikieli Biota julkaistaan (1991), FALSE ja Brainfuck julkaistaan (1993). Befungen kolmas versio Funge-98 (1998) saavuttaa Turing-täydellisyyden. Esimerkiksi egyptiläiset hieroglyfit tai Voynichin käsikirjoitus voisivat olla hyviä ideoita seuraavalle esoteeriselle kielelle. Tällöin se typistyy ainoastaan vaikeaselkoiseksi, normaaliksi ohjelmointikieleksi. Klingonin tapauksessa kielellä, joka on luotu televisiosarjasta ja jossa ei ole olla-verbiä, on pystytty luomaan eräs historiallisen näyttämötaiteen pääteoksista. Kyseessä on ensimmäinen ohjelmointikieli, joka on suunniteltu nimenomaan täysin erilaiseksi kuin kaikki muut kielet. Logo-ohjelmointikieli (1967), jonka ensisijainen tarkoitus ei ollut itse tietokoneohjelmien tekeminen vaan ohjelmoinnin opettaminen, julkaistaan. Esoteeristen kielten ongelma on osittain siinä, että niiltä puuttuu pääteos, vaikka Brainfuck eittämättä onkin kohtuullisen tunnettu ohjelmointikieli, jota kukaan ei ole koskaan käyttänyt. Kuvia lähdekoodina käyttävä Piet julkaistaan (2001). Pääteoksella tässä yhteydessä voitaisiin tarkoittaa ohjelmointiprojektia, joka samaan tapaan kuin klingoninkielinen Hamlet toisi kielille julkisuutta. Oikeastaan asiaa voi katsoa myös siltä kannalta, että esoteerinen kieli, jolle löytyy jokin hyödyllinen käyttötarkoitus, ei enää ole esoteerinen kieli. • 1960-luku: P”-ohjelmointikielen rakenteen esittelevä tutkimus julkaistaan (1964). Tästäkin huolimatta suurin osa esoteerisistä kielistä on kehitetty 80ja 90-lukujen taitteessa, pitkälti samoihin aikoihin kuin kotitietokoneet alkoivat voimakkaasti yleistyä. Esoteerisuuden näkökulmasta tärkein ominaisuus on kuitenkin nimenomaan tekninen taiteellisuus tai vähintäänkin kielen tarjoama huumoriarvo. Ensimmäiset merkitykselliset Malbolge-kielen esimerkit saadaan generoitua (99-bottles, Hello World!).. Toisaalta monimutkaisuus tai asiaan vihkiytymättömälle täydellinen salaperäisyys ei kuitenkaan ole esoteeristen kielten yksinoikeus: harva pystyy suoralta kädeltä sanomaan että seuraava Perlin lauseke: $merkkijono =~ s/^\s*(.*?)\s*$/$1/; poistaa syötetystä merkkijonosta kaikki aloittavat ja lopettavat välilyöntimerkit. MIDImusiikkitiedostoilla lähdekoodia kuvaava Velato julkaistaan (2003). Ohessa lyhyt aikajana tärkeimmistä tapahtumista esoteerisen kielen maailmassa: • 1930-luku: Alan Turing kehittää Turingin koneen (1936), joka on yleisesti tunnustettu ensimmäiseksi modernin tietokoneen perusteoriaksi. Ja mitä hauskaa siinä olisi. Ensimmäinen olio-pohjainen esoteerinen kieli ORK julkaistaan (2005). Esoteerisistä kielistä ei ole kirjoitettu paljoakaan englanniksi, ja vielä vähemmän suomeksi, mutta esoteerisiä ohjelmointikieliä keräävän Esolangsivuston pääarkisto Esolang Wiki (esolangs.org) on varmaankin hyvä paikka jatkaa kieliin tutustumista
Vielä helpommin se käy seuraavaksi tehtävän hiirenpaljastusohjelman avulla. 3 28 T ietokonetta ohjataan edelleen pääsääntöisesti hiirellä ja näppäimistöllä. Lisää BlinkForm-luokan määrittelyt MainForm-luokan perään. Näppäinyhdistelmä ei astu voimaan ennen kuin pikakuvake on lisätty käynnistysvalikkoon tai työpöydälle. Tämän jälkeen lisää lomakkeelle ajastin (timer), jonka intervalliksi eli tikitysvälisiksi tulee 1000 millisekuntia. Siinä tapauksessa seuraavaksi tehtävä ohjelma voi auttaa. Tämä siis sisältää kaikki ympyräikkunan toiminnallisuudet. Mikäli käytössä on useampi kuin yksi näyttö, saattaa nuoli kuitenkin eksyä omille teilleen turhankin helposti. Näin se näkyy millaisella taustalla tahansa. Tämän jälkeen hiiren kohdistimen kohdalle piirretään täytetty ympyrä, jota väläytetään kolme kertaa. Toteutuskielenä on C# ja se pyörii .NET 2 -alustan päällä. Toteutus on hieman näyttävämpi, jos ikkuna muutetaan puolittain läpinäkyväksi. Varmuuden vuoksi ympyrän ulkoreuna on eri värillä kuin sisus, ja käytetyt värit valitaan satunnaisesti jokaisella kierroksella. Koska yhden ympyrän käsittelyyn menee sekunti (eli ympyrä ilmestyy ja katoaa), tämä ikkuna on näkyvillä näin ollen kolmisen sekuntia. Kyseisen ikkunan sulkeminen johtaisi koko ohjelman sulkeutumiseen ennenaikaisesti. Tähän tikitystapahtumaan tulevat toisen ikkunan luontikäskyt. Yksinkertaisuuden vuoksi ohjelma näyttää hiiren sijainnin ruudulla heti käynnistyksen yhteydessä. Jälkimmäinen osuus koostuu uudesta ikkunasta, joka on näkyvillä ympyrän piirron ajan. Hiiren sijainti ruudulla näkyy tyypillisesti nuolen muodossa. Tämä siksi, että jos ikkuna suurennetaan koko näytön kokoiseksi heti alkajaisiksi (InitializeComponent-kutsun aikana), ei ikkunan siirtäminen toiselle ruudulle ole enää mahdollista. Tässä luokassa on kaksi ajastinta, joista toinen määrää ohjelHiirenloukku Näin helpotat useamman näytön käyttöä Karkaako hiiri käsistäsi. Ohjelma pinnan alta Ohjelman toiminnan voi jakaa kahteen osaan: ruudun väläytykseen ja kohdistimen ympäröintiin. Hiiren asetuksista voi säätää näkyville hiiren jäljet ja varjon, jolloin jyrsijän jäljittäminen on hieman helpompaa. Se osoittaa halutessasi, missä hiiren osoitin parhaillaan luuraa. Tämä ikkuna olisi näkyvillä esimerkiksi sekunnin, jonka jälkeen ikkuna sulkeutuu itsestään. Huomaa, että ennen tämän ”ympyräikkunan” näyttämistä on alkuperäinen, kellertävä ikkuna piilotettava tieltä. Hiiren pyydystäminen valokeilaan Painamalla tiettyä näppäinyhdistelmää ohjelma käynnistyy ja näyttää hiiren nykyisen sijainnin ensin karkeammin väläyttämällä ruutua. Tempun pitäisi paljastaa nakertaja vaikka se olisi ehtinyt ruudun reunoille saakka. Toinen huomattava kohta on, että WindowState-ominaisuus asetetaan koodissa eikä suunnittelunäkymässä. Teksti: Markus Kuula Kuvat: Manu Pärssinen, Markus Kuula Koodi. Siksi ohjelmalle on tehtävä pikakuvake ja pikakuvakkeen asetuksiin merkittävä sopiva näppäinyhdistelmä. 2 1 6 . Ensimmäisellä osuudella luodaan ruudun kokoinen ikkuna, joka täytetään keltaisella värillä. Luo uusi projekti (Windows Forms Application) ja muuta ikkunan asetukset oheisen taulukon mukaisiksi
Ohjelma aktivoidaan ennalta määrätyllä pikanäppäimellä, joka kytketään ohjelmaan RegisterHotKey-funktiolla 1 . Kuva 3. Mahdollisuuksia jatkokehitykseen löytyy kuitenkin aina. Kolmannessa kuvassa hiiri on siirretty toiseen paikkaan piirtovaiheiden välillä, jolloin kuvassa näkyy vanha ja uusi sijainti. Toisessa vaiheessa ohjelma piirtää ympyrän osoittimen ympärille. Eräs tärkeä huomio on, että BlinkForm-luokassa ikkunan tyyli on muutettava reunattomaksi ennen kuin sen korkeus ja leveys asetetaan peittämään koko ruutu. Tällöin se majailisi tehtäväpalkin ilmoitusalueella, joka sijaitsee yleensä alakulmassa kellon vieressä. Jos satunnaisesti valikoituvat värit ympyröissä tuntuvat liian räikeiltä, ne voi korvata esimerkiksi kahdella sisäkkäisellä ympyrällä, väreiltään esimerkiksi musta ja valkoinen, joiden pitäisi periaatteessa erottua millaisella taustalla tahansa. Väläytysvaihe: Tässä vaiheessa se näyttö muuttuu keltaiseksi, jossa osoitin majailee. BlinkForm-luokan määrittelyt.. Kuva 2. 1 https://msdn.microsoft.com/ en-us/library/windows/desktop/ ms646309(v=vs.85).aspx Kuva 1. Jatkokehitysideoita Onnittelut, hiirenloukkusi on valmis. Ominaisuus Arvo Selitys FormBorderStyle None ikkunakehykset pois TopMost true jää päällimmäiseksi ShowInTaskbar false ei näytetä tehtäväpalkissa Opacity 0.5 läpikuultava BackColor Yellow keltainen tausta Taulukko 1. Ohjelman käynnistyminen saattaa joskus viedä aikaa, mikäli koneella on muuta puuhaa. Muuten ikkuna jäisi hieman vajaaksi, sillä reunukset lasketaan mukaan ikkunan viemään tilaan. Viiveen vähentämiseksi voit muuttaa ohjelman käynnistymään tietokoneen käynnistyksen yhteyteen siten, että se on jatkuvasti käynnissä. 29 man suoritusajan ja toinen tuottaa tarvittavan vilkkuefektin (blinkTimer -ajastin)
Vaikka Dotaa pelataan aina samalla kentällä, ei yksikään ottelu ole ikinä samanlainen, ja juuri pelin tarjoamat rajattomat mahdollisuudet erilaisille taktiikoille ovat varmasti tärkeimpiä tekijöitä Dotan menestyksessä. Jokainen pelaaja valitsee yhden hahmon pelin tarjoamasta yli sadasta vaihtoehdosta ja taistelee tiiminsä kanssa, kunnes vastustajan tukikohta tuhoutuu. Valve järjesti ensimmäisen Internationalin esitelPelit Miljoonaluokan videopeliturnaus – The International Yleisö huutaa innoissaan, koko Seattlen Benaroya Hallin konserttiareena tärisee, katsomo on noussut seisomaan, huudoksi muuttunut selostus kaikuaa ympäri tilaa ja areenan etuosassa sijaitsevalla valtavalla näytöllä näkyy… kuvaa videopelistä. Pelin valtava valikoima pelattavia hahmoja tarjoaa lähes rajattoman määrän mahdollisia yhdistelmiä, ja sen syvyys ja monipuolisuus vaativat pelaajalta kattavaa pelin mekaniikkojen osaamista. Dota-lyhenne tulee sanoista Defense of The Ancients, ancientsin viitatessa kartan molemmin puolin sijaitseviin tukikohtiin. MOBA on lyhenne sanoista Multiplayer Online Battle Arena. Teksti: Tuomas Grannas Kuvat: Valve Suuret peliturnaukset ovat tänään valtavia yleisötapahtumia, joita seuraavat miljoonat ihmiset myös verkon kautta.. Peli saavutti nopeasti suuren suosion, ja sitä pidetäänkin niin kutsutun MOBAgenren pioneerinä. Mainitussa Benaroya Hallissa oli käynnissä kolmas vuosittainen The International -dotaturnaus, joka viettää jo kuusivuotissyntymäpäiväänsä. 3 30 V alven luoma Dota 2 on yksi maailman pelatuimpia eSportspelejä. Vuonna 2009 muun muassa HalfLife-pelisarjastaan tuttu Valve palkkasi Dota-modin pääkehittäjän, ja Dota 2:n kehitys alkoi. Dota sai alkunsa Warcraft 3 -pelin modina, jonka ensimmäinen versio ilmestyi jo vuonna 2002. 2 1 6 . Se on tiimipohjainen reaaliaikastrategia, jossa kaksi viiden hengen joukkuetta usutetaan toisiaan vastaan. Ensimmäinen turnaus pidettiin vuonna 2011 Kölnissä järjestetyillä Gamescom-pelimessuilla, ja se herätti paljon huomiota valtavalla 1,6 miljoonan dollarin palkintopotillaan
Voittajajoukkue sai jälleen miljoona dollaria, mutta ehkä rahaa tärkeämpää saattoi olla voiton tuoma kunnia. Sikäläiset joukkueet tunnettiin kyvystään kylmäverisesti kuristaa elämänilo vastustajistaan pelaamalla lähes virheettömästi, toteuttaen pelisuunnitelmansa uskomattomalla tarkkuudella ja armottomasti. Dendi tunnetaan luovasta pelityylistään ja hauskoista kommelluksistaan kameroiden edessä. Dendin elämä muuttui varmasti miljoonan dollarin palkinnon jälkeen, ja hän on edelleen yksi suosituimmista dotapelaajista. ChuaN harrasti ennen dotauraansa koripalloa, mutta loukkasi jalkansa pelatessaan. Invictus Gaming oli toisen kiinalaisen joukkueen, LGD:n, kanssa turnauksen ehdottomia ennakkosuosikkeja, ja veikin voiton odotetusti kotiin. Valven asettama 1,6 miljoonan dollarin potti kasvoi vielä 1,3 miljoonalla, eli rahaa kertyi yhteensä 2,8 miljoonaa dollaria. Kiinalaisten kosto Vuonna 2012 International järjestettiin toisen kerran, tällä kertaa Seattlessa, jossa myös Valven päämaja sijaitsee. Kiinalainen dotanpelaaminen oli tyyliltään hyvin hillittyä, strategista ja laskelmoitua. Finaalissa IG pelasi ensimmäisen Internationalin voittaja Natus Vincereä vastaan. Ensimmäisessä Internationalissa pelätyimpiä vastustajia olivat kiinalaiset joukkueet. Joukkorahoitettuja unelmia Vuonna 2013 Valve muutti kolmannen Internationalin palkintopotin keräämistapaa. Kiinnostaa muuten huikean monia!. Tyyppejä lavalla pelaamassa tietokonepeliä. International on vuoden suurin turnaus, ja sen voittaminen on uskomaton suoritus, joka vaatii valtavasti sinnikkyyttä, omistautumista ja tiimityötä. Mies sinnitteli vastoinkäymistensä läpi, ja hänellä on paljon aasialaisia faneja, ehkä juuri sisukkuutensa takia. 31 läkseen uutta Dota 2 -peliään maailmalle, ja suuri palkinto houkuttelikin mukaan ammattilaispelaajia kaikkialta maailmasta. Pelaajat pystyivät käyttämään oikeaa rahaa tehdäkseen pelihahmostaan hienomman näköisen ostamalla lempihahmolleen esimerkiksi uuden virtuaalisen haarniskan tai aseen. Turnauksen voittajajoukkue Natus Vincere taas tunnettiin railakkaasta ja toiminnantäyteisestä ”venäjädotastaan”, joka pelityylinä selittyi suurin piirtein tauottomaksi alkupelirähinäksi, jossa liikutaan yhdessä koko tiimillä ja pyritään voittamaan peli aikaisin. Aiemmissa turnauksissa palkintorahat olivat tulleet kokonaan Valven omasta taskusta, mutta tällä kertaa yhtiö tarjosi pelin pelaajille mahdollisuuden vaikuttaa pottiin. Toverimme idästä Ensimmäisen Internationalin hienoimpia tarinoita on varmasti virolaisesta, venäläisestä ja kolmesta ukrainalaisesta pelaajasta koostuneen Natus Vincere -joukkueen voitto. Toipilaana hän aloitti Dotan pelaamisen, ja niinpä kaiken tämän jälkeen hänestä tuli Dotan maailmanmestari. 1,6 miljoonan dollarin palkintopotin voitti malesialaisvahvisteinen, pääosin kiinalainen tiimi Invictus Gaming (IG). Natus Vinceressä pelasi myös yksi maailman tunnetuimmista dotatähdistä, ukrainalainen Danil ”Dendi” Ishutin, josta tuli monien Dotaa seuraavien suosikkipelaaja. Suurin osa pitkän pelin strategioihin tottuneista kiinalaisista joukkueista ei osannut odottaa Natus Vinceren pelotonta ja aggressiivista pelityyliä, ja joukkue voittikin turnauksen pelätyimmät vastustajat toinen toisensa jälkeen. Valve oli tajunnut, miten paljon rahaa ihmiset viitsivät käyttää näyttääkseen tyylikkäämmältä tai rikkaammalta kuin vastustajansa, ja maailman suuWarcraft 3:n modista on kasvanut yksi maailman suosituimmista peleistä. Finaalipelit olivat mahtavaa katsottavaa, ja niissä tapahtui paljon hienoja taisteluja. Joukkueen ainoa ei-kiinalainen pelaaja oli malesialainen Wong ”ChuaN” Hock Chuan, jonka tarina on varsin inspiroiva. Digitaalisten esineiden hinnasta neljäsosa lisättiin turnauksen palkintorahoihin, ja potti lähes tuplaantui
Myös Dotan ilmaispelimalli vaikutti varmasti pelin suosioon, sillä pelaamaan pääsi ilmaiseksi. Tätä yhtä hahmoa kutsuttiin usein lempinimellä ”rotta”, sillä strategiaa vastaan pelaaminen oli melko vaikeaa sekä ärsyttävää, aivan kuten rotankaltaisten tuholaisten hävittäminen oikeassa elämässä. Jokainen sekunti merkitsee Sattumoisin turnauksen voitti toisesta rakkaasta naapurimaastamme kotoisin oleva tiimi, tällä kertaa lännestä. Voitto meni Alliancelle hyvinkin täpärästi, ja kyse oli vain millisekunneista. Ei enää pelkkä harrastus Vuonna 2014 järjestetyssä neljännessä Internationalissa oli käytössä sama palkintorahojen keräystaktiikka, ja tällä kertaa palkintopotti kipusi taivaisiin, kokonaiseen 11 miljoonaan dollariin. Ruotsalainen Alliance nosti vihdoin Pohjois-Euroopankin dotakartalle. Alliance sai tuhottua Natus Vinceren tukikohdan ja voitti turnauksen todella täpärällä mutta vaikuttavalla suorituksella. Sama toimi myös toisin päin, saatoit voittaa tiimitaistelun Alliancen neljää muuta hahmoa vastaan, mutta samaan aikaan rotta oli jo yksinään tehnyt tukikohdassasi paljon vahinkoa. Voittajajoukkueen viiden miljoonan dollarin potista riittää kulujen ja verojenjälkeen riittoisasti viidelle pelaajallekin jaettuna, joten kova kilpailu on myös yrittämisen arvoista. Kun nitistät yhden hahmon, ”rotan”, jonka Alliance laittoi puskemaan tukikohtaasi kohti toisella puolella pelikenttää, loput neljä hahmoa puskivatkin tukikohtaasi kohti kentän toisella puolella. Pelin maksullinen sisältö muuttaa hahmoja vain kosmeettisesti, ja kun kaikki pelin hahmot ovat saatavilla ilmaiseksi, ei Dotassa voi ostaa tietään voittoon. Statussymbolit toimivat videopeleissäkin. Dotaa sen sijaan pelattiin vahvasti kaikkialla maailmassa, ja oli selvää, että peli oli tullut jäädäkseen. Kyllä kiitos! Lindsey Stirling tarjoili turnauksen avajaisissa viulukonserton. Dota 2 oli todistanut arvonsa eurheilulajina ja pelin turnausvoitoilla pystyi jo tekemään tarpeeksi luotetViihdettä ja videopelejä. Alliancen pelaaja sai toisella puolella pelikenttää juuri ja juuri keskeytettyä kahden Natus Vinceren hahmon teleportaatioloitsut, eikä Natus Vincere pystynyt puolustamaan tukikohtaansa kolmella hahmolla neljää vastaan. Pelin viimeisistä hetkistä tuli ikonisimpia hetkiä koko Dotan historiassa. Pelistä oli tullut oikeasti iso juttu, ja allekirjoittanutkin tajusi e-urheilun tekevän voimalla tuloaan myös valtavirran tietoon. Natus Vincere vastaan Alliance -ottelu saikin nimen El Classico, ja nimi tulee usein nykyäänkin esille, kun kyseiset joukkueet pelaavat vastakkain. Alliancen voitto oli todella jännittävää katsottavaa pelaajan näkökulmasta, sillä he loivat tiensä turnauksen läpi täydellisyyteen hiotulla omalaatuisella pelitaktiikallaan, jota kutsuttiin lempinimellä ”rottadota”. 3 32 rimpien eSport-palkintopottien resepti oli löytynyt. 2 1 6 . Alliancesta tunnetuimmaksi pelaajaksi nousikin turnauksen aikana Henrik ”AdmiralBulldog” Ahnberg, joka pelasi Alliancen rottaroolia ja suoriutui koko turnauksen ajan lähes täydellisesti, millä oli tärkeä osa Alliancen voittotaktiikassa. Finaalipelissä Alliancea vastaan pelasi legendaarisen statuksen saavuttanut Natus Vincere, joka oli jo kolmannessa International-finaalissaan. Toki aiemmin oli ollut olemassa muun muassa Starcraft-skene, mutta se oli valtavirtaa lähinnä Etelä-Koreassa, jossa sitä tosin lähetettiin jopa televisiosta. Ei pelitapahtumaa ilman cossausta.. Taktiikka sai nimensä tavasta, jolla Alliance meni neljällä viidestä tiiminsä hahmosta taistelemaan toista tiimiä vastaan toisella puolella kenttää ja yhdellä hahmolla hajottamaan vastustajan tukikohtaa
Ei kukaan meistä varmasti haluaisi katsoa jalkapallootteluakaan kulmakunnan amatöörijoukkueen ja liigakärjen välillä. Sumail oli liittynyt tiimiin vain kahdeksan kuukautta aiemmin, ja kyseessä oli hänen ensimmäinen Internationalinsa. Sumail myi jopa polkupyöränsä kotonaan Pakistanissa vain pystyäkseen maksamaan lisätunneista pelikahvilassa. Newbee oli muutenkin yllättävä voittaja, sillä joukkue oli perustettu vasta alkuvuodesta 2014, ei edes vuotta ennen pääsyään ensimmäiseen Internationaliinsa. Torilla tavataan Vuonna 2015 viidenteen Internationaliin oli tuloillaan myös suomalaisväriä, täysin suomalaisista pelaajista koostuva joukkue nimeltä 4 Anchors + Sea Captain. Turnauksen palkintopotti oli kuitenkin kasvanut valtavasti edellisestä ja oli tällä kertaa jo noin 18,5 miljoonaa dollaria. Voittajajoukkueesta täytyy mainita kuitenkin yksi menestystarina muiden yli. Hassan oli tiimin voittaessa vain 16-vuotias, joten hän on toistaiseksi nuorin Dota 2 -maailmanmestari. Tosin on pakko mainita, että Vici Gamingia ei sinänsä voida pitää amatöörijoukkueena, sillä se oli yksi parhaista joukkueista koko maailmassa. Monien suomalaisten dotafanien onneksi turnauksessa pelasi kuitenkin yksi suomalainenkin, nimittäin Jesse ”Jerax” Vainikka, joka oli tehnyt yllättävän liikkeen ja siirtynyt ennen turnausta Etelä-Koreaan MVP.HOT6ix-joukkueeseen. Viimeisellekin sijalle sijoittuva joukkue sai silti siis noin 55 000 dollaria. Newbee hallitsi turnauksessa vallinneen alkupelin joukkuepelityylin moitteettomasti, ja putsasi myös lopputurnauksen todella tehokkaasti. Tiimi koostui kolmesta pohjoisamerikkalaisesta ja yhdestä kanadalaisesta, joita täydensi pakistanilainen Syed Sumail ”SumaiL” Hassan. Muihin Evil Geniusesin pelaajiin. Tiimi kuitenkin hajosi neljännen Internationalin jälkeen. Nuori mies oli selvästi omistautunut pelaamiselle, ja se kannatti. Fnatic-joukkueessa ennen pelanneen Kalle ”Trixi” Saarisen luotsaama Suomen dotaparhaimmistosta koostunut joukkue putosi kuitenkin harmillisesti jo karsinnoissa, eikä päässyt kilpailemaan palkintorahoista. Yllä mainittu Kalle ”Trixi” Saarinen pelasi Fnaticjoukkueessa kolmannessa ja neljännessä Internationalissa. 33 tavasti rahaa elämiseen. Pelaajanuran aloittaminen ei ollut enää yhtä iso riski kuin ennen, vaikka se täyttä omistautumista ja sinnikkyyttä silti vaatikin. Se oli silti ehättänyt saavuttaa kahdeksannen sijan kolmannessa ja 14. Kuvittele keskimäärin neljäkymmentä minuuttia kestävien, melko tasaisten ja jännittävien otteluiden sijaan noin kahdenkymmen minuutin pituisia yksipuolisia turpasaunoja, joissa Newbee sai vastustajatiimi Vici Gamingin joka kerta luovuttamaan todella aikaisin, vain muutaman joukkuetaistelun jälkeen. Finaalit toivatkin esille ristiriitaisia mielipiteitä, sillä Newbee oli voittanut kaikki finaalipelit niin nopeasti ja armottomasti, että peleissä ei ollut paljoa katseltavaa. Tämä ei kuitenkaan ollut ensimmäinen kerta, kun suomalainen pelaaja matsasi Internationalissa. Crouching Tiger, Hidden Newbee Neljännen Internationalin voitti kiinalainen Newbee, jonka pelaajista tuli ensimmäistä kertaa yhden turnauksen miljonäärejä. Joukkue sijoittui kuudenneksitoista, eli viimeiselle sijalle. Ryysyistä rikkauksiin Viidennen Internationalin voitti pohjoisamerikkalainen Evil Geniuses, joista suurin osa oli pelannut jo ensimmäisestä Internationalista asti ja elätti itsensä pelaamisella. Newbee vain yksinkertaisesti pelasi turnauksessa aivan omalla tasollaan ja sai finaalissa vastustajansa näyttämään aloittelijoilta. Joukkue tuli niin sanotusti puskista, mutta onnistui voittamaan koko turnauksen, mistä he ansaitsevat suurta kunnioitusta. sijan neljännessä Internationalissa
”Hello, we are Dota missionaries from Finland.” Tänä vuonna järjestetyssä kuudennessa Internationalissa oli kaksi valopilkkua, joita varmasti suurin osa suomalaisista dotapelaajista seurasi. Ensimmäisen Internationalin voitti Natus Vincere, eli länsimainen joukkue. Joukkue voitti legendaarisen Natus Vinceren ja eteni seuraavan päivän otteluihin. Joukkue vaikutti lupaavalta, ja heihin kohdistettiinkin suuria odotuksia. Liquidille turnauksen ensimmäinen päivä alkoi erinomaisesti. Wings vei mukanaan lähes kaksi miljoonaa dollaria pelaajaa kohti, voittaen 44 prosenttia turnauksen palkintorahoista eli reilut yhdeksän miljoonaa yli kahdenkymmenen miljoonan potista. 3 34 verrattuna ensimmäisen Internationalin voittaminen vain 16-vuotiaana on todella kunnioitettava saavutus, varsinkin kun muu joukkue on pelannut jo ensimmäisestä International-turnauksesta saakka. Kyseessä oli melko tuntematon, suurimmaksi osaksi nuorista pelaajista koostuva tiimi. Liquid hävisi Fnatic-joukkueen uudelle kokoonpanolle, ja heidän matkansa turnauksessa päättyi. Ennakkosuosikkijoukkue Liquidissa pelasi kaksi suomalaista pelaajaa, vanha tuttumme Jesse ”JerAx” Vainikka sekä ennen 4 Anchors + Sea Captainissa pelannut Lasse ”MATUMBAMAN” Urpalainen. Liquid tuli kuudenteen Internationaliin takanaan erinomainen turnausmenestys. 2 1 6 . Tiimi oli tullut toiseksi kahdessa viimeisimmässä major-turnauksessa ja voitti myös Moskovassa pidetyn EPICENTER-turnauksen. Jos yllä oleva kaava jatkuu samaa rataa, kenties saamme nähdä vuonna 2017 suomalaisen International-voittajan. International 2:n voitti kiinalainen Invictus Gaming, eli itämainen joukkue. Voitot jakaantuvat samalla tavalla vuorotellen idälle ja lännelle, TI3: Alliance (länsi), TI4: Newbee (itä), TI5: Evil Geniuses (länsi), TI6: Wings Gaming (itä). Wingsin voitettua kuudennen Internationalin voi turnausten voittajissa huomata kaavan. Turnauksen toisena päivänä Liquid raivasi taas tieltään yhden entisen International-voittajan, Newbeen. JerAx ja MATUMBAMAMAN olivat näyttäneet kyntensä, ja uskon ainakin itse vahvasti, että suomidota palaa vielä. The International -turnaus internetissä: www.dota2.com/international/overview/ Kiinalainen Wings Gaming -joukkue voitti vuoden 2016 The International -turnauksen ja nappasi yhdeksän miljoonan dollarin potin.. Pojat eivät kuitenkaan palanneet Suomeen tyhjin käsin, sillä Liquid päätyi turnauksessa kahdeksannelle sijalle, voittaen noin 100 000 dollaria per pelaaja. Mutta tiedän varmasti ainakin sen, että itse odotan innolla, mitä suomalaisilla dotanomeilla on vielä tuotavana pöytään, vaikka Internationalvoittoa ei ensi vuonna tulisikaan. Koko turnauksen voitti kiinalainen Wings-joukkue. MATUMBAMANin Liquid vastaan Fnatic-pelissä tekemiä päätöksiä kritisoitiin hieman, sillä hän osti loitsuimmuniteetin antavan esineen sijaan vahinkoa tekevän esineen, mutta ei yhtä henkilöä voi häviöstä syyttää. Molemmat joukkueet pelasivat erinomaisesti ja ottelut olivat tasaisia ja jännittävää katsottavaa. Kolmantena päivänä tuomio kuitenkin tuli
Säkkipillin soidessa ja Segwaysähköpyörän johtaessa harrasta kulkuetta valkoinen ruumisauto kaartaa Hollywood Forever -hautausmaalle Los Angelesissa. 35 T orstai, 24. Paikoin niitä myytiin kaksi kertaa enemmän kuin bensiiniautoja. heinäkuuta, 2003. Pian jokainen 1117 EV1:stä, joitakin museokappaleita lukuun ottamatta, olisi metalliromua. Unkarilainen Ányos Jedlik kehitti sähkömoottorin ja konseptiauton vuonna 1828. Anglosaksinen kädenvääntö sähköauton keksijästä jatkuu edelleen, mutta ensimmäisten joukossa olivat joka tapauksessa skotlantilaiset Robert Anderson (noin 1832–1839), Robert Davidson (1837) sekä amerikkalainen Thomas Davenport (1834). Sähköauto piti hallussaan maanopeusennätystä vielä vuonna 1900. Teksti: Janne Sirén Kuvat: Janne Sirén, Toroidion Oy, Wikimedia Commons: Franz Haag, DRoberson, US National Archives, Skartis / Georgios Michael, RightBrainPhotography / Rick Rowen, Evplus, LHOON, Charles01, Steve Jurvetson, Flickr Commons: Eric Kilby Baywatch-näyttelijätär Alexandra Paul (Stephanie), joka oli vuonna 1996 vuokrannut ensimmäisen tuotantoEV1:n, kommentoi happamana: ”Olimme siirtymässä uudelle vuosituhannelle. Sitten Henry Ford kehitti liuku hihnan ja polttomoottoriauton nimeltä Model T – loppu on toistaiseksi ollut historiaa. Myös sähkö-Toyota poistuisi markkinoilta vuosikymmeneksi. Ranskalaisen fyysikon Gaston Plantén vuonna 1859 kehittämä lyijyakku mahdollisti akkujen uudelleenlataamisen. Vietetään sähköauton – vuonna 1996 julkaistun General Motors EV1:n – hautajaisia. Ne eivät vaatineet käynnistyskammen vääntämistä tai höyryautojen pitkää SÄHKÖAUTON HISTORIA Polttomoottorin varjossa La Jamais Contente, ”The Never Satisfied” (1899). Sähköautoja kehitettiin myös mm. Sähköautot pitivät maanopeusennätystä hallussaan koko vuosisadan – viimeisenä belgialainen sähköauto, raketin muotoinen La Jamais Contente, joka ensimmäisenä autona ylitti 100 km:n tuntinopeuden vuonna 1899. Historiankirjoituksen mukaan vuonna 1895 sähköauto ehti voittaa myös ensimmäiset autokisat Amerikassa, seuraavana vuonna avattiin maan ensimmäinen autokauppa, joka myi pelkkiä sähköautoja, ja vuonna 1899 sähköautolla saatiin ensimmäiset ylinopeussakot. Korvaavaa mallia ei tullut. 1800-luvun hittituote Akkukäyttöisen sähköauton tarina alkoi ennen polttomoottorin kultaaikaa. Nyt tuntuu, että siirrymme takaisin 1900-luvulle.” Paul tuomittiin myöhemmin yhdyskuntapalvelukseen EV1:n romuttamista vastustaneesta luvattomasta mielenosoituksesta. Rukoukset eivät auttaneet, tehdas vaati kaikki autot takaisin. EV1:n valmistus oli loppunut muutamaa vuotta aikaisemmin ja viimeiset leasing-sopimukset päättymässä. Varhaisia sähköautoja käytettiin etenkin kaupungeissa, joihin niiden huippunopeus, noin 15–30 km/h, oli riittävä. Tekniikka. Ruumisauton perässä, lähes äänettömänä saattueena, rullaa letka futuristisen pyöreitä urheiluautoja kuin suoraan Jetsoneista, siellä täällä välissään Toyotan kolhompi sähkömaasturi. Ranskassa ja Saksassa. Ne olivat hiljaisia, paikallisesti saasteettomia ja helppoja käynnistää
Kilowattin huippunopeus Sähköautoilun paradigmamuutos Sähköauto on paljon parjattu ja usein väärinymmärretty – niin autosuunnittelijoiden kuin auton käyttäjienkin keskuudessa. Vasta polttomoottoriajattelun kahleista vapautuessaan pääsee sähköauto oikeuksiinsa. Sähköautot olivat paikoitellen suosituimpia, ja niitä käytettiin muun muassa suurkaupunkien taksiliikenteessä. 3 36 lämmittelyaikaa, joten ne olivat aikanaan etenkin naisasiakkaiden suosiossa. Rajallinen toimintasäde vaivasi toki sähköautoja 1800-luvullakin. Taantuminen golfkärryksi Sähköja polttomoottorin yhdistämistä kokeiltiin vielä vuonna 1911, kun Woods Motor Vehicle valmisti yhden ensimmäisistä sähkö-bensiinihybrideistä Chicagossa. Pikaisen paluun sähköauto teki 1960-luvun vaihteessa, kun Henney Coachworks sekä akkuvalmistaja National Union yhdistivät voimansa ja julkaisivat Henney Kilowatt -sähköauton. Sähköisten henkilöautojen valmistus hiipui viimeistään 1920-luvulle tultaessa ja jatkui lähinnä joissakin ammattilaissovellutuksissa ja 1950-luvulta alkaen golfkärryissä. Mutta kun polttomoottorilla toimivien henkilöautojen vuotuiset toimitusmäärät nousivat kymmeneen miljoonaan ja yli, sähköautot unohtuivat. 1950-luvulla ranskalaiset ideoivat myös Arbel-hybridiä yhdistettynä termoelektriseen ydinparistoon. Ruma tapa, josta sähköautonvalmistajat eivät ole päässeet täysin eroon vielä 2010-luvullakaan. 1900-luvun alkuun tultaessa höyry-, sähköja polttomoottorit kamppailivat saman kokoluokan markkinaosuuksilla. GM Urban Electric -konsepti (1973). Toisaalta väitetäänpä myös joidenkin valmistajien kiinnittäneen sähköautoihinsa polttomoottoriautoista tuttuja jäähdytyssäleikköjä tehdäkseen niistä ”miehisemmän” näköisiä. Idea haudattiin kuitenkin nopeasti. Vuonna 1908 jopa Henry Ford osti vaimolleen Claralle sähköauton. Ironisesti sähköauton alamäki alkoi kuitenkin toisesta sähkömoottorikeksinnöstä: polttomoottorin sähköisestä käynnistysmoottorista. Ratkaisuksi tarjottiin akkujen vaihtopalvelua ensimmäisen kerran jo vuonna 1896, kun Hartford Electric Light Company lanseerasi GeVeCoakkupalvelun. Henney Kilowatt (1960).. Vuoden 1888 saksalaisen Flocken Elektrowagenin toimintasäde oli noin 40 kilometriä – mikä ei suuremmin poikkea joidenkin saksalaisten autonvalmistajien sähkötoimintasäteestä vuonna 2016. 2 1 6 . Perimätiedon mukaan lahja oli onnistunut: Clara Ford ei suostunut luopumaan sähköautoilusta edes Model T:n ilmestyttyä. Toisen maailmansodan polttoainerajoitukset herättelivät sähköautoa hetkeksi, muun muassa sotavuonna 1941 julkaistun ranskalaisen Breguetin sähköauto lupasi 100 kilometrin toimintasäteen nopeudella 20 km/h ja 65 kilometriä 40 km/h. Sen akuilla ajettiinkin jopa 10 miljoonaa kilometriä vuosina 1910–1924. Samalla tieverkostojen kasvaminen ja bensiinin saatavuuden parantuminen sekä äänenvaimentimen keksiminen alkoivat nostaa polttomoottoria ylitse muiden. Täyssähköautossa (ei hybridi) on omat hyvät ja huonot puolensa: + Jos kotona/töissä on autolle töpseli, sähköauto on yön/päivän aikana ”tankattu” täyteen + Vääntö käytössä välittömästi; sähköauton kiihtyvyys nollasta on uskomaton + Yhden polkimen ajo: ei kytkintä, vaihteita ei tarvita, energian talteenotto jarruttaa itsestään + Lämmitys ja myös ilmastointi toimii pysäköitynäkin, ilman webastoa, ilman sähkötolppia + Auto ei tärise moottorin vuoksi, moottorin äänimaailmakin luonnostaan vain ulinaa + Ei käynnistymisvaikeuksia kylmässä, ei tyhjäkäyntiä, ajaa voi vaikka sisätiloissa + Polttomoottorin tilat vapautuvat tavaraja puskuritilaksi, akut voidaan piilottaa lattiaan +/Ei moottorin huoltoja/pidempi käyttöikä (vähän liikkuvia osia), mutta kallis akku ei ole ikuinen +/Ei paikallisia päästöjä, mutta energia on yhtä puhdasta/likaista kuin sähkön tuotanto +/Verohelpotuksia, ilmaista sähköä/pysäköintipaikkoja, mutta tämä on vain väliaikaista Toimintasäde selvästi polttomoottoria pienempi sekä sääja nopeusriippuvaisempi Kaupparatsun painajainen, nopeinkin lataus tien päällä kestää moninkertaisesti Rata-ajossa ja autobaanalla nykysähköauton nopeusetu hyytyy yleensä nopeasti ”Tankki” eli akku kuluu pysäköitynäkin hissukseen, pakkasella vähän nopeammin Jos kotona/töissä ei ole autolle töpseliä, sähköauton suurin mukavuusetu menetetään Flocken Elektrowagen (1888)
Sähköpakuja olikin jo käytetty CitiCar (1974). Tämä mielikuva eläisi pitkälle 2010-luvulle. Enfieldin toimintasäde oli 50 kilometrin luokkaa ja huipputuntinopeus kolmanneksen enemmän. Kahden valmistusvuoden aikana niitä myytiin 47 kappaletta. Näitä esiteltiin 60ja 70-luvulla ympäristölainsäädännön rohkaisemana useita, mm. Kompakti brittiläinen Enfield 8000 (1973) edusti edes vähän tavanomaisempaa tyylisuuntaa, mutta tuki sekin osaltaan käsitystä sähköhenkilöautoista pelkkinä pikkuautoina. Suurin osa jäi suunnittelupöydälle, mutta 1970-luvun öljykriisi auttoi markkinoille saakka joitakin virityksiä, kuten CitiCar (1974). Honda EV Plus (1997).. Näin myös Suomessa. Uudenkaupungin autotehtaalla valmistettiin vuosikymmenen puolivälissä koeversio sähköisestä Talbot Horizonista. 1980-luvulla merkkivalmistajien sähköautot katosivat käytännössä kokonaan, mutta kolmansien osapuolien konversiot jatkoivat elämäänsä kulisseissa. Samoihin aikoihin alkoi Nesteen ja Imatran Voiman (nyk. 37 oli lähes 100 km/h, ja sillä pystyi ajamaan noin tunnin yhdellä latauksella. Fortum) Elcat-sähköpakettiautohanke. Neliovisella Kilowattilla oli myös kunnia olla viimeisiä tavallisen näköisiä ja kokoisia sähköautoja pitkään aikaan. Vaatimattomasta valmistusmäärästä huolimatta Henney Kilowattia kutsutaan ensimmäiseksi massatuotetuksi sähköautoksi. Enfield 8000 (1973). Tulevat vuosikymmenet sysäisivät sähköauton kaksioviseksi näyttelyesineeksi, futuristiseksi ja yleensä hyvin pieneksi outoautoksi. Valmistusmäärät jäivät reiluun 100 kappaleeseen. kiilamaiset konseptiautot AMC Amitron (1967) ja GM Urban Electric (1973) sekä GM XP-883 -hybridikonsepti (1969)
Suomalainen Elcat (kuva 1999). Pääasiallinen motivaatio ovat vuosikymmeniä olleet lainsäätäjien General Motors EV1 (1996). Uskoo salaliittoteorioihin tai ei, selvää on, ettei kukaan oikein yrittänyt valmistaa ja markkinoida sähköautoa tosissaan. Ulkonäöltään ja rakenteeltaan nämä olivat usein polttomoottoriautojen muunnoksia. Tähän seurakuntaan valmistui myös General Motorsin kaksipaikkainen, sulavalinjainen EV1 (1996), joka oli ensimmäinen moderni, pelkästään sähköautoksi suunniteltu automalli. Subarusta muunnettuja Elcatin sähköpakettiautoja valmistettiin parisataa kappaletta, ja niitä on ollut esimerkiksi Suomen Postin käytössä. Säilyttääkseen asemansa houkuttelevilla Kalifornian markkinoilla autotehtaat ryhtyivät kilvan valmistamaan Kaliforniaan räätälöityjä niin sanottuja ”compliance car” -malleja. (2006). 3 38 maailmalla muun muassa maitoja postiautoina sekä ambulansseina. Sähköautoilijat Suomessa • Sähköautoilijat ry: www.facebook.com/Sahkoautoilijat • Sähköautot – Nyt! -ryhmä: sahkoautot.fi • Sähköinen Liikenne -hanke: sahkoinenliikenne.fi • Tesla Club Finland: teslaclub.fi • Toroidion Oy: toroidion.com • Vähäpäästöisen liikenteen uutispalvelu: vihreakaista.fi. 2 1 6 . GM luovutti EV1:n suhteen vuonna 2003 ja romutti lähes kaikki vuokratut autot, mikä kirvoitti Chris Painen ohjaaman ja muiden muassa Tom Hanksin tähdittämän dokumentin Who Killed the Electric Car. Vuonna 2001 Fortum myi Elcatin työntekijöilleen ja Elcat Oy on edelleen olemassa, joskin keskittyy nykyisin muun muassa huoltoja golfkärryihin sekä perinteisempään autokauppaan. Elcatin ja Finnish Electric Vehicle Technologies Oy:n yritykset lämmitellä sähköpakettiautoa uudelleen kuivuivat kasaan. Kalifornian ilmastosäädösten vuoksi julkaistiinkin useita lyhytikäisiä sähköautomuunnoksia, kuten Chrysler TE Van -tila-auto (valmistusmäärä 56 kpl), Ford Ranger EV -pickup (1997–2002) sekä Honda EV Plus (1997–1999), joka oli ensimmäinen eilyijyakkuun (NiMH-akku) perustuva sähköauto suurelta valmistajalta. Kalifornian unelmointia 1990-luvulle tultaessa rahakkaasta yksityisautoilustaan tunnettu Kalifornian osavaltio Yhdysvaltain länsirannikolla päätti puuttua tukahduttavaan ilmasto-ongelmaansa automarkkinoita sääntelemällä. Säädöksiä noudattavia erikoismalleja ei välttämättä myyty missään muualla, ja Kaliforniassakin ne olivat usein tarjolla vain leasingautoiksi. Pakokaasupäästöjen alentamisen lisäksi tavoitteeksi kirjattiin nollapäästöinen autoilu
Jopa Suomi nousi jälleen sähköautovalmistuksen näyttämölle, kun Uudessakaupungissa sopimusvalmistettiin Th!nk City -kaupunkisähköautoa (2008–2011) ja seuraavaksi Fisker Karma -urheiluhybridiä (2011–2012). Monilla valmistajilla on mallistoissaan useita sähkö-bensiinihybridejä, joissa on noin 25–50 km sähköistä toimintasädettä. Volkswagenin CityStromer-ohjelma Golf-konversioille oli lähinnä sähköyhtiöiden tarpeisiin. 2010-luvulle tultaessa lyijyja NiMHakkujen jälkeinen litiumioniakkujen kehitys alkoi kuitenkin hiljalleen ujuttaa sähköautoteknologiaa myös Euroopan otsikoihin. Sähköauton myynti vaatii uuden opettelua ja häiritsee rahakasta polttomoottorin huoltoliiketoimintaa. Suomesta Zoea ei saa, mikä on herättänyt keskustelua siitä, onko vuokra-akku ongelma autoveron kannalta – tullin mukaan ei ole. Euroopan myydyin täyssähköauto, Renault Zoe (2012), pääsee 200 km:n paremmalle puolelle. 2000-luvulle tultaessa Kalifornian ilmastoviranomaiset joutuivat lakituvassa höllentämään otettaan, ja nollapäästövallankumous viivästyi taas vuosikymmenellä. Renault Zoen hankintamalli on kekseliäs. Kroatialaisen Rimacin supernopeat ja superkalliit Concept-sähköautot ovat myös jo markkinoilla, joskin hyailahtelevat vaatimukset ja pr-temput. Auto ostetaan, mutta kallis ja kuluva akku liisataan. Eipä ihme, ettei mene kaupaksi. CitiCarin perillinen, Knud Erik Westergaardin 90-luvulla lanseeraama Kewet/Buddy on eurooppalaisista autoista menestyneimpiä, mutta kaikki on suhteellista: 20 vuodessa miniautoja myytiin 1 500 kappaletta, lähinnä Norjassa. Muillakin merkeillä sähköautot on usein vähän piilotettu, esim. Volkswagen-konserni jäi vuonna 2015 kiinni diesel-päästöhuijauksesta, mikä vauhdittaa yhtiön merkkien sähköistymistä. Täyssähköautojakin kuitenkin on, esimerkiksi Mitsubishi i-MiEV / Citroën C-Zero / Peugeot iOn (2009), Nissan LEAF (2010), BMW i3 (2013) ja Volkswagen e-Golf (2015) ylettyvät noin 100–150 km:n toimintasäteeseen, hyvänä päivänä vähän enempäänkin. Eurooppa laahaa perässä Mannereurooppalaisesta perspektiivistä modernia täyssähköautoa ei voinut tappaa, se kun ei ollut syntynytkään. Niitä alkoi ilmestyä Yhdysvaltain markkinoille Japanista, missä hybridibuumi oli käynnistynyt muutamaa vuotta aikaisemmin. Audikin on lupaillut rakentaa e-tron-urheiluauton tai pari kiinnostuneille. Näitä hybridejä nähtiin sittemmin myös Euroopassa ja Suomessa. 39 poikkeus. Ensimmäisen sukupolven hybridiautoja ei voinut ladata töpselistä, mutta voimalinjassa hyödynnettiin esimerkiksi jarruenergian talteenottoa akkuihin. Ensimmäisen pitkän matkan täyssähköauton – alkuperäisen Audi e-tronin – valmistaja hylkäsi vuonna 2013 päiviä ennen julkaisua, valmistettuaan 10 esituotantokappaletta. Ruotsissa Saabin konkurssipesä myytiin kiinalaistaustaisille sähköautosijoittajille. BMW i3:a myydään vain Helsingin jälleenmyyjällä. 90-luvulla nähtiin tsekkiläisen Škodan Favorit Eltra ja Tatra Beta, jotka eivät jättäneet jälkiä. Täyssähköautojen tilalle tulivat ensimmäiset sähkö-bensiinituotantohybridit sitten 1910-luvun. Ensimmäisenä saapui Honda Insight (1999) ja sitten suursuosioon noussut Toyota Prius (Japanin ulkopuolelle 2000). Todellinen syy onkin se tavallinen: myyntiverkoston haluttomuus. Pääroolia vuoden 2016 sähköautomarkkinoilla näyttelevät silti vasta hybridit, ja täyssähköauto on vielä Renault Zoe (2012).
Teslan jatkosuunnitelmiin kuuluu myös muun muassa sähköpickup, sähkörekka, aurinkosähkötuotteita ja itsestään ajavia autoja. Saksalainen Sono Motors -startup taas joukkorahoittaa aurinkopaneeleilla ladattavaa Sionsähköautoa. Mahindra/Reva sekä Atieva, BYD Auto, CH-Auto/Qiantu ja NextEV. Yhtiön varsinainen tähtäin on kuitenkin alemmassa hintaluokassa (noin 35 000 dollaria). Suomessakin Teslan omia latausasemia on viisi. Valmistuessaan tehtaan väitetään ylittävän koko maailman nykyisen litiumioniakkujen tuotannon. 3 40 vin rajatuilla sellaisilla. Faraday Futuren ja Karman taustakin on kiinalainen. Kaliforniassa myös Apple suunnittelee sähköautoa. Intiassa ja Kiinassa ympäristötietoisuus kasvaa väestömäärän ja elintason kohotessa, ja mailla on merkittävää omaa sähLinkkejä • Clean Technica – uutisia: cleantechnica.com • Charged EV Magazine: chargedevs.com • DIY Electric Car – rakentelijoille: diyelectriccar.com • Electrek – uutisia: electrek.co • EV Obsession – uutisia: evobsession.com • GM-Volt – foorumi: gm-volt.com • GoingElectric – foorumi (saksa): www.goingelectric.de • Inside EVs – uutisia: insideevs.com • Leaf Talk – foorumi: leaftalk.co.uk • Plugin Magazine (myös lehtipisteissä): plugin-magazine.com • SpeakEV – foorumi: speakev.com • Tesla Motors Club: teslamotorsclub.com köautokehitystä, joka on kansainvälistymässä. 2 1 6 . Tesla rakennuttaa Nevadan autiomaahan maailman suurimmaksi aiottua akkutehdasta Gigafactorya viisipaikkaisten Model 3 -volyymisähköauton ja Model Y -sähköcrossoverin tarpeisiin. Suomalainen Toroidion-konsepti (tulossa 2018).. Seurattavia nimiä ovat mm. Tesla on lisäksi Kaliforniassa kaupitellut automatisoitua akunvaihtopalvelua erään valtatien varrella, mutta tämä on ainakin toistaiseksi jäänyt kertaluontoiseksi kokeiluksi. Sja X-Teslat erottavat useimmista kilpailijoistaan molempiin saatavat seitsemän istumapaikkaa, mobiiliverkon kautta tapahtuvat ohjelmistopäivitykset, pitkät toimintasäteet (jopa 500 km) sekä oma Supercharger-pikalatausverkosto. Audi ja Mercedes-Benz lupailevat yhtä vakavasti otettavia sähköautoja noin vuodelle 2018 – samoin suomalainen supersähköauto-startup Toroidion. BMW:n seuraavaa tosiyritystä saatamme joutua odottamaan pidempään. Joka kodin sähköauto. Tesla on kilpailijoistaan poiketen laittanut alusta alkaen kaiken likoon massamarkkinoille tarkoitettujen, akkukäyttöisten täyssähköautojen puolesta. Lotus Eliseen löyhästi perustunut Tesla Roadster oli tuotannossa vuosina 2008–2012, puhtaalta pöydältä suunnitellut Tesla Model S -hatchback vuodesta 2012 ja Tesla Model X -suv vuodesta 2015 alkaen. Palkintopokaaleja on liian aikaista jakaa, mutta sadan vuoden tauon jälkeen kisa on sentään taas käynnissä. Sähköautot eivät tosin myöskään ole ainoa polttomoottorin seuraajan manttelista kamppaileva teknologia. Model 3 saikin keväällä muutamassa päivässä yli 300 000 maksullista varausta, vaikka tuotannon aloittamiseen on yli vuosi aikaa. Teslat myös myydään Teslan omistamissa myymälöissä sekä verkossa, ei autokauppiailla – Tesloja onkin myyty yli 80 000 euron hintalapusta huolimatta sähköautoksi paljon, noin 150 000 kappaletta. Sähköautoilun tulevaisuus ei silti välttämättä ole vain ilmastotietoisten kalifornialaisten, dieselin mainekriisissä rypevien saksalaisten tai Kekkosen perustaman Uudenkaupungin autotehtaan varassa. Aggressiivisin tulokas sähköautomarkkinoilla on kiistatta ollut vuonna 2003 perustettu kalifornialainen Tesla Motors, jonka varhaisena rahoittajana ja sittemmin myös johtajana toimii PayPal-miljonääri Elon Musk. Eivätkä lähemmäs sata miljoonaa vuotuista polttomoottoriautotoimitusta häviä hetkessä, saati olemassa oleva yli miljardin auton autokanta. Kaasuautot (kuten Audi A3 g-tron -hybridi) sekä vetypolttokennoautot (esimerkiksi Toyota Mirai) ovat edelleen pelissä mukana, samoin täysin vaihtoehtoiset liikkumismuodot. Opel on ensi vuonna tuomassa markkinoille Opel Ampera-e -täyssähköauton, jossa kantama kasvaa yli 300 kilometriin (perustuu tulevaan GM Chevrolet Bolt -jenkkimalliin). Muista eurooppalaisista valmistajista mm
BEV Battery Electric Vehicle, puristin valinta, akkukäyttöinen täyssähköauto (esim. HEV Hybrid Electric Vehicle, hybridi, auto jossa mm. Sähköautolähteissä vieraillessaan tarvitseekin suomi–amerikka-sanakirjaa. CAV Clean Air Vehicle, vähäpäästöinen auto (ZEVit ja muutamat poikkeukset), Kaliforniassa CAV-tarra takapuskurissa on pääsylippu HOV-kaistalle. S3XY Teslan automallit, Model 3:n oli tarkoitus olla Model E, minkä Fordin lakimiehet torppasivat (Ford aikoo julkaista Model E -sähköauton 2019). EPA Environmental Protection Agency (USA), määrittelee amerikkalaisen (sähkö)auton kantaman laskentakaavan, tiukempi standardi, antaa pienempiä lukuja kuin NEDC – EPA-virasto paljasti Volkswagenin dieselpäästöhuijauksen 2015. Supercharger Teslan oma DC-pikalatausverkosto, useimmiten paljon nopeampi kuin CCS ja CHAdeMO, toistaiseksi maksuton. NEV Neighborhood Electric Vehicle, käytännössä tarkoittaa sähkömopoautoa. Compliance car Vähäpäästöistä energianlähdettä käyttävä auto, jonka olemassaolon tarkoitus on vastata lainsäätäjän minimivaatimuksiin (puristin mielestä kaikki muut paitsi ICEt ja Teslat). PZEV Partial Zero Emissions Vehicle, kalifornialainen autoluokitus joillekin sähköhybrideille ja muille vähäpäästöisille autoille. TZEV Transitional Zero Emission Vehicle, CARBin nimitys PHEVeille ja tietyille vetyautoille. ZEV Zero Emissions Vehicle, paikallisesti päästötön auto (esim. ICE Internal Combustion Engine, polttomoottori, perinteinen polttomoottoriauto. CAFE Corporate Average Fuel Economy (USA), 70-luvun öljykriisistä alkunsa saaneita polttoaineen kulutusta vähentäviä määräyksiä (toinen, harvinaisempi merkitys on EU:n Clean Air for Europe -hanke). PHEV Plug-in Hybrid Electric Vehicle, plug-inhybridi, auto jossa lyhyen kantaman sähkömoottori pistokelatauksella sekä polttomoottori joko rinnakkain tai sarjassa (esim. Chevrolet Volt). CCS Combined Charging Plug, tuttavallisemmin frankenplug, eurooppalaislähtöinen AC/ DC-pikalatausliitin (Type 2 -liitin lisättynä DCliittimellä), matkalla maailman ykkösstandardiksi. Jotta et tulisi sähköautoyhteisöissä liian pahasti liekitetyksi, sanaston opettelun lisäksi kannattaa tiedostaa, että rapakon takana kaikki muut paitsi puhdasoppiset valinnat (BEV, ZEV ja TSLA) katsotaan yleensä kuolemansynnin veroiseksi pahuudeksi ja autotehtaiden salaliitoksi. Conversion Konversio, sähköautomuunnos,. myynnistä. TSLA Teslan osaketunnus, monet sähköautofanaatikot ovat sijoittaneet Tesla-yhtiöön pörssissä ja käyttäytyvät sen mukaisesti. Type 2/Level 2 Eurooppalainen/amerikkalainen versio AC-pikalatausliittimestä, Tesla käyttää lisäksi tämän variaatiota Eurooppaautojensa AC/DC-liittimenä. ZEV credits Autojen päästökauppaa, yhdysvaltalaisten lakien täyttämiseen vaadittavia päästövapauspisteitä, joita autonvalmistajat saavat ZEVien, TZEVien, PZEVien yms. ICEd ”ICEtetty”, polttomoottoriauto pysäköitynä sähköauton latauspaikalle. REEV, Range extender Range Extender Electric Vehicle, sarja-PHEV jossa pieni polttomoottori tarvittaessa lataa akkuja mutta ei aja pyöriä (esim. Tesla Model S). 41 Sanastoa Länsimaista sähköautoilu on suosituinta Yhdysvalloissa – etenkin Kaliforniassa – ja siellä on muuta maailmaa pidempi ja yhtenäisempi sähköautoiluhistoria, joten sikäläinen sähköautoyhteisö ja sille tavattoman rakas lyhenneviidakko hallitsee ainakin toistaiseksi sähköautokeskustelua. alkuperäinen Toyota Prius). Tesla Model S, Model X ja Supercharger (kuva 2015). Eurooppalaiset sähköautoyhteisöt ovat hieman avarakatseisempia. AC/DC Sähköautoja voi perusja pikaladata vaihtovirralla (AC), mutta kaikkein nopeimmat pikalaturit käyttävät tasavirtaa (DC). HOV High-occupancy Vehicle Lane, USA:ssa kimppakyytiläisten kaista, jolla joissain osavaltioissa vähäpäästöiset autot saavat etuoikeutenaan ajaa aina. BMW i8). CARB California Air Resources Board, merkittävä toimija sähköautoilun säädösten määrittelyssä. NEDC New European Driving Cycle (EU), eurooppalainen (sähkö)autokulutuksen laskentakaava, löysempi standardi, antaa suurempia kantamalukuja kuin EPA. täyssähköauto), samanniminen ilmastosääntelyohjelma sähköautoille monissa USA:n osavaltioissa. CHAdeMO CHArge de MOve, ”O cha demo ikaga desuka” = ”Miten olisi teepaussi?”, japanilaislähtöinen DC-pikalatausliitin, toistaiseksi maailmanlaajuinen de facto -standardi. polttomoottoriauto jonka moottori ja voimalinja on korvattu sähkömoottorilla ja akuilla, ei optimaalinen sähköauto. BEVx Battery Electric Vehicle range eXtended, CARBin nimitys REEVeille. BMW i3 REX). EREV Extended Range Electric Vehicle, puristien vihaama, poistuva markkinointitermi joillekin PHEVeille (esim. jarruenergiasta latautuva sähkömoottori sekä polttomoottori, ei pistokelatausta (esim
Robottien vaihtuvuus ei ole kovin korkeaa. – Kun alat tekemään 150-grammaista robottia, jo akku vie 50 grammaa, Bertling antaa esimerkin. Noin viisitoista vuotta sitten minulla itsellänikin oli joku RC-auton päälle rakennettu robotti, johon heitettiin vain panssarisuojaus päälle. Tämä on vasta toinen kerta, kun näen tätä livenä, 16-vuotias Eero Pajunen intoilee. – Tämä on hieno laji seurata. Välillä roboteista irtoilee osia ja sinkoaa ehkä kipinöitäkin. Silloin pystyy paremmin liikkumaan, Bertling kertoo. Laji levisi ympäri maailman kuitenkin vasta Iso-Britannian yleisradioyhtiö BBC:n tuottaman Robot Wars -sarjan myötä. Uusiakin laitteita tulee, mutta finaaliin päästäkseen niiden pitäisi ensin voittaa ne vanhat, jotka tulevat uudestaan paikalle joka vuosi, Bertling kertoo. Kaikki robotit ovat nykyään ohjaajiensa itse rakentamia, ja laji vaatii melko monipuolista osaamista. Suomessa aktiivisia kilpailuluokkia on nykyään kolme. – Tässä on ollut viimeiset kolme vuotta vähän hiljaisempaa, mutta tänä vuonna tuli ihan uusia tiimejä ja uusia laitteita hirveät määrät. Jotkut reagoivat takarivissä ehkä vain sen vuoksi, että kuulevat kolinan. Rima aloittamiseen on korkeammalla kuin vaikka RC-lentokoneissa, joista on saatavilla kaikki osat sisältävä aloittelijan pakkaus, sanoo Eemu Bertling, Robosota ry:n puheenjohtaja ja yksi kilpailujen järjestäjistä. Yksi robotin rakentelun haasteista onkin pysyminen asetetussa painoluokassa. Robosodassa on ideana saada itse rakennetulla, pyörillä liikkuvalla robotilla vastustajan robotti toimintakyvyttömäksi tai kiilattua pois kilpailuareenalta. Teksti: Sakari Lönn Pääkuva: Juha Immonen / Assembly Organizing Eero Pajusen kuva: Sakari Lönn Kulttuuri. Robotit rakennetaan alusta loppuun itse. – Yhtään auton päälle rakennettua robottia ei enää taida olla mukana. 3 42 P ari metallista pyörillä varustettua radio-ohjattua laitetta kimpoilee pleksiseinäisen kilpailuareenan seiniin törmättyään toisiinsa. KarRobosota on paljon muutakin kuin sotaa Toisiinsa törmäileviä radio-ohjattavia robotteja, kolinaa, kipinöitä ja lenteleviä osia – mistä siinä on oikein pohjimmiltaan kysymys. Nykyään vakioratkaisuna on tankkityyppinen ohjaus, koska pitää pystyä kääntymään paikallaan. Suomenkin televisiossa nähdyssä sarjassa satakiloiset robotit taistelivat toisiaan vastaan. Hän on itse osallistunut ensimmäiseen robosotakilpailuunsa Assembly Summer ’16 -tapahtumassa ja voittanut EE-robot-nimisellä laitteellaan 450-grammaisten sarjan. Varsinkin painavimman sarjan kuusikiloiset laitteet ovat tosi näyttäviä, kun koko areena heiluu, kun ne törmäävät toisiinsa. Pienimmässä laitteen maksimipaino saa olla 150 grammaa, keskimmäisessä 450 grammaa ja suurimmassa kuusi kiloa. – Periaatteessa kaikki osat ovat jotain RC-kaupan osia, mutta mitään valmista rakennussarjaa ei ole olemassa. Ympärillä yleisö hurraa suosikilleen. 2 1 6 . Varsinkin USA:ssa ja Isossa-Britanniassa robosodalla on paljon harrastajia, mutta Suomessa se on ainakin toistaiseksi melko pienen joukon juttu. Siinä on sellainen ongelma, että auto, jossa on vain kääntyvät etupyörät, ei mahdu kääntymään suljetulla areenalla kunnolla. Meillä oli vähän ongelmia jopa tuossa karsinnassa, koska se vei niin hirveästi aikaa. Suomen ensimmäinen robosotakilpailu käytiin vuonna 1996 vuosittain järjestettävässä Model Expo -pienoismallitapahtumassa. – Esimerkiksi kuuden kilon finaalissa oli samat laitteet, jotka olivat viime ja toissa vuonnakin mukana. Juuret USA:ssa ja Isossa-Britanniassa Robosodan juuret ovat USA:ssa, jossa ensimmäiset kilpailut käytiin jo 1980-luvun puolella. Kolmea kokoluokkaa Kun robosotaharrastus alkoi Suomessa 1990-luvulla, robottien pohjana oli usein radio-ohjattava auto. Ainoastaan radio-ohjaimet vastaanottimineen voi ostaa täysin valmiina paketteina
Perhe on ollut siis vahvana taustavaikuttajana tämänkin osaajan tarinassa, ja koko Pajusen perhe oli Assemblyillä mukana. Oma yhdistys taustalla Robosotakilpailuja ei ehkä olisi enää Suomessa ilman taustalla vaikuttavaa yhdistystä. Sitten robotit unohtuivat muutamaksi vuodeksi. Sain sitten rippilahjaksi viilapenkin. En kuitenkaan kilpaillut ketään vastaan. Se perustettiin vuonna 2004. Ei se mikään tuhoutumaton ole, mutta kyllä se pysäyttää sen laitteen, Bertling kertoo taustasta. Porukka oli joko hitsaamassa tai laittoi rahaa tilille. – Silloin kun minä tulin mukaan kuvioihin, ei ollut mitään suojaseiniä, eikä oikein mitään muutakaan. – Sanoisin, että robosota on ollut Assemblyillä viitisentoista vuotta. Osa on muiden tapahtumien yhteydessä ja osa sitten Robosota ry:n itse keskuudessaan järjestämiä. Lisäksi rakensin runkoosan niin, että se on panssaria. Ei se kestänyt kauhean kovaa, hän kertoo. – Vähän vanhempana löysin sitten nämä pienemmät robot. Vuosi sitten kesällä asia tuli uudelleen mieleen. Suomessa mennään ”omilla säännöillä” Suomessa lajin harrastajilla on hieman kansainvälisistä säännöistä poikkeavat säännöt. Suojaseininä on 44 mm:n polykarbonaattilevyä. Suurimmassa tiimissä taisi olla tänä vuonna viisi henkeä varikolla yhden laitteen kimpussa, Bertling naurahtaa. – Innostus robosotiin lähti siitä, että ollessani ehkä 5-vuotias vanhemmat ostivat jostain Robot Wars -DVD:n, jossa oli ensimmäinen tuotantokausi BBC:llä pyörineestä sarjasta. 16-vuotias Eero Pajunen vei voiton 450 gramman sarjassa EE-robotillaan.. 43 Ensikertalaisena voittoon Miten on mahdollista voittaa robosotakilpailu ensimmäisellä osallistumiskerrallaan ja vain 16-vuotiaana. Tulevaisuudessa Pajusen tavoitteena on rakentaa robotti myös muihin sarjoihin. Perustettiin sitten yhdistys, Robosota ry, ja kerättiin lähinnä toisiltamme rahaa ja rakennettiin talkootyönä tuollainen areena. Pienempänä rakentelin muovailuvahasta kaikkea, ja sitten se on levinnyt metalleihin ja muihin materiaaleihin. – Tajusin, että nyt minä varmaan osaan tehdä sellaisen. Purin robotin ja kokeilin, että kuinka kovan iskun se kestää. Sitten olemme olleet Model Expossa. Siitä lopputuloksena oli tämä EE-robot, hän kertoo. Alumiinia olen työstänyt viilaamalla. Nykyisellään robosotakilpailuja järjestetään Suomessa noin viisi kertaa vuodessa. Sillä pystyi rakentamaan noita robotteja paremmin, eikä tarvinnut enää viettää kaikkia iltoja koululla. sintoihin taisi mennä tunti enemmän kuin mitä olimme ajatelleet, Bertling kertoo Assembly’16:n robosotaturnauksesta. – Lähdin sitten suunnittelemaan miten saisin parannettua ensimmäistä robottia. Olemme olleet myös muissa tietokonetapahtumissa, kuten Insomniassa. Aluksi Suomessa kilpailtiin 5 ja 15 kilon sarjoissa. Painoluokat ovat vähentyneet ja niitä on yhdenmukaistettu kansainvälisten painoluokkien kanssa. Vähän noita servojen modaamisohjeita katsoin netistä, että miten se tehdään, Pajunen kertoo taustastaan. Suomessa parikilpailun voittoon vaaditaan aina kolme voittoa, eli kilpailut käydään paras viidestä -systeemillä. Laitetaan teippiä vain robottiin ja takaisin kentälle. Model Expossa on tosin se ongelma, että tämä on vain yksipäiväinen juttu ja he haluaisivat meidät sinne koko viikonlopuksi, Bertling avaa. Sillä se saatiin kasaan. Assembly’16:n yhteydessä järjestetyn 450-grammaisten sarjan voittanut Eero Pajunen kertoo. Sääntöjä on muokattu lajin viihdyttävyyden vuoksi. Nyt suurin sarja on kuusikiloinen, ja kilpailuareena on sen verran pieni, ettei sinne mitään 13-kiloisia enää laitetakaan, Bertling sanoo. Koska tämä laite voitti sarjansa, siinä ei ole suoranaisesti hirveästi kehittämistä muuten, kuin että se on hidas. Meillä on säännöissä myös, että 30 sekuntia saa korjata laitetta, jos se menee rikki kesken kilpailun. Olin ehkä 10–12-vuotias ja ajattelin, että haluaisin rakentaa sellaisen. Totesin sitten aika pian joulun jälkeen, että se on aika huono. Sivusuojat ovat vähän huonot. Myöhemmin 15 kilon sarjasta tehtiin 13,6 kilon sarja ja 5 kilon sarjasta 6 kilon sarja. – Rakennan todennäköisesti kaikkiin sarjoihin laitteen. Se on ihan viihdyttävääkin. Nyt siinä on turvallista järjestää kilpailuja. – USA:ssa kilpailut ovat aina yhdestä voitosta poikki ja se on pikkuisen tylsää. Pitää ostaa nopeampi sarjamoottori, niin se toimii paremmin, hän suunnittelee. Ne taipuivat ensimmäisessä ottelussa pyörivää väkkärää vastaan ihan sisään ja yksi servo hajosi. – Olen tykännyt aina kaikesta väsäämisestä. – Suurimpaan painoluokkaan ei tullut riittävästi laitteita, joten se jätettiin pois. Minä olen hitsannut sen. Sen jälkeen olikin aika rakentaa voittajarobo. Tein ensimmäisen robotin vuosi sitten kesällä. Jonkin aikaa sitä yritin, muttei minulla ollut oikein taitoa siihen. Mietin, että tarvitsen isommat renkaat, että robotti kulkisi nopeammin ja siinä oleva ramppi olisi loivempi. Meidän kolmen pisteen kilpailu on ihan meidän oma. Yritin tuohon ihan pienimpään luokkaan ja keskimmäiseen rakentaa robottia, ja sitten taas asia unohtui pariksi vuodeksi. Sen jälkeen sitä sarjaa tuli SubTV:ltä ja katsoin sitä sieltä paljon, Pajunen avaa. Pienimmät 150 gramman ja 450 gramman sarjat ovat tulleet myöhemmin ohjelmaan
Artikkelissa tutustumme ensin Jetpack Manager -kehitystyökaluun ja käymme sitten läpi lisäosan rakenteen sekä selaimen tarjoamia rajapintoja. Liitännäiset ovat binäärikoodia, jotka kytketään selaimeen tietyn rajapinnan kautta. Oletuksena on, että webteknologiat – vähintään HTML ja Javascript – ovat lukijalle ennestään kohtuullisen tuttuja. Sen avulla voi alustaa lisäosaprojektin, ajaa sille automaattiset testit, testata sitä selaimessa ja lopulta allekirjoittaa lisäosan digitaalisesti. Tavoitteena on päästä sen verran vauhtiin, että lukija kykenee jatkamaan omin avuin rajapintadokumentaation kanssa. Tämän jälkeen asennus tapahtuu seuraavalla käskyllä: npm install jpm --global Ainakin Debian-pohjaisissa Linuxjakeluissa täytyy nimeämiskäytäntöjen Koodi Tuunaa Tulikettua Puuttuuko selaimestasi välttämätön ominaisuus. Ne ovat olleet mukana Firefoxissa versiosta 38 alkaen, ja niitä kutsutaan Firefoxin yhteydessä nimellä SDK Add-on. 2 1 6 . Tekisikö mieli vaihtaa Comic Sans -fontti automaattisesti toiseksi. Nämä muistuttavat rakenteeltaan paljolti nykyistä tekniikkaa, mutta ovat vielä kokeiluasteella artikkelin kirjoitushetkellä. Mutta ehkä selaimesta silti puuttuu juuri se ominaisuus, jota itse kaipaa. 3 44 N ykyajan verkkoselaimet ovat monipuolisia sovellusalustoja, joita voi laajentaa ja muokata mieleisekseen. Tavallisin liitännäinen lienee Adoben Flash. Nykyisin liitännäisiä pyritään välttämään uusissa sovelluksissa, koska erilaisia alustoja on paljon eivätkä samat binäärit sovi eri alustoille. Tässä artikkelissa ovat pääosassa jälkimmäisellä tekniikalla toteutetut lisäosat. Firefoxin lisäosilla viritetään nettiselain oman maun mukaiseksi. Toisaalta niitä voisi kutsua myös jpm-työkalua hyödyntäviksi lisäosiksi. Työkalu perustuu Node.js:ään, joten asentamista varten on ladattava Node.js:n pakettienhallintaohjelma npm. Valmiita lisäosia on runsaasti saatavilla, ja niiden käyttötarkoitukset vaihtelevat yksinkertaisista ulkoasun muutoksista monipuolisiin ominaisuuslaajennoksiin. Kehitysympäristö ja -työkalut Jetpack Manager eli lyhyesti jpm on Mozillan tarjoama komentorivipohjainen kehitystyökalu lisäosien tekemiseen. Laajennosten lajityypit Selaimiin asennettavia lisäpalikoita on kahta päätyyppiä: liitännäinen (plugin) ja lisäosa (extension, add-on). Tämän artikkelin eväillä pääsee alkuun omien Firefox-lisäosien virittelyssä. Monissa selaimissa luonnollinen valinta on ollut webin kielet HTML, CSS ja Javascript, koska niitä selain osaa tulkita joka tapauksessa. Lisäosat puolestaan toteutetaan jollakin tulkattavalla kielellä, jota selain ymmärtää. Teksti: Asser Lähdemäki Kuvat: Mitol Meerna. Firefoxiin on myös tulossa Web Extensions -nimellä kulkeva lisäosajärjestelmä, jonka on tarkoitus olla yhteensopiva myös Chromeja Operaselainten lisäosien kanssa
Kun halutaan luoda lisäosasta jakelupaketti muita käyttäjiä varten, käytetään komentoa ”jpm xpi”. Käsittelemme seuraavaksi paketin sisältöä. Näin syntynyt lisäosa on toimiva, vaikkei se teekään mitään. Komento on vuorovaikutteinen, ja se kyselee lisäosan perustietoja, kuten näytettävän nimen, pakettinimen ja tekijän nimen. Hyväksyttyäsi varoituksen voit hakea asetuksen sivun yläreunaan ilmestyvän hakukentän avulla. Edellä mainittuja muutoksia varten kannattanee luoda Firefoxiin erillinen kehittäjäprofiili, jotta asetukset eivät vaikuta normaaliin käyttäjäprofiiliin. Muutoksia havaittuaan se asentaa lisäosan automaattisesti uudelleen. Lisäosien konsoliviestit tulevat näkyviin selaintason loki-ikkunaan, jonka saa oletuksena auki näppäinyhdistelmällä ctrl+shift+j. Linkki Firefoxin profiilien käyttöohjeeseen on tämän artikkelin linkkilistassa. Firefox tukee myös muita lokitasoja. Niistä saa tarkempaa tietoa esimerkiksi tämän artikkelin linkkilaatikon kautta. Toiminnallisuus koodataan ensimmäiseen, ja jälkimmäiseen kerrotaan lisäosan tietoja, kuten pääkooditiedosto, tekijä, versionumero ja lisäosan kuvaus. Kaikki komennot ajetaan projektin juurihakemistossa. Paketti kootaan metatiedot sisältävän JSON-tiedoston perusteella. Komennolla ”jpm init” alustetaan uusi lisäosa. Asetukseen pääsee käsiksi syöttämällä osoiteriville ”about:config” ja painamalla enteriä. Tämän jälkeen selain varoittaa asetusten varomattomasta muuttamisesta. Jpm-työkalun käyttö Jpm:n kaikkia hienouksia ei tässä tekstissä esitellä, vaan tulemme toimeen peruskomennoilla init, run, post, watchpost ja xpi. Ne mahdollistavat lisäsosan lataamisen suoraan jo avoinna olevaan Firefoxistuntoon. Jpm-kehitystyökalun lisäksi Mozilla ei sen kummoisempaa ympäristöä tarjoa. 45 vuoksi asentaa jakelun pakettienhallinnasta myös paketti ”nodejs-legacy”, koska npm ja jpm olettavat Node.js -tulkin löytyvän tiedostojärjestelmästä nimellä ”node”. Suorittamalla komento ”jpm run” avautuu Firefox uuteen prosessiin, johon lisäosa on asennettuna. Komento ”jpm watchpost” toimii muuten samalla tavalla, mutta se seuraa tiedostojen päivittymistä. Varsinkin allekirjoitusvaatimuksen poisto voi olla riski normaalissa selainkäytössä. Lisäosaprojektin rakenne Lisäosa koostuu yksinkertaisimmillaan yhdestä Javascriptja yhdestä JSON-tiedostosta. Silloin rakennetaan lisäosasta paketti, johon sisällytetään projektin tiedostot, kuvaus ja muut tiedot. Automaattista asennusta varten on selaimen asetuksista muutettava muuttujan ”xpinstall.signatures.required” arvoksi ”false”, mikä tarkoittaa, että lisäosan digitaalisia allekirjoituksia ei tarkisteta. Näiden komentojen käyttöä varten on kuitenkin tehtävä esivalmisteluja. Jos tavallisen tekstieditorin ominaisuudet eivät tunnu riittäviltä ja kaipaa vaikkapa automaattista koodin täydennystä, websovelluskehitykseen tarkoitetut ympäristöt soveltuvat myös lisäosien kehitykseen. Ensiksi Firefoxiin on asennettava Extension Auto-Installer -lisäosa. Samalla kerralla kannattaa lisätä myös virheiden etsintää helpottava asetus ”extensions.sdk.console.logLevel”. Avuksi otetaan komennot ”post” ja ”watchpost”. Näitä käytetään projektin tiedot ja riippuvuudet sisältävän package.json-tiedoston täyttämiseen. Kun yllä kerrotut valmistelut on tehty, voi oman lisäosan lähettää avoimelle selaimelle asennettavaksi projektin juuresta komennolla jpm post --post-url http://localhost:8888/ Oletusasetuksilla Extension Autoinstaller kuuntelee yllä olevassa komennossa annettua osoitetta. Firefox-binäärin sijainnin voi joutua kertomaan valitsimella -b, esimerkiksi: jpm run -b /usr/bin/firefox ”jpm run” -komento näyttää console.log()-lokiviestit siinä terminaalissa, jossa se on ajettu. Komennon huono puoli on se, että Firefox käynnistetään joka kerta uudestaan. Esimerkiksi kuvakkeet, kuvat, käyttöliittymän HTML-tiedostot ja websivuja muokkaavat koodit menevät tänne.. Nimensä mukaisesti tämä lisäosa osaa asentaa automaattisesti lisäosapaketin, joka lähetetään HTTP:llä sen kuuntelemaan porttiin. Sen tyypiksi asetetaan merkkijono eli ”string” ja arvoksi ”info”. Näiden lisäksi projektissa voi olla data-kansio, johon laitetaan kaikki lisäosan mukana paketoitava materiaali
Lisäksi lisäosan voi kytkeä automaattisesti laskemaan sanan ”Skrolli” esiintymismäärä skrolli.fi -sivuston millä tahansa sivulla, sivunlatauksen yhteydessä. Koodi jaetaan eri tiedostoihin CommonJS:n moduulimääritelmän mukaisesti. Jos niin ei tehtäisi, voisi vihamielinen sivusto onnistua kaappaamaan selaimen tai jopa koko tietokoneen. Siinä nivotaan yhteen koko lisäosan toiminnallisuus ja alustetaan käyttöliittymässä näkyvät elementit. Jälkimmäinen on lisäosan koodia, joka ei voi suoraan käsitellä nettisivuilla olevia asioita mutta pystyy kutsumaan selaimen rikkaampia rajapintoja. Aivan ensimmäiseksi ladataan selaimen tarjoamia moduuleja, jotta saadaan niiden rajapinnat käyttöön. Näistä ensimmäinen tarkoittaa koodia, joka kytkeytyy selaimen ikkunassa näkyvään nettisivuun. Esimerkissä käytetään neljää vakiona toimitettavaa moduulia: page-mod, ui, tabs ja panels. 3 46 Pääkooditiedostossa alustetaan kaikki tarvittava lisäosan toimintaa varten. 2 1 6 . Tätä käsittelemme myöhemmin lisää, kun törmäämme siihen esimerkkiohjelman koodissa. Päätiedosto index.js.. Nämä rikkaammat rajapinnat tarjoavat esimerkiksi tiedostojärjestelmään tai selaimen ikkunoihin ja välilehtiin liittyviä toimintoja. Mikäli koodia on paljon tai tarvitaan erillisiä ohjelmakirjastoja, voi projektin juureen tehdä lib-kansion, joka myös paketoidaan lisäosan mukaan. Lisäosan rakenne hahmottuu käymällä läpi esimerkkikoodin päätiedosto ”index.js” (listaus 1). Tämän vuoksi näiden kahden koodityypin välillä kommunikoidaan käyttäen yksinkertaista viestienvaihtorajapintaa. Lisäosan koodi jakautuu kahteen erityyppiseen koodiin: sisältöskripteihin ja varsinaiseen lisäosakoodiin. Sisältöskriptien ja lisäosakoodin erottaminen on tehty turvallisuussyistä. Moduuli page-mod tarjoaa rajapinnan sivujen muuttamiseen automaattisesti sekä ennen var pageMod = require("sdk/page-mod"); var ui = require("sdk/ui"); var tabs = require("sdk/tabs"); var panels = require("sdk/panel"); var menuButton = ui.ToggleButton( { id: "menutoggle", label: "Show counting menu", icon: { "16":"./s-icon.png", "32":"./s-icon.png", "64":"./s-icon.png" }, onChange: handleChange }); function handleChange(state) { if (state.checked) { countingMenu.show({ position: menuButton }); } } var countingMenu = panels.Panel({ contentURL: "./content_html/countingMenu.html", contentScriptFile: "./content_scripts/countingMenu.js", onHide: handleHide }); function handleHide(){ menuButton.state('window', {checked: false}); } countingMenu.port.on('count-requested', function(keyword){ var countWorker = tabs.activeTab.attach({ contentScriptFile: "./content_scripts/countall.js" }); countWorker.port.emit('count-words', keyword); }); var skrolliPageMod = null; countingMenu.port.on('pagemod-enabled-changed', function(enabled){ if(enabled) { skrolliPageMod = pageMod.PageMod({ include: '*.skrolli.fi', contentScriptFile: './content_scripts/countall.js', onAttach: function(worker){ worker.port.emit('count-words', '[Ss]krolli'); } }); } else { skrolliPageMod.destroy(); } }); Listaus 1. Lisäosaohjelma luo työkalupalkkiin painikkeen, josta voi avata hakusanakentän ja laskentanapin. Koodin kimppuun Esimerkkiprojektinamme on yksinkertainen lisäosa, joka laskee avoinna olevalta nettisivulta sanoja
Käsittelijän määrittely on listauksessa 1 paneelin luomisen jälkeen. Käyttöliittymän suunnittelun näkökulmasta paneelit eivät ole pysyviä elementtejä. Esimerkissä tätä ominaisuutta tosin ei käytetä muuhun kuin napin tilan nollaamiseen, kun sanahaun käyttöliittymä suljetaan. Paneelia luotaessa annetaan polut hakukäyttöliittymään ja sen toiminnallisuuteen eli sisältöskriptiin. Eli muutoksen halutaan koskevan aktiivista ikkunaa, ja painike ainoastaan nollataan tilaan ”ei-painettu”. Käyttöliittymän kuvaus ja sisältöskripti ovat listauksissa 3 ja 4. Esimerkissä listauksen 1 keskivaiheilla paneelin sisältöskriptiin liittyvä worker tallennetaan countingMenu-muuttujaan. Näiden moduulien käyttöä tarkastellaan seuraavaksi. Yleensä kun luotava olio käyttää sisältöskriptejä, sen rakentaja palauttaa luodun olion sisältöskripteihin liittyvän worker-olion. Poluissa ”./” viittaa projektikansion data-kansioon. Lisäksi annetaan handleHide-funktio käsittelijäksi ikkunan piilotukselle. Painike nimetään menuButtoniksi ja luodaan antamalla sille tunniste, kuvaus ja kuvake. Sen ainoa toiminnallisuus on avata hakukäyttöliittymän paneeli. Ne siis soveltuvat lisäosan käyttöliittymän hetkellisesti näkyville osille, kuten asetuksille ja valikoille. Viestintä sisältöja lisäosakoodin välillä Lisäosakoodi ja luodun paneelin sisältökoodi eivät voi kutsua toisiaan suoraan, vaan viestintä tapahtuu port-rajapinnan kautta. Esimerkissä kyseistä metodia kutsutaan parametrein ’window’ ja {checked: false}. Painikkeelle annetaan myös painalluksen käsittelijäfunktio, handleChange. fi</ input> </ li> < li> < input type="button" id="countButton" value="Count"/> < input id="keyword" type="text" /> </ li> </ ul> </ body> </ html> Listaus 2. Sisältöskripteistä tähän rajapintaan pääsee käsiksi skriptin kontekstissa globaalin self-olion kautta. Siinä vaihdetaan menuButton-painikkeen tila, jotta sitä voisi sulkemisen jälkeen taas painaa. Ensimmäinen parametri kertoo, missä kontekstissa tilaa muutetaan, ja jälkimmäinen on olio, joka sisältää päivitettävät kentät. Jälkimmäinen puolestaan < html> < head> <style type="text/css" media="all"> ul { list-style-type: none; } </style> </ head> < body> < ul> < li> < input type="checkbox" id="enable">Enable pageMod for *.skrolli. Mikäli halutaan lisätä useita tiedostoja, annetaan lista polkuja. Ne tuodaan näkyviin vain tarpeen mukaan ja piilotetaan heti, kun käyttäjä klikkaa paneelin ulkopuolelle. Viestirajapintaan kuuluu vain kourallinen funktioita, joista eniten tarvittavia ovat on(eventName, handler) ja emit(eventName, data). Lisäosakoodin puolella vastaavasti rajapinta löytyy worker-oliosta. Painike ilmestyy lisäosan käyttöönoton yhteydessä automaattisesti työkalupalkkiin, josta käyttäjä voi sen siirtää haluamaansa paikkaan. Erilaisia kontekstivaihtoehtoja on muitakin, ja ne muodostavat lopulta melko monimutkaisen kokonaisuuden. Käyttöliittymän kuvaus (countingMenu.html).. Tilanvaihto onnistuu painikkeen metodilla state(target, updatedState). 47 että jälkeen sivun latauksen. Sen klikkaaminen avaa hakukäyttöliittymän, jonka luominen onnistuu ui-moduulin avulla. Näistä ensimmäisellä liitetään käsittelijä jollekin tapahtumalle eli viestin vastaanottamiselle. Funktio sijaitsee listauksessa 1 heti painikkeen luomisen jälkeen. Kuvakkeita voi antaa erikokoisia, ja kuvaketta on mahdollista muokata erilaisten tilojen mukaan, kuten aktiivisen välilehden tai ikkunan mukaan. Aloitetaan listauksen 1 alusta, missä moduulien tuonnin jälkeen luodaan työkalupalkkiin pysyvä painike. Kyseinen paneeli alustetaan seuraavaksi. Selaimen käyttöliittymään lisätään painikkeita ja sivupalkkeja ui-moduulin rajapintojen kautta. Välilehtiin päästään käsiksi tabs-moduulilla. Esimerkissä on käytetty sen tarjoamaa kaksitilaista painiketta, ToggleButtonia. Moduulia panels puolestaan käytetään luomaan väliaikaisia sisältöikkunoita
Hakukäyttöliittymässä olevan valintaruudun klikkaaminen lähettää lisäosakoodille ”pagemode-enabledchanged”-tapahtuman ja sen mukana valintaruudun tilan. Esimerkkilisäosassa luodaan PageMod-olio ainoastaan pyydettäessä, listauksen 1 loppupuolen koodin mukaisesti. 3 48 lähettää viestin sekä mitä tahansa tietoja sisältävän Javascript-muuttujan. Se tapahtuu jo aiemmin mainitun page-mod-moduulin tarjoaman PageMod-luokan avulla. Nappia klikattaessa lähetetään tapahtuma ”countrequested” ja hakusana. Liittämisen ansiosta sivun HTMLpuu ja Javascript-muuttujat ovat laskentakoodin käytettävissä. Listauksen 1 puolivälin jälkeen laitetaan countingMenu kuuntelemaan tapahtumaa ”count-requested”. Se on laitettu kuuntelemaan kyseistä tapahtumaa listauksen 4 lopussa. Lisätietoa netissä • Perusmoduulien rajapintojen ohjeet. Sivujen muuttaminen automaattisesti Nyt kun perustoiminnallisuus on olemassa, katsotaan, miten sivujen muokkaus automatisoidaan. Edellä mainittujen funktioiden lisäksi joskus myös funktio once(eventName, handler) on hyödyllinen. Siinä avoinna olevan web-sivun kontekstiin liitetään sanojen laskentakoodi, countall.js, joka on esitelty listauksessa 4. Se reagoi tapahtumaan vain kerran, ja sitten se lopettaa viestien kuuntelun. Tapahtumat tunnistetaan ohjelmoijan vapaasti päättämällä merkkijonolla. Tämä muuttuja annetaan parametrina vastaanottavalle käsittelijäfunktiolle. mozilla.org/en-US/Add-ons/SDK/Guides/Module_structure_of_the_SDK • Profiilien hallinnan käynnistäminen ja käyttö kehittäjäprofiilin luontia varten: https://support.mozilla.org/en-US/kb/profile-manager-create-and-remove-firefoxprofiles#w_starting-the-profile-manager • Firefoxissa tarjolla olevat lokitasot ja niiden käyttöönotto: https://developer.mozilla.org/en-US/Add-ons/SDK/Tools/console#Logging_Levels • Asetuksen lisääminen about:config-asetuksissa: kb.mozillazine.org/About:config#Adding_modifying_and_resetting_preferences • Kolmansien osapuolten kirjoittamia moduuleja: https://github.com/mozilla/addon-sdk/wiki/Community-developed-modules. Tämän tapahtuman syntyminen on määritelty listauksen 3 lopussa, missä tehdään käyttöliittymän countButton-napin klikkauksen käsittelijä. Käyttöliittymän toiminnallisuus (countingMenu.js). Liittäminen myös palauttaa worker-olion, jonka kautta laskentakoodin kanssa viestitään. Ainoastaan näitä on hyödynnetty esimerkkikoodissa: https://developer.mozilla.org/en-US/Add-ons/SDK/High-Level_APIs • Loput, harvemmin tarvittavien ja vähemmän vakaiden moduulien rajapinnat: https://developer.mozilla.org/en-US/Add-ons/SDK/Low-Level_APIs • Yksinkertaisia ohjeita lisäosarajapintojen käyttöön: https://developer.mozilla.org/en-US/Add-ons/SDK/Tutorials • Lisätietoa lisäosakoodin modularisoinnista CommonJS:n mukaisesti: https://developer. Heti liittämisen jälkeen worker-olion emit-metodia kutsumalla lähetetään tapahtuma ”count-words” ja hakusana eteenpäin laskentakoodille. Tapahtuma ”count-requested” vastaanotetaan countingMenuun tallennetun worker-olion kautta. Kun tapahtuma vastaanotetaan, skripti laskee hakusanan esiintymiskerrat ja näyttää tuloksen käyttäjälle. var wordToCount = document.getElementById("keyword"); var pageModCheckbox = document.getElementById("enable"); var countButton = document.getElementById("countButton"); countButton.disabled = true; pageModCheckbox.addEventListener('change', function(){ self.port.emit('pagemod-enabled-changed', pageModCheckbox.checked); }); wordToCount.addEventListener('input', function(){ countButton.disabled = (wordToCount.value.length <= 0); }); countButton.addEventListener('click', function(){ self.port.emit('count-requested', wordToCount.value); }); Listaus 3. Vastaanottava koodi pyytää tabs-moduulin avulla aktiivisen välilehden. 2 1 6
PageMod-olion luonnin yhteydessä listauksessa 1 asetetaan automaattisesti liitettäväksi jo käytetty countall. Käytettävä sisältöskripti (countall.js). js-sisältöskripti. Palvelin–asiakas-jaottelu näkyy myös varsinaisen lisäosakoodin ja sisältöskriptien suhteessa. Esimerkiksi osoitteet ”www.skrolli.fi” ja ”skrolli.fi/artikkelit” täsmäävät. Esimerkiksi socket.io-kirjaston rajapinta on vastaava kuin lisäosien portrajapinta. Yksinkertaisia toimintoja varten ei välttämättä tarvitse koodata varsinaista lisäosaa. Sääntöjä voi antaa myös listamuodossa, ja säännöt voivat olla Javascriptin säännöllisiä lausekkeita (regular expression). Sovelluskirjanmerkki luodaan laittamalla kirjanmerkin osoitteeksi seuraavanmuotoinen teksti: javascript:<koodi>;void(0); Varsinainen Javascript-koodi on kohdassa ”<koodi>”, ja sen täytyy olla URL-koodattu, sillä selaimet eivät ymmärrä esimerkiksi välilyöntejä kirjanmerkeissä. Lisäosakoodi toimii ”palvelimena”, joka tarjoaa matalan tason perustoiminnot. Firefox tosin muuntaa kirjanmerkkiä luodessa välilyönnit automaattisesti koodatuiksi. Sisältöskriptit puolestaan ovat sen kanssa juttelevia ”asiakkaita”. Näin siksi, että selain näyttää koodin paluuarvon uudella sivulla, jos paluuarvo on mitä tahansa muuta kuin undefined. Lisäosa liian järeä. Webja Node.js-kehittäjille hyppäys Firefox-lisäosiin on siis pieni. Yhteenveto Esimerkkilisäosa on nyt valmis. Lisäksi seurataan onAttach-käsittelijän avulla, milloin skripti on liitetty. Asennus onnistuu silloinkin npm-työkalun avulla. Näin tehdään aivan listauksen 1 lopussa, kun hakukäyttöliittymästä saadaan tieto valintaruudun tyhjennyksestä ja if-lauseen elsehaara suoritetaan. Kun automaattisuus halutaan poistaa käytöstä, kutsutaan PageMod-olion destroy-metodia. Tämän artikkelin ja esimerkkikoodin tutkimisen jälkeen ei dokumentaatiossa pitäisi olla kovin paljon kummallisia asioita, ainakaan lisäosatermistön osalta. Lisätietoa ja esimerkkejä löytyy seuraavista osoitteista: • betterexplained.com/articles/how-to-make-a-bookmarklet-for-your-web-application/ • www.bookmarklets.com/tools/categor.html • https://www.squarefree.com/bookmarklets/. Webtai Node.js-kehitykseen verrattuna lisäosien kehityksessä on tuttuja piirteitä. Lopussa oleva kutsu void(0); tarvitaan, jotta koodin ajamisen jälkeen pysytään samalla sivulla. Lisää rajapintoja ja ohjeita löytyy oheiselta linkkilistalta. 49 Tilan perusteella joko asetetaan tai poistetaan automaattinen sisältöskriptin liittäminen mille tahansa sivulle, jonka verkko-osoite täsmää sääntöön ”*.skrolli.fi”. Liittämisen jälkeen skriptille lähetetään käsky laskea säännön ”[Ss]krolli” mukaiset sanat sivulta. Sen myötä esiteltiin Firefoxin lisäosien kehitystyökalun käyttö, lisäosan projektirakenne ja muutamia yleisimpiä rajapintoja. Osien välinen kommunikaatiokin on samankaltaista. Käyttöjärjestelmäympäristöstä vielä sen verran, että jpm toimii myös Windowsissa samoin kuin Linuxin puolellakin. Pieniin tarpeisiin saattaa riittää sovelluskirjanmerkki (bookmarklet), kun halutaan käsitellä sivun sisältöä. Joten eipä muuta kuin koodaamaan mukavia, hienoja ja elämää helpottavia lisäosia omaan selaimeen! var wordToCount = document.getElementById("keyword"); function getTextNodes(parent) { var nodes = []; var walker = document.createTreeWalker(parent, NodeFilter.SHOW_TEXT, null, false); var node; while(node=walker.nextNode()) { nodes.push(node); } return nodes; } function countWord(word) { var elements = getTextNodes(document.body); var count = 0; var matcher = new RegExp(word,'g'); [].forEach.call(elements, function(e,i,l){ count += (e.textContent.match(matcher) || []).length; }); alert('Word "' + word + '" occurred ' + count + ' times.'); } self.port.on('count-words', countWord); Listaus 4
Sinne myös Saku pystytti retropisteensä jo viidettä vuotta peräkkäin. Yksi vuotuisten tapahtumien vetonaula on vanhat tietokonepelit. Se järjestettiin tänä vuonna Oulun Energia Areenalla. 2 1 6 . Paikalle saatiin tilaan nähden varsin mukavasti vanhaa rautaa: neljä Amiga 1200 -konetta, yksi Amiga 500 ja jopa yksi Commodore 64. Sakun pisteellä kävi monenlaista ja -ikäistä ihmettelijää. 3 50 K lassikkokoneyhdistys Suomen Amiga-käyttäjät ry. Kesäkuun toisena viikonloppuna järjestettävä, nelipäiväinen Vectorama 2016 on kasvanut Pohjois-Suomen suurimmaksi verkkopelitapahtumaksi. eli Saku houkuttelee satoja vieraita erilaisiin tapahtumiin, omiinsa ja muiden, jo kolmatta vuosikymmentä. Sekä tietenkin runsaasti niitä vanhoja pelejä. Eräät asettuivat koneille lastensa kanssa silmät säMiten uusi sukupolvi ottaa vastaan vanhat tietokoneet. Useat eri tahot olivat paikalla esittelemässä toimintaansa. Suomen Amiga-käyttäjät ry:n järjestäjäkonkari Vesa-Pekka kertoo, kuinka vuonna 1985 alkunsa saanut Amiga peluuttaa yleisöä edelleen. Retropelailu menestyy yleisötapahtumissa yllättävän hyvin. Saku Vectoramassa Vectoramassa vilisi kaiken ikäisten pelaajien lisäksi myös monia yhteistyökumppaneita areenan oheistoiminta-alueella. Tapahtuman yhteistyökumppanit tarjoilivat yleisölle smoothieita, hedelmiä ja namuja, jotta vältettäisiin verensokerin romahtaminen. Tänä kesänä Saku peluutti kansaa parissa yleisötapahtumassa Oulussa. Varsinainen kohdeyleisö, verkkopelaajat, oli hyvin keskittynyt omaan touhuunsa, mutta ilmestyi ajoittain kolostaan. Kulttuuri Vanhoja pelejä Oulun yössä Kun nykynuoriso Amigaan ryhtyi Worms: The Director’s Cut -karsintakilpailut Vectoramassa.. Laajempaa yleisöä houkuteltiin Areenalle tarjoamalla kahtena iltana vapaa pääsy tapahtumaan. Nuoremmille kävijöille Amiga on uusi ja jännä tuttavuus, varttuneemmille taas unohtumaton osa omaa lapsuutta ja nuoruutta. Teksti: Vesa-Pekka Holappa, Janne Sirén Kuvat: Suomen Amiga-käyttäjät ry
Erillisinä kisoina pelattiin torstaina linkkipelinä Stunt Car Raceria, perjantaina Lotus 2:ta ja lauantaina alkuillasta Super Skidmarksia. Ruuduilla pyöri tiuhaan mm. Myös klassikokoneiden kirjo on yleensä mittava. Jotain vanhaa, jotain uutta, jotain sinistä... Sakusta ja 2010-luvun Amigaharrastuksesta löydät lisää tietoa Skrollin numerosta 2014.3 sekä yhdistyksen sivuilta osoitteesta http://saku.bbs.fi. Myöhemmin lauantai-iltana pelikilpailut päätti Worms: The Director’s Cut, jossa tuttuun tapaan ninjailtiin ja tapatettiin niin toisten kuin omien joukkueidenkin matoja. Voittajat saivat palkinnoiksi atk-tuotteita sekä mitalit suoriutumisestaan. Sakun peliluola pystytettiin kaupunginkirjastoon. Nähtävästi Amiga ei ole huhuista huolimatta vieläkään kuollut. Suomen Amiga-käyttäjät ry:n tapahtumissa on klassikkopelien lisäksi mukana myös Amiga-harrastuksen uudempia puolia. Kilpailut olivat odotetusti jännittäviä. Vectoramassa ja Oulun Taiteiden Yössä mukana oli muun muassa kaksi Amiga-yhteensopivalla MorphOS-käyttöjärjestelmällä varustettua Mac miniä, joista toinen pyöritti ilmataistelupeli Wings Battlefieldiä. Monet kävijät olivat koneilla kuin kotonaan. varttuneempiin. Toiset tulivat ihmetellen katsomaan, millaista jälkeä 20-30 vuotta sitten saatiin aikaan. Näiden rinnalla perus-Amiga 500 ja Amigan edeltäjä Commodore 64 tarjosivat autenttisen klassisen pelikokemuksen korpunja lerpunvaihtoineen, eikä kasettiasemaelämystäkään ollut unohdettu. Ensimmäiset tulivat paikalle jo hyvissä ajoin, koska olivat edellisellä kerralla jääneet jonon hännille pääsemättä lainkaan pelaamaan. Paikalla oli myös yksi flipperin kääntämistä mobiilipeliksi suunnitteleva henkilö, jonka epäusko Amigan suoriutumiseen flipperipelin pyörittämisestä muuttui Slam Tiltin ja todellisuuden iskiessä naamalle. Viimeiset retronälkäiset tulivat kysymään pelien perään vielä minuutteja ennen lopetusta. Kun Amigalla pyörähti käyntiin Parasol Stars, kuusnepalla pelailtiin sen edeltäjän edeltäjää, Bubble Bobblea. Nämä järeämmät klassikkokoneet oli linkitetty nollamodeemikaapelilla pareittain sitä tukeville kahden tai useamman pelaajan peleille, ja niiden kuvat heijastettiin videotykeillä seinälle. Kun äidit ja isät tekivät aikamatkaa lapsuuteensa, oli nuorimmille esimerkiksi joystick peliohjaimena ihan täysin kumma kapistus. Kuten on ollut tapana, paikalla järjestettiin myös useita pelikilpailuja. Allekirjoittanut ehdotti yhdistyksen puheenjohtaja Anu Seiloselle huumorilla, että seuraavalla kerralla hankitaan undulaatti indikaattoriksi hapen loppumisesta. Yhdistys on myös julkaissut perustamisensa jälkeen viisikymmentä Saku-e-lehden numeroa. Mikä Saku. Kävijöitä oli perheen pienimmistä kenöiden ja kertoen, kuinka ”tällaisella äiskä/iskä pelasi, kun oli nuori”. Lotus 2, Superfrog, Wings, Xenon 2, Bubble Bobble… Kukapa vanha Amiga-käyttäjä olisi lopulta unohtanut nämä. Lisäksi paikalla oli uudempana kalustona kaksi Mac miniä Amigayhteensopivalla MorphOS-käyttöjärjestelmällä. Koko päivän kisoina pelattiin Wings Battlefieldiä ja Atari 2600:n Man Goes Downista klassikko-Amigoille juonnettua Downfallia, joka on aiemmin tehty homebrew-julkaisuna Atari Jaguarille. Toinen MorphOS-kone oli ohjelmoitu Amigan Hollywood-mediaohjelmistolla pyörittämään infonäyttöä, joka kertoi tapahtuman aikatauluista, yhdistyksen historiasta, tärkeimmistä Amiga-malleista sekä Sakun tulevista tapahtumista. Amiga 500 tarjosi pelaajille monet ranteet aikoinaan kouluttanutta korpunvaihtoharjoittelua, kun hieman uudemmilla Amiga 1200 -malleilla taas pelailtiin kiintolevyiltä. Vectoramassa yksi aikaisekseen tehokkaalla 68060-suorittimella ryyditetty Amiga 1200 pyöritteli demoja hiljaisempina aikoina, loppujen maltillisemmin kiihdytettyjen 68030-laitteistojen toimiessa pelikoneina. Pöydät vallattiin pääasiassa klassikkokoneilla: mukana oli neljä 68030-kiihdytettyä Amiga 1200 -konetta ja yksi Amiga 500. Tapahtumalle varattu nelituntinen kävi tuttuun tapaan lyhyeksi. Peliluolassa kävi neljän tunnin aikana noin 400 vierailijaa, ja tunnelma oli sen mukainen. Usealla vierailijalla heräsikin kysymys: ”Mikä oli se peli, jossa…?” Sitä myöten sitten mentiin pitkin muistojen taivalta. Se tukee ja esittelee Amiga-harrastusta järjestämällä toimintaa ja tapahtumia, kuten syksyisin järjestettävän Saku-tapahtuman. Järjestäjän ominaisuudessa paras palkinto oli kuitenkin osanottajan leveä hymy. eli Saku on toiminut vuodesta 1993. Suosituimpiin peleihin kuuluivat tasohyppelyt ja autopelit. Kaikilla tuntui olevan yhtenevä mielipide: yhtä hyviä ne ovat vieläkin! 80-luvun digitaalisten peliohjaimien on/offtuntuma oli tosin analogisten tattien hemmottelemalle nuorisolle ajoittainen haaste. 51 Oulun Taiteiden Yö Oulun Taiteiden Yö -yleisötapahtuma järjestettiin elokuussa, ja Sakulle kyseessä oli viides kerta näissäkin karkeloissa. Suomen Amiga-käyttäjät ry. Etenkin Sakun omalla Amigaaa!-huutologolla varustetut mitalit olivat suosittu muisto. Koneet olivat käytössä lähes tauotta. Pieni pilke silmäkulmassa kaiken voikin kiteyttää yhteen huutoon: AMIGAAA! Monen ikäiset pelaajat valtasivat koneet kaupunginkirjastolla Oulun Taiteiden Yössä.
Keväällä ilmestynyt Hessian-peli alleviivaa herran pitkää ja ansiokasta työsarkaa laitevanhuksen parissa. Teksti: Heikki Mustonen Kuvat: Heikki Mustonen, Lasse Öörni. 2 1 6 . 3 52 Pelit Vanha koti uudelle koodille Hessian puhaltaa C64-hiillokseen Lasse Öörni, 37, on yksi nykyisen Commodore 64 -skenen tähtiä
Minulla ei silloin vielä ollut yhteyksiä skeneporukoihin.” Yhteydet luotiin myöhemmin samalla, kun C64-harrastus sai hevosruiskeen koulusta. Asiaan palattiin kuitenkin 10 vuotta myöhemmin, kun Amiga sai 2004 oman versionsa Metal Warriorista. Samannimiseen elokuvaan pohjautuvan Escapen kohdalla lisenssin perään ei tuossa vaiheessa enää kyselty, sillä C64 ei enää nauttinut valtakunnallista suosiota edes Suomessa. Netittömän aikakauden paperinen datanvälitys palveli myös digiharrastajaa. Biisit eivät saisi viedä prossutehoa tai muistia hirveästi. Ensimmäiset C64-pelit Metal Warrior ja Escape From New York tulivat nimittäin verkkoon vasta vuonna 1999. Audiovisuaalinen tuotanto on pienempitöisempää”. Siitä Lassea taustoittaa vahvasti vanhojen jättiläisten läsnäolo päivätyöpaikan hyllyillä.. ”Sehän lähti pikkupenikasta, kun sain kuusnelosen. Bitissä oli koodausartikkeleita ja siitä sitä lähti kokeilemaan, miten konetta voi hallita.” Suosikkipeleihin nuorella harrastajalla lukeutuivat muun muassa Commando ja Green Beret, jotka herättivät kauaskantoisia tuntemuksia. Tästä kertoo se, että Lassen ensimmäinen vakavampi pelisarja, Metal Warrior, on julkaistu kuusneloselle, vaikka ensimmäinen vedos pelistä onkin tehty Amigalla. 1994 tehdyssä Amiga-versiossa oli mukana jo iso vierivä maailma vihollisineen, mutta Lassen mielestä se oli sen verran omalaatuinen, että peli jäi pöytälaatikkoon. ”Yksittäisen biisin tekeminen peliin on kuitenkin pieni ponnistus ja siksi mukana on joskus ollut niiltä osin muitakin. Nykyään musisointi pitää sisällään myös rumpujen soittoa ja metallivokaaleita. Lasse halusi toteuttaa pelejä myös suoraan omista ideoista, ja C64 tarjosi sopivan kokoisen pelikentän. ”C64-musaeditorien teko on aina kompromissia. Harrastuksesta on kasvanut työ ja alkusysäys on sama kuin tuhansilla muilla. GoatTracker on Lassen ponnistus tuoda SID-emulointiin perustuvaa musiikkia muun muassa PC:lle. Miten C64 säilyi alustana mukana PCmaailman puristuksissa. Yhden miehen pelitiimi Päivätyönään Lasse koodaa pelejä PCpuolelle, mutta omia projekteja on syntynyt tasaisesti vanhaan rautaan. Lassen toinen rakas harrastus, musiikki, limittyy saumattomasti tietokoneisiin. Musiikki tuli mukaan ajankäyttöön samoihin aikoihin kuin koodaus. ”Vasta yliopistolla pääsi internetiin ja löytyi emulaattorit sekä enemmän materiaalia vuoden 1997 tienoilla. ”Bitin artikkelit ja kirjat olivat tietenkin yksi lähde. ”Konekieltä koodasin jonkun verran, mutta silloin työkalut olivat vaatimattomampia, joten isompien proggisten teko jäi haaveiden tasolle.” Kuitenkin tuolloin Lasse otti haltuunsa koneen manipuloinnin peruspalikat, kuten spritet, ruudunvieritykset ja keskeytykset. Oulun kirjastosta löytyi public domain -levykkeitä, joista löytyi ihan skeneäijien juttuja, joita tuli sitten tutkittua” Varsinaiseen demoskeneen Lasse ei kuitenkaan koskaan tempautunut mukaan. Kuusnelospeli on kompakti kokonaisuus, jonka toteutukseen riittää yksi pystyvä henkilö. ”Demon kaltaisia virityksiä tuli kyllä tehtyä, mutta en niitä julkaisut. Vaikka trackerit eivät alkuunsa paljastaneet salojaan, kaksi toisiaan tukevaa harrastusta tuottivat tulosta. 53 V aikka Lasse Öörnin juuret yltävät laitteen kulta-aikaan, voidaan miehen esiinmarssin katsoa tapahtuneen suhteellisen myöhään. GoatTracker pyrkii pitämään hommat kompaktina, ehkä jopa kompaktimpana kuin monet muut editorit. Tuossa vaiheessa kokemusta oli jo myös Amigasta ja PC:stä.” Vaikka assembler-ohjelmointi Amigalle tuli tutuksi ja PC-rautakin alkoi totella, pysyi C64 tekemisen keskiössä. Tosin noissa ammateissa hän on ehtinyt ahkeroida vasta jonkin aikaa, sillä pääansainta tapahtuu tietokonepelien koodauksen parissa. Lasse muistelee, että hän olisi tehnyt kokeiluja tracker-musiikin parissa jo ennen kitaran ottamista käteen. Istuimme Ludocraftin vieraanvaraisille sohville keskustelemaan Hessianista ja muusta kuusnelostelusta. Ammatilliselta koulutukseltaan Lasse on fyysikko ja aineenopettaja. Kun ilmaispanostuksella mennään ja toinen vaikkapa tekisi grafiikkaa, söisi miestä puolin ja toisin sanoa, että pitää tehdä uusiksi.” Niinpä yksintekeminen on projektinhallinnallisesti Lasselle toimiva ratkaisu. ”PC-pelit jäivät pienemmiksi tuotoksiksi, sillä jo pelkkä PC:n grafiikkapuoli vaatii valtavasti panostusta. Sen takia tuli ehkä palattua kuusnelosen pariin. ”Silloin tuli unelma siitä, että jos samanlaisia voisi tehdä itse.” Jo alkumetreillä harrastus veti syvemmälle kuin useimmilla Basiciin pysähtyneillä aikalaisilla. Kaverit ovat Lassen mukaan produktioissa kivoja, mutta mitä useampi soppa, sitä sekavampi kokki
Hessian on suomalaisittain toinen isoista viime aikojen C64-tapauksista. Tarinan loksahdettua paikoilleen alkoi myös pelin valmistuminen lähestyä vääjäämättä. ”Niissä pitää kaiken olla vielä vähän tehokkaampaa ja pienempää”. Ludocraftin koko henkilökunta on vuosien ajan osallistunut kansainväliseen National Novel Writing Month -tapahtumaan, jossa osallistujat kirjoittavat kokonaisen romaanin kuukaudessa. Uusi palo tekemiseen syttyi työpaikan perinteen myötä. ”Metal Warriorit on julkaistu ilmaiseksi, mutta niistä on muutamia rajoitettuja maksullisia painoksia. 3 54 huolimatta ihmiset ovat olleet nähtävästi tyytyväisiä, sillä kehitysehdotuksia on tullut runsaasti”. ”Teknisenä kokonaisuutena, ottaen huomioon miten kauan aikaa sitten se on tehty, se oli kyllä vaikuttava”. ”Milloin Hessian-projekti alkoi. Lasselta irtoaa kollegalle tunnustusta muun muassa hienoista vesianimaatioista. ”Otin juonen tarinasta, jonka olen kirjoittanut 2010. Jasonin mielipide oli, että homma ok, sillä fyysisiä C64-tavaroita ostetaan nimenomaan keräilyn takia”. Hyvä kysymys. Tie internetkaupan hyllylle otti kuitenkin aikansa. ”Siinä on ollut pitkiä taukoja johtuen esimerkiksi siitä, että pelin juoni oli pitkään käymistilassa. Tällä hetkellä GoatTracker ei enää kuitenkaan ole Lassella ylläpidettävien listalla, koska aika ei yksinkertaisesti riitä kaikkeen. Suomalaisittain viimeiset 12 kuukautta ovat olleet mielenkiintoiset, mutta todella upeita teoksia on puskettu, C64-aikajanan mitassa, äskettäin ulos myös muualla.. Puurtamista tapahtui päivätyön ohella, eikä se tunnetusti ole aivan mutkatonta. Kun juoni ei napannut, niin sitten ei grafiikkaankaan jaksanut keskittyä.” Koodi kuitenkin eteni vähitellen ja musiikki myös. Omiin peleihin Lasse ei ole GoatTrackeriä kelpuuttanut. Kymmenvuotinen projekti Hessian on nyt komeissa kuorissa, asiaan liittyvällä krääsällä tuettuna. Toinen merkittävä julkaisu oli Pasi Hytösen Little King Arthur, joka ehti köllötellä pöytälaatikossa 30 vuotta. Pelkkä netistä ladattava d64-tiedosto ei kuitenkaan olisi vastannut tuotannon yleistä linjaa, joten yhteistyökumppaniksi julkaisuun valikoitui englantilainen Psytronik. Joskus vuonna 2005 olen antanut vihjeitä Lemon64-foorumilla, että tämän niminen peli saattaisi olla tulossa.” Vaikka pieniä osakokeiluja asian tiimoilta oli, pääsi homma varsinaisesti vauhtiin vasta 2012. Sen jos käy lukemassa, voi todeta mitä pelissä on samaa novellin kanssa.” Tarina löytyy osoitteesta cadaver.homeftp.net/loorni/ Kyrailevien_Ohjelmoijien_Kerho_ The_Revenge.pdf. Lähinnä haasteeksi jäi kerätä rohkeutta lähestyä Jasonia varsinkin sen takia, että pelit ovat myös ilmaiseksi ladattavissa. 2 1 6 . Psyktronikista tiesin, että he tekevät hyvännäköisiä boksisettejä
Nanobotit korjaavat Kimin saamia vammoja, jos niillä vain on paristoissa virtaa. Tarinaa kuljetetaan eteenpäin pelaajan lukemilla tiedostoilla ja vuoropuheluilla hengissä olevien laitostyöntekijöiden kanssa. Jos yksityiskohdat on tehty huolella, voi olla melko varma, että kokonaisuuskin on kunnossa. Tällä kertaa takana ei ole sähäkkä yö diskoteekissä, vaan pipi on tullut työtehtävissä. Myös virran määrälle löytyy oma palkki, jota on syytä vahtia silmä kovana, sillä sen ehtymisestä aiheutuu pysähtynyt verenkierto ja kuolema. Ken vois liekin sammuttaa, kerran kun se leimahtaa. Kuoleman korjatessa harmitus ei yleensä eskaloidu liikaa, sillä käytettävissä on hiukan enemmän kuin vain kolme elämää. Kaapeista ja vihollisten jälkeensä jättäminä käyttöön löytyy melee-kaluja, tuliaseita ja räjähteitä. Ärsytyskynnys ei ylity pidemmissäkään sessioissa. Grafiikka on miellyttävää katsella ja tasalaatuista läpi koko pelin. T urvallisuusrobotit kääntyivät yllättäen ihmisherrojaan vastaan, ja tulos oli verinen. Hessian on sivulta kuvattu toimintaseikkailu, josta ensikosketuksella mieleen tulevat sellaiset pelivanhukset kuin Impossible Mission, Saboteur ja Nexus. Vihollisten muiluttamisessa suurin huoli ei ole ammusten vähäinen määrä, vaan haasteelliset kontrollit. Taistelujen tiimellyksessä healthpalkki pääsee usein vajoamaan, mutta sitä voi virkistää käyttämällä ensiapupakkauksen tai odottamalla. Pienet yksityiskohdat, kuten sade katulamppujen valokiilassa, luovat kyberpunktunnelmaa. Kaikkia pelin hienouksia ei voi kertoa, vaan ne pitää antaa pelaajan itse löytää. Jokaista on useampaa laatua, eikä kaikkia voi kantaa kerralla. Laitoksen käytävillä ei tule kättä pidemmästä pulaa. Yövartijan työvuoro monikansallisen yrityksen tutkimuslaboratoriossa päättyi atk-vallankumoukseen. Polviasennosta ampuminen on yllättävän vaikeaa, varsinkin otettaessa huomioon, kuinka olennainen manööveri se on. Näitä kahta resurssia ei pelissä ole missään kohti liikaa, joten jokainen lisäparisto tai laastaripaketti on riemu löytäjälleen. Hessian on aito C64kokemus. Arsenaali kelpaisi määrällisesti niin Rambolle kuin Commandolle. Hessian ei ole lähtenyt järisyttämään toimivia ja testattuja peruselementtejä, mutta on laajentanut ja toteuttanut hyvin ne asiat, jotka vetoavat lajityypin ystäviin. Eri rakennuksilla ja paikoilla on omat musiikit, joten aina uuden biisin alkaessa pelaajassa virittyy pieni jännitys. Viimeisenä keinonaan näppärät yhtiömiehet tuuttasivat Kimin sisuksiin nanobottiarmeijan toivoen, että Kim raivaisi villiintyneet turvarobotit pois tieltä. Kappaleet myös kestävät kuuntelua. Silti on mahdollista ajaa itsensä tilanteeseen, jossa pelin aloittaminen uudelleen on järkevin vaihtoehto. Järkälemäiset 700 ruutua on todella paljon pelattavaa, mutta mukana on silti paljon pieniä yksityiskohtia. Kun tehdään peliä ”silloin ennen” -hengessä, on luettava eduksi, että myös tunnelmassa on päästy klassikkojen tasolle. Juoni haiskahtaa kyberpunkille kilometrien päähän ja kyberpunk haisee aina hyvälle. Aina on aikaa ystäville ja muille mukana roikkujille.. Kuten vanhan liiton edustajissa, myös Hessianissa liikutaan sivusuunnassa ruudusta toiseen, etsitään avainkortteja, tuhotaan vihollisia ja yritetään muistella, että missä suunnassa se yksi huone taas olikaan. 55 Hessian – matalabittistä kyberpunkkia Uusi suomalainen peli Commodore 64:lle Naissankari, sanan vähemmän parjaavassa merkityksessä, herää pää kipeänä ja runko ruhjeilla. Jos viikate heilahtaa, voi kyseisen huoneen aloittaa aina alusta. Suurimman panoksen tunnelmaan antaa kuitenkin musiikki. Viemärirottia voi ampua ja vaahtosammuttimella voi ruiskutella tulipaloja. Näin vaikeisiinkin paikkoihin saadaan mieltä, eikä tarinan tarvitse tyssätä ensimmäiseen haastavampaan kohtaan, varsinkin kun vaikeustaso on jo lähtöjään riittävä
3 56 Uusia C64-pelejä julkaistaan jatkuvasti Koodiharrastajat tekevät pelejä, peliharrastajat ostavat niitä, ja välissä häärää julkaisijoita. Lisätietoja: kollektivet.nu/brucelee2/. Bruce Lee 2 lähti alkujaan liikkeelle Bruno R. Jos allekirjoittaneen kammion seinällä ei ennestään komeilisi puolimetrinen C64:n spriteversio Bruce Leestä, voisi jotenkin väittää olevansa tämän suhteen puolueeton. Tarinan mukaan pesän kuningatar on vihainen laiskoille työläisilleen ja pelaajan tehtävä on korjata tilanne ohjaamalla Buzzya. Marcosin PC:n näppäimiltä ja vuonna 2014 teosta aloitettiin kampeamaan C64-rautaan. Pörräillessä on välteltävä flooraa ja faunaa, jotka lähettävät Buzzyn autuaammille kukkakedoille. Honey Bee (2016) Richard Baylissin ja Wayne Womersleyn surraava Honey Bee noudattaa vanhempien C64-pelien graafista esimerkkiä. Osta: www.psytronik.net/newsite/index.php/c64/69-honey Lisätietoja: tnd64.unikat.sk/h.html#honeybeefinal Bruce Lee 2 (2015) Se ihan ensimmäinen Bruce Lee -peli julkaistiin jo 1984. Pelastustoimiin on ryhdyttävä empimättä. Tarjolla on 16 tasoa, joiden välissä bonustellaan minipelien muodossa. Siitä huolimatta vankkumaton fakta on, että Bruce Lee 2 onnistuu täydellisesti yrityksessään tehdä klassikolle jatko-osa, joka näyttää ja kuulostaa oikealta. 2 1 6 . Bruce Lee 2 iskee suoraan nostalgiaa kaipaavaan päähän. Tässä muutama valinta tältä ja viime vuodelta, joilla voi lähteä liikkeelle. Urakka on onnistunut ilmeisen hyvin, vaikka ihan kaikkea mukaan ei mahtunut. Menut ja latauskuvat ovat lähempänä nykypäivän tekemistä, mutta itse pelissä karut spritet ja neliskanttiset maastot vievät ajassa taaksepäin. Onnistumista helpottaa tietenkin se, että esimerkiksi menun musiikki ja ääniefektit on otettu suoraan alkuperäisestä. Vaikeusaste on mennyt pykälää ylemmäksi, mikä passaa varttuneelle fanikunnalle. Kaupaksi käyvät niin levykkeet, kasetit kuin moduulitkin. Näin ovat asetelmat myös klassikkokoneista puhuttaessa. Alkujaan peli osallistui RGCG.co.uk-sivuston 16 kilotavun moduulipelikilpailuun, mutta myyntiin se tuli vasta tänä vuonna Psytronikin julkaisemana. Suurin osa uusista Commodore 64 -peleistä julkaistaan täysin ilmaiseksi digimuodossa, mutta keräilijöitä kiinnostavat myös fyysiset kappaleet. Kolme vuosikymmentä myöhäisemmän jatko-osan pahikseksi astuu temppuineen Tao-Bao, joka on kidkaapannut Brucen siskon. Nimeään myöten ahkera kuhnuri kerää mettä kukista ja tuo saaliinsa pesälle jatkojalostusta varten. Uudet pelijulkaisut vanhoille koneille ovat oma maailmansa, jossa kiinnostuneelle riittää tutkittavaa
Jokainen kenttä on yksi ruutu, jossa vihollisölliä puskee sivuilta samalla, kun pelaaja yrittää kerätä riittävän määrän bensakanistereita matkan jatkamiseksi. Simppeli idea, josta saostuu nopeasti kaverien kesken kisa paremmista pisteistä. Valitettavasti moduuliversio on myyty loppuun, mutta digiversiota on vielä jäljellä. Mikäpä siinä, sillä ostajahan se päättää, onko paketti tarpeeksi kova. Osta: rgcddev.itch.io/tiger-claw • Lisätietoja: rgcddev.itch.io/trance-sector-ultimate • Moduuliversioita uusista C64 peleistä: www.rgcd.co.uk • Levyja kasettiversioita uusista C64-peleistä: www.psytronik.net • Covert Bitops -kotisivu: cadaver.homeftp.net Rocket Smash EX (2015) Jetpac oli yksi ZX Spectrumin menestyspelejä vuonna 1983 ja vihdoin se on saanut arvoisensa käännöksen myös nepalle. Tässäkin tapauksessa maksu on vapaehtoinen tukitoimi tekijöitä kohtaan.. Vaikka grafiikka on saanut isoimmat vaikutteet alkuperäisestä Brucesta, ei kyseessä ole aikamatka 80-luvulle. 57 Tiger Claw (2016) Tiger Claw on toinen peli, joka on kiloittain velkaa alkuperäiselle Datasoftin Bruce Leelle. Pomoa ja yhtiön kaikkivaltiasta psykopaattitietokonetta on päästävä karkuun, mutta ensin on rakennettava raketti ja lennettävä välietapista toiseen. Pelin voi ostaa fyysisesti moduulina, mutta digikopiosta saa maksaa omantunnon mukaan. Koodista vastaa John Christian Lo ja audiovisuaaleista Tiger Claw’ssakin vaikuttanut Saul Cross. Lazycow’n ja Saul Crossin toimintaseikkailussa mennään jälleen ruutu kerrallaan ninjoja hakaten, mutta kaikki tuntuu uudelta. Osta: rgcd.bigcartel.com/product/rocket-smash-ex Lisätietoja: rgcddev.itch.io/rocket-smash-ex Trance Sector Ultimate (2015) Myös uustuotannon pelejä voidaan tuunata ja myydä uusiksi. Tiger Claw on rehellistä uustuotantoa nykypäivän taidoilla ja pelisuunnittelulla. Nyt pelin voi myös ostaa huokeaan 3,50 euron hintaan. Jos tarinallinen seikkailu bosseineen ei oikein iske, versus-tilassa voi kumautella neljää kaveria yhtä aikaa. Konsepti on selkeä, kompakti ja silkkaa arcadea. Tiger Claw julkaistiin alkujaan moduulina, jota saivat C64 in Pixels -kirjaa Kickstarter-kampanjassa tukeneet. Tarkoituksena on keräillä avaruusaluksella mollukat talteen väistellen samalla reunoilta lentäviä ohjuksia. Pelatessa takamus siirtyy istuimen reunalle ja mielessä pyörii vain seuraava high score, kuten aina hyvien pelien kohdalla. Trance Sector julkaistiin 2012 ja Ultimate-uusversio putkahti ulos 2015 Gubbdata-demopartyillä Ruotsissa
Olen sittemmin rakentanut joukon työkaluja sekä muutamia pelejä. 2 1 6 . Tämän ULA-piirin vastuulla ovat videokuvan tuotto, näppäimistön luku, äänen tuotanto sekä vastaanotto. Itse pidän kuitenkin hieman korkeamman tason ohjelmoinnista, ja ilokseni Spectrumille voikin nykyään kirjoittaa koodia C:llä. Spectrum-ohjelmien kehitykseen löytyy peräti kaksi C-kääntäjää, z88dk sekä SDCC, joista SDCC tuottaa hyvin ihmisen luettavaa ja muokattavaa koodia. Kaupallisen tason pelin voisi hyvinkin rakentaa viikossa. Omia pelejä Spectrumille Haluaisitko tehdä omia ohjelmia ZX Spectrumille mutta et tiedä mistä aloittaisit. ULA-piiri on oikeastaan se, mikä erottaa Spectrumin useista muista oman aikansa Z80-kotimikroista. Softankehitys on tänä päivänä paljon helpompaa ja hauskempaa kuin silloin ennen vanhaan, jo pelkästään siksi että varsinainen kehitystyö tapahtuu PC:llä, joka on miljoonia kertoja tehokkaampi ympäristö kuin kohdelaite. Siinä missä C64:ssä on läjäpäin erikoispiirejä, Spekun sisältä löytyy perus-Z80-prosessori, 48 kiloa muistia, 16 kiloa ROM-muistia sekä ULA-piiri, jota voinee pitää FPGA-piirien alkeellisena esi-isänä. Data ladattiin kaseteilta suurin piirtein nopeudella 1500 bittiä sekunnissa, eli 32 kilotavun kokoisen pelin lataus kesti kolmisen minuuttia. Mikään ei toki estä ohjelmoimasta kaikkea Z80-assemblerilla. World of Spectrum -yhteisöstä on ollut erittäin paljon hyötyä niin 30 vuotta vanhojen koneiden korjailun kuin ohjelmistokehityksenkin puolella. Olen aika varma että tämä päätös on ollut vaikuttanut siihen, että perheen lapset vartuttuaan päätyivät erinäisiin ammatteihin tietotekniikan parissa. Tuotettu koodi ei ole kovin optimoitua, mutta kun tärkeimpiin tehtäviin käytetään käsin optimoituja rutiineja, voi valtaosan logiikasta jättää C-koodiksi. Näiden työkalujen avustamana voi saada hyvinkin laadukasta tulosta aikaan nopealla aikataululla. Ehkä demoja, ehkä pelejä, kunhan jotakin. Vaikka suurin osa kehityksestä tapahtuu emulaattoreita käyttäen, on mukavaa tietää, että ohjelmat toimivat aidollakin laitteella. Ei huolta, sillä Skrolli kertoo mitä aloittelevan Speku-devaajan tulee tietää! Teksti: Jari Komppa Kuvat: Sakari Leppä, Jari Komppa Koodi. 3 58 J oskus 80-luvun loppupuolella vanhempani päättivät sijoittaa tulevaisuuteen ja hankkivat taloutemme ensimmäisen kotimikron, ZX Spectrumin. Spectrumin käyttöliittymänä on BASIC-tulkki, mutta jos jotakin haluaa ”vakavasti” laitteelle tehdä, se on paras kirjoittaa suoraan Z80-prosessorin konekielellä. Näin keski-iän kynnyksellä sain inspiraation tehdä jotakin – mitä vain – tuolle lapsuuden kotimikrolleni. Speku, kuten sitä tuttavallisemmin nimitetään, oli Commodore 64:n altavastaaja, kilpailijaansa paljon yksinkertaisempi laite, mutta samalla se oli softankehityksen kannalta paljon helpommin lähestyttävä. Ääni Spectrumin massamuistina käytettiin kasettiasemaa ja kasettia, joten laitteen äänen vastaanoton laatu on erittäin tärkeää. Parhaimmat emulaattorit toistavat raudan pienimmätkin omituisuudet, joten aidolla koneella softaa tarvitsee kokeilla suhteellisen harvoin. Ohjelmien testaus tapahtuu emulaattorilla, joita löytyy lukuisia
Jokaiselle solulle voi valita kaksi väriä (INK ja PAPER) kahdeksasta vaihtoehdosta. Tämä on onneksi täysin lineaarinen. Toisessa on viisi johtoa, toisessa kahdeksan. Neljän eri pelin äänet. Pitfall 2 toimii esimerkkinä pelistä, joka päivittää ruutua jokaisella virkistyksellä ja soittaa ääntä, kuluttaen noin kolmanneksen kaikesta tehosta pelkästään äänen tuotantoon. Näppäinten tila katsotaan lukemalla kahdeksasta eri portista ja katsomalla alimpien viiden bitin tilaa. Bittien shiftailukin on toki mahdollista, mutta z80:ssä ei ole x86tai ARM-ohjelmointiin tottuneille halpoja shift-operaatioita. Portti Bit0 Bit1 Bit2 Bit3 Bit4 0xFEFE Shift Z X C V 0xFDFE A S D F G 0xFBFE Q W E R T 0xF7FE 1 2 3 4 5 0xEFFE 9 8 7 6 0xDFFE P O I U Y 0xBFFE Enter L K J H 0x7FFE Space Sym M N B Näppäimistö Spectrumin näppäimistössä on tasan 40 nappia. Kuvassa 1 esimerkkinä ääntä neljästä eri pelistä. Koska asiat olisivat muuten liian helppoja, näytön bittikartta ei ole lineearinen. Myöhemmissä Spectrum-malleissa ja venäläisissä klooneissa oli myös kolmikanavainen AY-3-8912-äänipiiri. X-osoitteet sentään ovat järjestyksessä, joten helpoimmalla ruudun osoittamisesta pääsee laskemalla etukäteen taulukon jokaisen vaakarivin alkuosoitteesta. Hyvä äänentuottorutiini saattaa muuttaa bitin tilaa noin 50 prosessorikellon välein, joka 3,5 MHz:n prosessorilla tarkoittaa noin 35 kHz:n kanttiaaltoa. Myöhempi piirin YM2149F-versio löytyy 16-bittisestä Atari ST -mikrosta. Kuvassa pystypalkit kuvastavat yhtä ruudunpäivitystä. Speku-peleissä ruudun päivitystaajuudesta ei välitetä pätkän vertaa ja ääntä soitetaan aika ajoin. Sama piiri löytyy myös muun muassa MSX-laitteista. Grafiikka Yksinkertaisuusteema jatkuu grafiikkapuolella. Laitteen ainoa grafiikkatila on 256×192 pikselin bittikartta, joka jakautuu 8×8 pikselin soluihin. Muistipankkien ajastuksista johtuen näytön muistiosoitteet rakentuvat seuraavanlaisesti: C0, C1 ja C2 ovat aina 0, 1 ja 0, koska näyttömuisti alkaa heti ROMin jälkeen osoitteesta 0x4000. Niin, ja kertotai jakolaskuahan ei myöskään löydy. Äänen tuottamiseen olen pääasiassa käyttänyt Shiru-nimimerkin BeepFXkirjastoa. Kuvassa keskellä olevat Supersport ja Dizzy käyttävät kaiken prosessoriajan äänen tuotantoon. Käytännössä tämä tarkoittaa Spectrumin peleissä sitä, että äänet ovat pieniä piipahduksia silloin sun tällöin. Näistä rajoituksista huolimatta jotkut ovat onnistuneet viime aikoina taikomaan perus-Spectrumeista yllättävänkin hyvänkuuloista ääntä. Koneen sisään kurkistaessa huomaa, että näppäimistön kalvosta tulee kaksi liitintä emolevylle. Huomaa, että kaikkien porttien alin tavu on 0xFE. Kanttiaallosta poikkeavaa ääntä saadaan aikaan yksibittisesti siten, että äänibitin tilaa vaihdetaan hyvin, hyvin usein. Välkkyminen käytännössä vaihtaa värejä ristiin 16 näytönpäivityksen välein, mikä on ainut Spectrumin ”rautakiihdytetty” ominaisuus. Manic Miner, kuvassa alimpana, näyttää miten äänet tehtiin tyypillisimmin. Kuva 1. Eli jos haluaa tuottaa ääntä, samaan aikaan ei voi tehdä juurikaan mitään muuta. Nämä näytteet on otettu pelin menutilasta, ja peruspiippauksien sijaan ääni kuulostaa ihan musiikilta. 59 Muuta käyttöä äänen vastaanotolla ei sitten olekaan. Jos bitti on päällä, näppäin ei ole pohjassa. Lisäksi solu voi olla kirkas (BRIGHT) ja välkkyä (FLASH). Musiikkia peleissä kuuluu käytännössä pelkästään pelien alkuruudussa tai -valikossa tai muissa vastaavissa paikoissa, joissa prosessorin ei tarvitse tehdä muuta. Ylempi tavu Alempi tavu 7 6 5 4 3 2 1 7 6 5 4 3 2 1 C0 C1 C2 Y7 Y6 Y2 Y1 Y0 Y5 Y4 Y3 X4 X3 X2 X1 X0. Heti 32×192 tavun bittikartan jälkeen seuraa 32×24 tavua attribuuttidataa, yksi tavu per 8×8 pikselin solu. Käytännössä värejä on siis käytettävissä 15, koska kirkas musta on edelleen mustaa. Lisäksi näytön reunojen väriä voi muuttaa kirjoittamalla määrättyjä arvoja porttiin 0xFE. Äänen tuottaminen perus-Spekulla on vähintäänkin tuskaisaa, sillä ainut tapa siihen on muuttaa prosessorilla yhden bitin tilaa portissa 0xFE. Tällöin peli hidastui, jos ruudulla oli samaan aikaan enemmän liikettä
Kun ruutua piirretään (eli suurimman osan ajasta), ULA-piiri ottaa etusijan muistiväylään ja kaikki ULApiirin hallitsemiin resursseihin liittyvät toiminnot hidastuvat 0–6 kelloa. Interface-2 ja muutamat muut matkivat näppäimistön näppäimiä. Eri standardit eivät ikävä kyllä olleet yhteensopivia, joten Spectrumin peleissä on tyypillisesti alkumenu, josta oman tikun voi valita. RET sen sijaan vie vain yhden, ja koska RET ja RETI eroavat lähinnä oheislaitteiden tilan ylläpidollisilla asioilla, tällä ei ole käytännön merkitystä, koska Spectrumissa prosessorilla ei ole oheislaitteita, jotka kuuntelisivat tätä käskyä. Kempstonin tila taas luettiin portista 0x1F. Yksinkertaisinkin Z80käsky vie neljä kellojaksoa, suurin osa enemmän, jopa 23. Tämä johti useisiin kilpaileviin standardeihin, joista yleisimmin tuetut ovat Sinclairin oma Interface-2 (joka käytti samoja liittimiä kuin Atari-yhteensopivat joystickit, mutta johdot oli totta kai vedetty eri tavoin) sekä Kempston. Vaikka keskeytyksen asettaminen voi vaikuttaa hankalalta, itse keskeytyksen odottaminen on helppoa: pidä huoli että keskeytykset ovat päällä ja pysäytä prosessori HALT-käskyllä. Samalla ne tekivät lataamisesta sen verran epävarmempaa, että piraattikopioiden toimivuuden todennäköisyys laski. Vaihtoehtoisesti voit pelata näppäimistöllä, jolloin QAOP on se kaikkien tukema näppäinyhdistelmä. Aina voi kuitenkin luoda oman hyppytaulun, antaa ROMrutiinien hoitaa homman tai poistaa keskeytyksen kokonaan käytöstä. Toisin sanoen ruudulle piirto, 0xFEportin käyttö tai mikä vain, mikä käyttää alinta 16 kiloa muistista, hidastuu. IM2 ottaa tavun dataväylältä ja käyttää sitä indeksinä taulukkoon, jonka sijainnin määrää I-rekisterin sisältö, ja hyppää kyseiseen osoitteeseen. Ilotikut Spectrumin perusmallissa ei ollut ollenkaan joystick-liitäntää. Tämä johtaa siihen että keskeytys hyppää osoitteeseen 0xFFFF, jonne voi tallentaa yhden tavun käskyn. Tähän toisaalta uppoaa suurin osa ruudun piirtoajasta, jolloin pelien muulle logiikalle ja äänille jää vain pieni siivu. Projektiesimerkki Projektiesimerkkinä ”Attack of the RGBobots”, peli jonka tein yhValmistuneita projekteja.. Tämä siis vastaa suurin piirtein 1,4 kellojaksoa per ruudulla oleva pikseli. Ikävä kyllä RETI-käsky, jolla keskeytys pitäisi lopettaa, vie yli yhden tavun. Laite tukee tasan yhtä keskeytystä, eikä sen tapahtumisnopeutta voi muuttaa. Emulaattorilla eroa ei tietenkään huomaa, koska emulaattorit lataavat pelit äärettömän nopeasti. 2 1 6 . Keskiarvo pyörii kymmenisen kellon tietämillä. Keskeytys Väliotsikko on tarkoituksella yksikössä. Toinen tapa hoitaa asia on luottaa osoitteiden ympärirullaamiseen ja saada aikaan hyppykäsky taaksepäin. Toisaalta sama epävarmuus koski aitojakin kopioita, ja myöhemmät turbolaturit käyttivät löysempiä ajastuksia. Kaikesta tästä huolimatta jotkut ovat onnistuneet luomaan hyvin ajastusherkkiä rutiineja, joiden avulla yhden 8×8 solun alueella vaihdetaan värejä kahden (NIRVANA+) tai jopa yhden (BIFROST*) vaakarivin välein. IM1 hyppää yleensä osoitteeseen, joka löytyy ROMin puolelta. 3 60 Suurin parannus minkä 128K-Spectrumit tekevät grafiikalle on tuplapuskurointi. Asian kanssa tarpeeksi kauan painittuani rakensin työkalun, joka hoitaa koko paketoinnin kertaheitolla ja tallentaa kasetille pelin sekä tämän latauskuvan pakatussa muodossa, nopeuttaen näin lataamista merkittävästi. Dataväylältä saattaa tulla mitä tahansa, joten tämän tilan käyttö tarkoittaa käytännössä sitä, että jossakin päin muistia pitää olla liuta osoitteita, joiden molemmilla tavuilla on sama arvo. Ajastukset Yhden kuvaruudun piirto vie 69 888 prosessorin kellojaksoa, tai Z80-termein T-statea. 48K-Spectrumeissa voi käyttää hyödyksi kikkaa, joka perustuu siihen, että ROMissa on pitkä liuta 0xFF-arvoja. Z80-prosessorin voi asettaa yhteen keskeytystilaan kolmesta. Grafiikan tuotantoon käytän omaa Image Spectrumizer -työkaluani, jota voi käyttää saumattomasti esimerkiksi Adobe Photoshopin kanssa. Paketointi Tyypillinen Spectrum-peli lataa ensin latauskuvan ja aloittaa vasta sitten varsinaisen pelin latauksen muistiin. Muissa Spectrumin versioissa nämä kikat eivät toimi, koska ROMista ei löydy tuota liutaa 0xFF-tavuja tai muistia ei ole sopivasti. IM0 hakee tavun dataväylältä ja ajaa sen käskynä, mikä ei kuulosta hirveän hyvältä idealta. Monissa kaupallisissa peleissä oli lisäksi niin sanottuja turbolatureita, jotka eivät käytännössä onnistuneet lataamaan pelejä kovinkaan paljon nopeammin, mutta saattoivat olla viihdyttävämpia. Interface-2:n kohdalla näppäimet 1–5 olivat yhden tikun suunnat ja tulitusnappi, 6–0 toisen. Suurin osa peleistä ei edes yritä, vaan ruutua päivitetään kun ehditään ja jos jokin vilkkuu, vilkkukoon. Hyvinä uutisina keskeytys tapahtuu lähellä ruudun päivityksen alkua, joten sitä voi käyttää tarkasti ajastettuun piirtoon. Toisin sanoen peruskoneella ruutuun piirtäessä joutuu kilpailemaan ruudun päivityksen kanssa
Ennen pelin tekoa minulla oli valmiina kehitysympäristö sekä kaikki tärkeimmät rutiinit, eli näppäinten luku, keskeytykset, tekstin ja spritejen piirto sekä BeepFX-kirjasto ääniä varten. Pelin paketointiin käytin Mackareltyökaluani, jota hyödynsin myös taustakuvan ja menukuvan lataamiseen muistiin. Mackarel käsittelee dataa erikseen ja lataa sen määrittämääni osoitteeseen, ja itse ohjelmakoodi kopioi sen ruutumuistiin tunnetusta osoitteesta. Näin ääniefektit saivat olla pidempiä. Peli on vuoropohjainen, joten keskeytyksiä ei tarvittu. Bittikarttaspritet tallennetaan kahtena maskina. Tässä projektissa muistia jäi jäljelle hurjasti, yli 16 kiloa. Ääniefektit suunnittelin BeepFX-kirjaston mukana tulevalla PC:llä pyörivällä editorilla. Yksi koko ruudun kuva vie 6 912 tavua muistia, joten niitä ei voi olla monta yhdessä ohjelmassa. Spritet ajoin pienen komentorivityökalun läpi muuttaen ne spritenpiirtorutiinini käyttämään muotoon. Ensimmäinen maski kertoo, mitkä pikselit pitää tyhjätä, ja toinen maski kertoo, mitkä pikselit asetetaan päälle. main.scr Päämenun grafiikka. hwif.c Näppäimistön luku, keskeytyksen odotus. Latauskuva vie kasetilta 1 956 tavua pakkauksen jälkeen. crt0.s Ohjelman alustusrutiini. 61 den päivän sisällä Ludum Daretapahtumaan. sprites.c Sprite-rutiineja. Koska peli ei vie hirmuisesti muistia, pystyin tuhlaamaan sitä tallentamalla pelin taustakuvan sekä menun muistiin raakadatana. Lopputuloksena on 768 tavua dataa pientä 16×16 spriteä kohden, mutta toisaalta spriteä piirrettäessä ei tarvitse käyttää aikaa bittien siirtelyyn. Piirsin grafiikat käyttäen Adobe Photoshopia ja omaa Image Spectrumizer -työkaluani. Materiaalia Kaikki Spectrumille tekemäni työkalut ja pelit ovat vapaasti levitettävissä tai muokattavissa ja löytyvät osoitteesta iki.fi/sol/speccy.html. Näistä maskeista tarvitaan kahdeksan kopiota, yksi jokaista sivuttaissuuntaista liukumaa kohden. Memory : 2 4 6 8 10 12 14 16 |-------|-------|-------|-------|-------|-------|-------|-------| On load: rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr sssssssssssssssssssssssssss..b.................................. sfx.s BeepFX-kirjasto. Key : r)om s)creen b)asic L)ow block C)ode block H)igh block .)unused -)reserved Muita hyödyllisiä linkkejä: • z88dk: www.z88dk.org • SDCC: sdcc.sourceforge.net • Muistikartta: wordpress.animatez.co.uk/ computers/zx-spectrum/memory-map/ • z80-käskyt: www.z80.info/z80code.txt • Shiru’s Stuff (ääniä ym): shiru.untergrund. yofstab.h Ruudun vaakaviivojen alkuosoitetaulukko. ................................................................ Pelin kaikki materiaali löytyy githubista osoitteessa https://github.com/jarikomppa/ speccy/tree/master/rgbobots. Tiukemmissa projekteissa C-ohjelmointi voi tuottaa päänvaivaa, sillä toisin kuin suoraan konekielellä ohjelmoidessa kaikkea ei voi hallita, ja jonkin verran muistia jää väkisinkin käyttämättä. bg.scr Pelin taustakuva. textout.c Tekstin tulostusrutiineja. Itse peliä tehdessäni minun ei tarvinnut kirjoittaa riviäkään Z80-konekieltä, vaan koko pelin logiikka on kirjoitettu C:llä. Ei siihen juuri muuta tarvita.. Mackarel-raportista näkee, että kasettimuodossa peli vie noin 8 561 tavua ja latauksen jälkeen 21 374 tavua. player.h Pelaajan sprite koodiksi käännettynä. Tämä peli ei itse asiassa vaatisi spriterutiineilta kaikkea sitä joustavuutta tai nopeutta jota ne tarjoavat, mutta kehityksen helppouden nimissä en kirjoittanut rutiineja uudelleen. Mackarel 2.1 by Jari Komppa, http://iki.fi/sol Progname set to "RGBobots " "crt0.ihx": Exec address : 40960 (0xa000) Image size : 7550 bytes Compressed to: 4123 bytes (54.609%) by ZX7 "logo.scr" Image size : 6912 bytes Compressed to: 1956 bytes (28.299%) by RCS "lowblock.dat": LowBlock addr: 23296 (0x5b00) LowBlock size: 13824 bytes Compressed to: 4438 bytes (32.104%) by ZX7 Boot exec address: 56684 (0xdd6c) BASIC part : 51 bytes Screen unpacker : 122 bytes App bootstrap : 123 bytes (69 codec, 54 rest) "rgbobots.tap" written: 10867 bytes Estimated load time: 82 seconds (19 secs to loading screen). br/~einar/bifrost/ • World of Spectrum: worldofspectrum.org KBD RAM ULA ROM SPKR Z80 Tiedosto Kuvaus app.c Varsinainen pelin koodi. Spektrumin sisältö RAM-piirit, näppäimistön liitännät, ULA-piiri, Z80-prosessori, ROM-piiri sekä kaiutin. ................................................................ Vaihtoehtoisesti olisin voinut muuttaa näiden ruutujen datat .h-tiedostoksi ja ajaa ne c-kääntäjän läpi, mutta tämä ratkaisu oli yksinkertaisempi. net/software.shtml • BIFROST*, NIRVANA+: www.ime.usp. ..............................LLLLLLLLLLLLLLLLLLCCCCCCCCCCCCCCCC On boot: rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr sssssssssssssssssssssssssssLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL LLLLLLLLLLLLLLLLL...............CCCCCCCCCCCCCCCCCCCCCCCCCCCCCC.. bobot.h Vihollisen sprite koodiksi käännettynä
Jos joku on vaivautunut toteuttamaan sulavasti liikkuvat hahmot, niiden värit sekoittuvat herkästi vieressäolevaan grafiikkaan. Nopeusvaikutelmaa antaa osaltaan sekin, että näyttömuistiin joutuu pienemmän resoluution vuoksi kirjoittamaan suhteessa vähemmän tavuja. Jos moduuliportti on jätetty tyhjäksi, kone ilmoittaa alkuteksteissä ”3583 BYTES FREE”. Sen kuoret muistuttavat erehdyttävästi vanhanmallista C64:ää, mutta kun virrat kytketään päälle, on ero jo huomattava. 3 62 1 980-luvun alkuvuosina Commodore toi markkinoille edullisen kotitietokoneen. Vicissä ei ole varsinaista grafiikkatilaa spriteistä puhumattakaan. Sitä myytiin maailmanlaajuisesti 2,5 miljoonaa – enemmän kuin yhtäkään aiempaa tietokonemallia. Tämän huomaa selvästi vanhoissa peleissä – hyvin monien hahmot on piirretty 8×8 pikselin merkeiksi, joita liikutellaan 8 pikselin askelissa. Mitä muutamaan vaivaiseen kilotavuun edes mahtuu. Kyseessä oli tietenkin Vic 20. Kone erottui muista yhtä halvoista koneista konekirjoitusnäppäimistöllään, värigrafiikallaan ja useammalla äänikanavallaan. Suomessa sillä aloittivat tulevista tekniikkavaikuttajista niin Jyrki Kasvi kuin Linus Torvaldskin. Ensivaikutelma voi hämätä Vic 20 antaa varsin rupuisen ensivaikutelman. Kehitys ei ole pelkkää yksiulotteista parantumista, joten parannusten yhteydessä joudutaan usein myös luopumaan jostain. Kesti kuitenkin 1990-luvun loppupuoliskolle asti, ennen kuin harrastajat innoistuivat toden teolla tutkimaan, mihin Vicci oikeasti pystyy. Joku saattoi innostua väsäämään silloin tällöin pelin, ja joskus saattoi ilmestyä demontapainenkin. Pelinja demontekijät kilpailivat suorastaan verisesti uusien videoja äänipiiritemppujen löytämisessä. Todellisuudessa koneiden maailmat ovat varsin erilaiset: Nepassa esimerkiksi grafiikan piirtäminen varsinaisen kuva-alueen ulkopuolelle vaatii esoteerisia temppuja, kun taas Vicissä tämän voi tehdä jopa Basicissa – kuva-alueen sijainti ja koko kun ovat suoraan rekistereissä. Vic 20 esimerkiksi on jonkin verran nopeampi kuin C64. Useimmiten tämä oli pelaamista tai yleisempää muistojen verestämistä, mutta joskus koneella saatettiin tehdä jotain luovaakin. Teksti: Ville-Matias Heikkilä Kuvat: Mikko O. Ensivaikutelman perusteella on siis helppo olettaa, että Vic 20 olisi jonkinlainen C64:n karkea ja suppea esiversio, jossa ei ole mitään, mitä Nepassa ei olisi. 2 1 6 . Lisäksi C64:n videopiiri joutuu silloin tällöin varastamaan kellojaksoja suorittimelta, kun taas Vic 20:ssä koodi pyörii tasatahtia kaiken aikaa. Sen suorittimen kellotaajuus on hieman yli yhden megahertsin, kun Nepa jää hieman sen alle. Äänipuolelta on odotettavissa tukkoisen oloista kanttiaaltopuupatusta ja kohinaa, ehkä silloin tällöin lyhyt epävireinen melodialuritus. Commodore 64 rikkoi Vicin myyntiennätykset moninkertaisesti ja synnytti vuosien mittaan kulttuurin, jossa laitteesta revittiin yhä enemmän irti. Vicci oli monen ensikosketus tietotekniikkaan mutta jäi pian seuraajansa jalkoihin. Resoluutio on paljon palikkaisempi, merkit liki tuplasti niin leveitä kuin Kuusnepassa. Rauta Kovempi kuin kuvittelet: Vic-20 Joidenkin koneiden rajoja puskettiin alusta alkaen, toisten kohdalla tähän innostuttiin vasta paljon myöhemmin. Vaikka uudet koneet tulivat Vicin tilalle, sen pariin palattiin aina silloin tällöin. Vic 20:lle ei tällaista kulttuuria sen sijaan koskaan ehtinyt muodostua sen kaupallisena aikana. Torvinen, Ville-Matias Heikkilä
Käynnistysvaiheessa näytöllä on 23 merkkiriviä, kullakin 22 merkkiä. Ties millaisia yllätyksiä saattoi siis odottaa vaatimattoman pinnan alla! Tekniikan perusteet Vic 20:n nimi koostuu kahdesta osasta. 63 Kun Vicille ruvettiin tekemään demoja, ei kyse ollut vain rajallisen muistin ja raudan tuomista haasteista vaan myös tutkimusmatkasta laitteiston uniikkeihin ominaisuuksiin. Värimuisti on tarpeellinen siksi, että videopiiri on konsolimarkkinointitermejä käyttäen 12-bittinen: joka kerta, kun se lukee muistista 8-bittisen tavun – esimerkiksi mikä merkki näytölle piirretään – se lukee samalla vastaavasta värimuistin kohdasta 4-bittisen puolitavun. Jeff Minterin Gridrunner ei vain tyydy 8×8-grafiikkaan vaan peräti korostaa sitä.. Vaakaresoluutio sattuu muuten olemaan sama kuin televisiosignaalin värikantoaallon resoluutio, ja tästä syystä komposiittivideo ei Vicillä tuota samanlaisia värivääristymiä kuin isompiresoluutioisilla koneilla. Merkin tavanomainen koko on 8×8 bittiä – eli kaksivärisenä 8×8 pikseliä ja nelivärisenä 4×8 tuplaleveää pikseliä. Alkuosa viittaa koneen yhdistettyyn videoja äänipiiriin, MOS 6560/6561:een eli VIC:hen (Video Interface Chip), kun taas lopun 20 on ROM-muistin määrä kilotavuina. Siinä missä C64:n saloja oli ehditty tonkia perusteellisesti vuosikausien ajan ja tuhansien koodaajien voimin, Vicin mahdollisuuksista oli vasta raapaistu pintaa. Värimuistiin tallennettu pääväri on kuitenkin joka tapauksessa ainoa merkkisolun oma väri – muut värit määräytyvät videopiirin rekistereistä. Näiden lisäksi on vielä kaikille kanaville yhteinen, nelibittinen äänenvoimakkuusrekisteri. Värit 0–7 ovat tavanomaiset RGB-perusvärit, ja värit 8–15 ovat niiden kirkastetut versiot, paitsi että mustan ja valkoisen kohdalla on yläpuoliskossa ruskea ja oranssi. Vicin muut sisukset ovat varsin samankaltaiset kuin C64:ssä. Sitä on perusmallissa kaikkiaan 5120 tavua ja 1024 puolitavua. Näyttömuistin tavut toimivat osoittimina merkkimuistiin, jonne on tallennettu kunkin merkin pikselirakenne. Väriarvot 8–15 eivät kuitenkaan tarkoita tässä paletin värejä 8–15, vaan sitä, että merkki on kaksivärisen sijaan nelivärinen (multicolor). Kolme ensimmäistä kanavaa (”altto”, ”tenori” ja ”sopraano”) on tarkoitettu kanttiaallolle ja neljäs kanava kohinalle. Näyttöja merkkimuisti eivät ole mitään kiinteitä muistialueita, vaan niiden alkuosoitteita voi siirrellä melko vapaasti. Kirkkaiden värien kirkkaus riippuu koneyksilöstä – tai oikeastaan siitä, mihin asentoon eräs emolevyllä oleva ruuvi on kierretty. Merkkien määrää voi muuttaa suoraan rekistereitä rukkaamalla, mutta vaakasuunnassa tavalliselle näytölle ei mahdu käytännössä enempää kuin 28 merkkiä. ROMohjelmisto on molemmissa koneissa käytännössä sama. Kutakin kanavaa vastaa VIC-piirin rekistereissä yksi tavu, jonka ylin bitti kytkee sen päälle ja pois, ja loput bitit määräävät äänen aallonpituuden. RAM-muistin määrän käyttäminen olisi ollut markkinointimielessä hieman noloa, sillä koneen hinta oli alun perin saatu painettua alas nimenomaan jättämällä RAM pieneksi. Puolitavut tarkoittavat värimuistiksi kutsuttua muistialuetta, jossa vain tavujen alapuoliskot ovat käytettävissä: yläpuoliskojen takana ei siis ole muistia lainkaan. Äänikanavia on neljä verrattuna vaikkapa SIDin kolmeen, mutta niiden ominaisuudet ovat huomattavasti rajallisemmat. Tarjolla on myös mahdollisuus tuplasti korkeampiin eli 8×16 bitin merkkeihin, jotka ovat erityisen käyttökelpoisia pikseligrafiikkatilan toteutuksessa. Nepan virtalähteet, levyja kasettiasemat, peLaajentamattoman VIC-20:n alkutekstit. Vicin väripaletissa on 16 väriä – joskin värejä 8–15 voidaan käyttää vain taustavärinä ja toisena multicolorvärinä. Tämä puolitavu ilmaisee tässä tapauksessa, minkävärinen merkistä tulee. Monissa peleissä merkkimuisti on asetettu siten, että puolet merkeistä luetaan RAMja puolet ROM-muistista – näin peli saa käyttöönsä omannäköisensä hahmot, mutta esimerkiksi pistelaskurissa voidaan käyttää ROM-merkistön numeroita. 6502-suorittimen ainoana erona Nepan 6510:aan on se, ettei muistipaikoilla ja 1 ole erityistehtävää. Pikseligrafiikkatila toteutetaan Vicissä yleensä asettamalla merkit näyttömuistiin johonkin mielekkääseen järjestykseen, jolloin grafiikkaa voi piirtää määrittelemällä merkkien ulkomuotoja uusiksi. Molemmissa koneissa on lisäksi kaksi I/O-apupiiriä ajastimineen (Vicissä MOS 6522 eli VIA, C64:ssä MOS 6526 eli CIA). C64-palettiin verrattuna värit ovat puhtaammat, eikä harmaasävyjä ole. VIC-piirin tuottama kuva koostuu siis merkeistä, joista kullekin on 16 mahdollista väriarvoa
Päätin rajoittua laajentamattomaan koneeseen, sillä sen vähäinen muistimäärä tuntui mukavalta näpertelyhaasteelta. Nyt oli siis ensimmäistä kertaa maailmassa kaksi Vicdemoja tekevää tahoa, jotka olivat aktiivisia samaan aikaan. Vuonna 1995 Commodore-harrastaja Marko Mäkelä onnistui toteuttamaan Vicillä rasterikeskeytyksen ja alkoi seuraavana vuonna työstää ensimmäistä todella kunnianhimoista Vic 20 -demoa. Näin ollen ne keskittyivät lähinnä siihen, mikä oli turvallista emuloida, eli PC-tyyppisiin pikseliefekteihin: kuinka suuren tunneliefektin saisin tehtyä näillä muistirajoilla, entä millaisen fraktaalivuoriston. Se oli myös ensimmäinen Vic-demo, joka latasi uutta tavaraa levyltä edellisen osan vielä pyöriessä. 3 64 liohjaimet ja näppäimistöt kytkeytyvät ongelmitta myös Vicciin. Rasteripalkit (rasterbars) ovat rasteritempuista tunnetuin: siinä yhtä näytön globaaleista väreistä vaihdetaan joka vaakajuovalla erikseen, jolloin saadaan aikaan esimerkiksi ylös ja alas pomppivia väripalkkeja. Itse julkaisin kilpailussa Impossiblatordemon vuonna 2001, kun kompoon saattoi ensimmäistä kertaa ehdottaa ja tuoda omia laitteitaan. Tein ensimmäiset Vic-demoni emulaattoreihin turvautuen, koska käytössäni ei ollut vielä tarpeeksi vaivatonta tiedostonsiirtomenetelmää. Tätä tietoa käyttäen voidaan toteuttaa myös ns. 2 1 6 . Kun väriä vaihdetaan useammassa vakiokohdassa per juova, puhutaan rasterspliteistä. Demoilla oli lähinnä kuriositeettiarvoa demopartyjen C64-tuotosten seassa. Tämä johtuu nopeammasta prosessorista, badline-ajastuksen puutteesta ja siitä, että tärkeimmässä värirekisterissä on kaksi globaalia väriä yhden sijaan. Dekadencen Seven Eleven rikkoo edellisen splittiennätyksen maltillisesti, jotta tilaa jäisi vielä muutamalle ennätysdemolle lisää.. Vicillä splittejä saa juovalle huomattavasti enemmän kuin C64:ssä. Ryhmät julkaisivat jatkuvasti pieniä, kerralla muistiin mahtuvia tuotoksia, jotka yleensä rakentuivat yhden efektin ympärille. Tämä inspiroi monet harrastajat tekemään tuotoksia koneille, joille ei ollut aiemmin demoja juuri näkynyt – kisassa näkyi mm. Videopiirin rekistereistä voi suoraan lukea, monettako vaakajuovaa piiri on juuri virkistämässä näytölle. Samassa rytäkässä syntyi myös pari työkalua ja jokunen pelikin. Demokilpailuun oli mahdollista osallistua millä tahansa laitteella paitsi 32-bittisellä PC:llä tai AGA-Amigalla. Rasterit haltuun Rasterikikkailu on Vicillä varsin helppoa. Ruudunpiirtoon tahdistettuna voidaan toki vaihtaa muutakin kuin värejä, esimerkiksi näytön vaakasuuntaista asemointia. Kahdeksan kilon lisämuistin vaativa Veni Vidi Vic syntyi kansainvälisenä yhteistyönä ja osallistui joulukuussa tanskalaisen The Partyn wild-kompoon. Skenen synty Ensimmäiset Vic 20:lle tarkoitetut demoskenedemot teki tiettävästi Pu239-ryhmä vuosina 1989–1990. stabiili rasteri, jossa ohjelmakoodi on tahdistettu näytönvirkistykseen kellojakson tarkkuudella. useampi MSX-1-demo. Vicissä tämä tarjoaa näppärän keinon toteuttaa leveyksiltään ja sijainneiltaan vaihtelevat rasteripalkit. Aleksi kokosi näitä tuotoksia yhteen demodiskeiksi. Vaakasuuntaisen alkukohdan voi säätää puolen merkin tarkkuudella, leveyden merkin tarkkuudella, ja pikPU-239 teki Vic-demoja monta vuotta ennen muita. Ei siis ihme, että suuri osa Vic 20 -demontekijöistä on tullut C64-maailman puolelta. Yllätyksekseni kisaan osallistui toinenkin Vic 20 -tuotos, Aleksi Eebenin eli Heatbeat/ CNCD:n Big Time. Teknisen tutkiskelun luonne kuitenkin muuttui, kun sain haltuuni Marko Mäkelän kehittämän C2N232sovittimen. Kasettiportin ja PC:n RS232-portin väliin kytkettävä palikka mahdollisti huomattavasti suoraviivaisemman demonkehityksen ja emulaattorien poisjättämisen, joten turha varovaisuus sai unohtua ja kiellettyjen bittien tutkimus alkaa. Stabiili rasteri on monissa kasibittisissä avain edistyneempään rasteritemppuiluun – esimerkiksi C64:n sivureunusten poisto vaatii vaakaskrollirekisterin nytkäytystä juuri oikealla kellojaksolla. Julkaisin ensimmäisen oman Vicdemoni, Bouncing Ball 2:n, vuonna 1998 järjestetyille ensimmäisille Alternative Partyille. Vuonna 2002 Vic-demoskenelle tuli vielä kaksi muuta aktiivista tekijää, Dekadence ja Creators. Vaikka tämä olikin lähinnä näytösluonteinen kisa, se sai monet huomaamaan, että Vicillä oli nyt käynnissä samanlaiset potentiaalinvapauttajaiset kuin C64:llä 1980-luvulla. Oma demoni päätyi ykköseksi, ja tulevaisuus Vicin parissa näytti siis valoisalta. Muutaman vuoden päästä Assembly vaihtoi perinteiset C64-kilpailut yleisemmiksi oldskool-kilpailuiksi – ehkäpä juuri Altpartyn innoittamana. Etenkin CNCD ja Dekadence julkaisivat vuonna 2002 splittidemoja, joissa ryhmät vuorotellen rikkoivat toistensa splittiennätyksiä. Intensiivikausi meni kuitenkin ohi parissa vuodessa, minkä jälkeen demojen ilmestymistahti väheni muutamaan vuodessa. Jokin saattoi kokeilla uutta rasteritemppua, toinen toteuttaa ensimmäisenä plasmaefektin tai Kefrens-palkit
Juovalaskuri 36869 / $9005 ??????????. 2. Valokynän vaakasijainti 36871 / $9007 ??. Näyttömuistisivun vaihtaminen juovakohtaisesti mahdollistaa esimerkiksi koko ruudun korkuiset bittikarttazoomerit – joskaan uniikkeja pikselirivejä ei tällöin voi olla kovin monta. Kuviin kaipaillaan usein lisää värejä. Joskus jopa efekteihin on toteutettu muistinvarausjärjestelmä merkeille. ????. Taustan väri VIC-piirin rekisterikartta. Pikseligrafiikka kuluttaa muistin varsin äkkiä – esimerkiksi normaalin Basic-ruudun kokoisen kuvan pikselit vievät käytännössä koko neljän kilotavun lohkon. Aallonpituus ??????????. Multicolor-apuväri 36879 / $900F ??. Vicciharrastajien Denial-foorumille ilmestyi jopa avoin kirje aiheesta. Tällä tekniikalla on saatu toteutettua paitsi erilaisia vaakaakselin ympäri pyöriviä rakennelmia kuten kuutioita ja palkkirykelmiä, ja myös esimerkiksi zoomaavia kuvioita ja vuoristorata-ajoja. C64-demokoodaajalla on käytössään laajoja ja avaria muistialueita, joille hän voi levitellä väljää dataa ja taulukoita melko suurpiirteisesti. paddle-ohjaimen asento 36873 / $9009 ??. Robotic Liberationin muistinkäytön säädin käsin, mutta myöhemmissä trackmoissa turvauduin omaan skriptirykelmääni. Muistin ja pikselien haasteet 2000-luvun alkupuolella Vic 20 -demoskenen oletuskokoonpanoksi vakiintui laajentamaton kone 1541-levyasemalla. 65 selintarkaksi asemoinnin saa laittamalla rivin alkuun ja loppuun sopivat hienosäätömerkit. Merkkimuistin alkuosoite ???????. Akronyme Analogiker -ryhmä kehitti tekniikkaa eteenpäin vaihtamalla värimuistin sisältöä lennossa ja hyödyntämällä vain NTSCkoneesta löytyvää interlace-tilaa. Kun muistiin haluaa tallentaa paljon kuvia, pääsee keksimään tapoja esittää ne mahdollisimman tiiviisti. Carillonin demon Back in the Good Old Days pyörivät kuutiot ovat suurempia kuin mitä yksinkertaiseen pikselipuskuriin mahtuisi – joskin samalla myös varsin hitaita. Kolmen kilotavun lisämuisti tulee näiden lohkojen väliin, isommat lisämuistit niiden jälkeen, ja eri lisämuistiyhdistelmät muuttavat niin ohjelmakuin näyttömuistinkin alkuosoitetta. Robotic Warrior -demon silhuettikuvien tallentamiseen on käytetty vain yksi bitti per merkki, mutta merkkien ulkoasut riippuvat niiden neljästä naapurista. Merkkejä per rivi ??????????. Jos skaalauksen saa askarreltua rasterikoodin odottelukellojaksoiksi, saa zoomerin täyttämään vaikka koko ruudun. Interlace (vain NTSC) 36865 / $9001 ??. Tässä Aleksi Eebenin Dragonwing. Näyttömuistin alkuosoite 36870 / $9006 ??. Laajentamattoman Vic 20:n kokotavuinen RAM-muisti on kahdessa lohkossa: ensimmäinen kilotavu ($0000– $03FF) on varattu nollasivulle, pinolle ja erilaisille käyttöjärjestelmän ja Basictulkin muuttujille ja puskureille. Rivimäärä per ruutu ??????????. 1. Ja jos jollekin taulukolle riittää puolitavumuisti, se sijoitetaan ilman muuta sinne. Laajentamattomalle Vicille demoa tekevä sen sijaan joutuu miettimään tarkasti, kuinka paljon hän tarvitsee milloinkin tilaa esimerkiksi pikselidatalle tai näyttömuistille, ja kuinka pieniksi hän saa taulukkonsa tiivistettyä ilman että koodin nopeus kärsii liikaa. Näyttömuistin alun lisäbitti 36867 / $9003 ??????????. Valokynän pystysijainti 36872 / $9008 ??. Oma grafiikkaeditorini, Brickshop, on pikselija merkkigrafiikkaeditorin välimuoto, joka varaa muistia vain uniikeille merkeille. Hieman edistyneempi rasteriefekti Orb Megademosta.. 36878 / $900E ??. Vic-demojen lomassa on syntynyt myös uusia pelejä. Tämän vuoksi grafiikassa kannattaa suosia merkkien kierrätystä. paddle-ohjaimen asento 36874 / $900A Alttokanava 36875 / $900B Tenorikanava 36876 / $900C Sopraanokanava 36877 / $900D Kohinakanava ??????????. Merkin koko (1 = 8x16) . Äänenvoimakkuus ??????????. Käyttäjän ohjelmalle ja näyttömuistille on puolestaan alueella $1000–$1FFF oma neljän kilon lohko. Juovakohtaisten värien valinta ei ole kovin luontevaa nypläystä ihmiselle, joten suuri osa niihin tukeutuvista kuvista on ohjelmallisia konversioita. Levareita sitäpaitsi on C64-harrastajilla yleensä muutenkin, kun taas Vicin lisämuisteja on vaikeampi löytää. Reunuksen väri ??????????. 36864 / $9000 ??. Kuvan vaakasijainti ??????????. Jos tehdään trackmo, eli isompi demo, joka lataa jatkuvasti uutta materiaalia levyltä musiikkiin tahdistettuna, menee muistinhallinta jo melkoiseksi jonglööritouhuksi: mistä löytyisi ajanhetkestä X alkaen Y peräkkäistä tavua ilman sivunvaihtoja. Sekä Brickshop että Albert/Pu-239:n VicPic-grafiikkamoodi antavat määrittää kuvan globaalit värit erikseen joka juovalle. Ideana on, että kukin pikselirivi skaalataan omaksi merkkirivikseen, ja ruutua virkistettäessä asetetaan kullekin juovalle näkyviin oikea merkkirivi. Jos optimointitemppu siis vaatii vaikkapa pinon käyttämistä näyttömuistina, niin kukaan ei estä. On/o. Demontekijän ei onneksi tarvitse välittää muistijärjestelyistä enää sen jälkeen, kun oma koodi on saatu käyntiin. Retroharrastajat toki olivat näreissään tästä, sillä yhdistelmähän oli täysin anakronistinen: lisämuisti oli 1980-luvun harrastajille paljon oleellisempi hankinta kuin levyasema. Kuvan pystysijainti 36866 / $9002 ??. Käänteiset värit (1 = o?) ???????. Juovalaskurin alin bitti 36868 / $9004 ??. Viccidemoissa ei kuitenkaan ole ollut kyse mitään historian elävöittämisestä vaan mielenkiintoisten asioiden tekemisestä haastavalla raudalla – ja vähäinen muistimäärä on oleellinen osa tätä haastetta
Siinä merkkimuisti on puoliksi tyhjän päällä – merkistön toinen puolisko näkyy siis normaalisti, mutta toinen koostuu ”läpinäkyvistä merkeistä”. Epävireisyyttä tosin saa hieman korjattua vaihtelemalla äänenkorkeutta nopeasti kahden lähimmäksi menevän välillä. Sopivaa koodia ajamalla on siis mahdollista pakottaa videopiiri lukemaan mikä tahansa tavurimpsu joko merkki-indekseinä tai bittikarttana. Nyt selvisi, että kiikkuteoria oli väärä, ja että kutakin kanttiaaltokanavaa itse asiassa pyörittää 8-bittinen siirtorekisteri! Rekisterin sisällön voi asettaa tarkasti ajoitetulla on/off-bitin vaihtelulla, ja mahdollisia aaltomuotoja on peruskanttiaalto mukaanlukien kaikkiaan 16. Kanttija kohinakanavien lisäksi on mahdollista toteuttaa myös PCM-äänentoistoa äänenvoimakkuusrekisterin kautta samaan tapaan kuin SIDissä. Se ei kuitenkaan ole satunnaista: suoritin ja videopiiri käyttävät kahden megahertsin väylää vuorotellen, joten jos jompikumpi yrittää lukea tyhjän päältä, se lukee itse asiassa sen tavun, jonka toinen piiri jätti väylälle edellisellä kellojaksolla. Tekniikka kuitenkin kehittyi, ja esimerkiksi Aleksi Eebenin Fisichella-editori toi mukaan SID-editoreista tutut arpeggiotaulukot. Robotic Warrior -demo oli menestys, ja puhesynaa tuli käytettyä vielä monissa demoissa sen jälkeen. 2 1 6 . Yli 20 vuoden ajan oli kuviteltu, että Vicin kanttiaaltokanavat olisivat yksinkertaisia ajastettuja kiikkuja. Aleksi Eeben toteutti myöhemmin tällä tekniikalla modinsoittorutiinin ja SID-emulaattorin. Synan toimivuus perustuu pitkälti psykologiseen temppuun: ruudulla samanaikaisesti näkyvä teksti ohjaa katsojan kuulemaan oikeat äänteet, vaikka kuuluvat ääniaallot ovat vain vähän sinnepäin. Tämä johtuu siitä, että videopiiri yrittää laskea seuraavan merkin osoitetta samaan aikaan kun resetoi sisäistä näyttömuistiosoitintaan, mikäli sekoittaa osoittimen bitit. Vicin ääniominaisuudet kannustavat bassovoittoisuuteen: aallonpituuslaskuri on tarkimmillaan matalilla taajuuksilla, ja ääni pusketaan joka tapauksessa läpi 1600 hertsin alipäästösuotimesta. Päätin toteuttaa tulevia Alternative Partyja varten laulavan puhesyntetisaattorin. Entäs grafiikan rajat. Tempun käyttökelpoisuutta rajoittaa hieman se, että puolitavumuisti sotkee dataväylää kahdella mahdollisella tavalla koneyksilöstä riippuen. Kukin aliohjelma tuottaa ruudulle tietyn pikselirivin, jotka kuuluvat venyteltävään ja Orb Megademon tekstuuritunnelin pikselit on lohkaistu rasterihalkaistuista merkkisoluista. Cosinen Digit!-demon musiikki oli ensimmäinen, joka käytti digitoituja rumpusaundeja. Myös Basic-laturi niille, jotka haluavat kokeilla oikealla koneella!. Nämä merkit päästävät läpi suorittimen kohinat, jotka pakotetaan tietynlaisiksi kellonjaksontarkasti tahdistetuilla aliohjelmilla. Korkeampia oktaaveja käytettäessä on mietittävä tarkasti, mitä säveliä kannattaa käyttää, ettei musiikki kuulostaisi epävireiseltä. Orb-ryhmän Orb Megademo käyttää tekniikkaa vähemmän deterministisesti kytkemällä äänikanavan lyhyesti offille joka kerta soittorutiinia kutsuttaessa, jolloin äänen aaltomuoto vaihtelee dynaamisesti. Pari hyvää lähtökohtaa tähän on tunnettu alusta alkaen, joskin 1980-luvun harrastajat pitivät niitä lähinnä käyttökelvottomina virhetiloina. Sopivalla kikkailulla saattaisi olla siis mahdollista pompottaa videopiiriä melko vapaasti sinne tänne muistissa, mikä mahdollistaisi monet hienot efektit. Kun kerran rasteriväritystä tuetaan, niin onhan sitä käytettävä! 0334 78 SEI 0335 AD 04 90 LDA $9004 0338 8D 0F 90 STA $900f 033B 4C 35 03 JMP 0335 1 FORI=820TO829:READA:POKEI,A:NEXT: SYS820 2 DATA120,173,4,144,141,15,144,76, 53,3 Yksinkertaiset rasteripalkit, joissa juovalaskurin arvoa kopioidaan jatkuvasti näytön väreiksi. Robotic Warrior tuottaakin puheen pelkällä kanttiaaltokanavien taajuusvaihtelulla. Uusien aaltomuotojen löytäminen loi toivoa löytää järisyttäviä salaisuuksia myös grafiikkapuolelta. Robotic Liberation -demon logo ladattuna Brickshopiin. Riittävän tarkkaa teoriaa näistä virhetilanteista ei kuitenkaan ole vieläkään olemassa, joten niitä ei ole päästy hyödyntämäänkään. Uudet aaltomuodot mahdollistivat ylätaajuuksiltaan rikkaamman äänen, mikä osaltaan vähensi tarvetta soittaa korkeita kanttiaaltoja. Jos kuva-alan asettaa liian leveäksi, osa pikseliriveistä näyttäisi tulevan aivan väärästä paikasta. Vicin volyymirekisterillä toteutettu digiääni on paljon hiljaisempi kuin SIDin vastaava, ja se hukkuukin helposti varsinaisten äänikanavien ääneen. 3 66 Uudenlaista ääntä Vielä Veni Vidi Vicin musiikki koostui lähinnä kanttiaaltopiippauksista. Impossiblator 3 oli ensimmäinen demo, joka hyödynsi tyhjän päältä lukemista. Kun näyttötai merkkimuisti asetetaan muistialueelle, jonka takana ei ole muistia lainkaan, ruudulla näkyy satunnaisen oloista kohinaa. Halusin demon julkaisun jälkeen saada aikaiseksi puhtaamman ja selvemmin kuuluvan digitoiston, mutta sitkeän bugin selvittely toikin esiin jotain hämmentävää. Loppuvuonna 2002 oli Vicillä toteutettu jo sen luokan 3D-pyörittimiä ja Doom-moottoreita, että tuntui sopivalta säväyttää välillä äänipuolella
Lukkoon lyötyjä vakioita on verrattain vähän verrattuna säädettäviin parametreihin, ja koneissa on niiden yksinkertaisuuteen nähden melkoisesti kätkettyä potentiaalia. Mutta mikä on se houkutin, joka saa demokoodaajan etsimään Graalin maljoja vanhojen koneiden sisältä. VICE on luotettavin emulaattori, ja demoskenetoiminnan ansiosta se on nykyisin niin tarkka, ettei koodia välttämättä tarvitse edes testata aidolla koneella. Kasibittisdemot ja pieneen tilaan ahdetut ohjelmat tekevät nykyistä ohjelmistotekniikkaa naurunalaiseksi ja antavat mahdollisuuden kurkata toiseen maailmaan, jossa tekniikkaa hyödynnetään aivan eri tavalla. Creatorsin Rasta Split virnuilee käynnissä olleelle rastersplittikisalle. Spectrumissa videopiirin toimintaa ei pääse juuri sorkkimaan, MSX:ssä vaivana on lisäksi videomuistiin kirjoittamisen hitaus ja Oric ei edes tarjoa mahdollisuutta rasteritahdistukseen. Ohjelmallisesti konvertoitu kuva Akronyme Analogikerin FLI96grafiikkatilassa. 67 skrollailtavaan grafiikkakuvaan ja sen päällä pyörivään ja vedestä heijastuvaan palkkiin. Demontekovuosista viisastuneena Vic 20, samoin kuin yleisemminkin Commodoren ja Atarin kasibittiset, on välttänyt monet suunnitteluvirheet, joihin törmää muiden valmistajien koneilla. Molemmat ovat pintapuolisesti rujoja ja spekseiltään heikkoja koneita, joiden rajat ovat lähellä mutta helposti paukuteltavissa. Merkkimäärä on luonnollisestikin pidetty minimissä. Kone on yksinkertaisempi kuin vaikkapa NES tai C64, joten sen perimmäisiin saloihin pääsee myös nopeammin kiinni. PWP:n The Next Level koostuu levyltä lennossa ladattavasta animaatiosta. PWP:n Impossiblator 3 esittelee uuden väylätempun. Muistikartta ja valmista esimerkkikoodia löytyy helposti netistä. Omalla kohdallani ainakin osittain uteliaisuus – halu tietää, mitä suljetun oven takana on – mutta myös todistelunhalu. Jos Vic 20 -ohjelmoinnin haasteet kiinnostavat, pääsee emulaattorilla, muistikartalla ja 6502-ristiinkääntäjällä hyvin alkuun. Klassikkoraudasta ehkä lähimmäksi Vic 20:tä demokoneena menee Atari 2600. Toisaalta kasibittisdemot antavat myös aihetta huoleen: jos varsin yksinkertaisesta mikropiiristä löytyy vielä vuosikymmenten päästä uusia ominaisuuksia, niin mitä kaikkea onkaan saatettu piilottaa nykyisiin, tuhansia ja miljoonia kertoja kompleksisempiin piireihin. Kumpikaan ei kuitenkaan pääse rujoa olemustaan kovin pitkälle pakoon, vaikka tekniset temput olisivat kuinka vallankumouksellisia. Elämme maailmassa, jossa mikropiirit nopeutuvat ja monimutkaistuvat kaiken aikaa, mutta samalla niiden potentiaalia alikäytetään aina vain pahemmin. Multicolor-grafiikkaa Creatorsin demosta Burn.. Kelvollisia 6502-ristiinkääntäjiä puolestaan ovat Dasm, ACME ja ca65. Itse tekemään
Kun tämän saa yhdistää vielä retroiluun ja maailman parhaisiin peleihin, mikäs siinä on kirjoitellessa. Tuntipalkoille ei tässä pääse, mutta eipä tätä nyt ihan pelkällä kiitoksella tarvitse sentään tehdä. Kai se on geeneissä. Kauppinen Kuvat: Juho Kuorikoski, Minerva Kustannus, Mobygames pohjimmiltani journalisti, olen halunnut mennä tiedon alkulähteille saakka. Se syntyi oikeastaan vasta viikkoa ennen deadlinea, kun olin menossa nukkumaan. Tuo rakennusprojekti on tosiaan niellyt ihan jokaisen rojaltipenninkin, mutta aika hidasta olisi raksata, jos pelkästään kirjojen tuotoilla pitäisi puuhaan ryhtyä. Olen yleensä pöytäseurueesta aina se ensimmäinen, jolla lautanen on tyhjä. Mä itse pidän näitä kirjojani tosi pitkinä lehtijuttuina. Olen äärimmäisen otettu siitä, että pystyn tekemään näitä kirjoja, koska lukijoita niille riittää. Olen itse pyrkinyt koostamaan omista kirjoistani journalistisia tietokirjoja. Tykkään siitä, kun asiat tapahtuvat ripeästi. Mittakaava on toki aika paljon suurempi. Ei tuossa ole oikeastaan mitään sen kummempaa kuin perustason toimittajan työskentelyä. Ei ihan tässä mittakaavassa eikä aivan näin syväluotaavasti. Onneksi lukijoita löytyy, eivätkä muut ole tajunneet tunkea apajille. Minulla on näistä kaikista kirjoista kymmeniä tunteja haastattelumateriaalia, päälle vielä sähköpostin välityksellä kerätty materiaali. Kirjat perustuvat vahvasti omaan pelaamiseesi, mutta mistä syvemmistä altaista tietoa ja käsiteltäviä pelejä on kaivettu. Haastattelut ovat tärkein yksittäinen tiedonhankintakanava. Pelit Juho Kuorikoski, kunnon mies.. 3 68 Jätkä rullaa vahvasti pelikirjarintamalla Sinivalkoisen pelikirjan jälkeen. Tietysti pelit itsessään antavat hurjan paljon materiaalia, mutta varsinaisia taustoja kaivellessa mikään ei voita oikeaa haastattelua esimerkiksi Skypen välityksellä. Tim Schaferin kanssa homma meni osittain vihkoon. Tie on nyt auki, joten mikäs tässä on päästellessä. Propsit hänelle, kun jaksoi kuunnella fanipojan änkytystä. Silloin Avaruusmuukalaisten INVAASIO paketoitiin kirjaksi UFO/X-COM-pelien historia kovissa kansissa Juho Kuorikosken kolmas kovakantinen pelitietokirja sukeltaa ihmiskunnan ja avaruuden ilkeiden vierailijoiden aina vain uudestaan riehahtavaan konfliktiin. Tieto on varmistettu monesta lähteestä ja niissä on uutta faktaa aihepiiristään. Koska olen Teksti: Jukka O. Miksi. Etenkin haastatteluihin perustuvat ulkomaiset pelikirjat on ikävän usein tehty revolverityyliin, eli kysymys-vastausformaattiin, mikä on kirjamuodossa tosi uuvuttavaa luettavaa. Kauppinen tarttui Juhoa kravatista ja päätti tavanomaisen haastattelun tai kirja-arvostelun sijaan jutella herra kirjailijan kanssa mukavia. Miten yksi ihminen ehtii tähän kaikkeen. Mikä on ollut tähän mennessä suurin kirjojenteon ahaa-elämys. 2 1 6 . Onko uusi mökki rakentunut pelikirjarojalteilla vai syntyvätkö ne yhä hengen palon ja pelirakkauden voimalla. Jukka O. Olen perusluonteeltani varsin utelias, minua kiinnostaa valtavasti kaikki pelihistoriaan liittyvä. X-COM-kirjan viimeisestä luvusta olen erityisen ylpeä. Mä olen kakarasta asti ollut tällainen sähköjänis. En oikein osaa selittää sitä tarkemmin. Mielestäni olen onnistunut tässä kohtuullisen hyvin. Paksussa teoksessa riittää mielen kiintoista luettavaa. Ja toki on ihan älyttömän siistiä, että olen löytänyt itselleni sellaisen pienen lokeron, jota muut eivät ole täyttäneet. Paljonhan tuossa on duunia, mutta jutteleminen legendaaristen pelinkehittäjien kanssa on hauskaa puuhaa. Kirjasi ovat aihepiireiltäänkin aika ainutlaatuisia, maailmalla ei peliaiheita käsitellä vastaavalla tavalla. Kyllä tässä mennään pitkälti tunteen palolla, vaikka ihan yleisellä tietokirjatasolla jokaisella opuksellani on ollut ihan mukavasti lukijoita
Olin muuten paikalla kun Guardian tuhosi maailman Ultima Onlinen betan päättyessä 1997! Mutta. Tässä olisi periaatteessa saumaa, mutta rapakon takana kustantajat eivät oikein ymmärrä pelikirjallisuuden päälle. Olen mä jo jotain pyöritellyt mielessäni, mutta nyt on työn alla kaksi kirjaproggista, joista toinen käsittelee nörttikulttuuria ja pelaamista, mutta ei varsinaisesti pelejä. Heitin hänelle idean X-COMkirjasta, ja hän lupautui haastatteluun. Miten pystyit käsittelemään sarjaa. Ne pitää saada alta pois, sitten voisi taas keskittyä peleihin. Suurin yksittäinen yllätys oli se, kuinka helvetin hyvä peli UFO on edelleen. Tässä on jotain liikkeitä tehty, mutta en kyllä pidätä hengitystäni sitä odotellessa. Julian Gollopin ohella MicroProsella X-COM-soihtua hänen jälkeensä kantanut Dave Ellis oli tosi isona apuna ihmisten kontaktoinnissa. Samalla toivottavasti lisäsin oman pienen panokseni keskusteluun siitä, ovatko pelit taidetta. Pelisarjan paluu kesti pitkään, mutta nyt asiat ovat todella hyvällä tolalla: Firaxis jalostaa XCOMin konseptia, Xenonauts siistii originaalia, OpenXcom mahdollistaa alkuperäisteoksen pelaamisen ja Gollop itse työstää Phoenix Pointia, henkistä perillistä UFOlle. Kaikki tuossa välissä on enemmän tai vähemmän heikompaa tavaraa, X-COM: Apocalypsea lukuun ottamatta. Ufojen syytä. Toisekseen X-COM valikoitui aihepiiriksi legendaarisuutensa vuoksi. He ohjasivat aina seuraavalle tyypille. Hauskana anekdoottina X-COMkirjan juuret ovat syvällä Sinivalkoisessa pelikirjassa, sillä tamperelaisen Prank-pelifirman kaverit järjestivät minulle haastattelun Gollopin kanssa Chaos Rebornin tiimoilta. UFO oli julkaisunsa aikana aivan järjettömän innovatiivinen peli. Tuosta komennuksesta jäi parhaiten mieleen chilipähkinät, sytytetyt pierut ja palaneet verkkarit. Ääks! Jos kysyisit Star Trekista, vastaus olisi Deep Space Ninen In the Pale Moonlight, mutta X-Filesistä en osaa vastata. Paras X-Filesin jakso. X-COM-sarjassa on kova laadunvaihtelu. Rebelstar Raidersista Spectrum-aikakaudella alkanut kehitys huipentui mestariteokseen, mutta sitten alkoi loiva alamäki, joka vuosituhannen vaihteen tuntumassa muuttui luotisuoraksi kuiluksi. X-Filesin tunnari on jäänyt mieleen. Mitä hyviä pelejä sinulla on vielä jäljellä. Tässä oli noista vanhoista parroista iso apu. Eräs jenkkikirjailija on rustannut omaa X-COM-kirjaansa jo pari vuotta, mutta siitä ei näytä tulevan valmista. Joo, ilman muuta. Firaxiksen eka yritys oli hyvä, mutta vasta kakkonen on se suuri onnistuminen. Eka peli on edelleen rautaa, varsinkin OpenXcomin kanssa. Sen suunnitteluratkaisut ovat kestäneet todella hyvin aikaa. Firaxis taas modernisoi onnistuneesti Gollopin pelikonseptia. Jos en itse saanut heitä kiinni, he auttoivat. Proseduraalisesti generoidut kentät tekevät jokaisesta pelikokemuksesta uniikin. Halusin ottaa yksittäisen pelisarjan kirjan keskiöön siksi, että halusin ensinnäkin testata, onko materiaalia kokonaista kirjaa varten. X-COMista muka tykkää, vaan ei alien-salaliitoista! What is this madness! Muistan, kun naapurin Jarkon kanssa katsottiin yksi viikonloppu putkeen X-Filesia, ihan yötä myöten. Miten sait kiinni Gollopeja ja muita haastateltavia. Huutele kun tuut Treelle, niin pidetään kestit ja viskon sut susille. Tein seikkailupelikirjaa tehdessäni Pelit-lehteen jutun Chaos Rebornista ja pääsin haastattelemaan Julian Gollopia. Pahoin pelkään että liekkipierut ja palaneet verkkarit ovat jollain tapaa syy-seuraus-suhteessa... 69 X-COM-tietokonepelien klassikot Kirjailija: Juho-Kustaa Kuorikoski Kustantaja: Minerva Kustannus ISBN: 978-952-312-336-6 267 sivua, sidottu, nelivärinen hoksasin, että X-COM on tietokonepelien Citizen Kane ja tajusin myös, että pystyn perustelemaan sen. Jarkko testasi, miten pieru syttyy, jalassaan halpahalliverkkarit, jotka sitten sulivat. Se on erinomainen esimerkki oivaltavasta pelisuunnittelusta: vuoropohjaisen ja reaaliaikaisen strategiaja taktiikkapelin yhdistelmä, jonka voi luokitella myös roolipeliksi. Onko kirjojen kääntämistä ja englanninkielistä julkaisua harkittu tai tutkittu. Miten etenit seikkailupelikirjasta X-COMiin. Kun UFO: Enemy Unknown nousee toistuvasti maailman parhaiden pelien äänestyslistojen piikkipaikalle, pelissä täytyy olla jotain maagista. Mikä genre tai sarja voisi toimia kirjana. Joo. Onhan noita vaikka kuinka paljon. It’s a deal!. Henkiset perilliset, kuten esimerkiksi Xenonauts ja UFO: Extraterrestrials taas lähestyvät X-COMia onnistuneesti sieltä klassisesta suunnasta. Siinä oli oma hohtonsa. Esimerkiksi Ultimasta saisi aika makean paketin. Kokonaisuutena X-COMin tarina on melkoista vuoristorataa. Minä kiitän, kyllä tästä juttu tulee. Minulla meni silloin se kovin huuma ohi, enkä ole sarjan tiimoilta itseäni älynnyt sivistää
Toistaessa yhden ”vuoron” aikana luetaan vain tästä kopiosta, jossa on sijainteja, jotka vastaavat laudalla olleita eläviä soluja. Näin ajateltuna automaatti ei kuitenkaan toimi odotetusti. Kun näille edelleen tarkistetaan naapurien määrä ja verrataan tätä syntymisehtoihin, saattaa tyhjän reunasolun paikalle tulla elävä solu – jälleen varsinaiseen lautaan. Uteliaimmat voivat kokeilla erilaisia soluautomaatteja lukuja vaihtamalla. Teoriassa soluautomaattien ideana on se, että kaikki vuoron muutokset tapahtuvat tismalleen yhtä aikaa, toisistaan riippumatta. Avaimeksi sopii esimerkiksi solun sijainti (x,y)-muoTeksti ja kuvat: Jiggawatt, Janne Sirén dossa, arvoksi solun tila. Kuuluisimpiin ja tutkituimpiin soluautomatteihin kuuluu John Conwayn Game of Life. Lataa ensin maksuton Python osoitteesta python.org ja Game of Lifen lähdekoodi skrolli.fi/ numerot (listaus myös seuraavalla sivulla). Soluautomaatti Pythonilla Game of Life Koodi Soluautomaatit muodostuvat soluista sekä säännöistä, jotka muokkaavat soluja. Lisäksi määrittelemme syntymisen ja kuoleman säännöt: self.birth = [3] self.survival = [2,3] Nämä ovat Game of Life -säännöt – kuollut solu herää eloon, kun sen elävien naapureiden määrä on 3, ja elävä solu pysyy elossa, kun sen elävien naapureiden määrä on 2 tai 3. Funktio surround() hakee kaikki yhtä solua ympäröivät sijainnit omaksi listakseen, josta sitten tarkistetaan, löytyykö naapureille vastineita self. Toteutimme Game of Lifen Pythonohjelmointikielellä. Listan dead_cells käyttö mahdollistaa helpon tavan tarkistaa syntyvät solut. Siellä ovat elävien solujen naapurit, jotka eivät itse ole eläviä soluja. Tämä muokkaus tehdään varsinaiseen lautaan eikä kopioon. Esimerkiksi tai 1, kuollut tai elävä. Jos ei, sijainti laitetaan kuolleiden solujen listaan (dead_cells). Tehdään muutokset varsinaiseen board-lautaan ja käytetään buffer-kopiota vain naapureiden laskemiseen – kopioon tarvitsemme vain elävien solujen avaimet, eli sijainnit: def store(self): self.buffer = [cell for cell in self.board] Elämän kiertokulku Ohjelman ydin on funktio iterate(), joka suorittaa pelilaudan muokkaamisen. Kun siirrytään luomaan uusia soluja, lauta ei ole enää samanlainen kuin vuoron alussa, joten naapurien määrät ovat vääriä. 2 1 6 . Mukana on ASCII-käyttöliittymä ja lehden hengen mukaisesti myös pelilaudan skrollaus onnistuu. Säännöt määrittävät miten solujen arvo tai tila muuttuu soluautomaatissa – esimerkiksi kaksi vierekkäistä elävää solua voisi herättää kolmannen vierekkäisen, kuolleen solun henkiin. Jos naapurien määrä ei natsaa, solu kuolee sääntöjen mukaisesti. Uusia soluja syntyy, kun tyhjillä soluilla on tasan kolme elävää naapuria. Yksinkertaisistakin säännöistä voi syntyä monimutkaista vuorovaikutusta. bufferista. Game of Life on tässä, lopuksi tarvitaan vain tulostus. Soluautomaatissa näitä soluja on useampia, vaikkapa ruutupaperin ruudukon verran. 3 70 S oluautomaatti on tietojenkäsittelytieteen malli, jossa tietokoneen sisään – yleensä ohjelmallisesti – luodaan soluista koostuva maailma. Molempien vaiheiden tuleekin siis viitata lautaan vuoron alussa, ei nykyiseen tilaan. Ongelma ratkaistaan tekemällä vuoron alussa kopio laudasta (self.buffer). Game of Lifessä elävät solut kuolevat, jos niillä on alle kaksi tai yli kolme naapuria. Pythonissa elämän pelilaudan kuvaamiseen sopii parhaiten hashmap-rakenne (Pythonissa ns. Jos niitä on, eläviä naapureita laskeva muuttuja (live_nbs) kasvaa. Game of Lifen yksi ”vuoro” koostuu naiivisti ajateltuna kahdesta vaiheesta: elävien solujen tyhjentämisestä ja uusien luomisesta. Solulla tarkoitetaan yksittäistä muuttujaa tai ohjelmakoodillista oliota, jolla on jokin arvo tai tila. Toteutimme Pythonilla yhden kuuluisimmista.. Solun naapureiden läpikäymisen jälkeen muuttujaa live_nbs verrataan selviytymisehtoihin. Graafisen käyttöliittymän toteuttaminen Pygame-kirjastoilla voisi olla lukijalle hyvä kotiläksy. dictionary), jossa jokaista ”avainta” vastaa arvo ja hashmapin koko kasvaa sitä mukaa, kun avaimia lisätään. Ensiksi store()-funktiolla tehdään self.bufferiin kopio laudasta. Tietokoneiden kanssa jompikumpi vaiheista ehtii kuitenkin väistämättä muokkaamaan lautaa ensin. Esimerkiksi tämä hashmap on hämäävän yksinkertainen Game Of Life -aloituskuvio (ks. Siinä yksittäinen solu ei ”tiedä” tai ”muista” mitään tämänhetkisten naapurisolujensa lisäksi, mutta ohjelmoija ulkopuolisena tarkkailijana voi huomata ja hyödyntää pitkällä tähtäimellä muodostuvia malleja. kuva), joka räjähtää nopeasti käsiin: self.board = { (0,-1):1, (1,-1):1, (-1,0):1, (0, 0):1, (0, 1):1, } Esimerkkiohjelmassamme GameOfLife-luokkaan sisältyvät kaikki laudan ominaisuudet, myös pelilauta board. Jokaista tällaista sijaintia kohden katsotaan elossa olevat naapurit. Elämän pelilauta Game of Lifessä pelilauta on teoreettisesti rajaton, vain tietokoneen tehojen rajoissa. Soluautomaatit ovat järjestelmiä, jotka muodostuvat eri tilassa olevista soluista sekä säännöistä, jotka muokkaavat näitä solujen tiloja
uusille soluille ei tarkisteta turhia alueita for alive in self.buffer: live_nbs = neighbours = surround(alive) for cell in neighbours: if cell not in self.buffer: # Kuollut reunasolu dead_cells[cell] = 1 else: live_nbs += 1 if live_nbs not in self.survival: del self.board[alive] # Kuolee for dead in dead_cells: if self.neighbours(surround(dead)) in self.birth: self.board[dead] = 1 # Syntyy def draw(self, msg): os.system('cls') print(msg + '\n') print(' ' + ('+' * (self.w+2))) for y in range(self.pos[1]-self.h // 2, self.pos[1]+self.h // 2): line = ' +' for x in range(self.pos[0]-self.w // 2, self. vuoro Enter jatkaaksesi, w/a/s/d skrollataksesi, muutoin 'q' \n>" % self.turn) def user_input(self): typed = self.prompt() while typed in ['w','s','a','d']: if typed == 'w': self.pos[1] -= self.h // 2 elif typed == 's': self.pos[1] += self.h // 2 elif typed == 'a': self.pos[0] -= self.w // 2 elif typed == 'd': self.pos[0] += self.w // 2 self.draw("Skrollattu, nyt keskitetty pisteeseen " + str(self.pos[0]) + "," + str(self.pos[1])) return self.user_input() # Rekursiota niin kauan, että ei enää skrollata return typed def store(self): self.buffer = [cell for cell in self.board] def iterate(self): self.store() # Luo bufferin kopioimalla avaimet laudasta dead_cells = {} # Oma bufferinsa mahd. pos[0]+self.w // 2): line += '0' if (x,y) in self.board else ' ' print(line + '+') print(' ' + ('+' * (self.w+2)) + '\n') def process(self): if self.turn > 0: self.iterate() self.draw("") return self.user_input() != 'q' ################ Main ################ life = GameOfLife() while life.process(): life.turn += 1 Tältä lähtötilanne näyttää 164 Game of Life -vuoron jälkeen. 71 # Game of Life -toteutus Pythonilla, tehnyt Jiggawatt Skrollilehteen (Python 3 -päivitys jtsiren) import os moore_nb = [ (-1,-1), (0,-1), (1,-1), (-1, 0), (1, 0), (-1, 1), (0, 1), (1, 1), ] def surround(pos): return [(pos[0]+nb[0], pos[1]+nb[1]) for nb in moore_nb] class GameOfLife(): def __init__(self): self.board = { (0,-1):1, (1,-1):1, (-1,0):1, (0, 0):1, (0, 1):1, } self.birth = [3] self.survival = [2, 3] self.turn = self.pos = [0, 0] self.w = 64 self.h = 20 def neighbours(self, area): return len( [cell for cell in area if cell in self.buffer] ) def prompt(self): return input("%s. Skrollaamalla eri suuntiin – kuvassa vasemmalle – nähdään ”elämän” jatkaneen myös sinne.
SceneSatin striimi etenkin lähetysten ulkopuolella painottuu modernimpaan konemusiikkiin ja uudenaikaisempiin formaatteihin. Teksti: Jari Sihvola Kuvat: Mikko O. Torvinen, Mikael Peltomaa, Philippe Grussenmeyer, Mats Antonsson Kulttuuri Demoskenen nettiradiot – Alamaailman digijytä. Ne varmistavat, että demojen ja musakompojen musiikki jää eloon eikä unohdu kompojen jälkeen. Osa artikkelissa esitellyistä skeneradioista soittaa pelkkää musiikkia, ja osasta löytyy myös juonnettua ohjelmaa. Pelimusiikki onkin läheisessä kytköksessä demoskeneen. Ne antavat uuden mahdollisuuden kappaleille, jotka yleisö on partyillä aliarvioinut, tai jotka aukeavat vasta useamman kuuntelun jälkeen. Tietokonekulttuurin ystävälle on luontevaa kääntyä demoskenevaikutteista musiikkia soittavan nettiradion puoleen. Niissä voi olla mukana paljon sähellystä, mutta tunnelma välittyy silti (tai juuri siksi) kuulijalle hyvin. Skrollin lukijoilla on tunnetusti jalostunut esteettinen maku eittämättä myös musiikin suhteen. Onkin luontevaa, että radion normaali lähetys korvataan demopartyjen äänivirralla silloin, kun sopivaa materiaalia on tarjolla myös videopuolella. Käyttäjät voivat valita kappaleita yli 6000 tiedoston soittolistalta, mutta käytännössä soittolistasta huolehtii yleensä tietokannasta kappaleita satunnaisesti valikoiva botti. Monet partyt lähetetään kuitenkin vain audiona. Esittelemme skenemusiikkia soittavat keskeiset radiot. Osa genren säveltäjistä on toiminut myös skenen puolella, ja pelimusiikkia on kierrätetty introissa ja demoissa joko sellaisenaan tai remiksattuna. Demoskene-musiikin lisäksi skeneradiot soittavat usein vanhaa pelimusiikkia tai siitä vaikutteita saanutta äänimaisemaa. Partylähetykset saattavat kestää jopa kymmenen tuntia. SceneSat – partyt sohvaskenerin kotiluolaan Vuodesta 2008 saakka toiminut SceneSat on käytännössä ainoa englanninkielinen, selkeästi demoskeneen keskittynyt radio, josta kuulee soittolistan lisäksi muutamia kertoja kuussa myös livelähetyksiä. Juontajat kutsuvat ohikulkijoita kertomaan omista partytunnelmistaan ja kommentoimaan tapahtumia. Yhteinen piirre monille skenemusiikkiin keskittyneiden radioiden käyttöliittymille on mahdollisuus pisteyttää ja kommentoida kappaleita. SceneSat-sivusto hoitaa myös demopartyjen video-striimausta. Demoskene-lähetysten lisäksi radiossa esitellään tietokonekulttuuria toisinaan laajemminkin. Skenemusiikkiin keskittynyttä ohjelmaa löytyy juonnettuna myös suomeksi teekkareiden Wappuradiossa. Se toimii nimensä mukaisesti vain vappua edeltävinä viikkoina, mutta on Tampereen alueella kuunneltavissa netin lisäksi myös radioaalloilta. Musiikki siis kuulostaa enimmäkseen siltä, että se on tehty pc:llä tai Macintoshilla, ajanmukaisia ohjelmia käyttäen. Jo kahden suurimman ja tärkeimmän skeneradion konseptit poikkeavat toisistaan niin selvästi, että pieneltä kentältä löytyy riittävästi vaihtelua. Lisäksi radioverkko.fi -sivustolta on kuultu ainakin pari skeneohjelmaa suomeksi. 2 1 6 . SceneSatin juonnetut ohjelmat jakautuvat partyjen ja muiden tapahtumien livelähetyksiin sekä musiikkiohjelmiin, joissa kappaleiden välissä on juontoa. 3 72 S keneradioilla on monta tehtävää
SceneSatin nykyinen ohjelmisto on enimmäkseen vuosilta 2008-2009. Vahingosta viisastuneena lähdekoodia levitetään nykyään avoimesti, joten kuka tahansa voi perustaa vastaavanlaisen radion. Tietokannasta löytyy myös hiukan 8ja 16-bittisen aikakauden pelimusiikkia. Kappaleita voi selata artistien lisäksi esimerkiksi alustojen, avainsanojen ja skenegruuppien mukaan. Kun osa käyttäjiä erikoistui hardcore-teknoon ja muuhun ristiriitaisia tunteita herättävään materiaaliin, pudotettiin kappaleiden määrä yhteen kerrallaan. Monet lähetykset ottavat vastaan myös irkkaajien kappaletoiveita. Nectarinen soittolista ja webchat. 73 SceneSatilla on irc-kanava, jolle pääsee myös nettiselaimella. Radion toiminnan perusperiaatteet ovat jatkuvan väittelyn kohteena. Yhteisö myös lataa sivustolle uudet kappaleet, joiden demoskene-asiaankuuluvuuden moderaattorit tarkistavat. Juontaja seuraa kommentointia ircin puolella, usein keskusteluun osallistuen. Hiljaisella kanavalla keskustelu ryöpsähtää liikkeelle demopartyjen ja muiden lähetysten aikana. Käyttäjillä on eriäviä mielipiteitä esimerkiksi siitä, kuinka usein samoja kappaleita saa soitattaa. Osa radion toimintaa ovat musiikkikilpailut, jotka sopivat hyvin myös aloittelijoille. Kappaleiden kokonaismäärä tietokannassa on kirjoitushetkellä noin 38 000. Kappaleiden lataamisessa ei ole kovin tiukkaa laadunvalvontaa. Välillä amerikkalaiset käyttäjät – tai nokturnaaliset eurooppalaiset – soittavat musiikkia ja vääntävät juttua pikkutunneille asti. Osa kuuntelukokemuksesta meneekin ohi, ellei seuraa samalla irc-kanavaa. Muista radioista poiketen keskustelu tapahtuu webissä ja irc-kanavaa käytetään lähinnä serverin kupsahtaessa. Sen sijaan radion sivustolla on hyvin aktiivinen yhteisö, joka täyttää soittolistan musiikkivalinnoillaan lähes vuorokauden ympäri. Nectarine – kuuntelijoiden pyörittämä yhteisöradio Nectarinella ei ole lainkaan juonnettuja lähetyksiä. Sitä pyritään uudistamaan, jotta radion kuunteleminen tulisi helpommaksi erilaisilla laitteilla ja ohjelmilla. Yhteisölliseen henkeen sopii myös sivuston tietokannan kehittyneisyys ja muokattavuus. Tavoitteena on myös saada radio toimimaan joustavammin demopartyjen olosuhteissa, joissa nettiyhteyksien toimivuudessa on usein huomattavia teknisiä haasteita. Sivuilla näytetään myös videokuvaa, joka monien kappaleiden kohdalla on YouTubesta poimittu, kappaletta vastaava demo. Nectarinen käyttäjien kesken on järjestetty myös tapaamisia Ranskassa ja Saksassa. Aikaisemmin jokainen käyttäjä sai lisätä soittolistalle neljä kappaletta kerrallaan. Sivustolla on vilkas webchatti ja elossa oleva viestifoorumi. Sir Garbagetruck juonsi SceneSatin lähetystä tämän vuoden Assemblyillä.. Valtioiden liput artistien ja käyttäjien nimen perässä lisäävät sivuston värikkyyttä ja luovat kontekstia keskusteluille. SceneSatin ohjelmat ovat interaktiivisia. Sivuston silloinen ylläpitäjä oli sählännyt varmuuskopioinnin kanssa niin, ettei sivustoa saatu palautettua, vaan se koodattiin kokonaan uudestaan. Videon voi halutessaan laittaa pois päältä konetehoa syömästä. Nectarine mainostaa olevansa vanhin demoskeneradio. Sen historia juontaakin 1990-luvulle, joskin radion nykyinen versio avattiin vuonna 2009 epäonnisen tuhoepisodin jälkeen. Kamalimpia tekeleitä poistetaan, kun ne alkavat käydä moderaattoreiden hermoille. Partyjen kompoista poiketen äänestäjillä on mahdollisuus miettiä valintojaan ainakin viikon ajan sekä jättää kommentteja kappaleista
Kuuntelijoita on suhteellisen paljon: usein reilusti yli sata lähetysten ulkopuolellakin. Kohina painottaa laatua määrän kustannuksella. Toiveet voi esittää myös irc-kanavalla erillisten komentojen avulla. Rekisteröityneet käyttäjät voivat täälläkin valita kappaleita soitettavaksi, ja live-lähetysten aikana käytössä on erillinen systeemi kappaletoiveiden esittämiseen. Soitettavat musiikkitiedostot laaditaan muissa radioissa usein emulaatioon Nectarine-radion käyttäjien tapaaminen Ranskan Alsacessa.. Kuuntelijat voivat esittää ainoastaan toivomuksia uusista kappaleista, eikä kappaleita voi itse valita soitettavaksi. Mielenkiintoista Slay Radiossa on, että melko rajatun konseptin ympärille on saatu luotua näin pitkäikäinen ja suuri projekti. Esimerkiksi kolikkopelien musiikkeja on äänitetty suoraan kytkemällä johdot piirilevyihin. Saksankielinen viestifoorumi on elossa, ja irc-kanavallakin on eloa lähetysten aikaan. Se lähettää soittolistan lisäksi livenä juonnettuja lähetyksiä, joissa soitetaan muutakin kuin kuusnepamusiikkia. Soittolista pohjautuu remix.kwed.org -sivustoon, jonka tietokannassa on tällä hetkellä 3762 kappaletta. Osa ohjelmista on videomateriaalia. Slay Radion perustamisvuosi on pyyhkiytynyt historiankirjoista, mutta yksi radion jingleistä väittää sen olevan 1999. BitJam perustettiin Nectarinen jälkeen, eikä sillä ole näyttänyt olevan mitään uutta tarjottavaa. Sen ominta alaa ovat pelimusikin remiksaukset, mutta myös skenemusiikki soi. Ohjelmatarjonta sisältää eri teemaisia musiikkiohjelmia, peliaiheisia ohjelmia ja haastatteluja. Eräs juontajista kertoi suunnittelevansa lähetystä, joka rakentuisi kuuntelijoiden pelaaman nettipelin ympärille. Kuusnepan ympärille syntynyt musiikin remiksausharrastus on saavuttanut kunnioitettavat mittasuhteet. Linja on tuonut Kohinalle runsaasti ystäviä vuosien varrella. Radion striimi on joka tapauksessa käyttökelpoinen, mikäli pelimusiikin remiksauksia ja skenemusiikkia yhdistelevä soittolista kiinnostaa. Paikka vaikuttaa elottomalta irc-kanavaa myöten. Bitfellasin piirissä julkaistaan esimerkiksi skenemusiikista koostettuja podcasteja. Osa remiksauksista on tehty C64:n skenemusiikin pohjalta. Samasta kappaleesta on monia remiksejä: esimerkiksi Martin Galwayn ”Comic Bakerystä” löytyy 35 eri versiota. Juontajaporukassa on ollut mukana myös tunnettu pelija skenemusiikin tekijä Reyn Ouwehand Maniacs of Noise -ryhmästä. 3 74 BitJam – tietokannan koriste Myös BitJamin kuuntelijat voivat osallistua tietokannan rakentamiseen ja valita kappaleita soimaan. Slay Radio – Comic Bakery -teemaa hajoamiseen asti Slay Radio on Commodore 64 -musiikin remiksauksiin erikoistunut asema. Radio on silti osa Bitfellas-sivustoa, joka on laaja skeneaiheinen tietokanta. BitJamin striimin tyylikirjossa on vaihtelua, ja vanhakantaisempi trackermusiikki on hyvin edustettuna. Vaikka radio tuntuu zombie-tapaukselta, tarjoaa se vaihtoehtoisen striimin heille, joille pelkkä musiikki riittää. Radio Paralax – eine deutsche Alternative Paralax on vuonna 2001 perustettu, etupäässä saksankielinen radio. Bitjamista kuitenkin puuttuvat käyttäjät. Sen onnistuminen vahvistaa mielikuvaa Commodore 64:sta 8-bittisten tietokoneiden kuninkaana. Toisinaan yritetään erikoisempaakin ohjelmaa. Interaktiivisuus irc-kanavan ja juontajien välillä on vahvaa. Lähetysaika on useimmiten iltakymmeneltä Suomen aikaa. Puhetta radiosta kuullaan suhteellisen harvoin. Kohina – musiikkia vuodelta Kekkonen ja kuminäppis Alun perin suomalaisen Stakkerin toimesta perustettu Kohina on keskittynyt 8ja 16-bittisten laitteiden pelimusiikkiin. Mukana on paljon demoskene-musiikkia, jota on tehty samaisille vanhoille koneille. Soittolista on suhteellisen lyhyt – noin kolme vuorokautta – mutta tarkasti valikoitu ja suurelta osin autenttisiin äänityksiin perustuva. Striimeillä on yleensä kourallinen kuuntelijoita ja hyvä niin – onhan yli 32 000 kappaletta sisältävän tietokannan rakentamisen eteen nähty aikaa ja vaivaa. 2 1 6 . Muihin skeneradioihin verrattuna Paralax on kurinalainen. Striimit ovat SceneSatin hostaamia, eli yhteistyö skeneradioiden välillä näyttää pelaavan. Siitä puuttuu webchatti, joka on Nectarinen yhteisön sydän. Slay Radion painoarvoa lisää, että juonnettuja lähetyksiä tulee parin kolmen päivän välein. Striimissä kuulee pienten merkkien julkaisemaa konemusaa, jolla on usein kytköksiä skeneen
Irc-kanavista SceneSatilla, Slay Radiolla ja Parlaxilla kanavat ovat olennainen osa radion lähetyksiä. Nectarine ja CVGM käyttävät ircin sijaan omaa webchattiaan. Vaikka ohjelmien läpivieminen ei ole yhtä varmatoimista kuin ammattilaisilla, tuntevat näiden radioiden juontajat musiikkinsa hyvin – samaa ei aina voi sanoa kaupallisten radioiden palkkatyöläisistä. Tietokannasta löytyy kuitenkin kaikenlaista muuta kiinnostavaa, kuten 25 minuuttia pitkä Commodore 64:n Tetriksen taustamusiikki sekä tekijän itse laatima, kokopitkä remix Rolandin MT-32 -äänimoduulille. Tässä esitellyistä radioista erityisesti Nectarine ja CVGM osoittavat, miten kansainvälinen ja yhteisöllinen asia radio voi internet-aikana olla. Radion satunnaisstriimi soittaa tämän tästä pelisoundtrackien taustahurinoita tai muuten heikkoa materiaalia. Myös videostreamien käyttö herättää kysymyksiä sen suhteen, onko nettiradio radio laisinkaan. Toiset vaativat enemmän konekohtaista arvostusta ja ymmärrystä – tai 8-bittisten Ataritietokoneiden tapauksessa kykyä sietää epävireistä musiikkia. Kohinan soittolistaa voisi pidentää reilusti laadusta tinkimättä. Usein valittavana on äänenlaadultaan eri tasoisia striimejä. Radion ylläpitäjät eivät ole tästä kiinnostuneita eivätkä halua delegoida tehtävää muille. CVGM-radiossa on alustoja mistä valita. Samalla on tietysti selvää, että internet on hämärtänyt koko radion konseptia. Osa kappaleista ylittää alustarajat paremmin. Valitettavasti tietokannan materiaalien suhteen ei juurikaan ole harjoitettu laadunvalvontaa. Radion webchatissa vaikuttaa olevan pieni, mutta hyvähenkinen yhteisö. Soimaan voi pistää myös pitkiä chiptune-keikkojen livetaltiointeja, joista monet on äänitetty demopartyillä. Hyvin pienen mittakaavan radioita kyllä löytyy, kuten CPC Amstradiin erikoistunut Roland Radio. On mielenkiintoista, että esimerkiksi Commodore 64 -piireissä suositut kappaleet eivät automaattisesti menesty muualla. Tietokannasta kuitenkin huomattavan suuri osa on demoskene-musiikkia. Nämä ovat kuitenkin lopulta epäolennaisia määrittelykysymyksiä. Näin ollen maineikas radio on jätetty muumioitumaan, vaikka striimit soivat yhä. Tiettyjen koneiden musiikkiin erikoistuneet radiot eivät – Slay Radiota lukuunottamatta – ole kasvaneet kovin merkittäviksi. Irciä hyödyntävät radiot puolestaan ovat ottaneet käyttöön internetin tarjoamat mahdollisuudet lähetyksen ja kuuntelijoiden välisen reaaliaikaisen vuorovaikutuksen suhteen. Jos haluaa kohottaa ohjelmien laatua ja määrää, SceneSatiin voi tarjota omaa show’taan: asema lisäisi mielellään lähetyksiään. Kohina on silti edelleen hyvä valinta muinaisen piipitysmusan ystäville. CVGM – Nectarinen velipuoli CVGM (Computer & Video Game Music) on Nectarinen ohjelmistoa käyttävä projekti, joka erosi Nectarinen nykyversiosta jo sen alkumetreillä. Ne kuitenkin tarjoavat kuuntelijoilleen materiaalia ja kokemuksia, joita Radio Suomesta ei löydä. Spectrum -fani saattaa käydä vain Spectrum -harrastajien tapahtumissa, mutta lähettäessään suosikkikappaleensa skeneradioon hän oppii tuntemaan muilla koneilla tehtyä musiikkia. Demoskenen ulkopuolelta löytyy chiptune-radioita, kuten Rainwave ja ChipBit, mutta niistä ei ole korvaamaan Kohinan laadukasta ja monipuolista soittolistaa. Eiväthän nettiradiot edes lähetä signaalia ympärilleen koko ajan, vaan vasta sitten, kun käyttäjän ip-osoite sitä erikseen pyytää. Osa käyttäjistä ei niinkään kuuntele radioiden striimejä kuin hyödyntää sivustojen ympärillä olevaa yhteisöä demoskenen tapahtumien seuraamiseen. Olennaista sen sijaan on aukoa chatissa päätään saksalaisille ja klikata heidän riemukseen soimaan vaikkapa da Jormasin HC-teknoa. 75 perustuvilla soitto-ohjelmilla. • SceneSat: scenesat.com, #scenesat@irc.efnet.org • Nectarine: www.scenemusic.net • BitJam: bitjam.bitfellas.org, #bitfellas@ircnet • Radio Paralax: radio-paralax.de, #paralax@irc.euirc.net • Kohina: www.kohina.com, #kohina@ircnet • Slay Radio: www.slayradio.org, #slayradio@irc.efnet.org • CVGM: www.cvgm.net. Skeneradioiden tarkoitus Skeneradiot toimivat kohtaamispaikkana eri alustojen ystäville. Radioilla on omat nettiselaimissa toimivat soittimensa, mutta pidemmän päälle kannattaa ladata sivuilta löytyvät mediasoitto-ohjelmille tarkoitetut tiedostot (.m3u, .pls tai .xml) kovalevylle. Skeneradioiden kuuntelijamäärät ovat kaupallisiin radiokanaviin verrattuna olemattomia. Tietokantaa tutkimalla voi myös oppia tuntemaan vanhoja tietokoneita ja konsoleita, joista on usein tarjolla kuvat ja esittelytekstit. CVGM painottuu pelimusiikkiin
Uraanin rikastamista haluttiin hidastaa, mutta lisäksi tarkoituksena oli demoralisoida ja hämmentää tutkijoita. Itsemonistumista rajoitettiin koodissa esiintyvillä rajoituksilla, ja jokaisen instanssin sallittiin saastuttaa korkeintaan kolme muuta järjestelmää. Tietokonemato on autonominen, itsekopioituva tietokoneohjelma, joka pyrkii leviämään toisiin koneisiin. Kyberisku oli onnistunut lamauttamaan kokonaisen valtion. Mikäli Stuxnetin tarkasti määritellyt kriteerit eivät täyttyneet, mato torkkui, kunnes pahaa aavistamaton työntekijä kytki koneeseen uuden USB-muistin, jolla mato pystyi matkustamaan seuraavaan internetistä eristettyyn verkkoon. Maa vajoaa pimeyteen jakelupiste kerrallaan. Stuxnetin tapauksessa mato suoritti kaikki päähaittakuormaan liittyvät rutiinit ja vastasi leviämisestä poikkeuksellisen usealla ennen näkemättömällä tekniikalla. Tavanomaisista haittaohjelmista poiketen Stuxnet ei levinnyt aggressiivisesti, eikä tehnyt vahinkoa kuin tarkasti määritellylle kohteelle. Haittakuorman lopullinen kohde, Siemensin SCADA-järjestelmä, näytti saastumisen jälkeen ohjausteknikoille kaiken olevan kunnossa. Oletettavasti toiveena oli, että Iran luovuttaisi ydinhankkeensa liian vaikeana. Todellisuudessa sentrifugi välillä kiihdytti tai hidasti vauhtiaan, aiheuttaen liiallista rasitusta. Raporttien mukaan hanke oli onnistunut ja tuhosi noin viidesosan Iranin ydinrikastamoissa käytetyistä sentrifugeista. Itsetuhomekanismina mato poisti kaikki jäljet itsestään 24. 2 1 6 . W. Mato kantoi sisällään kuormaa, joka odotti uinuvana tarkasti valittuja kriteerejä. Jos saastuneessa koneessa kuitenkin oli Windows-käyttöjärjestelmä, Siemens PCS 7, WinCC tai Step7-ohjelmisto sekä vähintään yksi Siemensin S7 PLC, Stuxnet asensi piilossa olevan Aseistettu koodi Teksti: Benjamin Särkkä / NotMyNick@Disobey.fi Kuvat: Manu Pärssinen Kulttuuri. Arvioiden mukaan 225 000 ukrainalaista taloutta oli ilman sähköä, kunnes jakelukeskukset saatiin manuaalisesti takaisin sähköverkkoon. Leviämisen tarkoituksena oli etsiä Siemensin Step7 SCADA -ohjelmisto ja koneita, jotka ohjaavat ohjelmoitavia logiikkakontrollereita (PLC). Aikaisemmin päivällä sähkönohjauskeskuksessa yhtiön teknikot ovat menettäneet digitaalisten ohjauspäätteiden hallinnan ulkopuoliselle taholle. Madon tarkoituksena oli sabotoida Iranin ydinohjelmaa tavalla, joka vaikuttaisi sarjalta sattumia. kesäkuuta 2012. Toimintaperiaatteeltaan Stuxnet antaa uuden ulottuvuuden sanalle malware. He raportoivat myöhemmin katsoneensa avuttomina, kun hiiri liikkuu näytöllä ja sulkee sähkönjakelukeskuksia yksi kerrallaan lopulta poistaen niistä etähallinnan mahdollisuuden. Bushin hallinnon alaisuudessa, yhteistyössä israelilaisten kanssa. 3 76 K ello 15.35 paikallista aikaa joulukuussa 2015 Ukrainan energiayhtiö Kyivoblenergo tiedottaa asiakkailleen laajoista sähkökatkoista. Yksinkertaistettuna ympäristön haltuunotto alkoi saastuneella USBmuistilla, jonka jälkeen mato monistui hitaasti verkkoon hyödyntäen useaa eri haavoittuvuutta. Modernin etähallinnan puuttumisen takia jokaiselle asemalle lähetettiin teknikko fyysisesti kääntämään vipua. Stuxnet Aseistetun koodin toi yleisempään tietoisuuteen Stuxnet-tietokonemato, joka Washington Postin mukaan kehitettiin osana ”Operation Olympic Games” -hanketta G
Näin se varmisti, että sentrifugi ei sammu, vaikka sitä ohjaava järjestelmä (SCADA) tunnistaisi poikkeavaa käytöstä. Osa alan toimijoista pitää kilpailuja ja maksaa rahaa suoraan tietoturvatutkijoille haavoittuvuuksien löytämisestä. Käytännössä näitä haavoittuvuuksia ei kerrota niille valmistajille, joiden tuotteita ne koskevat. Olemme ilmeisesti yhteiskuntana päättäneet, että taloudellisia intressejä ajavat instanssit ovat luotettavampia suojelijoita kuin demokratia ja poliittinen johto. Stuxnet levisi käyttäen neljää nollapäivähaavoittuvuutta ja hyödynsi aiemmin varastettuja varmenteita, joilla madon koodi oli allekirjoitettu näyttämään hyödylliseltä ohjelmalta. Haavoittuvuuksien ja niitä hyödyntävien haittaohjelmien myymiseen erikoistuneita yrityksiä löytyy maailmalta jo useita. Iranista otettiin yhteyttä tietoturvayhtiön tutkimusjohtajaan ja yksityisyritys valjastettiin puolustamaan valtiota toista vastaan. Tietoturva-alan toimivat ovat myös tarjonneet laajasti apua Ukrainassa tapahtuneen hyökkäyksen selvittämiseksi. Todennäköisesti nollapäiviä myyvien yritysten asiakkaina ovat valtiot, jotka käyttävät nollapäivähaavoittuvuuksia uusien Stuxnetin kaltaisten aseiden kehittämiseen. Toistaiseksi tämä ei ole laitonta liiketoimintaa, vaikka se ei täysin avointa olekaan. Lähteet • https://www.washingtonpost.com/world/national-security/stuxnet-was-work-of-usand-israeli-experts-officials-say/2012/06/01/gJQAlnEy6U_story.html • www.businessinsider.com/stuxnet-was-far-more-dangerous-than-previous-thought2013-11?r=US&IR=T&IR=T • https://www.wired.com/2015/11/hackers-claim-million-dollar-bounty-for-ios-attack/ • www.forbes.com/sites/andygreenberg/2012/03/23/shopping-for-zero-days-an-pricelist-for-hackers-secret-software-exploits/#287706060335 • www.cnet.com/news/thunderstruck-a-tale-of-malware-acdc-and-irans-nukes/ • www.nerc.com/pa/CI/ESISAC/Documents/E-ISAC_SANS_Ukraine_DUC_18Mar2016.pdf. Tämä johtaa tilanteeseen, jossa tavalliset kuluttajat saavat päivityksen turvattomaan tuotteeseen vasta sen jälkeen, kun haavoittuvuutta on jokin, kenties pahantahtoinen, taho käyttänyt omien tarkoitusperiensä edistämiseen. Näitä haavoittuvuuksia myydään vapailla markkinoilla, ja niistä maksetaan parhaimmillaan isoja rahoja. Kummassakin tapauksessa yksityisyritykset suojelevat kansalaisia valtioita vastaan. Haavoittuvuudet ja uudet asekauppiaat Nollapäivähaavoittuvuus (0-day) on haavoittuvuus ohjelmassa tai järjestelmässä, joka ei ole valmistajan tiedossa. Maailmalla tunnetaan kuitenkin myös tapauksia, joissa kilpailevat yritykset tekevät ostetuilla haittaohjelmilla toisilleen vahinkoa tai varastavat yrityssalaisuuksia. Se millä hinnalla tämä myydään eteenpäin, tai kenelle, on yrityssalaisuus. Muiden keinojen ohella tämä esti madon tunnistamista, eivätkä virustorjuntaohjelmat puuttuneet sen tekemisiin. Jotkut kauppiaat ovat tosin ilmoittaneet, että eivät enää halua enempää tiettyjen valmistajien – esimerkiksi Adoben – haavoittuvuuksia, koska hyllyltä löytyy jo niin paljon myytävää. 77 haittaohjelman, niin sanotun rootkitin, sekä koneeseen että PLC-järjestelmään. He myös haluavat ostaa tutkijoilta heidän jo löytämänsä haavoittuvuudet, ennen kuin niitä ilmoitetaan järjestelmien valmistajille. Ostettavissa olevien haavoittuvuuksien selvittämiseksi pitää usein maksaa kuusinumeroinen summa, ja esimerkkinä Iphonen nollapäivähaavoittuvuudesta maksettiin aikaisemmin tänä vuonna miljoona dollaria
Käytännössä sen suorituskykyä heikentävät monet tekijät. Suuren läpimurtonsa Sinclairin yritys teki 1980-luvun alussa ZX80ja ZX81kotimikroilla, jotka olivat äärimmäisen yksinkertaisia ja halpoja. Laitteesta alkoi tihkua huhuja syrjäiseen Suomeenkin, mutta yritysten sijaan siitä olivat kiinnostuneimpia kotimikroilijat ja etenkin Spectrumkäyttäjät. Jo ennen Spectrumin julkaisua oli aloitettu kannettavan ZX83-nimisen laitteen suunnittelu. Kannettavuus kytkeytyi osaltaan Clive Sinclairin haluun tuoda markkinoille kannettava televisio. Se kuitenkin pystyy keskustelemaan suorittimen kanssa vain sarjamuotoisesti. Graafisesti QL häviää selvästi aikalaisilleen. Pian kävi ilmi, että kannettavassa laitteessa on liikaa ratkaisemattomia ongelmia, ja suunnittelussa palattiin perinteiseen pöytätietokoneeseen. Siitä piti tulla varsin makea, sillä Motorolan MC68000-suoritinperheen valitseminen Spectrumista tutun Z80:n sijaan nosti koneen aivan eri teholuokkaan. Spectrumeita myytiin yhteensä viitisen miljoonaa kappaletta. Sen seuraajasta piti tulla kvanttihyppy aivan uuteen ulottuvuuteen. H-hetki koitti 12.1.1984, jolloin Sin clairin Kvanttihyppy oli tilattavissa. Sekin oli äärimmäisen riisuttu ja arkkitehtuuriltaan yksinkertainen, mutta tarjosi sentään värigrafiikkaa. Sinclair sai tästä niskaansa paitsi kuluttajat, myös mainonnan eettisyyttä valvovat viranomaiset. Pikselien neljästä bitistä tuhlattiin yksi käytännössä turhaan välkytykseen, joten värejä on käytössä vain kahdeksan kappaletta. Yhtään konetta ei toimitettu ennen huhtikuuta. Tämä hidastaa sekä datan että koodin käsittelyä merkittävästi. Lisäksi IPC ei pääse keskusmuistiin, vaan ajaa ainoastaan omaa kiinteää ROM-koodiaan. Jo 1960-luvulta alkaen hän on kehitellyt kaikkea mahdollista transistoriradioista kotimikrojen kautta sähköajoneuvoihin. 3 78 S ir Clive Sinclair on ahkera keksijä ja teollisuusmies. Ei näin! Qummallinen Lipsahdus Rauta. Helppo kloonattavuus teki siitä de facto -standardin myös itäblokin kotimikroille, kuten Skrollissakin on aiemmin kerrottu. Edullinen hinta siivitti sen hyvään menestykseen, vaikka laitteessa ei ollut sen enempää peliohjainportteja, kunnollista äänipiiriä kuin oikeaa näppäimistöäkään. Teksti: Mikko Heinonen Kuvat: Marko Haarni Savua ilman tulta Sinclair QL on paperilla tehokas laite. Vuonna 1982 esiteltiin ZX Spectrum. Suoritin on MC68008, joka on kyllä sisäisesti 32-bittinen, mutta väylään päin bitit kulkevat jonossa kahdeksan kerrallaan. Grafiikan käsittely on muutenkin niin hidasta, että pelikoneeksi QL ei oikein taivu. MC68000:ssa, jota saman aikakauden Macintoshit, ST:t ja Amigat käyttävät, bittisuhde on 32:16. Ylevä tavoite oli, että Sinclair QL:ksi (Quantum Leap) ristitty tietokone tulisi myyntiin ennen tärkeimpiä MC68kpohjaisia kilpailijoita, eli Apple Macintoshia, Atari ST:tä ja Commodore Amigaa. Suunnittelijoiden tähtäimessä olivat toki hyötymikrojen markkinat, mutta jopa niihin Sinclair ZX Spectrum oli Iso-Britanniassa pitkään kuin Commodore 64 meillä: kotitietokoneen synonyymi. Käytännössä kaikki oli vielä tuolloin niin kesken, että Sinclairilla ei ollut edes kokonaista toimivaa prototyyppiä. Tämä rampauttaa esimerkiksi ääniominaisuudet pahemman kerran. Tämä tekee jo näppäimistön lukemisesta hitaan operaation. Spritejä taas ei ole lainkaan. ZX80 oli ensimmäinen alle sadan punnan hintainen kotimikro, ja rakennussarjana sen sai vielä halvemmalla. Mukana on sinällään edistynyt IPCapuprosessori, joka käsittelee muun muassa näppäimistöä, sarjaväylää ja ääniä. 2 1 6 . Laite luvattiin kotiin neljän viikon kuluessa. Lopputulos oli kuitenkin sekava soppa. Hyppy eteenpäin Kodit oli otettu haltuun ZX Spectrumilla, mutta Sinclair halusi saavuttaa myös maksukykyisempää hyötykäyttäjäja yritysyleisöä. Clive Sinclair lyötiin ritariksi vuonna 1983. Tämä onnistui lopulta, kun TV80-niminen laite esiteltiin vuonna 1984
Näppäimistö – se niistä, joka toimii – ei ole huonoin kokeilemani, mutta asentaminen täysin vaakasuoraan on kummallinen ratkaisu ergonomian kannalta. ZX Spectrumin peruja on myös se, että QL:ssä ei ole lainkaan virtakytkintä. Sinclair valitettavasti poisti QL:ltä tämän mahdollisuuden tyrimällä laitteen julkaisun ja suututtamalla asiakkaansa. Nurkkiin vuosien varrella kertyneistä laitteista vasta kolmannessa on toimiva näppäimistö, niiden kytkinkalvot kun eivät ole kovin kestävää sorttia. Esimerkiksi joystick-liitin on sovitus brittiläisestä puhelinpistokkeesta. QL yksinään ei aiheuttanut Sinclair Researchin luhistumista, sillä muun muassa epäonnisella C5-sähköajoneuvoprojektilla oli siihen myös iso osansa. Viihdeominaisuudet jäävät kokeilematta, koska QL:n laatikosta löytyvät noin 80 microdrive-nauhaa sisältävät ainoastaan hyötyohjelmistoja ja niiden tiedostoja. Microdrive-asemat sen sijaan tuntuvat kestäneen hyvin, kasetit hieman vaihtelevasti. Paitsi että toimitukset kangertelivat todella pahasti, ensimmäiset toimitetut koneet sisälsivät bugeja niin rautakuin softapuolellakin. Perinteiset bisnestietokoneiden markkinat olivat jo kaatumassa IBM PC -yhteensopivien syliin, ja muut MC68k-mikrot pyrkivät kukin tavallaan erottumaan niistä voidakseen saada siivun kakusta. Tallennusmediana QL käyttää micro drive-kasetteja. Amstrad keskittyi siihen, mitä osasi, eli vanhan Spectrum-arkkitehtuurin paketoimiseen myyvempiin kuoriin. Spectrum-käyttäjiä taas ei kiinnostanut siirtyä laitteelle, jonka viihdetarjonta oli käytännössä olematonta heikkojen grafiikkaominaisuuksien vuoksi. Voidaan myös sanoa, että koneen asemointi markkinoille epäonnistui. Pikkuisessa kannettavassa tietokoneessa palattiin Z80-prosessoriin. Menekki oli surkea, joten Sinclair keskeytti QL:n valmistuksen vuonna 1985. Virtakytkimen puute on hämmentävää säästöpolitiikkaa, koska kone vaikuttaa muuten tosissaan suunnitellulta. Viimeinen muunnos, Spectrum +3, poistui tuotannosta vasta vuonna 1990. Päättymättömään nau haan perustuvat pikkuruiset kasetit esiteltiin jo ZX Spectrumiin lisävarusteena, ja C-kasettinauhuriin verrattuna useimmat pitivätkin niitä parannuksena. 79 Ei näin! Qummallinen Lipsahdus nähden graafiset ominaisuudet ovat vaatimattomat. Reset-näppäin on sentään armollisesti lisätty. QL oli lähinnä yhtä ankea kuin perus-pc, mutta sen kanssa yhteensopimaton. Eräs heistä oli muuan Linus Torvalds, jonka GMOVE-niminen ohjelma QL:lle julkaistiin MikroBITTI-lehdessäkin. Omien liitinten käyttö oli tavanomainen ratkaisu halvoissa kotimikroissa, mutta kalliimmissa ammattikäyttöön tarkoitetuissa laitteissa käytettiin vuonna 1984 jo pääosin vakiintuneita standardiratkaisuja. QL:ään on nykyisin tarjolla kortinlukija, ja ovatpa harrastajat tehneet laitteesta 68040ja 68060-pohjaisia kloonejakin. Z88 sai kulttimainetta, mutta maailmanvalloitus jäi tekemättä. Armoniskua odotellessa Maailma tuntee runsaasti tapauksia, joissa hyvinkin kankea rauta on lopulta päässyt suureen suosioon. Laitteen jokainen liitäntä ulkomaailmaan on Sinclairin omaa keksintöä. Myöhempinä aikoina Ensitutustuminen Sinclair QL:ään vuonna 2016 on mielenkiintoinen kokemus. Seuraavana vuonna Sir Clive myi koko tietokonebisneksen kilpailija Amstradille, joka ensi töikseen antoi QL:lle niskalaukauksen. Vanhemmiten microdrivet ovat osoittaneet hapantuvansa vähintään yhtä nopeasti kuin halvat C-kasetit. Mac hallitsi lehtien taitossa tärkeän tarkkuusgrafiikan, ST tarjosi MIDI-liitäntää vakiona ja Amigaa saattoi käyttää myös videosignaalin työstämiseen. Sir Clive Sinclair teki QL:n jälkeen vielä yhden tietokoneen, Cambridge Z88:n. Ensimmäisissä nauhureissa oli paljon vikoja, ja kaseteilla oli taipumuksena rypistää nauhansa. Kilpailjoiden käyttämiin levykeasemiin nähden micro drive ei kuitenkaan ole nopea eikä etenkään luotettava. Siksi QL:stä tuli orpo jo parivuotiaana, ja sen hankkineet käyttäjät jäivät pitkälti oman onnensa nojaan. Tekniikkaa koskevista kommenteista erityiskiitokset Markku Reunaselle.. ROM-muistia jouduttiin laajentamaan ulkoisella dongelilla, ja siinä sijaitsevassa SuperBASIC-kielessä oli lukuisia ohjelmointivirheitä. Jos unohdetaan pc-yhteensopivuus, QL on varmasti ajanut asiansa pikkutoimiston kirjanpitoja tekstinkäsittelytehtävissä. Mukana toimitetusta Psionin ohjelmistopaketista (Quill-teksturi, Abacus-taulukkolaskenta, Easel-esitysgrafiikka ja Archive-tietokanta) on sen sijaan ollut ilmeistä iloa, ja hämmästyttävää on, että ohjelmat on jopa suomennettu. Näytön päivittyminen on jopa silminnähden hidasta. Mutta ei se yrityksen taloutta varsinaisesti auttanutkaan. ZX Spec trum jäi todennäköisesti ahkeran aivotyöläisen kirkkaimmaksi saavutukseksi tietokoneiden alalla. Monen QL-käyttäjän arkea tämä ei tosin ehtinyt pilaamaan, sillä myös näppäimistön kytkinkalvo rikkoutui suurimmasta osasta laitteita ennen pitkää. Monet heistä siirtyivät muille laitteille, toiset ryhtyivät itse paikkaamaan ohjelmistoja laitteistotarjonnassa olevia aukkoja. Ensimmäiset microdriveasemat rikkoutuivat itsestään, eivätkä myöhemmät parannukset enää palauttaneet luottamusta. YouTube-videoiden perusteella menetys ei ole valtava
Ne jotka halusivat katsoa demoja, kipusivat korkealle katsomoon, hallitasolla olevalle konepaikalleen jääneiden yläpuolelle. Hartwall Areena oli omiaan korostamaan ske ne yleisön ja muiden – pelaajiksi koettujen – kävijöiden välistä kuilua. Jokaisella ei vielä ollut taskussaan laitetta, josta on välitön pääsy kaikkeen maailman tietoon, musiikkiin, tv-sarjoihin ja niin edelleen. Skrollin Assyspessu vuodelta 2014 (s. Muuten, se Quakekin alkaa olla 20 vuotta vanha peli. Nuorison leikkikaluna tietokonetta ei ollut joka perheessä. Kulttuuri Assemblyn uumeniin on kömmitty viettämään yhteistä aikaa jo kolmella vuosikymmenellä. Kuva: Aleksi Kinnunen / Assembly Organizing Assyille mahtuvat KAIKKI. Kuitenkin mukana on alusta saakka ollut muutakin, etenkin pelaamista. Oikeastaan vuoden 1992 Assemblyjen tapahtumapaikka, koulukeskus Kauniaisissa, on aika hyvä symboli 25 vuoden takaisesta tietokoneharrastuksesta Suomessa. On yhtä aikaa nostalgisesti huvittavaa ja hieman hämmentävää kuunnella jokavuotisia ”kuaket pois!” -huutoja. Demoryhmät järjestivät tapahtumaa yhdessä, ja pääasiana olivat kompot, groupit ja produt. 15) kertoo siitä, kuinka vuonna 1994 Assembly oli jo kasvanut suureksi tapahtumaksi, ja pelaajia alkoi olla reipas osuus kävijöistä. Assembly oli alkuun demoskenetapahtuma. 3 80 1 990-luvun alussa tietokone oli harvojen harrastus. Vastakkainasettelu on parhaimmillaankin vähän epätotuudenmukainen, mutta pahimmillaan siitä tulee itseään toteuttava ennustus. Ääneen sanomaton asenne Assemblyjen vakiokävijöiden keskuudessa on, että nuoret ovat paikalla pelaamassa ja 30 vuotta täyttäneet demoja katsomassa. Teksti: Ronja Koistinen Kuvat: Assembly Organizing Ukkoutuminen – tuo parhaiden harrastusten ikävä huoli. 2 1 6 . Tietokoneita oli lähinnä työpaikoilla. Maailma sen ympärillä on ehtinyt muuttua, mutta tapahtuma itse on pysynyt yllättävän samanlaisena. Kuka ottaisi omaehtoisesti asiakseen kiinnostua ärtyneiden setien sisäänpäin kääntyneestä harrastuksesta. Kahden kerroksen väkeä Assemblyillä on jo varmasti 20 vuoden ajan ollut erikoinen henkinen juopa pelaajien ja demoskenen seuraajien välillä. Nyky-Assemblyjen pelaajista suuri osahan on syntynyt reippaasti Quaken julkaisun jälkeen. Jälkikäteen miettynä ”kuaket pois!” -huuteleminen ylhäältä alaspäin kohti hämärää, ledejä vilkkuvaa massaa oli aika karmivaa tapakulttuuria
Kuva: Aleksi Kinnunen / Assembly Organizing. Tämä on ehkä pienen maan etuja, tai vähintään oikkuja: ei ole kylliksi varaa eikä yleisöä järjestää erillisiä tapahtumia jokaiselle kuppikunnalle. Tietoliikenneyhteydet ovat nopeutuneet, halventuneet ja muuttuneet langattomiksi. Hartwall Areenalla kankaalle joutui katselemaan tuhansien tietokoneiden yli, jolloin valosaasteen minimoimiseksi oli pakko käskeä kaikkia sammuttamaan näyttönsä kompojen ajaksi. Tavallisilla ihmisillä on jatkuvasti tietotekniikkaa taskuissaan ja laukuissaan mukana, ja kaikki ovat koko ajan toisiinsa yhteyksissä. Silti Assemblyn kaltaiset tapahtumat ovat pitäneet suosionsa. Kasvokkain kohtaamiselle ei ole korviketta Viimeisen 25 vuoden tarkastelussa tietokoneiden käyttö on muuttunut valtavasti. Koneet ovat halventuneet ja pienentyneet. Joka kerta tapaa uusia ihmisiä, saa uusia ideoita, solmii suhteita ja oppii uusia asioita. Suomessa on Assembly, joka on molempia yhtä aikaa. Muualla pelaajat, skenettäjät, pelintekijät, erilaiset hakkerit, elektroniikkaharrastajat ja robottisotapäälliköt ovat omissa kerhoissaan ja tapahtumissaan. Näin vähennetään vuosien saatossa patoutunutta vastakkainasettelua. Assemblyssä on tilaa kaikille ja jokaiselle jotakin. Monipuoliseen tapahtumaan mahtuu pelien ja demojen lisäksi myös elektroniikkaa. Oli tunnelmallista, kun tietokoneiden meri oli kaiken keskellä eikä Messukeskuksen tapaan peräkammarissa. Siitä, että kaikki nurkkakunnat kokoontuvat pienessä maassa samojen kattojen alle, on varmasti myös ammatillisia synergiaetuja, kun ryhdytään toteuttamaan liikeideoita. Assemblyillä käydessä tuntuu usein siltä, että kaikki tuntevat toisensa. Tämä on pelkästään etu. Tänä vuonna suosittu ohjelmanumero oli nelikopterien kilpalentely. Messukeskus on mahdollistanut sen, että päälava, valkokankaat ja katsomot ovat kaikki hallin päädyssä, ja konepaikkojen vellova valtameri on katsojien selän takana. Elektroninen urheilu on yhä suositumpaa myös sivusta seurattuna. Toisaalta Areenalla valkokankaalle piti katsoa kaiken melskeen yli ja kaukaa. 81 Synergiaa! Maailmalla tuppaa olemaan isoja demopartyjä ja isoja pelitapahtumia. Kuva: Aleksi Kinnunen / Assembly Organizing. Hartwall Areenassa oli puolensa. Ja päälle vielä Assembly Winter, joka on oma erillinen pelitapahtumansa. Totiset miehet sponsoripaidoissaan ja muhkuissa kuulokkeissaan ovat festarikesän kohokohta joillekuille. Enää ei tarvitse käskeä ihmisiä lopettamaan kompojen ajaksi kaikkea, mitä oli tekemässä: nykyään riittää, että tekee sen hiljaa. Kuva: Santtu Pajukanta / Assembly Organizing.. Skrollin piirissä on ennenkin pohdittu, että Suomessa tietokoneharrastajien piirit ovat poikkeuksellisen yhtenäiset
• Kiinnostavimpia asioita tapahtumassa olivat vr-lasit ja rallipelisimulaattori konepaikkahallissa. • Osallistui kesällä Helsingin yliopiston tietojenkäsittelytieteen laitoksen järjestämälle ohjelmointileirille. • Viljamikin on kiinnostunut ohjelmoinnista. Muutama kaveri mukana. • Haluaa tulla uudestaankin Assemblyille. Ennakkoluuloissa ei välttämättä aina ole perää. Hän harrastaa myös pc-pelaamista. • Akseli aikoo isona ohjelmoijaksi. Niko Kaukonen, 11, Hattula • Niko on ensimmäistä kertaa Assemblyillä. Maailman muutos 1990-luvulta tähän päivään ei niinkään ole suuri murros ihmisten teknisessä sosiaalisuudessa, vaan jo silloin olemassa olleen käyttäytymisen yleistyminen varhaisten omaksujien parista koko väestöön. • Ohjelmointikerho on ollut suosittu, ja Niko toivoo, että se jatkuu hänen koulussaan. Tiedostoja vaihdeltiin, keskusteluja käytiin ja tuttavuuksia luotiin. Akselin mielestä mielenkiintoisimpia olivat 4k-introt. • Kysyttäessä, mitä Assemblyillä pitäisi olla enemmän tai eri tavalla, Akselilla on harras toive: • ”Demokompojen pitäisi olla aikaisemmin illalla, koska meidän pitää lähteä jo yhdeksältä kotiin. Akseli Lillberg, 11, Helsinki • Toinen kerta Assemblyillä. • Kysymykseen siitä, mikä hänestä tulee isona, Viljami vastaakin ”koripallopelaaja”. Kohderyhmien välillä on myös selvä ikäjakauma. Tärkeää on kuitenkin huomata myös se, että kuluvan vuosisadan sosiaalisessa mediassa ei ole oikeastaan mitään uutta niille ihmisille, jotka olivat Assembly-kävijöitä 1990-luvulla. Ties vaikka näkisimme heiltä omia kilpailutöitä jo muutaman vuoden päästä! TILAA SKROLLIN VUOSIKERTA 2017 JO NYT! VAIN 29 EUROA tilaaskrolli.fi Voita Oculus Rift. Lisäksi Assembly on monelle kesän kohokohta, samoin kuin jollekulle toiselle kahden viikon mökkireissu, Ilosaarirock, Pride tai Tangomarkkinat. Lempipeli on Grid Autosport. Veteraanikävijöiden pitkäaikaisimpana huolena on ollut peleihin ja pelaamiseen liittyvän tarjonnan lisääntyminen. He olivat jo silloin päivittäisessä yhteydessä harrastajatuttaviinsa sähköpostitse, irc:ssä ja purkeissa. Pojat tavattiin Skrollin Assembly Summer 2016 -osastolle pystytetystä demokatsomosta. Hän on auttanut testaamaan isoveljen tekemiä pelejä. Leirillä opeteltiin tekemään muun muassa pelejä. Tämä on monien mielestä tapahtunut luovien kilpailukategorioiden, eli lähinnä demoskenen, kustannuksella. eivät kiinnosta demot vaan pelkkä pelaaminen. Muutama mukana olevista kavereistakin on kiinnostunut ohjelmoinnista. Mielikuvissamme kolmi– nelikymppiset demoskeneharrastajat vähättelevät nuorempaa yleisöä, jota taas Viljami Lillberg, 8, Helsinki • Ensimmäistä kertaa Assemblyillä. Skrolli haastatteli muutamaa nuorta Assembly-kävijää, joilla on jo vahva pohja ohjelmoinnissa ja joita viehättivät tapahtumassa paitsi uudet VR-teknologiat, myös demoskenen hedelmät. Akselin veli. 3 82 Yhdestä näkökulmasta tietysti ihminen on laumaeläin, jolle fyysinen yhdessäolo on tärkeää. Kesä on Suomessa lyhyt ja perinteet sen vietossa tuiki tärkeitä. • Kerho on ollut mieluinen ja opettavainen harrastus koulukavereiden kanssa. ”Demojen pitäisi olla aikaisemmin illalla” Skrolli tapasi nuoria partykävijöitä Teksti: Ronja Koistinen Kuvat: Oona Räisänen Assemblyn profiili on muuttunut sen yli kahden vuosikymmenen historian saatossa runsaasti. 2 1 6 . • Assemblyillä siisteintä olivat vr-lasit. Assembly on omanlaisensa kesäfestari. • Hän on osallistunut koulussa ohjelmointikerhoon, jossa on oppinut tekemään omia pelejä. • Akseli ja muutama hänen kaverinsa tavattiin Assemblyillä Skrollin osastolla katsomassa vanhoja demoja. Aion kuitenkin katsoa kompot kotoa käsin netistä.” • Pojat olivat partyillä vanhempien kanssa, joten kun kotiin oli lähdettävä, kotiin oli lähdettävä. Vaikka kavereita ja puolituttuja tapaa sosiaalisessa mediassa jatkuvalla syötöllä, myös kasvokkain tapaamisella ajan kanssa on oma arvonsa. Harrastaa ohjelmointia
83 TILAA SKROLLIN VUOSIKERTA 2017 JO NYT! VAIN 29 EUROA tilaaskrolli.fi Voita Oculus Rift