Category Archives: Mobiilikehitys

Boom Karts – Fingersoft x Zaibatsu – hittipeli syntyi yhteiskehittämällä

Miten yhteistyö alkoi

”Meillä olisi yksi peli (Boom Karts), joka haluttaisiin julkaista, mutta meillä ei ole siihen tiimiä. Haluaisitteko tehdä sen meidän kanssa?”

Fingersoft oli Zaibatsulle jo vanha tuttu, jonka kanssa oli kehitetty, testattu ja tapettu jo joitakin peli-ideoita. Yhteisten projektien ja tapaamisten yhteydessä oli jo huomattu, että kemiat ja tekemisen tavat toimivat firmoissa hyvin yhteen. Fingersoftin Business Development Director Daniel Rantalan kysymys sai kuitenkin Zaibatsun toimitusjohtaja-Jussin (Ultima) alaleuan loksahtamaan. Kyseessä olisi Hill Climb Racingin ja Hill Climb Racing 2:n tapaan Fingersoftin omana nimekkeenä julkaistava peli, siis iso tapaus.

Mutta vastausta Jussi ei epäröinyt hetkeäkään. Tottakai meidän tiimimme siihen pystyisi ja ehdottomasti haluamme olla tekemässä seuraavaa globaalia hittiä.

Boom Karts -tiimin synty

Yhteistyö alkoi tiimin kokoamisella. Peli oli jo noin 80% valmis, mutta työtä oli silti paljon tehtäväksi.

Pääsuunnittelijan hattu annettiin Timo Koskelle, joka tiedettiin kyvykkääksi ja kunnianhimoiseksi vision kantajaksi. Tuottajan tuolille istahti Jussi itse. Muihin tehtäviin kiinnitettiin Zaibatsun luottograafikoita ja -koodareita siten, että liikkeelle lähdettiin 5 kehittäjällä.

Pelin päätuottajana toimi Fingersoftin Daniel Fischer, joka ohjasi miettimään ”isoa kuvaa”. Lisäksi Fingersoft hoiti muun muassa UA-testausta, ASO:a, mainoksia ja analytiikkaa.

Yhteisestä startista meni julkaisuun 13 kuukautta. Projektin edetessä Zaibatsun Boom Karts -tiimi kasvoi välillä peräti 13 henkeen, ja kun Fingersoftilla pelin parissa työskenteli vielä 19 ammattilaista, niin Boom Karts -tiimin koko oli julkaisuvaiheessa yli 30 henkeä.

Boom Karts-julkaisu

Julkaisuvaiheessa Boom Kartsista oli tehty jo 550 000 ennakkotilausta Google Playssa (pre-registration, pre-reg) ja julkaisupäivästä tiedettiin tulevan hektisen. Nimenomaan julkaisu ja isot päivitykset kun ovat niitä hetkiä, joissa suuret käyttäjämäärät paljastavat mahdolliset piilevät heikkoudet, jotka eivät ole tulleet testauksessa ilmi.

Open beta ja pre-reg olivat toimineet Boom Kartsin testialustoina. Tämän ansiosta käyttäjämäärä kasvoi nopeasti ja liikennettä tuli kertarysäyksellä paljon, mutta nopealla reagoinnilla tilanne saatiin hallintaan. Alkunikottelun jälkeen pelin saamat arviot ovat olleet voittopuolisesti ylistäviä. 

Julkaisun jälkeen

Nyt, kun Boom Kartsin pyörät on saatu mukavasti rullaamaan, keskitytään Zaibatsulla sen ylläpitoon ja yhdessä Fingersoftin kanssa jatkokehitykseen, käyttäjiä kuunnellen ja näiden palautteeseen vastaten. Mobiilipelejä kun voi päivittää jatkuvasti, ja niitä optimoidaankin vielä julkaisun jälkeen, sekä bugeja korjaillen että uusia ominaisuuksia ja parempaa pelikokemusta kehittäen.

Parhaassa tapauksessa Boom Karts työllistää Zaibatsua vielä vuosienkin kuluttua, ja niin uudet kuin vanhatkin pelaajat pääsevät pitämään hauskaa vielä täysin elävän ja aktiivisesti kehitetyn pelin parissa!

Peliohjelmoijan osaaminen Part 1 – Kovilla taidoilla kovia tuloksia

peliohjelmoijan osaaminen kuvattu aivolohkoilla, joissa molemmat puolet kuvaavat pehmeitä ja kovia taitoja.

Pelien tekemiseen liittyy usein liittyy harmillisia stereotypioita ja mielikuvia kavereista tekemässä “vähän jotain koodaamista” kaverinsa kellarissa. Todellisuudessa pelien tekeminen on se salainen resepti joka rakentaa osaavimmat ohjelmoijat erilaisiin tarpeisiin. Peliohjelmoijan osaaminen voidaan jakaa sekä koviin teknisiin taitoihin että pehmeisiin, ihmisläheisempiin taitoihin. Tämä ensimmäinen osio keskittyy juurikin ohjelmoijan konkreettisiin, ”koviin” taitoihin.

Kovat taidot/Hard skills

Teknologiat

Tekninen osaaminen pelialan ohjelmoijilla on poikkeuksellisen vahvaa, koska heidän tulee hallita paitsi laitteistot, yleensä myös vähintään kaksi pääasiallista ohjelmointikieltä.

Muutaman pääasiallisen ohjelmointikielen hallitsemisen lisäksi pelejä tehtäessä ohjelmoijien tulee myös tutustua ja hallita useampia teknologioita myös alemmalta tasolta. Alemman tason hallitseminen antaa ohjelmoijille paremman kokonaisymmärryksen koko systeemin toiminnasta kuin mitä perinteinen ohjelmistokehittäjä välttämättä omaa.

Matematiikka ja fysiikka

Peliohjelmoijan osaaminen sisältää teknologisen osaamisen lisäksi myös reilusti laskutaitoa. Ohjelmoijalta vaaditaan erinomaista matematiikan ja fyysikan ymmärtämistä, sillä pelissä toteutetut 3D-grafiikat ja animaatiot ovat haasteellisuudeltaan reilusti perusohjelmoijan vaatimustason yläpuolella. 

Optimointi

Pelien tekemisessä yhdeksi tärkeimmäksi asiaksi nousee myös ohjelmoijan kyky optimoida. Järjestelmien äärirajoille vieminen ja toiminnan ylläpitäminen on jatkuvaa tasapainottelua ja juurikin pelikoodarit ymmärtävät sen, kuinka koodista saadaan puristettu viimeinenkin hyöty irti.

Työmallit ja toimintavat

Pelialalla on usein käytössä ketterät ohjelmistokehityksen työmallit perinteisen vesiputousmallin sijasta. Ketterät menetelmät ovat isossa roolissa kasvattamassa myös ohjelmoijan pehmeitä taitoja, kuten reaktiivisuutta ja ongelmanratkaisukykyä. Toimintatapojen kautta peliohjelmoijien osaamiseen kuuluvat myös toistuvat tottumukset etsiä virheitä (debugging) omista töistään.

Näppäilynopeus

Kyky kirjoittaa rivejä koodeja nopeasti, voidaan nähdä kovana taitona, koska se kehittyy kokemuksen ja harjoittelun myötä. Mitä nopeammin ohjelmoija kykenee tuottamaan tarkkoja koodirivejä, sen tehokkaampi hän on ja näin ollen myös pätevämpi.

Lue tästä myös peliohjelmoijan osaamista käsittelevän blogimme toinen osa koskien ohjelmoijien pehmeitä taitoja: https://zaibatsu.fi/peliohjelmoijan-osaaminen-part-2-pehmeilla-taidoilla-patevaksi/


Ketterä ohjelmistokehitys – miten ja miksi?

”Miten ohjelmistokehitys voi olla ketterää ja miten se eroaa perinteisistä kehitysmalleista?”

Erilaiset kehitysprojektit on perinteisesti toteutettu ns. vesiputousmallin mukaan: ensin tuote määritellään, sen jälkeen suunnitellaan, mitä seuraa toteutus ja viimeisenä testaus. Tällainen jäykästi määritelty ja jaoteltu projektin kulku ei jätä juurikaan tilaa muutoksille, joita yleensä jokaisessa projektissa tulee vastaan. Se tekee prosessista helposti hitaan, kalliin ja tehottoman.

Ketterä ohjelmistokehitys taas tarkoittaa käytännössä kehitysmenetelmiä, joissa lopullista tuotetta tai järjestelmää ei määritellä heti projektin alussa, vaan tuote muotoutuu jatkuvasti projektin edetessä, uusien toiveiden ja parannusten noustessa esille.

Niinpä tuotekehitys on ketterillä menetelmillä paljon joustavampaa ja sopeutuvampaa kuin perinteiset, jäykästi vaiheistetut kehitysmenetelmät.

Nykyään katsotaan ketterien metodien hallitsemisen olevan kriittinen osa ohjelmistosuunnittelijan osaamista ja jopa edellytys projektin laadukkaalle ja tehokkaalle toteuttamiselle.

Esimerkiksi ketterän kehittämisen työskentelymallista käy vaikkapa Scrum.

Scrumin tärkeimpiä piirteitä ovat sen sprintit ja backlog. Sprintit tarkoittavat Scrumissa nopeita työjaksoja, joiden aikana pyritään saamaan aikaan jokin valmis tuotos.

Backlog taas on lista, johon listataan kaikki projektin aloitustapaamisessa keksityt toteuttamiseen liittyvät työtehtävät. Projektin eteneminen ja toteutus tapahtuvat sen jälkeen käytännössä niin, että tehtävät poimitaan backlogista tehtäväksi ja projektia viedään eteenpäin sprintin sovitun keston ajan, jonka jälkeen se esitellään ja siitä kerätään palautetta ja toiveita asiakkaalta. Tämän jälkeen backlogia päivitetään ja luodaan uusia tehtäviä ja ne priorisoidaan uudelleen, minkä jälkeen aloitetaan uusi sprintti.

Oiva työkalu Scrum-työskentelyyn on Trello, joka mahdollistaa digitaalisten tehtäväkorttien luomisen projektitaululle, mistä niitä on helppo ja nopea päivittää ja jakaa kullekin tekijälle.

Front end tutuksi alle 200 sanan – Lue lyhyt tietoisku aiheesta

Havainnollistaa työntekijämme työtämässä front endiä toimistolla

Vaikka onkin hyvin todennäköistä, että suurin osa blogimme vierailijoista on ennestään perehtynyt frontendin käsitteeseen, koimme silti tarpeelliseksi kertoa lopuillekin, että mikäs ihme se sellainen front end nyt sitten oikein todellisuudessa onkaan. 

Kaikilla verkkosivuilla on yleisesti ottaen kaksi puolta, sekä front end että backend. Nämä tunnetaan myös nimillä selainpuoli ja palvelinpuoli. Frontti eli selainpuoli on tässä yhtälössä kaikki se koodi, joka ajetaan verkkoselaimessa eli käyttäjän silmien edessä ja jonka kanssa käyttäjä voi olla tekemisissä. 

Frontendiä ja sen eri osia voidaan toteuttaa eri ohjelmointikielien avulla. Tällainen ohjelmointikieli on muun muassa JavaScript. Saatat myös törmätä käsitteisiin  “HTML” ja “CSS”, jotka taas ovat merkintäkieliä. Konkreettisena esimerkkinä frontendistä verkkosivulla ovat muun muassa sen rakenne (HTML), ulkoasu (CSS)  ja selaimessa tapahtuvat toiminnat (JavaScript). 

Peukalosääntönä usein asia yksinkertaistetaan juurikin siten, että front end on kaikki ne komponentit, jotka ovat lähellä loppukäyttäjää ja joiden kanssa tämä on tekemisissä,  kun taas front endin vastinpari backend on kaukana loppukäyttäjästä omalla serverillään.

Tässä oli lyhyt tietoisku frontendista! Toivottavasti teksti antoi teille jotain uutta tai toimi vanhan kertauksena!

Lue lisää fronttikehittäjiemme vuokraamisesta täältä: https://zaibatsu.fi/frontend-kehitys/

Lisäksi laajempi selittävä teksti frontin ja backendin eroista: https://fi.sawakinome.com/articles/software/difference-between-frontend-and-backend-3.html

Leffa-franchise viihdyttää hypercasual-pelaajia messengerissä

Rambo.

Pitkään sitä salailtiin, mutta kevättalvella siitä tuli totta. Zaibatsu pääsi mukaan Rambo-aiheisten pelien tekijöiden ketjuun, ja vieläpä retrotyylisellä pikseligrafiikalla. Rambo: Last Click julkaistiin yhdessä Lionsgate-studion kanssa helmikuussa Quicksaven instant game -alustalla Facebook Messengerissä.

Julkaisu noteerattiin mediassa kohtalaisesti, ei pelkästään Rambo-lisenssin takia, vaan myös uuden, kasvavan pelialustan johdosta. Messengerin ja muiden chattialustojen Instant-peleistä odotetaan seuraavaa suurta buumia, sillä ne madaltavat kynnystä pelaamisen kokeilemiseen ja palvelevat hyvin uusia käyttäjäryhmiä, jotka ovat kasvattaneet hypercasual-pelien markkinaosuutta myös mobiilipeleissä.

Instant-pelejä ei tarvitse erikseen asentaa, vaan ne latautuvat suoraan chattiin. Pelaamiseen on helppo tuoda mukaan sosiaalisia ominaisuuksia ja erilaisia ansaintamalleja sen mukaan, mitä kyseinen chattialusta sallii.

“Nyt puhutaan Appstoren jälkeisestä maailmasta, mitä tapahtuu sen jälkeen, kun se disruptoituu. Ja kun miettii muita nousevia teknologiatrendejä kuten 5G:tä, niin kyllä tällaiset pelit, joita ei asenneta omalle laitteelle, tulevat varmasti yleistymään.”, kertoi Quicksaven Elina Arponen Markkinointi & Mainonta -lehdelle helmikuussa.

Pelaa Rambo: Last Click