Image

Nethack – (Tekijä) Haastattelu!

pLTc5GQ

Tällä kertaa “Haastattelussa” -sarja tarttuu polttavaan ajankohtaiseen aiheeseen, nimittäin nethackin 3.6.0. päivitykseen. Muutakin on muuttunut kuin vain koodirivejä, sillä nykyään nethackin dev-tiimissä on mukana suomalaisvahvistus Pasi Kallinen. Limun Ropellukset otti yhteyttä Pasiin ja saimme haastattelun myötä hieman sisäpiirin näkökulmaa vuodesta 1987 asti kehityksessä olleen videopelin tekemiseen sekä mahdollisuuden tutustua jälleen yhteen suomalaiseen roolipelien kanssa toimivaan ihmiseen.

Pidemmittä puheitta:

1. Kerro hieman itsestäsi kuka olet ja mistä tulet?

Olen Pasi Kallinen, nelikymppinen itäsuomalainen koodinörtti.

paxed_igor

2. Millainen on oma pelitaustasi? Oletko pelannut paljon esim. roolipelejä, tietokonepelejä, lautapelejä? Mitkä ovat suosikkisi ja miksi?

Roolipeleihin tutustuin ala-asteikäisenä, D&D:n punaisen boksin muodossa. Tietokonepelaamiseni alkoi kuusnepalla, ja sillä aloittelin myös koodaamista.

Jossain vaiheessa mukaan tuli myös korttipelit Magic: The Gatheringin muodossa (olen “Johnny”, eli erikoiset kombot viehättävät). Nykyisin kortti/lauta/ropellus on vähentynyt siihen, että käyn kerran vuoteen Ropeconissa.

Suosikkipelejä oli/on mm. c64:n Archon, DOS-aikakaudelta Laser Squad, ja yllättäen NetHack. Hieman uudemmista esim. Binding of Isaac ja Crypt of the Necrodancer. Archon oli ehkä parasta kaverin kanssa kaksintaistelua ikinä; sopivaa strategista lautapelaamista, ja väliin reaaliaikaista ampumista. BoI iskee kombohermooni, kun erilaiset esineet tekevät itkeskelystä hyvinkin erilaista. Necrodancer sotkee mielestäni erittäin onnistuneesti roguelike-tyylin ja hyvän musiikin rytmin.

Korttipeleistä Magic on edelleen ykkönen, vaikka en oikeastaan sitä enää pelaakaan; kombotus on vain niin hauskaa.

3. Miten olet päätynyt kehittämään pelejä?

Ihan oman kiinnostuksen ja innostuksen perusteella. Olen aina halunnut tehdä pelejä, ja suunnittelin niitä ennen tietokonetta kynällä ja paperilla, ja hieman myöhemmin kuusnepan basicilla väsäilin omia onnettomia tuotoksia.

4. Olet nykyään yksi Nethack-pelin kehittäjätiimin jäsenistä, miten
joudut/pääsit mukaan?

Kovalla yrittämisellä. Olen pidemmän aikaa pyörittänyt NetHackkiin liittyviä palveluita tai ollut muuten mukana hyvin isossa osassa NetHackin yhteisöä – hallinnoin esimerkiksi #NetHack-kanavaa FreeNode-irkkiverkossa, julkista NetHack-palvelinta nethack.alt.org, NetHack Patch DataBasea, ja lisäksi olen koodannut monta pätsiä.

display

Nethackin ACII-grafiikka voi vasta-alkajan silmään vaikuttaa sekavalta.


5. Oletko pelannut paljon Nethackiä?

Ensimmäinen vilaus peliin oli artikkeli Pelit-lehdessä, joskus vuonna ’90, ja se kuvaili NetHackia roolipelimäiseksi jossa pystyi tekemään lähes kaikkea. Samana vuonna sitten sain käsiini Amigan shareware-korpulla NetHackin version 3.0 ja jauhoin peliä aika monta kertaa. Lukioaikoina NetHack toimi välipelinä, jos putosin lauta- tai korttipelistä pois ennen muista. Vuodesta ’96 alkaen olen touhunnut
pelin parissa katkotta, ja vuodesta ’99 myös koodannut pätsejä. Tälle välille myös sijoittuu ehdottomasti aktiivisin pelaaminen, joskus viikonloput yhteen menoon… Nykyisin pelaan paljon vähemmän, kun koodaaminen on lisääntynyt.

Olen ascendannut kahdesti, eli en ole mikään huippupelaaja.

6. Miten kuvaisit kehitystyötä Nethackin parissa?

Vaikeaksi. 🙂 Tiimin ulkopuolella ollessa homma oli paljon helpompaa; ei tarvinnut välittää siitä, toimiko jokin parannus kaikissa tuetuissa käyttöjärjestelmissä ja NetHackin ikkunointisysteemeissä.

7. Miten pitkälle koet että Nethack on nimenomaan roolipeli? Millaisena näet tietokoneroolipelien ja pöytäpelien välisen suhteen, niin pelimekaanisesti kuin kokemuksinakin? Vaikuttaako roolipelikokemuksesi omaan näkemykseesi Nethackin kehittämiseen?

En koe NetHackia roolipelinä (enää), vaikka siinä onkin paljon samoja vapauksia ongelmien ratkaisujen suhteen. Mikään ei kuitenkaan estä roolipelaamasta… Tietokoneropet ovat yleensä enemmän yksin tietokoneen ääressä napottamista, eli niistä jää puuttumaan tietynlainen fyysinen yhdessäolo. Ja vaikka olenkin introvertti, niin välillä on kiva olla ihmistenkin kanssa tekemisissä. Pöytäropet ovatkin mielestäni enemmän yhteinen harrastus kuin tietokonepelit. Pöytäpelien ehdottomana hyvänä puolena on pelinjohtaja, joka pystyy vetämään hatusta sopivan ratkaisun, teit sitten mitä tahansa. Vaikka NetHackin DevTeamistä sanotaankin että “The DevTeam Thinks of Everything”, aina löytyy jotain parantamisen varaa. Tämä myös osaltaan vaikuttaa siihen miten haluan viedä peliä eteenpäin, vaikka sieltä jo keittiön lavuaari löytyykin.

random_code

Random kuva koodista.



8a. Kerroit että olet ollut mukana kehittämässä Nethackiä jo pitkään ennen “virallista” asemaa Nethackin kehittäjänä. Miten näet aidan molemmilta puolilta asiaa tarkastelleena pelaajayhteisön merkityksen Nethackin pitkäaikaiselle kehitystyölle? Miten pelaajayhteisö vaikuttaa pelin kehityksen suuntaan? Onko pelin virallisilla kehittäjillä diktaattorin otteet? Vai kuinka kuvaisit kehityksen kulkua vuosien varrella?

Isoimmat muutokset peliin tulevat yleensä jonkin yksittäisen ihmisen toimesta, ja yksinkertaisesti ihmismääristä johtuen lähes kaikki sellaiset muutokset tulevat muilta kuin tiimin jäseniltä – yhteisössä on paljon enemmän koodaustaitoisia ihmisiä kuin tiimissä. Devteamin tehtäväksi jää näissä tapauksissa sitten toimia portinvartijana, että muutokset ovat NetHackin hengen mukaisia. Tiimissä ei ole yhtä diktaattoria – enemmänkin siellä ei ole tilaa isolle egolle. Ulkoapäin katsottuna homma tietysti saattaa näyttää siltä että hermeettinen salaseura johtaa ja muut joutuvat tyytymään siihen mitä sieltä ehkä sanotaan, mutta yritämme kyllä liittää mahdollisimman paljon yhteisöstä tulleita muutoksia peliin. Ja kehitys menee koko ajan avoimempaan suuntaan …

8b. Missä nykyään käydään kiihkeimmät keskustelut Nethackistä netissä?

Eniten keskustelua on ehkä redditissä sekä irkissä FreeNoden #NetHack-kanavalla – Nyyssiryhmät ovat nykyisin kuolleet, eli rec.games.roguelike.nethack on todella hiljainen.

9. Satunnaisuus ja objektien ja olioiden lukuisat ominaisuudet tuntuvat tuottavan rajattomasti eriskummallisia tilanteita, joista Nethackin on tunnettu. Millaista suunnittelufilosofiaa seuraatte satunnaisuuden käyttämisessä tarinankerronan välineenä ja pelaajan mahdollisuuksien
luomisessa?

“The DevTeam Thinks of Everything”, kuten ylempänä mainitsin. Muuta erikoisempaa filosofiaa asiassa ei ole.

ebonhack-default

Graafinen käyttöliittymä auttaa pääsemään sisään peliin, jotkut jopa suosivat sitä.

10. Miten näet Nethackin suhteessa nykyisiin valtavirtapeleihin?

Vähemmän kaunista grafiikkaa, enemmän koodia. Tarkoitus ei olekaan pyrkiä valtavirtapeliksi, koska suurimmalla osalla tietokonepelien pelaajista ei ole mitään intoa hardcore-roguelike -peleihin.


11. Kerro hieman miten kehittäjätiimin kymmenen vuoden hiljaisuus katkesi ja uusi 3.6.0 versio näki päivänvalon?

DevTeam uneksi norsunluutornissaan, kunnes paha velho sai käsiinsä DevTeamin salaisen loitsujen kirjan… En tiedä tarkalleen mitä kaikkea taustoissa tapahtui, mutta joku sai siis käsiinsä kehitteillä olevan version, ja jakoi sitä kiinnostuneille tahoille. Tämä ilmeisesti järkytti tiimin jäseniä niin pahasti, että sain sähköpostiini kutsun – kahden muun henkilön lisäksi – liittyä DevTeamiin.

3.6:n kehitys alkoi hitaasti – infran muutokset olivat aika isot, koska siirryimme käyttämään lähdekoodin hallintaan git:ä, ja bugien hallintaan bugzillaa. Vauhtiin päästyä piti sitten arvioida, miten paljon voisi tunkea “uusia” muutoksia, jotta 3.6 ei olisi ihan hirveä pettymys – monet pelaajat kun olivat tottuneet nethack.alt.org:lla olleeseen versioon, jota olin virittänyt aika paljon – ja silti saada uusi versio mahdollisimman pikaisesti ulos uunista. Lisäksi monet alt.org:n muutoksista eivät läpäisseet DevTeamin seulaa koodin suhteen.

12. Mainitsit että ole tehnyt pelejä jo pidempään. Onko sinulla muita peleihin liittyviä projekteja käynnissä nyt Nethackin lisäksi, tai jo aiemmin valmiiksi saatuja?

Tällä hetkellä ei muita peliprojekteja ole menossa, mutta ensimmäiset pelit väänsin C-64:lla (Sword of Fargoal oli iso innoittaja), ja vähän myöhemmin väsäilin parikin Boulderdash-kloonia ekalla PC:lläni. Nyt linuxkaudella olen tyytynyt auttamaan jo toimivissa peliprojekteissa.

falcon

Käyttäjien luomat graafiset käyttöliittymät ovat parhaimmillaan melkein kuin eri peli?

13. Millaisena näet nethackin tulevaisuuden lyhyellä aikavälillä ja “Isossa Kuvassa”?

Lyhyellä aikavälillä olisi tarkoitus potkia tiimiin sen verran vauhtia ettei kehitys jumahda uudelleen, ja että hieman modernisoimme koodia. Isommalla aikavälillä… no, suunnitelmat ovat ainakin suuret, toivottavasti saamme pelin pysymään elossa. 😉

Kesällä tiimiin liittyi kaksi uutta jäsentä, joten uutta verta alkaa olla sopivasti.

14. Jos resurssit ja “todellisuus” eivät olisi esteinä millaisena näkisit
täydellisen Nethackin?

Aina löytyy parannettavaa, lisää eri osioiden välisiä interaktioita joita voisi lisätä, ja juttuja joita pelaajan pitäisi pystyä tekemään. Täydellistä NetHackkia ei olekaan.

15. Miten neuvoisit vasta-alkajaa lähestymään Nethackiä, jos joku on kiinnostunut mutta ei tiedä mistä aloittaa?

Absolute Beginner’s Guide to NetHack – vaikka onkin vanhalle versiolle – on edelleen pääosin hyvä aloittelijan vinkkilista. (http://www.melankolia.net/nethack/nethack.guide.html)

BONUS: Onko vielä loppuun “pro-tipsiä”?

En kyllä pelaajan pro-tipsiä pysty antamaan, mutta alottelevalle koodaajalle:
sinne vaan koodiin sisälle ja katsomaan mitä tapahtuu kun muutat jotain.

🙂

LINKKI: Nethackin source-koodiin
http://www.nethack.org/v360/download-src.html

Linkki GitHubiin niille jotka tahtovat mukaan kehitykseen!
https://github.com/NetHack/NetHack

Apua ansojen ja erikoishuoneiden suunnitteluun?

Kuten kuukausi sitten kirjoittelin, oletetaan ensimmäisessä “punalaatikossa” (eli Moldvayn Basic D&D:ssä) että 1/6 luolaston huoneista on erikoishuoneita (“special”), 1/6 huoneista sisältää ansan, 2/6 huoneista sisältää hirviöitä ja että loput 2/6 huoneista on tyhjiä. Jos vain 2/6 huoneista sisältää erilaisia hirviöitä ja otuksia, … Continue reading