Pelikehityshaaste

582377
3
Ohjelmistojärjestelmät
Aineopinnot
Pelikehityshaaste on pääasiassa ensimmäisen vuoden opiskelijoille suunniteltu kurssi, jossa opiskelijaryhmät suunnittelevat itsenäisesti videopelejä. Kehityksen aikana kootaan dokumentti työn vaiheista ja idean kehittymisestä. Samanaikaisesti tämän kurssin kanssa ei voi suorittaa Ohjelmoinnin harjoitustyötä tai Tietorakenteiden ja algoritmien harjoitustyötä.
Vuosi Lukukausi Päivämäärä Periodi Kieli Vastuuhenkilö
2013 syksy 16.12-09.01. 2-2 Suomi Matti Luukkainen

Harjoitusryhmät

Group: 1
Aika Huone Ohjaaja Päivämäärä Huomioitavaa
To 12-14 B221 Kalle Viiri 16.12.2013—09.01.2014
Ma 12-14 B221 Kalle Viiri 16.12.2013—09.01.2014

Yleistä

HUOM! Dokumentit palautettava viimeistään sunnuntaina 12.1.

 

Pelikehityshaaste on ensisijaisesti syksyn aikana ohjelmointia oppineille tarkoitettu mahdollisuus soveltaa ja kehittää ohjelmointitaitojaan hauskan projektin parissa. Kurssi on tarkoitettu niille, jotka eivät ole ohjelmoineet paljon aikaisemmin ja joille pelien tekeminen on uusi juttu. Kokemuksen puutteesta ei kannata ottaa paineita!

Kurssia ei voi suorittaa samanaikaisesti Ohjelmoinnin harjoitustyön tai Tietorakenteiden harjoitustyön kanssa.

Kurssin suorittaminen

Kurssi suoritetaan 2-4 hengen ryhmissä. Opiskelu koostuu itsenäisestä työskentelystä ja yhteisistä lähitapaamisista.

Ryhmäjako

Ryhmäytyminen on tehtävä viikon 51 aikana, eli viimeistään sunnuntaina 22.12.2013. Lähettäkää osoitteeseen kviiri@cs.helsinki.fi sähköpostia jossa kerrotte ainakin ryhmänne jäsenet ja miten koodiinne ja muihin tuotoksiinne pääsee käsiksi. Yksi posti ryhmää kohti riittää.

 

Työskentely kurssilla

Työskentely koostuu pelin kehityksestä ja kehitystyön dokumentoinnista. Jokaiselta ryhmältä edellytetään pelin lisäksi syntyvän eräänlainen "kehityspäiväkirja", josta voi seurata pelin etenemistä raa'asta ideasta hiotuksi peliksi. Dokumentin ja pelin edistymisen lisäksi opiskelijoilta odotetaan hyvien ohjelmistokehityskäytänteiden noudattamista erityisesti lähdekoodin siisteyden osalta.

 

Jakakaa työt ryhmän sisällä tasaisesti niin määrässä kuin laadussa. Vaikka voi tuntua luontevalta että ryhmässä on yksi kaiken piirtämisen tekevä mestarigraafikko tai musiikista kahdeksan vuoden kokemuksella vastaava tracker-virtuoosi, on kokemus monipuolisempi jos kaikki osallistuvat jokaiseen kehityksen ja dokumentoinnin osaan.

 

Lähitapaamiset

Lähiopetukseen varattu aika on tarkoitettu etenemisen seurannan lisäksi ryhmätyön tekemiseen, eli koko ryhmän olisi syytä olla paikalla. Jos ryhmä pystyy edistämään peliprojektiaan lähitapaamisten ulkopuolella, ei tapaamisissa tarvitse käydä väkisin näön vuoksi puurtamassa, mutta vähintään yhden ryhmän jäsenen on oltava paikalla raportoimassa ja esittelemässä ryhmän työskentelyn tulosta.

 

Dokumentointi

Ohjelmakoodi, "dokumenteista tärkein", on asetettava saataville julkisesti, esim. GitHubiin siten että kurssin ohjaaja pääsee tarkastelemaan sitä. Git-versionhallintajärjestelmän käyttöä versionhallinnassa suositellaan erittäin vahvasti.

Kurssin keskeinen lopputuote on kehityspäiväkirja. Kehityspäiväkirjaa tehdään ja tarkastellaan koko kurssin ajan eli sitä ei voi tehdä vain loppuspurttina! Päiväkirjan tarkoitus on, nimensä mukaisesti, sisältää koko pelin kehityshistoria. Sisältö on vapaamuotoinen, mutta ainakin nämä asiat kannattaa käsitellä:

  • Peli-idea. Mitä pelissänne tapahtuu? Onko ideallanne esikuvia? Muuttuuko idea pelikehitysprosessin edetessä?
  • Resurssit, eli esim. äänet ja grafiikat. Mistä hankitte ne, vai teittekö itse? Jos teitte itse, miten?
  • Ohjelmointi. Karkeatasoinen kuvaus arkkitehtuurista ja siitä miten käytitte libgdx:ää riittää.
  • Versiokatsaus: kokonaiskuva pelistä esimerkiksi jokaisen lähitapaamisen yhteydessä. Mikä on muuttunut? Mitä seuraavaan versioon mennessä aiotaan tehdä?
  • Ryhmän jäsenten kädenjälki, eli kuka on tehnyt mitäkin

Dokumentista tulee siis eräänlainen "Making of" -raportti - kurkistus kulissien taakse. Dokumentti on palautettava kurssiassarille (mieluiten sähköpostitse) viimeistään sunnuntaina 12.1. Yksi palautus ryhmää kohti riittää. Pelin viimeistely ja jatkokehitys dokumentin palautuksen jälkeen on sallittua ja suotavaa!

 

Demotilaisuus

Torstaina 9.1 pidetään normaalin tilaisuuden yhteydessä rento ja reipas demotilaisuus jossa ryhmät esittelevät omia pelejään. Pelin ei tarvitse olla valmis, mutta jotain näytettävää on syytä olla. Demotilaisuus on tarkoitettu osittain ideoiden vaihtamiseen pelien viimeistelyä varten.

 

Muuta

Kurssilla käytetään libgdx-sovelluskehystä (http://libgdx.badlogicgames.com/) johon kannattaa tutustua hyvissä ajoin.

Kurssin IRC-kanavana toimii #tkt-pelihaaste IRCnetissä. Myös vähemmän virallinen ja usein hiljainen TKO-äly ry:n pelikehityskanava #tkt-gamedev voi olla kiinnostava juttupaikka.