Tech Filet

Kuten pelitkin, nämä tech filet olivat Suomipelit.comissa sivuston sulkeuduttua. Näin ollen niihin saattaa sisältyä epämääräisiä viitteitä asioihin, joita ei enää ole olemassa, ja joskus jokin saattaa näkyä väärin. Pahoitteluni.

Tech filet olivat yksittäisten kirjoittajien kirjoittamia, vähän blogimaisempia tekstejä, joiden tarkoitus oli esimerkiksi kertoa projektien etenemisestä, tai opettaa jotain yksittäisiä ohjelmointiin liittyviä asioita.

Palaa tech file -listaan

Kesä, aurinko, koodi sekä pieni teksti pelien tekemisestä

7.5.2002 19:06 julkaistun artikkelin on kirjoittanut Jarkko Parviainen.

Pahimmatkin koodiorjat ovat varmaan huomanneet, että verhojen välistä paistelee taas se ärsyttävän kirkas taivaankappale. Se on aurinko, mikä tarkoittaa että kesä on palannut.

En tiedä miten useimmille muille käy, mutta itselläni koodausinto loppuu kesäisin lähes täysin. Töiden jälkeen viimeisiä aurinkoisia hetkiä harvoin haluaa viettää sisällä näyttöä katsellen. Useimmiten aika kuluu ulkoharrastusten parissa, footbagia potkien tai rantalentopalloa pelaten. Ulkoliikunnan harrastamiseen kesä onkin parasta mahdollista aikaa, koska valoisaa aikaa on riittämiin. Tämä ei kuitenkaan tarkoita sitä, etten kirjoittelisi DirectX-artikkeita. Niitä tulee todennäköisesti pitkin kesää, sillä sateisiakin päiviä sekaan aina sattuu.

N.Nevantie listasi jo omassa tech-filessään yleisiä asioita pelin tekemisestä ja valmiiksi saamisesta. Ohjeet ovat erittäin hyviä, ja suosittelen kaikkia pelejä tekeviä lukemaan ne ainakin kerran lävitse. Syvennän itse samaa aihetta nyt kertomalla erinäisiä asioita peliprojektin läpiviennistä.

Lähes kaikki peliprojektit ovat kertaluontoisia. Kun peli on saatu valmiiksi, sitä korkeintaan päivitetään korjausmielessä. Projektia aletaan tekemään useimmiten seuraavan kaavan mukaisesti:

1. MÄÄRITTELE. Etsi vastauksia seuraaviin kysymyksiin:
- Mitä ollaan tekemässä?
- Mitkä ovat tavoitteet?
- Kuinka laaja pelistä tulee?
- Montako pelaajaa?
- Mille laitteistolle?
- Työryhmän taidot?
- Aikataulu?

2. SUUNNITTELE. Ihmismieli tarvitsee tarttumapintaa ongelmien ratkaisuun, joten kirjoita mieleen tulevat asiat ylös. Tarvittaessa piirrä kuvia. Tekeminen ruokkii luovuutta, joten mieleen tulevat ideat on aina syytä säilöä jollakin tavalla. Idea voi tuntua aluksi vaikka kuinka typerältä, mutta siitä voi silti kehittyä jotakin loistavaa ja innovatiivista. Laadi järjestys tehtäville asioille niiden tärkeyden mukaan.
Etsi vastauksia seuraaviin kysymyksiin:
- Mitä tietoja pitää säilöä?
- Millaiset tietorakenteet sopivat määrittelyn mukaisiin toimintoihin?
- Mikä ohjelmointikieli?
- Mitä rajapintaa käytetään?
- Millainen on pelin runko?
- Oliopohjaisuus?
- Mitkä tiedot ovat vuorovaikutuksessa keskenään?
- Mitkä asiat voi löytyä jo valmiiksi tehtynä (esim. edellisistä projekteista tai valmiista kirjastoista)?

3. TEE PROTOTYYPPEJÄ. Eli kokeiluversioita. Prototyyppien avulla ohjelma herää nopeasti eloon, ja jotkin ongelmat huomaa vasta silloin.
Niiden avulla voi myös testata idean toimivuutta. Prototyypeillä saat pelin rungon nopeasti kokoon.

4. KATSELMOI. Kerää tiimisi kokoon ja keskustele heidän kanssaan siitä mitä ollaan tekemässä. Etsi vastauksia esim. seuraaviin:
- Missä vaiheessa eri henkilöt ovat työssään?
- Mitä virheitä on löytynyt?
- Onko puutteita?
- Onko kenelläkään motivaatio-ongelmia tai liikaa/liian vähän töitä?

5. TESTAA. Mikään ohjelmisto ei ole täydellinen, ja testausta tulee tehdä koko projektin ajan. Testaa kaikki mahdolliset ja mahdottomatkin tilanteet. Jos tiimissä on useampi henkilö, testatkaa toistenne tuotoksia. Useimmiten parhaaksi testaajaksi osoittautuu ohjelmistoista vähiten tietävä henkilö, koska hän tekee mahdottomastakin mahdollista parissa hiiren heilautuksessa.

6. ANALYSOI. Kun peli on niin valmis että olet julkaissut sen, mieti mitä opit ja mitkä asiat olisit voinut tehdä paremmin.
- Mitkä asiat onnistuivat erityisen hyvin?
- Mitä asioita olisi voinut tehdä paremmin?
- Mitkä asiat vaikuttivat projektin valmistumiseen / kaatumiseen?
- Mitä osia tehdystä ohjelmistosta voit hyödyntää tulevissa projekteissa?

Toivottavasti näillä pääsette alkuun. Mutta muistakaa: pelien teko vaatii pitkäjänteisyyttä, sillä mikään ei valmistu hetkessä. Ja jos pelistä tuleekin huono, älkää huoliko - sehän oli vasta harjoittelua seuraavaa peliänne varten ;)