Reaaliaikaisen moninpelipalvelimen toteutus Node.js:llä
Vähäkuopus, Janne (2015)
Vähäkuopus, Janne
Tampereen ammattikorkeakoulu
2015
All rights reserved
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-201504184513
https://urn.fi/URN:NBN:fi:amk-201504184513
Tiivistelmä
Opinnäytetyön tavoitteena oli tutkia Node.js-tekniikan soveltuvuutta toimeksiantajana toimineen Rimeforge Entertainment -yrityksen pelien kehityksessä sekä saada kokemusta tekniikan käyttämisestä ja sen tuomista mahdollisuuksista tulevaisuuden projekteissa. Tarkoituksena oli toteuttaa prototyyppi reaaliaikaisesta moninpelipalvelimesta ja tämän sisältämästä pelistä. Työlle asetettiin vaatimukseksi, että toteutettavan pelin täytyy sisältää peli-ideassa esitetyt toiminnot, mahdollistaa useampien käyttäjien yhtäaikainen palveleminen sekä jättää mahdollisuus erillisen käyttöliittymän kehittämiseen pelille.
Toteutettu järjestelmä koostuu palvelimen alustana toimivasta Node.js-tekniikasta ja tämän päällä toimivasta reaaliaikaisia yhteyksiä hoitavasta Socket.io-tekniikasta. Tes-taamisen avuksi toteutettiin HTML5-käyttöliittymä, jolla voitiin testata palvelimen toi-mintoja ja pelata peliä. Tämä käyttöliittymä oli kuitenkin tarkoitettu vain testaamiseen, joten käyttöliittymän ja sen rakentamisen näkökulmasta työtä ei suoranaisesti käsitellä tässä opinnäytteessä.
Työn tulos täytti sille asetetut vaatimukset, ja sitä tullaan tulevaisuudessa jatkokehittämään joko suoraan sellaisenaan tai käyttämään opittuja reaaliaikaisia tiedonsiirtotekniikoita muissa verkkoprojekteissa.
Toteutettu järjestelmä koostuu palvelimen alustana toimivasta Node.js-tekniikasta ja tämän päällä toimivasta reaaliaikaisia yhteyksiä hoitavasta Socket.io-tekniikasta. Tes-taamisen avuksi toteutettiin HTML5-käyttöliittymä, jolla voitiin testata palvelimen toi-mintoja ja pelata peliä. Tämä käyttöliittymä oli kuitenkin tarkoitettu vain testaamiseen, joten käyttöliittymän ja sen rakentamisen näkökulmasta työtä ei suoranaisesti käsitellä tässä opinnäytteessä.
Työn tulos täytti sille asetetut vaatimukset, ja sitä tullaan tulevaisuudessa jatkokehittämään joko suoraan sellaisenaan tai käyttämään opittuja reaaliaikaisia tiedonsiirtotekniikoita muissa verkkoprojekteissa.