Imperishable Odyssey on sarjassamme toinen suuruudenhullu projekti, jonka parissa olen puuhaillut kohta jo kymmenisen vuotta, ja kuten nimestä voi päätellä sen tärkein inspiraation lähde on Etrian Odyssey; varsinainen kipinä pelin suunnittelemiselle tosin syttyi Labyrinth of Touhouta pelatessa.
Käytännössä Imperishable Odysseyssä on aina ollut kyse Imperishable Nightin tapahtumien esittämisestä toisessa peligenressä, mutta matkan varrella pelin laajuus ja asetelma on kokenut lukuisia muutoksia. Hyvänä esimerkkinä tästä on hahmokaarti: Puhtaimmillaan pelissä on ollut tarkoitus käyttää vain EoSD:n, PCB:n ja IN:n hahmoja mutta yhdessä vaiheessa yhdessä suunnittelin jopa Touhou for Busy People tyylistä ratkaisua, joka antaisi mahdollisuuden käyttää hahmoja uudemmistakin peleistä.
Ensimmäistä kertaa ideani esittelin vuonna 2010 kirjoittamassani sähköpostiviestissä, joka meni näin:
”Tunnistamattomia Youkaita on nähty palloilevan lähellä bambumetsää Gensokyon raukoilla rajoilla. Kukaan ei oikeasti viitsi vaivautua tutkimaan asiaa koska kenenkään kimppuun ei ole varsinaisesti käyty – ei sitttenkään kun kuu muuttuu omituiseksi.Kuun ”hajotessa” Yukari sitten viimein lähtee patistamaan tyyppejä bambumetsään selvittämään mitä hittoa oikeasti tapahtuu ja lopulta Reimu sitten Yukarin kanssa lähtee seikkailulle kaksistaan.
Aika bambumetsässä ja sen lähellä olevassa ihmiskylässä on aika lakannut liikkumasta, joten Reimu päättää tehdä Keinen koulusta uuden päämajansa. Kourinin sivuliike toimii statsien upgradeamispaikkana ja Akyuun mökissä tallentaa – Keinen koulussa voi myös vaihtaa expan leveleiksi.
Bambumetsässä palloillessa Yukari ja Reimu törmää muihin Gensokyolaisiin kuten Marisaan ja Aliceen, jotka sitten liittyvät joukkueeseen Labyrinthmaisella taktiikalla. Heti kun joukkueeseen palkataan 5 jäsen Keinen torppaan avautuu sivuhuone, jossa voi vaihtaa joukkuetta.
Bambumetsä koostuu 18:stä 64*64 tasosta sekä 6 extra tasosta. Normitasot on käytännössä jaettu 3 tason ryppäisiin missä sijaintinsa mukaan. Ekat 3 vietetään bambumetsän suuaukolla. Seuraavat 3 taso vie lähemmäksi Mokouta mutta sieltä sitten päädytään bambumetsän reunan kautta bambumetsän keskelle missä 3 seuraavaa tasoa on. Sitten tulee 3 tasoa Eienteitä ja lopulta 3 tasoa väärää kuuta.
Kun peli on sitten suoritettu loput 6 tasoa avautuu ja niihin pääsee tasosta 4-6. Pelissä palkkaamien hahmojen / suorittamien tehtävien mukaan extraan saa hieman helpotusta.
Peli tulee vaikeudeltaan olevaan helpompi kuin labyrinth ainakin ekan 3 tason kohdalta sillä oletusarvoisesti sinulla on vain Reimu/Yukari käytettävissä mutta 4 tason jälkeen vaikeustaso alkaa nousemaan exponentiaalisesti eli peli muuttuu grindfestiksi.”
Kuten Winterheartin, myös Imperishable Odysseyn kehitys alkoi CoolBasicilla. Vaikka tässä vaiheessa olinkin jo aika tietoinen kyseisen kielen heikkouksista, ajattelin ettei se haittaisi RPG:ssä koska vuoropohjaisuuden takia raskaat operaatiot pystyi laskemaan valmiiksi vuorojen välissä. RPG Makerin käyttöä en vielä tässä vaiheessa harkinnut, koska ammattiylpeyden vuoksi halusin tehdä kaiken alusta asti itse.
Koodillisesti tosin Imperishable Odysseyn kehitys ei koskaan edennyt CoolBasic-vaihetta pidemmälle, vaikka suunnittelinkin pelin siirtämistä SDL-, ja myöhemmin SFML-alustalle. Tämä johtunee siitä, että toisin kuin Winterheartia, jota tein koodi edellä, Imperishable Odysseytä kehitin pelimekaniikkojen ja sisällön pohjalta.
Oikeastaan ensimmäisenä suunnittelin peliin valikot ja niiden sisällön; versioista toiseen nämä ovat pysyneet aikalailla samana:
- Pelin keskiössä on ihmiskylä, johon päätyy tutoriaalin jälkeen (ensimmäisessä versiossa sitä ei tosin ollut vaan tarina alkoi suoraan sieltä).
- Hiedan talossa on aina voinut tallentaa / ladata pelin sekä vaihtaa asetuksia… 2012 lähettämässäni viestissä lisäsin Akyuun tarjoamiin palveluihin myös eräänlaisen encyclopedia toiminnon: saavutusten perusteella Akyuu antaa pelaajalle esineitä ja reseptejä.
- Kourindoun haaraliike: alkuperäisessä suunnitelmassa tämä vastasi Labyrinth of Touhoun Voilea, mutta 2013 julkaisemassani viestissä mietin sen muuttamista oikeaksi kaupaksi
- Keinen koulu: alun perin tämä toimia samoin kuin Hakurein temppeli, eli siellä tapahtui levuttaminen, mutta vuosien varrella se on palvellut myös paikkana josta voi hankkia uusia taitoja ja sivutehtäviä, vaihdella hahmojen paikkaa reservin ja aktiivisen joukon välillä sekä palkata nostoväkeä.
Näiden lisäksi suunnitteilla oli myös Bar Ibuki, minkä tarkoitus oli toimia lisätehtävien lähteenä, Eientei, jossa pystyi parantamaan kuolleet hahmot sekä Nitori’s garage, missä pystyi syntetisoimaan esineitä… Tosin nämä jäivät vain yhden version kurisioteeteiksi.
Kun olin tyytyväinen valikoihin, aloin suunnittella taistelumekaniikka sillä mielestäni se on RPG:n kannalta ehkä se tärkein osa… Tämän kyseisen aiheen parissa olen sitten puuhastellut miltei yhtä kauan kun olen peliäni kehittänyt.
Ongelma tässä on se, että rooliseikkailuissa iso osa ajasta kuluu taisteluihin joten jos mekaniikka ei ole tarpeeksi mielenkiintoista tai sujuvaa, niin pelaaja tuskin jaksaa pelata loppuuun asti. Yksi tapa ratkaista tämä ongelma on tehdä kuten Undertalessa ja kehittää kokonaan uudenlainen tapa otella mutta siinä onnistuminen on erittäin hankalaa.
Tästä syystä ensimmäistä versiota suunnitellessani päätin kierrättää Labyrinth of Touhoussa käytössä ollutta taistelumekaniikka muutamilla muutoksilla, joten käytännössä esikuvaansa verrattuna Imperishable Odysseyssä oli vain kolme eroa:
1. Rivit:
Labyrinth of Touhoussa ei ole selvää etu- / takariviä vaan hahmon sijanti käytännössä ajoin saman asian, itse halusin antaa pelaajalla mahdollisuuden päättää jokaisen taistelijan kohdalla missä kohtaa riviä tämä sijaitsee. Tämä siksi, että oikein toteutettuna kyky valita hahmojen sijainti taistelussa lisäisi mielenkiintoisen strategisen ulottuvuuden: nostaako hahmon puolustuskykyä hyökkäystehon hinnalla vai parantaako iskuvoimaa laskemalla suojausta.
2. Taistelussa käytettävät esineet:
Alunperin tahdoin mukaan esineet, joilla pelaaja voisi parantaa hahmojaan tai aiheuttaa vihollisille erilaisia tiloja koska olin tottunut näkemään taisteluissa käytettäviä esineitä miltei jokaisessa RPG:ssä. Myöhemmissä vaiheessa aloin kyseenalaistamaan näiden esineen tarpeellisuuden ja päätin luopua niistä kokonaan.
3. Elementit:
Kuten taistelussa käytettävät esineet, elementit olen aina mieltänyt osaksi rooliseikkailupelejä.
Niitä suunnitellessani tosin törmäsin kahdenlaiseen ongelmaan: Miten keksiä sellainen yhdistelmä, joka olisi hahmokaartin huomioon ottaen looginen ja sopisi kivi-paperi-sakset -ajatteluun… Myöhemmin oivalsin, että tuo jälkimmäinen ongelma ei oikeastaan ole ongelma laisinkaan sillä mikään ei määrää, että jokaisella elementillä tulisi olla vastapari.
Pitkällisen pohdinnan jälkeen ensimmäisessä versiossa päädyin seuraaviin elementteihin: fire, water, ice, ground, lightning, aerial, dark, light, natural, artificial… 2012 tämä yksinkertaistui muotoon ”neutral, natural, artificial” (johtuen siitä pakonomaisesta tarpeesta saada tasapainotettu voimakolmio). 2013 unohdin kokonaan elementit ja päädyin pohtimaan hahmoluokkia (human, witch, fairy, doll, ghost, oni, tengu, kappa ja inaba) tosin niistä luovuin aika nopeasti, ja hahmoluokkien jälkeen pohdin voisiko taistelun toteuttaa ilman elementtejä kunnes lopulta päädyin seuraavaan ratkaisuun: ”physical, mind, wind, heat, cold, electric, light, dark.”
Vaikka taistelumekaniikan hiominen on ollutkin se aikaa vievin osa Imperishable Odysseyn kehitystä, pohdin myös moneen otteeseen kuinka luolastossa liikkumisen voi toteuttaa, tai tarkemmin ottaen esittää pelaajalle…
Näiltä osin Imperishable Odyssey poikkeaa kaikkein eniten esikuvastaan, sillä Labyrinth of Touhoun tapa esittää luolasto on aina tuntunut minusta hieman vajavaiselta (jatko-osassa asiat tehtiin paremmin)… Ehkä suurin syy tähän on se seikka, että vastuksia lukuunottamatta, Labyrinth of Tohuou käyttää huutomerkkiä merkitsemään kaikki muut asiat tyypistään riippumatta joten et voi tietää onko kyseessä esimerkiksi ansa tai aarre.
Kun aloitin pohtimaan ensimäistä versiota jokaiselle suunnittelin jokaiselle erikoislaatalle (esim. teleportit ja yksisuuntaiset tiet) oman helposti tunnistettavan grafiikan. Grafiikkaa tehdessäni ideoin myös myöhemmin unohdetun ominaisuusuuden: Tewin ansakuopat. Ideana tässä oli, että bambumetsän kerrokset suunniteltaisiin siten, että pelaaja pystyi tippumaan edelliseen kerrokseen.
Saatuani grafiikat valmiiksi valmistelin myös tarkan hahmoluettelon, joka kertoi kaikki pelaajan löydettävissä olevat hahmot sekä kuinka ne sai mukaansa. Kyseinen luettelo sisälsi myös kaikkien 21 suunnitteilla olleen tason nimet ja vastukset sekä perusviholliset ensimmäiseen viiteen tasoon… Luettelon perusteella olin myös suunnitellut jokaisella palkattavalla hahmolla oli kasvuluokan (kolme erilaista), mikä käytännössä kertoi kuinka statsit muuttuvat tasojen noustessa.
Saatuani hahmoluettelon valmiiksi aloin viimein suunnitella varsinaisia tasoja… Tätä varten kehittelin myös omalaatuisin tavan säilöä kartat muistiin: Jokainen taso muodostuu 64×64 kuvista (yksi pikseli on yksi ruutu), missä pikselin R-arvo kertoo käytettävän laatan, G-arvo kertoo ruudussa olevan asian (event, aarre, pomo) ja B-arvo kyseisen asian id:n. Tein tätä varten C# koeohjelman sillä olin varma, että CoolBasicilla en Imperishable Odysseytä tule valmiiksi saamaan.
Valitettavasti menetin mielenkiintoni karttojen tekemiseen joten aloin jälleen miettiä Imperishable Odysseyn perusmekaniikkoja…
Tässä vaiheessa ystävältä saamani idean pohjalta kehittelin vuorokaudenaikasysteemin, jonka hienous oli siinä, että grafiikan lisäksi viholliset, ja niiden tiputtamat esineet, vaihtelivat ajankohdasta riippuen. Valitettavasti tällaisen järjestelmän toteuttaminen haluamassani mittakaavassa kävi liian työlääksi, joten lopulta päätin hylätä sen.
Vuorokaudenaikojen osoittautuessa työlääksi toteuttaa, tuli hetki jolloin vakavasti harkitsin Imperishable Odysseyin viimeistelemistä valmistyökalulla… Tässä yhteydessä aloin myös pohtia Imperishable Odysseyn muuttamista Etrian Odyssey tyylisestä seikkailusta perinteikkäämmäksi RPG:ksi, jossa pelaaja koluaa taloja ja puhuu NPC:lle. Tämä tosin olisi vaatinut enemmän tarinapainoitteista toteutusta, joten homma jäi niiltä osin kesken.
Tässä välissä kehityksessä tapahtui ensimmäinen suurempi katko kun aloin keskittyä opinnäytetyöhöni ja ylemmästä ammattikorkeakoulusta valmistumiseen… Kun lopulta jatkoin Imperishable Odysseyin parissa puuhastelua, mietin josko pelistä tekisi enemmän puzzlemaisen. Ideana oli muuttaa tasapaksut kartat erikokoisiksi huoneiksi, joidenka ulkoasu riippuisi alueesta. Pelaaja sitten juoksisi joukkoineen huoneesta toiseen etsien erilaisia vipuja ja esineitä päästäkseen eteenpäin.
Mikä teki tästä versiosta poikkeuksellisen oli se, että pomoja lukuunottamatta vihollisia vastaan ei tarvinnut taistella. Vihollisien ainoa tarkoitus oli tiputtaa rahaa ja esineitä, jotka pystyi sitten käyttämään ihmiskylässä.
2012-2013 vaiheilla aloin harkita Imperishable Odysseyin pilkkomista pienimmiksi peleiksi, sillä suunta peliltä tuntui hukkuneen liian monimutkaisten mekaniikkojen alle… Näistä ensimmäisten joukossa suunnittelin ”Subterranean Odysseyn”, joka käytännössä oli Subterranean Animism esitettynä toisenlaisessa muodossa… Subterranean Odyssey tosin ei ollut RPG peli vaan enemmänkin puzzle, jossa pelaajan tuli läpäistä joukko huonekohtaisia haasteita edetäkseen pelissä.
Toinen mieleenpainuva variaatio tuolta ajalta oli ”Pocket Odyssey”, eli ”Storming the thicked”, missä ensimmäistä kertaa harkitsin yksikköjen kaappaamista pelin päämekaniikkana. Ideana tässä oli siis se, että pelaaja voi kaapata tiettyjä vihollisia jonka jälkeen niitä voi palkata ihmiskylästä joukon jatkoksi (suomeksi sanottuna Etrian Odysseyn kiltasysteemi, mutta hahmoluokat sai avattua taistelussa). Pocket Odyssey oli juonellisesti lähempänä Imperishable Odysseytä, mutta kaikki toiminnallisuus RPG elementit oli typistetty minimiin…
Näiden lisäksi harkitsin Imperishable Odysseyn muuttamista visual noveliksi mutta koska en osaa kirjoittaa kovinkaan monimutkaisia tarinakuvioita, niin se idea ei koskaan lähtenyt lentoon.
Useiden kokeellisempien projektien jälkeen vuorossa oli seuraava pidempi tauko ja kesti miltei vuoteen 2014 ennen kuin uhrasin yhtään ajatusta Imperishable Odysseylle… Tosin ennen kuin jatkoin peliprojektiani, suunnitelin ensin lyhyemmän Momiji aiheisen RPG:n.
Momiji RPG:ssä ideana oli, että Momiji pyrkisi yksin taistelemaan tiensä ihmiskylästä aina Moriyan temppelille asti (tästä tarkemmin joskus toiste).
Vaikka Momijin seikkailut eivät edenneetkään, osan sitä varten tehdyistä asioista kierrätin Imperishable Odysseyn seuraavaan versioon… Tärkeimpänä näistä tilekartta, josta kuva yllä, sekä idea ovilla lukituista alueista. Alueiden avaamiseksi tarvittiin avaimia, joita sai joko lyömällä vastuksia tai sitten tehtäviä tekemällä.
Seuraava uudistus Imperishable Odysseyn kohdalla tapahtui 2014 kun päätin palauttaa pelin juurilleen… Tässä yhteydessä karsin kaiken monimutkaisen mekaniikan pois ja päädyin jälleen tekemään miltei suoraa käännöstä Labyrinth of Touhousta. Lopputuloksena päivitetty karttagrafiikka sekä jälleen uutta pohdintaa hahmoista ja niiden ominaisuuksista..
Valitettavasti kuten Winterheartinkin tapauksessa, tässä vaiheessa alkoi työkiireet painaamaan päälle ja muutenkin innostus kotikoodaamista kohtaan alkoi loppui, joten päätin pistää Imperishable Odysseyn hyllylle.
Seuraavan kerran innostuin jatkamaan Imperishable (Maidens) Odysseyn parissa 2015 kun Etrian Odyssey 3 julkaistiin… Tässä kohtaa yritin myös hyödyntää työelämästä sisäistämiäni oppeja projektin saattamiseksi maaliin, joten jaoin sen tekemisen kahteen osaan:
Minimum viable solution (eli se yksinkertaisin toteutettavissa oleva versio):
- Muutama yksinkertainen hahmoluokka
- Kaupunki, joka toimii päävalikkona
- Pelaajalla aika ja varallisuus
- Parannus- ja pakoesineitä…
- Tasoja
- Kartta, joka piirtyy automaattisesti pelaajan kävellessä…
Stretch goals (eli myöhemmin lisättävät ominaisuudet):
- Kauppa ja ostettavia aseita / varusteita
- Jonkinlainen skill-tree
- Eventtejä ja tehtäviä
- Minipelejä?
Kuten näistä listoista huomaa, jälleen kerran oli tarkoitus palata siihen perinteikkääsempään roolipeliin… Labyrinth of Touhoun vaikutus oli kokonaan kadonnut ja toteutuksen piti olla lähempänä Etriania; Tässä tosin täytyy myöntää, että en oikein muista mitä minipelejä olin tähän suunnitellut.
Ikävä kyllä lopputuloksena oli vain yksinkertainen taisteludemo (SFML) sekä joukko aiheeseen liittymättömiä kahvilasimulaattoreita (niistäkin ehkä myöhemmin).
Seuraavan kerran Imperishable Odyssey nousi ajankohtaiseksi kesällä 2016… Olin tehnyt SFML:llä koodillisen läpimurron ja onnistunut viimeinkin rakentamaan toimivan raycasterin (jos tarkkoja ollaan porttaamalla olemassa olevan SDL-toteutuksen).
Tästä innostuneena aloin suunnitella uudelleen Etrian Odyssey tyylistä peliä, jossa liikkuminen tapahtuisi 2.5D luolastossa: lopputuloksena oli suuntaviivat Scarlet Odysseyhin.
Scarlet Odysseyn piti olla lyhyehkö dungeon crawler, millä testattaisiin Imperishable Odysseyn uusia ominaisuuksia… Yksi tällaisista hienouksista oli modernista Doomista varastetut gore nestit: Astumalla taikaympyrään pelaajan kimppuun käy x-määrä vihollisjoukkoja, kun kaikki viholliset on tuhottu gore nest hajoaa ja samalla aukeaa gore nestin väriä vastaavat erikoisseinät (näin jälkeenpäin ajateltuna, mekaniikallisesti tämä on itse asiassa aika vanha tuttavuus).
Saatuani raycasterin ja tarvittavat grafiikat tehtyä, jätin kehityksen taas kesken. Syy tähän oli koko projektin aikana mieltäni vaivannut kysymys: Kuinka tehdä taisteluista niin mielenkiintoista ja sujuvaa, että pelaaja jaksaa kahlata pelin läpi.
Ja näin Imperishable Odyssey painui jälleen kerran unholaan kunnes tässä taannoin arvostellessani Labyrinth of Touhouta mieleni täyttyi taas halusta saattaa projektini viimeinkin valmiiksi.
Tähän loppuun voisi näin jälkiviisaana todeta, että todellinen syy sille miksi en ole saanut Imperishable Odysseytä tai muita ikuisuusprojektejani valmiiksi on yksinkertaisesti rajojen puute.
Vaikka monilla projekteillani on hyvin yksinkertainen lähtökohta, niin kehitysvaiheessa minulla on paha tapa lisäillä uusia ominaisuuksia ja ideoita sitä mukaan kun törmään johonkin mielenkiintoiseen muissa peleissä. Tämä johtaa lopulta siihen, että pelini rönsyilee liian moneen suuntaan jolloin A) alkuperäinen idea katoaa ja B) projektista tulee kokonaisuutena liian suuri toteutettavaksi järkevässä ajassa (ainakin yhden miehen voimin).
Ongelman ratkaisu olisi siis oppia pysymään suunnitelmassa ja jättää lisäideat mahdollisiin jatko-osiin.