• Ei tuloksia

2D-Pelimekaniikkojen toteutus : Case: KEY-Peli

N/A
N/A
Info
Lataa
Protected

Academic year: 2022

Jaa "2D-Pelimekaniikkojen toteutus : Case: KEY-Peli"

Copied!
41
0
0

Kokoteksti

(1)

2D-Pelimekaniikkojen toteutus

Case: KEY-Peli

LAB-ammattikorkeakoulu

Insinööri (AMK), Tieto- ja viestintätekniikka 2020

Riku Lempiäinen

(2)

Tekijä(t)

Lempiäinen, Riku

Julkaisun laji

Opinnäytetyö, AMK

Valmistumisaika 2020

Sivumäärä 37

Työn nimi

2D-Pelimekaniikkojen Toteutus Case: KEY-Peli

Tutkinto

Insinööri (AMK)

Ohjaavan opettajan nimi, titteli ja organisaatio

Ismo Jakonen, lehtori, Tieto- ja viestintätekniikka Toimeksiantajan nimi, titteli ja organisaatio

LUMA Suomi Tiivistelmä

Työn teoria osuudessa käsitellään pelimekaniikkoja, pääasiassa 2D-pelien. Pelimeka- niikan määritelmä, mitä erilaisia mekaniikkoja on olemassa sekä innovatiivisien 2D- pelimekaniikkojen historiaa. CASE osuudessa keskitytään LUMA Suomen hankkee- seen eli KEY-peli projektiin. Selvitetään mikä pelin tavoite on ja miten se mekaanikoil- taan saavutetaan pelitasokohtaisesti.

Asiasanat

Ohjelmointi, skripti, sprite, Unity, 2D, 3D,

(3)

Author(s)

Lempiäinen, Riku

Type of Publication Thesis, UAS

Published 2020 Number of Pages

37 Title of Publication

Implementation of 2D Game Mechanics Case: KEY-Game

Name of Degree Engineer (UAS)

Name, title and organization of the supervising teacher

Ismo Jakola, Senior Lecturer, Information and communication technologies Name, title and organization of the client

LUMA Suomi Abstract

In this research, the theory portion focuses on game mechanics, mostly of 2D games.

The definition of game mechanic, what types of mechanics exist and the history of in- novative 2D game mechanics. CASE section covers what LUMA Suomi’s KEY-game project is. What the game’s goal is and how it’s achieved through game mechanics on each game level.

Keywords

Programming, script, sprite, Unity, 2D, 3D,

(4)

1 Johdanto ... 1

2 Pelimekaniikka ... 2

2.1 Erilaiset mekaniikat ... 2

2.2 Mekaniikkojen perehdyttäminen ... 2

3 Pelimekaniikat 2D-peleissä ... 4

3.1 Yleiset 2D-peli mekaniikat ... 4

3.2 2D-pelien mekaniikkojen historia ... 8

4 Työkalut ... 13

4.1 Pelimoottorit ... 13

4.1.1 Unity ... 13

4.1.2 RPG Maker ... 14

4.1.3 Unreal Engine ... 15

4.2 Ohjelmointikielen kääntäjät ... 17

5 Case KEY-peli ... 18

5.1 Pelin tavoite ... 18

5.2 Toteutus ... 19

5.2.1 Yleiset mekaniikat ... 19

5.2.2 Kaivos tason mekaniikat ... 21

5.2.3 Mökki tason mekaniikat ... 23

5.2.4 Metsä tason mekaniikat ... 26

5.2.5 Tehdas tason mekaniikat ... 28

6 Yhteenveto ... 33

Lähteet ... 35

(5)

1 Johdanto

Osa opetuksesta nykyään halutaan viedä pelien muotoon, tehdäkseen asioiden sisäistämi- sestä viihdyttävämpää ja tehokkaampaa suorittamalla pelissä opetusaiheteemaisia tehtä- viä. LUMA Suomi on yksi näistä järjestöistä, jotka haluavat tuoda tällaisen opetusmuodon oppilaille antaakseen tietoisuutta tietyistä aloista.

Tämä työ keskittyy teoria osuudessa videopelien mekaniikkoihin, pääasiassa 2D-peleissä.

Työssä tutustutaan muun muassa pelimekaniikan määritelmään, mekaniikkojen historiaan, niiden perehdyttämiseen pelaajalle sekä mitä erilaisia mekaniikkoja käytetään yleisesti 2D- peleissä ja miksi. Työkaluina esitellään myös erilaisia pelimoottoreita, ohjelmointikielen kääntäjiä ja miten ne eroavat toisistaan.

CASE osuudessa käsitellään mikä LUMA Suomen KEY-peli projekti on. Avataan hieman projektin tavoitteesta, itse pelinkehityksen alkutilanteesta sekä mikä pelin perimmäinen tar- koitus on ja mitä mekaniikkoja sen saavuttamiseen tarvittiin. Mekaniikkojen toteutus käy- dään taso tasolta läpi ja mitä ongelmia niiden implementoinnissa tuli vastaan.

(6)

2 Pelimekaniikka

Pelimekaniikat ovat videopelin fundamentaalisin asia. Pelimekaniikaksi lasketaan kaikki, mikä on osa pelattavuutta. Ne ovat eräänlaisia videopelin sääntöjä, jotka määrittelevät mi- ten peli toimii esimerkiksi pelaajan ja mahdollisen tekoälyn toiminallisuuden kannalta. Me- kaniikat säätelevät myös muita pelin komponentteja, esimerkiksi vuorovaikutus ympäristön kanssa, kuten asioiden tarkasteleminen tai esineiden poimiminen (Ferdig, 2008) Pelimeka- niikat implementoidaan peliin ohjelmoinnin sekä yleensä myös tasosuunnittelun että äänien kautta.

2.1 Erilaiset mekaniikat

Pelimekaniikat voidaan jakaa moniin eri kategorioihin mutta yleisesti ne jaetaan niiden tär- keyden perusteella kahteen kategoriaan; ydinmekaniikkoihin sekä alamekaniikkoihin. Pelin perustoiminnot, joita pitää käyttää jatkuvasti pelaamisen aikana kutsutaan ydinmekanii- koiksi. Nämä mekaniikat esitellään aikaisin pelissä pelaajalle, sillä niitä käytetään toistu- vasti ja ne pysyvät suurimmin osin johdonmukaisina koko pelin ajan. Esimerkiksi ampumi- nen ja hyppiminen ovat ydinmekaniikkoja. Alamekaniikat ovat usein vaihtoehtoisia mutta ne täydentävät pelikokemusta ja palvelevat pelissä valmiina olevia ydinmekaniikkoja. Esine, joka poimittaessa antaa pelaajalle väliaikaisen terveydentilan tehostuksen on alameka- niikka.

Ydinmekaniikat pystytään jakamaan kahteen alakategoriaan. Ensisijaiset ydinmekaniikat ovat alusta lähtien pelaajan käytössä, ja niitä voi yksinään käyttää edetäkseen pelissä. Esi- merkiksi hyppiminen tasohyppelypelissä. Toissijaiset ydinmekaniikat joko vaativat ensisi- jaista ydinmekaniikkaa toimiakseen tai niiden käyttö on rajoitettua. Kiipeämismekaniikka peleissä vaatii yleensä hypyn kiivettävään kohteeseen ja on täten toissijainen ydinmeka- niikka. (Sicart, 2008)

2.2 Mekaniikkojen perehdyttäminen

Toisin kuin esimerkiksi lautapelin säännöt, useimmat pelimekaniikat ovat piilossa pelaajalta, yleensä pelin ”skripteissä” eli ohjelmakoodeissa. Eli tietyt mekaniikat pitää erikseen esitellä pelaajalle, että pelin säännöt ovat selvillä. Näiden mekaniikkojen perehdytys voidaan tehdä monella eri tapaa.

Useimmat pelit eivät esittele pelaajalle pelin joka mekaniikkaa kerralla, varsinkaan jos niitä on runsaasti koska tämä ylikuormittaa pelaajaa ja hän ei todennäköisesti tule muistamaan niitä myöhemmin tarpeeksi hyvin. Pelin mekaniikat kannattaa myös pelkän tekstin kautta

(7)

kertomisen sijaan antaa pelaajan tehdä senhetkinen esiteltävä mekaniikka itse. Mekaniik- kojen pakollinen toistaminen myös auttaa pelaajaa muistamaan. Tämä opettaa sekä viih- dyttää pelaajaa paremmin. Mekaniikan opettaminen voi olla immersiivisempi pelaajalle, jos perehdytys tapahtuu mahdollisimman luonnollisesti ja ehkä jopa pelin mahdolliseen tari- naan sopivassa olosuhteessa (Iyer, 2020).

(8)

3 Pelimekaniikat 2D-peleissä

2D-peli on kaksiulotteinen, yleensä sivulta tai ylhäältä kuvattu videopeli, jossa pystyy liikku- maan vain horisontaalisesti ja vertikaalisesti. Pelit olivat pitkän aikaa yleisesti 2D-muo- dossa, sillä niiden toteuttaminen grafiikan ja ohjelmoinnin kannalta on paljon yksinkertai- sempaa kuin 3D-pelien kanssa koska kaikki 2D-pelien assetit koostuvat litteästä grafiikasta eli spriteistä ja liikkuminen on lineaarisempaa. On kuitenkin olemassa myös 2.5D-pelejä eli pelit, jotka hyödyntävät 3D-elementtejä 2D-grafiikan ja pelattavuuden kanssa (Unity Tech- nologies). 2D tai 2.5D-muoto sopii hyvin esimerkiksi tasohyppely- ja roolipeleihin.

3.1 Yleiset 2D-peli mekaniikat

2D-pelejä on paljon erilaisia mutta niissä usein näkyy tuttu kaava. Pelin edetessä pelaajaa haastetaan eri tavoin. Hyppiminen on yleensä vahvasti sidoksissa pelaajan liikkumiseen.

Hyppimistä on kehitetty monimutkaisemmaksi lisäämällä esimerkiksi kaksoishypyn eli kun pelaaja hyppää ilmaan, hän voi hypätä uudestaan yltääkseen entistä ylemmäs. Tämä me- kaniikka nähtiin ensimmäisen kerran pelissä ”Dragon Buster” ja sen kaksoishyppy toimin- nassa näkyy kuvassa 1.Toinen hyppimismekaniikka päästäkseen ylemmäs on seinähyp- pely. Se on seinään hyppimistä saadakseen siitä voimaa hypätäkseen ylemmäs. Seinähyp- pelyä voi yleensä jatkaa hyppäämällä seinän vastapäiseen seinään, ja tätä toistamalla pää- see koko ajan ylemmäs. Tämä on ollut mahdollista esimerkiksi vuonna 1985 julkaistussa

”Super Mario Bros” pelistä lähtien (D'Argenio, 2018).

Kuva 1. Kaksoishyppy mekaniikka Dragon Busterissa. (Youtube, 2017a)

(9)

Hyppimisalustoja voi olla erilaisia kuten liikkuvia alustoja, jotka liikkuvat vertikaalisesti ja horisontaalisesti, jolloin pelaajan hyppyjen pitää olla oikein ajoitettuja. Alustoilla voi olla myös jonkinlainen vaikutus pelaajaan heti kun pelaaja astuu niihin. Esimerkiksi jos alusta on jäätä, kun siihen astuu niin pelaajan hahmo alkaa liukumaan ja täten pelaaja menettää osan hahmon hallinnasta, tehden liikkumisesta haastavampaa. Hyppimisestä voidaan tehdä myös pelaajalle kiireisempää tekemällä hyppyalustoista väliaikaisia. Ne voivat esi- merkiksi murentua, pudota tai muuten vain katoaa pelaajan jalkojen alta. Esimerkki väliai- kaisista alustoista pelistä ”Limbo” kuvassa 2.

Kuva 2. Putoavat kyltin kirjaimet hyppyalustoina Limbossa. (Youtube, 2015)

Tavallisesti pelin ympäristöön kuuluu pelaajaa vahingoittavia esteitä. Nämä ympäristölliset vaarat voivat esimerkiksi olla toistuvasti tiettyyn suuntaan ammutut tulipallot tai tason poh- jalla olevat piikit, jotka rankaisevat pelaajan virheellisestä hypystä. Nämä esteet voivat joko ottaa vain osan pelaajan terveystilasta tai tappaa kertaiskulla. Näiden vaarojen tarkoitus on haastaa pelaajan liikkumisen tarkkuutta. Esimerkki ympäristövaaroista pelissä ”Super Meat Boy” kuvassa 3.

(10)

Kuva 3. Piikit ja rattaat ympäristövaaroina Super Meat Boyssa. (Youtube, 2012)

Viholliset 2D-peleissä koostuvat pelkistäen kahdesta tyypistä. Kaukaa vahingoittavat vihol- liset ja lähietäisyydeltä hyökkäävät. Nämä voivat olla liikkuvia tai paikoillaan olevia omine liikkeineen. Kaukaa vahingoittavat ampuvat esimerkiksi laseri pätkiä pelaajaa kohti missä tapauksessa pelaaja voi yleensä väistää ne liikkumalla johonkin suuntaan. Päihittääkseen vihollisen, pelaajan pitää hiljalleen väistellessään projektiileja päästä vihollisen lähelle ja hyökätä tai jos pelaajalla on ase, ampua vihollinen kaukaa. Useimmissa tapauksissa jos pelaajalla on ampumiskyky, pelaajaa haastetaan asettamalla viholliset vaikeisiin kulmiin, joihin pelaaja ei voi helposti ampua. Jos kyseessä on lähietäisyydessä hyökkäävä, viholli- sella on yleisesti hyökkäys, jonka voi välttää jonkin varoittavan viestinnän avulla. Esimer- kiksi jos vihollinen on lyömässä pelaajaa miekalla, vihollinen nostaa ensin miekan päänsä ylle, antaen aikaa pelaajalle väistää tai torjua hyökkäys. Usein myös vihollinen voi torjua tai väistää pelaajan hyökkäyksen. Kummassakin tapauksessa pelaajalta vaaditaan oikeaa ajoitusta. Esimerkkejä vihollisten kohtaamisista pelistä ”Trine 4” kuvassa 4 ja ”Shovel Knight” kuvassa 5.

(11)

Kuva 4. Taistelu 2.5D-pelissä Trine 4. (Youtube, 2019a)

Kuva 5. Taistelu pelissä Shovel Knight. (Youtube, 2014a)

Pelien tasoihin on ollut tapana levitellä ympäriinsä erilaisia kerättäviä esineitä. Nämä esi- neet voivat olla esimerkiksi terveydentilaa parantavia tai jonkin pelaajan ominaisuuden het- kellistä voimistamista kuten nopeutta, kestävyyttä tai iskujen tehoa. Jotkut keräiltävät ovat vain keräilyä varten, ne eivät tehosta mitään mutta niillä voi yleensä avata pelistä lisäsisäl- töä. Kuvassa 6 on esimerkki terveydentilaan koskevista keräiltävistä esineistä pelissä ”So- nic the Hedgehog”.

(12)

Kuva 6. Kerättävät rinkulat pelissä Sonic the Hedgehog. (Youtube, 2014b)

3.2 2D-pelien mekaniikkojen historia

Innovatiivisia 2D-pelejä on paljon mutta tässä osiossa listataan lyhyesti ne, jotka edistivät selvästi 2D-pelien kehitystä mekaniikkojen suhteen. Monessa tapauksessa ei ole kuiten- kaan peli, joka keksi jonkin mullistavan mekaniikan ensimmäisen kerran, vaan sellainen, joka teki sen suosituksi.

”Space War!” kehitettiin vuonna 1962 ja se tunnetaan ensimmäisenä varsinaisena videope- linä. Ydinmekaniikoiltaan peli toimii niin että pelaaja liikkuu avaruusaluksilla tason keskellä olevan puoleensavetävän tähden ympärillä, yrittäen tuhota toinen pelaaja laukaisemalla tor- pedoja häntä kohti. Pelaaja myös tuhoutuu, jos osuu tähteen tai toiseen pelaajaan. Aluksen liikkuvuus toimii kiihdyttämällä, mutta alus pysyy liikkeessä ilman sitäkin. Pelaaja voi myös käyttää hyväkseen tähden vetovoimaa ja lingota siitä. Kummallakin aluksella on rajoitettu määrä bensaa, jonka loppuessa ei voi enää kiihdyttää alusta eteenpäin. Alamekaniikkana pelaajalla on kyky kadota ja ilmestyä satunnaiseen kohtaan tasoa, motiivina väistää esi- merkiksi toisen pelaajan torpedo tai välttää tähteen imeytyminen. Tämä tosin johtaa lopulta jatkuvan käytön jälkeen käyttäjän tuhoutumiseen (Spry, 2018). Kuvassa 7 näkymä pelistä.

(13)

Kuva 7. Space War! pelistä pelikuvaa alkuperäisellä alustalla. (Youtube, 2017b)

”Pong”, julkaistu vuonna 1972, on retrospektiivisesti yksinkertainen mutta aikoinaan vallan- kumouksellinen ja oli yksi harvoista kaupallisesti onnistuneista videopeleistä. Peli otti vai- kutteita pöytätenniksestä. Pelin ideana on pelata joko toista pelaajaa tai tekoälyvastustajaa vasten. Palloa lyödään vuorotellen edestakaisin ”mailojen” kanssa, tavoitteena saada pallo vastustajan mailan ohi, jolloin lyöjä saa yhden pisteen. Pelin voittaa se, joka ensin yltää 11 pisteeseen (Barton, 2009). Peli näkyy kuvassa 8.

Kuva 8. Pelikuva Pong pelistä. (Youtube, 2014c)

(14)

Varsinaista hyppimismekaniikkaa ei ollut peleissä kuin vasta Nintendon ”Donkey Kong” pe- lissä vuonna 1981. Pelaajan tavoitteena on nousta ramppien kautta tason huipulle, hyppi- mällä samalla tynnyreiden ja aukkojen yli pelastaakseen Donkey Kongin nappaaman prin- sessan. Onnistuminen vaati pelaajan kärsivällisyyttä ja oikein ajoitettuja hyppyjä esteiden yli. Donkey Kongia pidetään ensimmäisenä tasohyppelypelinä (Butler, 2014). Peli on ku- vassa 9.

Kuva 9. Donkey Kong pelissä hyppiminen. (Youtube, 2011)

Aluksi peleissä ei pelinäkymä ruutu voinut liikkua. Jokainen taso toimi yhden ruudun sisällä.

Toisin kuin ”Mario Bros” joka käytti ruutujen välistä liikkumista, sen jatko-osa, joka julkaistiin vuonna 1985 eli ”Super Mario Bros” oli yksi ensimmäisiä sivuttaisvierittäviä pelejä. Sivut- taisvierittävässä pelissä pelitoiminnan kuva voi ”vieriä” vertikaalisesti ja horisontaalisesti.

Yleensä ruutu on keskitetty pelaaja hahmoon ja vierii sen mukana. On myös mahdollista, että kun ruutu on mennyt eteenpäin, taakse päin ei voi enää palata. Ruutu siis määrää liikkumistilan. Toiminta-painotteisimmissa peleissä ruutu voi itsestään vieriä eteenpäin joko jatkuvasti tai välillä pysähtyen, vaatien pelaajaa päihittämään jonkin haasteen, että ruutu alkaa liikkumaan taas ja täten pääsee pelissä eteenpäin. Itsestään liikkuva ruutu määrää pelin tahdin, jonka mukaan pelaajan pitää kulkea. Super Mario Bros käytti vain eteenpäin liikkuvaa ruudunvierimistä, takaisin päin ei voinut palata. (Gaming, 2017). Pelattavuus koos- tuu suurin osin hyppimisestä. Pelaaja voi päihittää viholliset hyppäämällä niiden päälle sekä töniä erilaisia laatikoita hyppimällä saadakseen lisää keräiltäviä kolikoita tai erikoisesineitä.

(15)

Jos pelaaja kerää sienen, pelaajahahmo kasvaa kooltaan kaksinkertaiseksi ja voi rikkoa normaalisti tuhoutumattomat tiilet. Peli tunnetaan myös yhtenä aikansa harvoista peleistä, jossa on tutoriaalitaso, eli taso, joka on ensisijaisesti tarkoitettu mekaniikkojen perehdyttä- miseen. Tutoriaalitasona toimii tasoista ensimmäinen ja pelaaja ”pakotetaan” oppimaan mekaniikat hyödyntämällä niitä yksinkertaisin tavoin läpäistäkseen tason. Tämän oppimis- tason jälkeen pelaajalle annetaan enemmän vapautta, nyt halliten pelin perusmekaniikat.

Kuvassa 10 näkyy Super Mario Bros.

Kuva 10. Super Mario Bros, tutoriaali tasossa ”World 1-1”. (Youtube, 2014d)

Sega halusi Super Mario-hittisarjan kaltaisen pelin ja kehitti ”Sonic the Hedgehog” pelin.

Julkaistu vuonna 1991, Sonic mullisti tasohyppelylajityypin sen nopeilla liikkumismekaani- koilla. Pelaaja hallitsee siilin kaltaista hahmoa, joka juoksee nopeaa vauhtia kaarevissa ja kiertävissä tasoissa varoen samalla piikkejä, kuiluja, murskaavia seiniä sekä vihollisia. Pe- laaja pystyy kääriytymään palloksi ja kieriä nopealla vauhdilla ympäri tasoa kimpoillen sei- nistä. Tätä käytetään myös hyökkäyksenä vihollisia varten. Tällaista nopeaa flipperin kal- taista liikkumista värikkäissä vuoristoratamaisissa tasoissa ei ole ennen nähty videope- leissä, ja sen mahdollisti pelin ohjelmoijien luoma teknologia, joka sallii pelaajahahmon spri- ten eli kuvagrafiikan liukua sulavasti tasojen kaarien myötäisesti(shmuplations). Kuvassa 11 itse peli.

(16)

Kuva 11. Sonic the Hedgehog liikkuvuus. (Youtube, 2014b)

(17)

4 Työkalut

Pelimekaniikkojen konkreettiseen kehitykseen kuuluu monta eri työkalua mutta olennaisim- mat olevat pelimoottori, jolla peli rakennetaan ja ohjelmointikielenkääntäjä, jossa varsinai- nen ohjelmointi mekaniikkoja varten tehdään. Mekaniikkojen luonti yleensä käynnistyy ide- asta, josta se siirtyy jonkinlaiseen prototyyppiin ja lopuksi se hiotaan valmiiksi pelimekanii- kaksi. Prototyyppi vaihe yleensä toteutetaan väliaikaisilla, esimerkiksi pelimoottorin omilla sisäänrakennetuilla asseteilla, sillä tavoitteena on vain testata mekaniikan toimivuus sekä yhteensopivuus pelin muiden elementtien kanssa. Ohjelmointi osuuskin ei ole aluksi kovin hiottu, sillä koodi käy usein läpi monia muutoksia mekaniikan kehityksen aikana (New York Film Academy, 2015).

4.1 Pelimoottorit

Pelimoottori toimii videopelin kehitysalustana. Pelinkehittäjät rakentavat sen avulla pelin.

Pelimoottori yleensä kattaa grafiikan renderöinnin, fysiikkamoottorin sekä työkalut animoin- tiin, ääniin, tekoälyyn ja ohjelmointiin. Usein moottorin mukana tulee myös valmiiksi tehtyjä peli-assetteja kuten 3D-malleja, 2D-grafiikkaa sekä ääniä (Studytonight). Yleensä kuitenkin pelinkehittäjät luovat omat assettinsa jotka tuodaan moottoriin. Pelinkehittäjät rakentavat usein itse oman moottorin. Tällöin ei tarvitse ostaa moottorin lisenssiä ja moottorin työkalut ovat varta vasten luotu ja optimoitu suunniteltua peliä varten, tuottaen helpomman ja sula- vamman pelin kehityksen. Tosin oman moottorin luonti on kallista ja yleensä vie vuosia, riippuen kuinka kunnianhimoinen projekti on kyseessä. Moottori voi olla monialustainen eli tukea montaa eri pelausalustaa, tai suunnattu vain tietylle alustalle, jos tarkoitus on esimer- kiksi hyödyntää alustan uniikkeja ominaisuuksia.

4.1.1 Unity

Unity Technologiesin alun perin vuonna 2005 julkaisema Unity on monialustainen pelimoot- tori, jolla voidaan rakentaa 2D- ja 3D-pelejä. Unity on ilmainen moottori mutta saatavilla on myös maksullinen Unity Pro versio, joka tarjoaa muutamia lisäominaisuuksia. Maksullinen versio on tosin pakko ottaa käyttöön, jos liikevaihto on enemmän kuin 100 000 dollaria.

Moottorin mukana tulee myös Asset Store, Unityn oma nettikauppa, jossa voi myydä tai ostaa peli-assetteja.

Unity tukee kolmea ohjelmointikieltä; Javascript, Boo sekä C#. C# on yleisimmin käytetty kieli ja se suoriutuu parhaiten stressitesteissä. Javascript ja Boo kielet ovat hiljalleen pois- tumassa Unitysta ja täten C# tulee olemaan ainoa tuettu ohjelmointikieli.

(18)

Unityn kotisivujen mukaan vuonna 2019 yli puolet peleistä käyttivät Unity pelimoottoria.

Unity on suosittu varsinkin itsenäisten pelinkehittäjien keskuudessa enimmäkseen ilmaisuu- den takia mutta myös sen helppokäyttöisyyden ansiosta (Unity Technologies). Kuvassa 12 Unity 2018 version näkymä.

Kuva 12. Unity 2018 versio. (Youtube, 2019b)

Tunnetuimpia moottoria käyttäviä pelejä ovat muun muassa selviytymismoninpeli Rust, kaupunginrakennuspeli Cities:Skylines sekä Battle Royale tyylinen Fall Guys:Ultimate Knockout.

4.1.2 RPG Maker

Enterbrainin kehittämä RPG Maker koostuu monesta peliohjelmasta. Kaikki ohjelmat mah- dollistavat tiiligrafiikkaisten 2D-pelien teon. Sarjan ensimmäinen ohjelma julkaistiin vuonna 1992. RPG Maker, nimensä mukaisesti (karkeasti käännettynä ”RPG Tekijä”, eli roolipelien tekijä) on päämääräisesti tarkoitettu roolipelien tekoon mutta se on ollut myös tarinapoh- jaisten seikkailupelien käytössä.

RPG Makerin tavoitteena on tehdä pelin teko mahdollisimman yksinkertaiseksi ja se näkyy muun muassa pelin ohjelmoinnissa ja kartan tekemisessä. Ohjelmien mukana tulee kartan- tekotyökalu, jossa maalataan kenttä luontevasti joko itsetehdyillä tai ohjelman mukana tul- leilla tiilispriteillä. Ohjelmointi tapahtuu Event Editorilla, jolla luodaan pelin tapahtumat hel- posti selkeällä käyttöliittymällä sen monilla esimääritellyillä valinoilla. Varsinaista ohjelmoin- tia ei käyttäjä tarvitse pelin luomiseen mutta peli toimii Ruby-kielellä(rpgmakerweb.com).

RPG Maker MV versio kuvassa 13.

(19)

Kuva 13. RPG Maker MV versio. (Azmi, 2016)

RPG Maker on ollut enimmäkseen itsenäisten pelinkehittäjien hyödyntämä ja sen suosio huipentui 2010-luvun alussa. Moottoria käyttävät esimerkiksi seikkailupelit Yume Nikki ja To The Moon.sekä roolipeli Sometimes Always Monsters.

4.1.3 Unreal Engine

Unreal Engine on Epic Gamesin kehittämä pelimoottori, ja se on ollut käytössä monissa suosituissa peleissä vuodesta 1998 asti. Moottoria käyttää sekä isot peliyhtiöt että myös itsenäiset pelinkehittäjät. Moottori on enimmäkseen ilmainen, mutta kun peli tuottaa yli mil- joona dollaria, Epic Games alkaa ottamaan 5 % osuuden pelin myynneistä. (Epic Games, 2020a)

Moottori käyttää C++ ohjelmointikieltä ja hyödyntää myös visuaalista, node-pohjaista ohjel- mointijärjestelmää nimeltä Blueprints Visual Scripting (Epic Games, 2020b). Järjestelmä toimii yhdistelemällä noodeja toisiinsa ja tekstin sijaan on erilaista grafiikkaa. Järjestelmää pidetään yleisesti aloittelijoille sopivaksi, sillä se on yksinkertaisemmassa ohjelmoinnissa selvempää ja helpompaa kuin perinteinen ohjelmointi. Edistyneemmässä ohjelmoinnissa järjestelmä voi koitua hyvin sekavaksi. Unreal Engine 4 moottori sekä Blueprints kuvassa 14.

(20)

Kuva 14. Unreal Engine 4 ja sen node-pohjainen ohjelmointi. (Cordone, 2019. Epic Games, 2017)

Moottoria käyttävät tunnetut pelit kuten, Unreal-sarja, Gear of War-sarja sekä Fortnite ja sen suosion loppua ei näy lähitulevaisuudessa.

(21)

4.2 Ohjelmointikielen kääntäjät

Ohjelmointikielen kääntäjät ovat ohjelmia, jotka kääntävät käytetyn ohjelmointikielen eli läh- dekoodin toiseksi tietokonekieleksi eli kohdekieleksi. Vain kääntämisen jälkeen voi kirjoite- tun koodin muuntaa esimerkiksi ohjelmatiedostoksi (Wikibooks, 2017).

Käytetyimpiä ohjelmointikielen kääntäjiä ovat esimerkiksi Microsoft Visual Studio sekä GCC. Microsoft Visual Studio on Microsoftin ohjelmankehitysympäristö, jonka ensimmäinen versio julkaistiin vuonna 1997. Sillä voidaan luoda esimerkiksi tietokoneohjelmia ja nettisi- vuja. Visual Studio tukee ohjelmointikieliä kuten Visual Basics, C++, C# ja F#(Aggarwal, 2019). GCC eli GNU Compiler Collection on Free Software Foundation järjestön kehittämä kokoelma kääntäjiä, jotka kääntävät kieliä kuten C ja C++. Ensimmäinen versio julkaistiin vuonna 1987, jolloin se osasi kääntää vain C-kieltä (Linuxtopia,).

(22)

5 Case KEY-peli 5.1 Pelin tavoite

KEY-Peli (Kivi, Energia, Ympäristö) on LUMA Suomen aloittama hanke, jonka tavoitteena on luoda koululaisille kohdistuva mobiilipeli, joka opettaa kivi, -energia- ja ympäristöaloista.

Pelin ideana on käydä läpi nämä aihealueet erilaisilla tehtävillä, kuten esimerkiksi erilaisten kivien kerääminen ja niiden tietojen saaminen sekä roskien oikea lajittelu että myös energi- ankulutus teemainen ”tietoisku”.

KEY-peli projekti on rakennettu alusta lähtien Unity moottorille koska se on eniten ennes- tään tuttu ja helppo käyttöinen. Peli käyttää 2D-ympäristöä ja 3D-mallista pelaajahahmoa eli se luokitellaan 2.5D-peliksi. Pelin teossa hyödynnetään Unityn ”Collaborate” ominai- suutta eli pelin rakentamista yhteistyössä pilven kautta muiden tiimiläisten kanssa. Ohjel- moinnissa käytettiin C# ohjelmointikieltä sekä Microsoft Visual Studiota kääntäjänä, sillä niistä on ollut eniten kokemusta.

Projekti oli ollut jo kehityksessä toisella ryhmällä. Tämä aiempi ryhmä oli tehnyt pelin pe- rusrakenteen ydinmekaanikkojen ja sen visuaalisen tyylin suhteen, tosin osin vielä hiomat- tomasti. Kaikki tasot paitsi ensimmäinen uudelleen suunniteltiin täysin. Myös pommi meka- niikkaa on kehitetty lisää esimerkiksi räjähdysaikaa säätämällä sekä kuolemavaara on li- sätty sen räjähdyksen ajaksi. Pelaajan liikkuminen on säilynyt samana, mutta liikkumisani- maatioita on muutettu luontevammaksi niiden jäykkyyden takia. Visuaalista tyyliä on muun- neltu vähemmän retroksi ja valaistusta on paranneltu. Myös tehosteita on lisätty viimeistel- läkseen pelin ulkonäön. Valmiiksi rakennettu perusta on auttanut nykyistä projektin tekoa merkittävästi. Projektin alkuperäinen tila kuvassa 15.

Kuva 15. Alkuperäinen kaivos taso.

(23)

5.2 Toteutus

Pelin on ollut tarkoitus koostua viidestä päätasosta ja kahdesta tasojen välisistä ”tietois- kuista”. Valmiiksi valmistui kuitenkin tietoiskujen lisäksi vain neljä päätasoa ja viides taso jää täten jatkokehitykseen.

Jokainen taso eroaa tehtävämekaanikoiltaan mutta ne sisältävät tietoiskuja lukuun otta- matta tiettyjä yleisiä mekaniikkoja kuten hyppiminen, kartan tarkastelu sekä pelin nollaus.

Tasojen omanlaatuisilla tehtävilläkin on tosin yhteisiä piirteitä kuten erilaisten esineiden poi- minen. Jokaisella tasolla pitäisi olla tiettyyn teemaan sopiva tehtävä.

5.2.1 Yleiset mekaniikat

Peli alkaa päävalikosta, jossa päästään asetuksiin tai valitaan pelattava taso. Aluksi vain ensimmäinen taso eli kaivos taso on auki. Kun taso on läpäisty, taso voidaan valita pääva- likosta. Tason valinnan näkymä kuvassa 16.

Kaivos 16. Tasovalikko.

Tasojen yhteiset ydinmekaniikat koostuvat muun muassa 2D-pelille tyypillisestä liikkuvuu- desta eli hyppimisestä ja liikkumisesta horisontaalisesti. Kamera on keskitettynä pelaaja- hahmoon ja seuraa pienellä viiveellä pelaajan liikkeitä pehmeästi. Seuraavaan tasoon päästäkseen pelaajan pitää aukaista uloskäyntiportaali. Jokaisella tasolla on omat vaati- mukset portaalin aukaisemiseksi. Nämä vaatimukset täytetään tason tehtävän avulla. Esi- merkiksi kaikki tehtävän määrittämien esineiden kerääminen voi aukaista portaalin. Joka tasolla on mahdollista kuolla eri tavoin, jolloin peli pysähtyy ja antaa pelaajalle kuoleman syyn sekä valikon, missä valitaan joko tason uudelleen aloitus tai pelin lopetus. Kuoleman

(24)

aiheuttavat määritellyt alueet, jotka sisältävät törmäystarkastelun. Eli alue tarkastelee joka esineen törmättyä siihen, onko törmääjä pelaajahahmo. Jos on, kuolematila laukaistaan.

Kuolematila kuvassa 17.

Kuva 17. Kuolematila kun pelaaja tippuu tappavaan nesteeseen.

Vaihtoehtoisiin mekaniikkoihin kuuluu tason kartan tarkastelu. Painamalla käyttöliittymän kartta näppäintä, voidaan tuoda esille tai pois näkyviltä kuva, joka näyttää koko tason ra- kenteen, sekä tasokohtaiseen tehtävään liittyvien asioiden ja portaalin sijainnin. Kartta me- kaniikka on näkyvissä kuvassa 18. Pelaaja halutessaan voi aloittaa tason uudestaan pai- namalla käyttöliittymän yläosassa sijaitsevaa nappia. Tämä useimmissa tapauksissa nollaa tason täysin sen alkuperäiseen koskemattomaan tilaansa. Tämä toiminto myös siirtää pe- laajan alkusijaintiin. Tämä mekaniikka on hyödyllinen silloin, kun pelaaja tuntee tehneensä jonkin virheen, kuten kuluttanut kaikki tarvittavat esineet loppuun tai tippunut johonkin tason paikkaan mistä ei ole paluuta. Myös kuolematila käyttää tätä toimintoa, jos pelaaja valitsee kuollessaan valikosta tason uudelleen aloituksen.

(25)

Kuva 18. Kaivos tason kartta 5.2.2 Kaivos tason mekaniikat

Suunnitelma tasoa varten oli, että erilaisia kiviä kerättäisiin ja niistä opittaisiin jotenkin tietoa.

Kaivos taso on KEY-pelin ensimmäinen taso. Taso pelaajan edetessä esittelee koko pelin ydinmekaniikat sekä tason omanlaatuiset mekaniikat. Niin kuin jokaisessa tasossa, meka- niikat perehdytetään pelaajalle kyltein sekä käytännöllisesti hiljalleen erilaisin haastein. Esi- merkiksi tämän tason pommi mekaniikka esitellään melkein heti alussa vaiheittain, kyltein ja haastein pelaajalle pitämällä ensin räjäyttää yksinkertainen ohut este yhdellä pommilla edetäkseen tasossa eteenpäin. Tämän jälkeen vastaan tulee paksumpi seinä, jonka ohi voidaan päästä myös yhdellä pommilla, jos se on aseteltu oikeaan paikkaan. Lopuksi näy- tetään, että tietyt esteet pitää räjäyttää kaksi kertaa, päästäkseen niiden läpi. Kuvassa 19 näkyy pommi mekaniikka sekä ohjeistuskyltti.

(26)

Kuva 19. Pommi sytytetty ja ohjeistuskyltin teksti.

Tämän tason tehtävänä on kerätä viisi erilaista kiveä ympäri tasoa aukaistaksesi portaalin.

Kiviä hyödynnetään myöhemmin Tehdas-tasossa. Kiviä kerätään kävelemällä niiden koh- dalle, jolloin kivi katoaa maailmasta ja ilmestyy ”kivilistaan”. Kivilista on lista, joka avataan painamalla sille määriteltyä nappia käyttöliittymässä. Näytön keskelle avautuu läpinäkyvä näyttö, jossa luetellaan kaikki kerättävät kivet nimellä, sekä merkki niiden jokaisen vierellä, joka antaa pelaajan tietää, onko kivi kerätty. Jokainen nimi on myös näppäin, jota painettua ilmestyy lyhyt kuvaus kivestä, jos kivi on kerätty. Kuvassa 20 tästä mekaniikasta kuva.

Kuva 20. Kivilista.

Tason aikana käytetään hyväksi aiemmin mainittua pommi mekaniikkaa. Tämä mekaniikka on käytettävissä vain Kaivos tasossa ja Mökki tasossa. Pommeja on pelaajan käytössä tietty määrä, jotka palautuvat vain, jos pelaaja aloittaa tason uudestaan. Pommeja asetel- laan painamalla pommi-ikonista näppäintä käyttöliittymässä. Pommissa ei ole minkään- laista fysiikkaa, täten se voidaan asetella maahan tai ilmaan. Kun pommi on asetettu, se parin sekunnin päästä räjähtää, joka tuhoaa kaikki ympärillä olevat asiat, jotka ovat määri- telty tuhoutuvaksi. Jos pelaaja osuu pommin räjähdysalueeseen, hän kuolee. Pommit ovat tarkoitettu päämääräisesti esteiden tuhoamiseen, tosin seuraavassa tasossa ne ovat tar- koitettu myös avustamaan hyppimishaasteissa.

Jossain kohtaa projektin tekoa tuli ilmi, että pommi ei räjähdä oikein pelin rakennetussa versiossa, tässä ja seuraavassa tasossa. Pommi joko jäi ikuisesti pommin syttymisvaihee- seen eli lanka palaa mutta ei ikinä loppuun, tai sitten pommi räjähti, mutta sen räjähdyste- hoste ei näkynyt ja se ei räjäyttänyt esteitä. Pommi toimi taas normaalisti, kun peli nollattiin.

(27)

Väliaikaiseksi korjaukseksi luotiin toiminto, että pelin käynnistyshetkellä peli nollataan välit- tömästi ja automaattisesti. Myös alkuperäisellä kivilista mekaniikalla oli ongelmia toimia yh- teensopivasti uusien mekaniikkojen kanssa. Alkuperäisellä versiolla oli pakko aukaista ky- seinen lista, jos siellä oli kaikki kerätyt kivet ennen kuin tason portaali aukeaisi. Kivilistan alkuperäinen tarkoituskin oli vanhentunut. Pommimekaniikan ja kivilistan alkuperäiset tar- koitukset, silloin kun projektin rakenne oli vielä eri, että peli koostuu pelkästään erilaisten kivien räjäyttelystä ja sen jälkeen niiden saaminen kivilistaan nimineen ja muine tietoineen.

Tämä alkuperäinen kivilistamekaniikka päätettiin poistaa ja korvata se uudella, alusta al- kaen rakennetulla ja tason uusia mekaniikkoja varten olevalla kivilistalla, joka näyttää nyt selvästi, että tarvitaan viisi kiveä, oletko poiminut ne, sekä kivien tiedot ja jopa kuva jokai- sesta kerätystä kivestä. Näkymä vanhasta kivilistasta kuvassa 21.

Kuva 21. Alkuperäinen kivilista.

5.2.3 Mökki tason mekaniikat

Ennen varsinaista mökki tasoa yksi pelin kahdesta tietoiskuista tapahtuu. Visailun kysymys- ten aiheena on juuri läpäistyn kaivos tason kivet ja oikeisiin vastauksiin on saatu vihjeitä kivilistan sisältämästä kivien kuvauksista. Vastauksia on kolme jokaiselle kysymykselle. Jos kysymykseen vastaa väärin, kuuluu virheääni ja valinta muuttuu punaiseksi hetkellisesti.

Tämä toistuu jokaisen väärän vastauksen painalluksella. Jos vastaus on oikea, valinta muuttuu vihreäksi ja visailu etenee seuraavaan kysymykseen, kunnes ne loppuvat, jolloin voi valita joko toistaa visailun tai jatkaa mökki tasoon. Myös virheellisten vastauskertojen määrä näytetään. Tietoisku näkyy kuvassa 22.

(28)

Kuva 22. Pelin ensimmäinen ”tietoisku”.

Tason ideana oli, että sen aikana nähtäisiin jollain tapaa neljä eri STEKin (Sähköturvalli- suuden Edistämiskeskus ry) luomaa videota, jotka antavat tietoisuutta sähkön käytöstä.

Mökki tason tehtävänä on katsoa tason kaikki neljä videokasettia keräämällä ne ja asetta- malla ne televisioihin. Kummatkin, sekä televisiot että kasetit ovat levitelty ympäri tasoa.

Kuten kivet kaivos tasossa, kasetit kerätään kulkemalla niiden kohdille. Jos pelaajalla on ainakin yksi kasetti hallussa, kasetin voi käyttää mihin vain televisioon, jolloin kasetti kuluu ja television punainen valo muuttuu vihreäksi, viestien että televisio on avattu. Kun televisio on avattu, pelaaja saa kyvyn katsoa kyseistä televisiota, joka toistaa yhden neljästä vide- osta. Videoiden teemana on energia ja sen käyttö. Videon katsomisen voi keskeyttää milloin vain painamalla käyttöliittymän ylänurkassa olevaa näppäintä. Kun televisioon on syötetty jo kasetti ja televisio on avautunut, samaan televisioon ei voi enää käyttää toista kasettia.

Kun kaikki televisiot on avattu kaseteilla, tason portaali avautuu ja pelaaja voi edetä seu- raavaan tasoon. Kuvassa 23 mökki taso.

(29)

Kuva 23. Mökki taso ja yksi televisioista.

Suorittaakseen tason tehtävän, pelaajan pitää käyttää pommi mekaniikkaa hyväksi eri ta- voin. Tällä kertaa pommeja ei käytetä pelkästään esteiden hävittämiseen mutta myös apu- välineenä saadakseen tarvittavan hyppyalustan esteen ylitsepääsemiseksi. Tasossa esi- merkiksi on pelaajaa korkeammalla alusta, jonka päälle pitäisi päästä. Pelaaja ei kuitenkaan ylety siihen pelkällä hypyllä. Yläpuolella katossa, on puulauta, joka pitää yllään pahvilaati- koita. Räjäyttämällä pommilla tämän puulaudan, pahvilaatikot tippuvat alas korkean alustan eteen, jolloin pelaaja voi hypätä niiden avulla alustalle. Tasossa on olemassa kahdenlaisia puulautoja, jotka voi erottaa toisistaan niiden ulkonäön perusteella; heikkoja ja vahvoja. Hei- kot puulaudat kestävät yhden räjähdyksen, vahvat kaksi.

Mökki on ensimmäinen taso, joka käyttää oikotie mekaniikkaa. Oikotiet ovat ovia, jotka ovat lukossa, kunnes niiden päätyovi aukaistaan. Tällöin pelaaja voi kulkea näiden ovien kautta nopeammin ympäri tasoa ja avatut ovet pysyvät avoinnaisina tason nollauksenkin jälkeen, joten ne ovat hyödyllisiä edistyksen kannalta. Tämä mekaniikka ei palaa heti seuraavassa tasossa sillä melkein jokainen taso on suunniteltu siten että kulkutiet yhdistyvät toisiinsa sekä rakenne on yleisesti kehämäinen. Mekaniikka on varattu vain monimutkaisimmille ta- soille. Oikotie ovi kuvassa 24.

(30)

Kuva 24. Yksi oikotie ovista mökki tasossa.

Mökki tason kehityksen aikana suurin ongelma mekaniikkojen suhteen oli saada televisioi- den avautumiskoodin oikeanlainen nollaaminen eli pelin nollaamisen aikana tarkistetaan, että jokainen televisio sulkeutuu ja ei ole enää käytettävissä pelaajalle. Tässä vaiheessa projektia ohjelmointitaito ei ollut vielä riittävän hyvä selvän ja tehokkaan koodin tekoon.

Myöhemmin projektia työstäessä, koodi kirjoitettiin selkeämmäksi uusilla opituilla taidoilla.

Taso ei alun perin hyödyntänyt oikotie mekaniikkaa. Tämä lisättiin vasta myöhemmin, kun oikotie mekaniikka luotiin tehdas tasoa varten. Oikotiet helpottavat merkittävästi mökki ta- son paikoin todella vaikeaa edistymistä.

5.2.4 Metsä tason mekaniikat

Mökki ja metsä tason välissä tulee pelin toinen ja viimeinen tietoisku. Tämän kertaisen vi- sailun teemana on energia. Vihjeet oikeisiin vastauksiin siis löytyivät mökki tason katsotta- vista videoista, jotka jakavat saman teeman. Jos pelaaja ei kuitenkaan muista enää kyseisiä videoita, visailun käyttöliittymä tarjoaa mahdollisuuden katsoa vastauksen sisältävän vi- deon uudestaan. Tämän visailun vastaustapa eroaa ensimmäisestä siten että pelaajalle ei anneta valmiita vastauksia valittavaksi vaan pelaajan pitää kirjoittaa kirjoituskentälle vas- taus. Jos vastaus on väärin, pelaajalle annetaan kirjoituskentän alapuolelle vihje teksti, joka virhe virheeltä antaa enemmän tietoa oikean vastauksen saavuttamiseksi. Lopulta jos pe- laaja antaa väärän vastauksen tarpeeksi monta kertaa, teksti antaa suoraan oikean vas- tauksen. Tietoisku näkyy kuvassa 25.

(31)

Kuva 25. Pelin toinen tietoisku. Kysymykseen vastattu väärin.

Tason teemana alusta lähtien suunnitelman mukaan oli roskien keräys ja niiden lajittelu.

Metsä tason päätehtävänä on siis kerätä tason kaikki roskat ja lajitella ne oikein lajittelukes- kuksessa. Keräilymekaniikka toimii samoin kuin aiemmissa tasoissa. Lajittelujärjestelmä toimii siten että suurimman osan roskista voi lajitella joko yhden tai kahden pisteen arvoi- sesti. Esimerkiksi banaaninkuoren voi asettaa joko sekajätteeseen tai biojätteeseen. Jäl- kimmäisestä saa enemmän pisteitä. Nämä pisteet tulevat hyödylliseksi myöhemmin seu- raavalla tasolla. Tason portaalin aukaisun vaatimuksena on pelkästään kaikkien roskien lajittelu. Lajittelu pistemäärällä ei ole väliä vielä. Lajittelukäyttöliittymä näkyvissä kuvassa 26.

Kuva 26. Lajittelun käyttöliittymä. Pelaaja on kerännyt mutterin, banaaninkuoren sekä muo- vipussin.

(32)

Tuodakseen lisähaastetta tässä kohtaa peliä, karhunrautoja on levitelty eri puolille tasoa, joihin osuessa pelaaja kuolee. Karhunraudat eroavat muista kuolemavaaroista siten että ne eivät ole helposti huomattavissa. Ne piileksivät ruohikon ja pusikoiden takana, vaatien pe- laajaa olemaan tarkkana koko tason aikana. Ne voidaan tosin helposti ylittää hyppäämällä niiden ylitse. Pelaajan toivotaan tähän mennessä oppineen pelin ydinmekaniikat hyvin, jo- ten tästä tasosta lähtien peli tulee olemaan entistä haastavampi. Karhunrauta kuvassa 27.

Kuva 27. Piilossa oleva karhunrauta, joka on selvennyksen vuoksi ympyröity.

Vaikeuksia metsä tasossa toi eniten lajittelumekaniikka. Lajittelukoodin haasteena oli, että jokaisen lajiteltava roskan piti mennä vain tiettyihin roskiksiin. Joistain sai tuplapisteet jois- tain normaali määrä. Jos roskaa ei voinut asettaa roskikseen, kuuluisi virheääni. Kun käyt- tää jotain roskista, pitää tunnistaa mikä roska on ja sopiiko se tällä hetkellä käytössä ole- vaan roskikseen.

5.2.5 Tehdas tason mekaniikat

Toiseksi viimeisin taso, tehdas, on tähän mennessä monipuolisin sekä tehtävältään että mekaanikoiltaan ja isoin kooltaan. Taso esittelee kolme uutta mekaniikkaa tehtävämeka- niikkojen lisäksi; pelaajan liikkumista auttavat liikkuvat alustat sekä uusia kuolemavaaroja;

tulikuumat höyryputket ja murskaavat männät. Liikkuvien alustojen välillä hyppiminen, män- tien väistely sekä höyryputkien sulkeminen luovat uudenlaisen kiireellisyyden tunteen ja vaativat pelaajalta nopeaa päätöksentekoa. Nämä mekaniikat antavat pelille enemmän dy- naamisuutta kuin aiemmissa tasoissa.

Liikkuvat alustat ovat alustoja, joiden päälle pelaaja voi hypätä ja antaa kuljettaa sen rataa seuraten. Alustat liikkuvat pisteestä pisteeseen, kehää myöten toistuvasti, joskus tason

(33)

käynnistämisestä alkaen, jotkut vasta alustaan yhteydessä olevan napin painamisen jäl- keen. Joissain alustoissa nappi on kiinnitetty itse alustaan, antaen pelaajalle kyvyn välittö- mästi pysäyttää alusta esimerkiksi vaaran uhatessa edessä ja käynnistää se uudestaan jatkaakseen radalla liikkumista. Alustan rata on usein tehty haastavaksi, vaatien pelaajaa olemaan tarkkana ja vikkelänä. Eteen tulee esteitä, jotka joko työntävät pelaajan alas alus- talta, tai muuten vain tappavat pelaajan niihin osuessa. Välttääkseen näitä, pelaajan pitää siirtyä väliaikaisesti pois alustalta ja hypätä takaisin. Tämä eroaa pelin muista vaaran vält- telyistä siten, että alustat ovat yleensä vieläkin liikkeessä, kun pelaaja ei ole enää niiden päällä, ja täten pelaajan liikkeiden ajoitus on tärkeää. Jos pelaaja ei kiirehdi takaisin alus- talle, se ehtii siirtyä pois ulottuvilta, ja täten pelaaja joutuu odottamaan alustan kiertoa ja tulevan uudestaan kohdalle. Höyryputket olevat yksi radan potentiaalisista vaaroista, ja niitä ei usein voi välttää ilman, että niitä suljetaan kiinni. Kuvassa 28 on liikkuva alusta.

Kuva 28. Liikkuva alusta, johon on kiinnitetty nappi.

Höyryputket ovat uusi kuolemavaara. Putkesta tulee höyryä, johon osuessa pelaaja kuolee.

Ne ovat ainoita tappavia esteitä, joita pelaaja pystyy sulkemaan ja täten poistaa niiden uhan. Sulkeminen tapahtuu yleensä lähistöllä sijaitsevasta venttiilistä, jota kääntämällä höyry sammuu. Höyry ja sen sulkeva venttiili kuvassa 29. Toinen uusi kuolemavaara on männät. Männät toimivat niin kuin liikkuvat alustat, niitä voidaan käyttää liikkumisalustoina edetäkseen tasossa, mutta ne liikkuvat aina vain edestakaisin kahden pisteen välein ja yleensä seinää tai kattoa vasten. Mäntien päällä ollessaan on mahdollista murskautua kuo- liaaksi männän osuessa vastakkaista pintaa kohti, ellei pelaaja äkkiä mene pois välistä.

Jotkut männät eivät murskaa vaan työntää pelaajan alas, usein kuolemaan. Aiemmin mai- nituissa liikkuvien alustojen radoilla on usein tämä uhka. Kuvassa 30 näkyy mäntä.

(34)

Kuva 29. Tappava höyry ja sen sammuttava venttiili.

Kuva 20. Liikkuvat männät.

Tehdas tason ideana oli, että siellä voitaisiin valmistaa esineitä kerätyistä materiaaleista sekä olla jotenkin tekemisissä energiantuotannon kanssa. Täten tason tehtävän varsinai- sena päämääränä on valmistaa esineitä aiemmilta tasoilta kerätyistä materiaaleista. Tämän saavuttaakseen, suoritettava tehtävä on monimutkaisin tähän mennessä ja se koostuu kol- mesta eri vaiheesta. Osien keräys, niiden kokoaminen oikein, sekä esineiden valmistus ko- neilla.

Tehtaan valmistuskoneet eivät aluksi toimi, sillä niille virtaa antava katolla oleva tuulimylly on rikki. Jos konetta yrittää käyttää, ilmoitus ilmestyy näytölle, joka antaa pelaajan tietää, että kone tarvitsee virran toimiakseen. Tuulimyllyn korjatakseen, pelaajan pitää ensiksi ke- rätä kaikki viisi tuulimyllyn osaa, jotka ovat vakiintuneen kaavan mukaan levitelty ympäri

(35)

tasoa. Kukin osa on aseteltu yhteen viidestä eri tehtaan alueesta, jossa on omat haasteet, jotka pitää ylittää saadakseen kyseisen osan. Kun osan kerää, osa siirtyy tuulimyllyn ko- koamiskäyttöliittymään, jonka saa näkyville katolla olevan kokoamisnosturin lähellä olta- essa. Kun osa näkyy käyttöliittymässä, sitä voi käyttää kokoamisessa.

Osat pitää koota oikeassa järjestyksessä saadakseen tuulimylly ehjäksi. Esimerkiksi runko pitää asettaa ennen siipiä. Kokoaminen tapahtuu raahaamalla osat oikeille kohdilleen, jotka näkyvät punaisina muotoina avustaakseen prosessia. Kun kaikki osat ovat koottu, tuulimylly on valmis ja alkaa pyörimään, viestien että virta on palautunut valmistuskoneisiin. Ko- koamisnäkymä kuvassa 31.

Kuva 31. Tuulimyllyn kokoaminen.

Valmistuskoneet ovat nyt käynnissä ja pelaajan käytettävissä. Kaikilla viidellä koneella on mahdollisuus valmistaa jokin tuote, ja jokainen hyödyntää eri kivimateriaalia, jonka pelaaja on kerännyt ensimmäiseltä tasolta. Konetta käyttäessä, ilmestyy yksinkertainen käyttöliit- tymä, joka näyttää valmistettavan tuotteen. Gneissikoneella voi esimerkiksi valmistaa jout- senpatsaan. Jokaisen tuotteen valmistukseen tarvitsee tosin tietyn pistemäärän, joka myös näkyy käyttöliittymässä. Nämä pisteet ovat äskeisen tason, eli metsän lajittelupisteitä, jotka ovat muunnettu tämän tason valmistuspisteiksi. Jos olet ansainnut vain minimipisteet, saat kuitenkin valmistettua jotakin, ja se on tarpeeksi tason portaalin avautumiseen. Enemmän kuin yhden tuotteen valmistus on siis vaihtoehtoista. Valmistuksen käyttöliittymä kuvassa 32.

(36)

Kuva 32. Sormus voidaan valmistaa.

Kaikista tasoista tehdas tason nollaus oli vaikeinta toteuttaa sen monien eri mekaniikkojen lukumäärän sekä niiden monimutkaisuuksien takia. Tasossa pitää nollata liikkuvat alustat, höyryt ja niiden venttiilit sekä tuulimylly ja siihen tarvittavat osat. Liikkuvat alustat ovat voitu laittaa käyntiin pelaajan toimesta eli ne nollataan laittamalla ne ensiksi pois käynnistä ja sitten asettaa alusta niiden alkuperäiseen sijaintiin. Myös höyryt ovat voitu sulkea, joten ne pitää laittaa takaisin päälle ja venttiilit käännetään takaisin alkuperäiseen asentoon, jotta niitä voidaan taas käyttää.

Eniten kulutti aikaa tuulimyllyn nollaus, mekaniikan monimutkaisuuden takia. Kerättävät osat pystytään helposti asettamaan alkuperäiseen asentoon ”keräämättömäksi”, mutta kun osia on kerätty, ne päätyvät tuulimyllyn luetteloon mistä ne voidaan raahata paikoilleen.

Osat eivät palanneet nollautuessaan oikeille kohdilleen, kun ne ilmestyvät luetteloon, tai ne eivät ilmestyneet ollenkaan. Myös itse raahaamismekaniikka ei toiminut varsinaisessa ra- kennetussa versiossa puhelimella pelatessa.

(37)

6 Yhteenveto

Työssä tutkittiin mitä pelimekaniikat tarkalleen ovat ja mitä eri mekaniikkoja 2D-peleissä yleisesti käytetään. Yllätyksenä selvisi, että pelimekaniikoista on monta eri määritelmää sekä kategorioita mihin mikin mekaniikka lokeroidaan, mutta tärkeimmät lienee ydin- ja ala- mekaniikat. Historia osiossa, ei tullut yllätyksenä, että pelit, joilla oli tärkeimpiä innovatiivisia mekaniikkoja, sattuivat myös olemaan maailman tunnetuimpia pelejä kuten Super Mario Bros, Sonic the Hedgehog ja Donkey Kong. Nämä pelit tunnetaan niiden mekaniikkojen takia. Super Mario Brosin vierivä ruutu sekä sen ensimmäinen, läpikotaisesti opettava tuto- riaalitaso. Sonic the Hedgehog ja sen nopea, villi liikkuvuus. Donkey Kong ja tynnyreiden yli hyppiminen ja tikkaissa kiipeily. Toki myös pelien ulkonäkö ja äänimaailma ovat osa nii- den suosiota, mutta varsinkin sen ajan peleistä ihmiset ajattelevat eniten niiden pelatta- vuutta.

Alkuperäisenä tavoitteena oli, että KEY-peli koostuisi viidestä tasosta. Sen teko olisi siis jatkokehityksenä ilmiselvä. Viidennen tason idea on suhteellisen selvä. Lyhyt ja lineaarinen taso, joka hyödyntää kaikkien läpäistyjen tasojen mekaniikkoja. Tehtävämekaniikka olisi yk- sinkertainen; asettele tehdas tasolla pelaajan valmistamat esineet hyllylle. Tämän jälkeen alkaisi jonkinlainen loppukohtaus ja sitten lopputekstit alkavat. Taso ei siis tehtävämekanii- kan lisäksi esittele mitään uusia mekaniikkoja vaan käyttää uudelleen jo ennestään tuttuja mekaniikkoja.

Peli pitäisi myös saada toimimaan sulavasti Android-puhelimilla. Peli laitettiin testattavaksi ja palautteen mukaan se on teknisesti vielä kovin hiomaton esimerkiksi asennuksen suh- teen, mutta pelattavuuden kannalta se on ”koukuttava” ja haastava. Suorituskyky on vielä- kin ongelma, sekä tehdas tason toteutus osiossa mainittu tuulimyllyn osien raahaamison- gelma pitäisi saada ratkaistua. Kun tasot olisivat valmiita, kartta mekaniikkaa voisi hioa li- säämällä pelaajan sijainnin karttaan. Tämä olisi mainio lisäominaisuus ja parantaisi peliko- kemusta. Kaivos taso osiossa mainittu pommi mekaniikka ongelma on saatu toimimaan väliaikaisella korjauksella, mutta se ei ole välttämättä paras ratkaisu ja siihen voisi keksiä paremman tavan. Lopuksi pelin ulkokuorta voitaisiin parannella hiomalla esimerkiksi käyt- töliittymää, sijoittelua ja spritejä sekä koristelemalla tasoja lisää. Kaivos taso varsinkin on heikoin visuaalisesti ja se on ongelma koska kaivos on pelin ensimmäinen taso ja täten antaa huonon ensivaikutelman. Myös ääni maailmaa voidaan parantaa lisäämällä enem- män eri äänitehosteita ja musiikkia taustalle.

KEY-pelin kehitys on edistynyt hyvin. Varsinkin kun otetaan huomioon, että ohjelmointitai- dot olivat projektia aloittaessa todella alkeelliset. Projekti on kehittänyt ohjelmointitaitoa

(38)

suuresti pelin mekaniikkojen implementoinnin aikana ja se on ollut merkittävintä mitä tästä kokemuksesta on saatu.

(39)

Lähteet

Aggarwal, A. 2019. Introduction to Visual Studio. geeksforgeeks. Viitattu 4.11.2020.

Saatavissa https://www.geeksforgeeks.org/introduction-to-visual-studio/

Azmi, Muhammad. 2016. Developing Game Based on Historical Event with RPG Maker MV. ResearchGate. Viitattu 30.11.2020. Saatavissa

https://www.researchgate.net/publication/324908532_Developing_Game_Based_on_Hist orical_Event_with_RPG_Maker_MV/figures

Barton, M. 2009. The History Of Pong: Avoid Missing Game to Start Industry.Gamasutra.

Viitattu.4.11.2020.Saatavissa

https://www.gamasutra.com/view/feature/3900/the_history_of_pong_avoid_missing_.php Butler, T. 2014. The rise of the jump. Polygon. Viitattu 5.11.2020. Saatavissa

https://www.polygon.com/features/2014/1/20/5227582/the-rise-of-the-jump Cordone, 2019. Unreal Engine 4 Game Development Quick Start Guide. Viitattu 30.11.2020. Saatavissa

https://subscription.packtpub.com/book/game_development/9781789950687/1/ch01lvl1se c11/the-unreal-editor

D'Argenio, A. 2018. GAMING LITERACY: A BRIEF HISTORY OF THE JUMP (PART 2).

GameCrate. Viitattu 16.11.2020. Saatavissa https://gamecrate.com/gaming-literacy-brief- history-jump-part-2/20747

Epic Games. 2020a. FREQUENTLY ASKED QUESTIONS (FAQ). Unreal Engine. Viitattu 3.11. 2020. Saatavissa https://www.unrealengine.com/en-US/faq?sessionInvalidated=true Epic Games, 2020b. Blueprints Visual Scripting. Unreal Engine. Viitattu 3.11.2020.

Saatavissa https://docs.unrealengine.com/en-US/Engine/Blueprints/index.html

Epic Games, 2017. Blueprint Elevator - Multiple Floors Help?!. Unreal Engine. Viitattu 30.11.2020. Saatavissa https://answers.unrealengine.com/questions/590494/blueprint- elevator-multiple-floors-help.html

Ferdig, R. 2008. Handbook of Research on Effective Electronic Gaming in Education. IGI- Global. Viitattu 20.10.2020. Saatavissa https://www.igi-global.com/dictionary/game-design- intuitive-concept-knowledge/11833

Gaming, N. 2017. The evolution of platform games in 9 steps. Red Bull. Viitattu 9.11.2020.

Saatavissa https://www.redbull.com/in-en/evolution-of-platformers

(40)

Iyer, A. 2020. How Video Games Introduce Their Mechanics. The Pause Button. Viitattu.

17.11.2020. Saatavissa https://pausebutton.substack.com/p/how-video-games-introduce- their-mechanics

Linuxtopia. 1.1 A brief history of GCC. Viitattu 4.11.2020. Saatavissa https://www.linuxtopia.org/online_books/an_introduction_to_gcc/gccintro_4.html

New York Film Academy, 2015. Getting The Most Out Of Your Video Game Prototype.

Viitattu 10.11.2020. Saatavilla https://www.nyfa.edu/student-resources/getting-the-most- out-of-your-prototype-game/

rpgmakerweb.com. Viitattu 3.11.2020. Saatavissa https://www.rpgmakerweb.com/

Spry, J. 2018. FIRSTS: SPACEWAR! WAS THE WORLD'S FIRST VIDEO GAME. SYFY.

Viitattu 4.11.2020. Saatavissa https://www.syfy.com/syfywire/firsts-spacewar-was-the- worlds-first-video-game

Studytonight, 2020. Game Engine and History of Game Development. Viitattu 2.11.2020.

Saatavissa https://www.studytonight.com/3d-game-engineering-with-unity/game-engine shmuplations. Sonic the Hedgehog – Developer Interview Collection. Viitattu 23.11.2020.

Saatavissa http://shmuplations.com/sonic/

Sicart, M. 2008. Defining Game Mechanics. Game Studies. Viitattu 16.11.2020. Saatavissa http://gamestudies.org/0802/articles/sicart

Unity Technologies. 2020.Full toolset for 2D and 3D video games. Viitattu 25.11.2020.

Saatavissa https://unity.com/how-to/difference-between-2D-and-3D-games Unity Technologies. 2020. Unity Platform. Viitattu 3.11.2020. Saatavissa https://unity.com/products/unity-platform

Wikibooks, 2017. The Wikimedia Foundation. Introduction to Software Engineer-

ing/Tools/Compiler. Viitattu 4.11.2020. Saatavissa https://en.wikibooks.org/wiki/Introduc- tion_to_Software_Engineering/Tools/Compiler

Youtube, 2017a. Arcade Game: Dragon Buster (1984 Namco). Viitattu 29.11.2020. Saa- tavissa https://youtu.be/F01vQFSgZA4

Youtube, 2015. LIMBO Walkthrough Gameplay - Full Game. Viitattu 29.11.2020. Saata- vissa https://youtu.be/N9icdJ1dk9U

Youtube, 2012. Super Meat Boy - 106% Walkthrough. Viitattu 29.11.2020. Saatavissa https://youtu.be/L0rZ7r2hcms

(41)

Youtube, 2019a. Trine 4 - How to Play as Pontius - Available Now. Viitattu 29.11.2020.

Saatavissa https://youtu.be/N9JDVJ96FMU

Youtube, 2014a. Shovel Knight Walkthrough Part 2 - Hunger Pains. Viitattu 29.11.2020.

Saatavissa https://youtu.be/bXHACFgffCo

Youtube, 2014b. Sonic the Hedgehog (1991) ::: 100% Walkthrough ::: LONGPLAY ᴴᴰ :::

Mega Drive. Viitattu 29.11.2020. Saatavissa https://youtu.be/JqQYDLcvkBc

Youtube, 2017b. Lyle Bickley explains the PDP-1 (and we play the original Spacewar!).

Viitattu 29.11.2020. Saatavissa https://youtu.be/1EWQYAfuMYw

Youtube, 2014c. Original Atari PONG (1972) arcade machine gameplay video. Viitattu 29.11.2020. Saatavissa https://youtu.be/fiShX2pTz9A

Youtube, 2011. Donkey Kong (Original) Full Playthrough (JP Arcade Version). Viitattu 29.11.2020. Saatavissa https://youtu.be/Pp2aMs38ERY

Youtube, 2014d. Super Mario Bros. (1985) Full Walkthrough NES Gameplay [Nostalgia].

Viitattu 29.11.2020. Saatavissa https://youtu.be/rLl9XBg7wSs

Youtube, 2019b. Book of The Dead Unity. Viitattu 29.11.2020. Saatavissa https://youtu.be/8Fl8Wxf_SFc

Viittaukset

LIITTYVÄT TIEDOSTOT

Peliympäristö on tärkeä osa pelikokemusta. Yleensä pelimaailma toimii vähintäänkin alustana pelaajan ja pelin eri elementtien välisessä vuorovaikutuksessa, mutta sen avulla

Kuten teoriassa mainittiin, mikäli pelaaja on todettu erittäin epätodennäköisesti maksajaksi muuttuvaksi eli kun pelaajan jäljellä oleva arvo pelissä on vähemmän kuin

Klassisessa merkityksessä freemium-pelin ajatuksena on pelaajan kyky ladata peli ilmaiseksi, mutta peli olisi riisuttu eikä sisältäisi kaikkia ominai- suuksia (esimerkiksi demo).

Voidaan jopa väittää, että jo digitaalisen pelin pelaaminen kehittää joitain pelaajan TVT-taitoja kuten ohjainlait- teiden käyttöä sekä laitehallintaa, mikäli pelaaja

Pelaajan usko siihen, että hän pystyy kontrolloimaan pelin lopputulosta, voi johtaa lopulta ongelmapelaamiseen (Langer, 1975), mikäli pelaaja pelaa enemmän kuin mihin hänellä

Ainut tapa tehdä mielekäs, täysin ilman tuuria pelattava peli on siten, että pelin vaihtelevuus syntyy pelaajista itsestään – heillä tulee olla monta kertaa pelin aikana

Tämän lisäksi liikkeiden tunnistukseen liittyviä ongelmia saattoi ilmetä pelin tilanteissa, joissa pelaaja suoritti pelin liikunnallisia liikkeitä esimerkiksi lattialla

suurperheellisiä - työttömyys ja köyhyys tahdittivat elämisen arkea, joiden myötä syntyivät erilaiset sosiaaliset ongelmat kuten väkivalta ja alkoholismi. Kyse oli