Nyílt forrású, mobiltelefonos játékok az oktatásban Norbert Bátfai University of Debrecen Department of Information Technology batfai.norbert@inf.unideb.hu Erika Bátfai University of Debrecen University and National Library ebatfai@lib.unideb.hu Ildikó P²enáková Constantine the Philosopher University Faculty of Central European Studies ipsenakova@ukf.sk 2009. június 16. Kivonat Ebben a cikkben bemutatjuk a Bátfai Norbert: Mobiltelefonos játékok tervezése és fejlesztése cím [1] disszertációja kapcsán megnyitásra tervezett Eurosmobil mobiltelefonos Java ME játékokat. Bemutatjuk az ezekre épül, készül elektronikus tankönyv tervét. Végül vázoljuk a hazai és külföldi oktatási gyakorlatba történ konkrét bevezetési tervek néhány használati esetét. Tartalomjegyzék 1. Bevezetés 2 1.1. Nyílt forráskód.......................... 2 1.2. Mobiltelefonok, Java és a nyílt forráskód............ 2 1.3. Játékok és a nyílt forráskód................... 3 1
2. A megnyitott játékok 3 2.1. El zmények............................ 3 2.2. Az Eurosmobil nyílt forrású játékai............... 3 2.2.1. A Kapitális sorozat egy tagja.............. 4 2.2.2. A 2D Mobil Foci Liga sorozat egy tagja......... 5 2.2.3. A Hetedik Szem sorozat egy tagja............ 6 3. Bevezetési tervek 7 4. Összefoglalás 7 1. Bevezetés 1.1. Nyílt forráskód Mivel kezd dött a nyílt forrású forradalom? Említhetnénk talán Richard Stallman GNU-kiáltványát [2], vagy maga az open source név kapcsán Eric Steven Raymond Katedrális és a Bazár [3] cím munkáját, de sokkal fontosabb, hogy a forradalom ma is zajlik. A jöv r l nyilatkozni nem célunk ebben a munkában, de a neves hírnökök predikcióira érdemes gyelni! Álljon itt csak egy ilyen idézet: By 2012, 80 per cent of all commercial software will include elements of open-source technology. 1 Ami viszont számunkra most lényeges, az az oktatás és a forradalom kapcsolata. A forradalom zászlóshajója ma a jól ismert GNU/Linux operációs rendszer, de a gyökerek jóval mélyebbek: magában a zárt forrású világba nyúlnak vissza. Abba az id be, amikor a Unix tipusú rendszerek C forrásban már nem álltak az operációs rendszerek kurzusok rendelkezésére, mert ekkor született meg, 1987-ben [4] Tanenbaum csodálatos rendszere a Minix. Néhány év múlva a helsinki egyetem operációs rendszerek kurzusán egy hallgató, Linus Torvalds már ezt tanulta, 1991-ben szárnyra kellt a Linux... ez a hallgató 2006-ban már a TIME magazin Forradalmárok és Vezet k ketegóriájának h se 2. 1.2. Mobiltelefonok, Java és a nyílt forráskód Napjaink proramozás oktatását, a Pascal alapú programozói kultúra hanyatlása után, a Java nyelvre épül programozási civilizáció uralja. Ez a gyakorlatban azt is jelenti, hogy ezt a platformot választva adódik a legtöbb 1 Gartner Highlights Key Predictions for IT Organisations and Users in 2008 and Beyond, http://gartner.com/it/page.jsp?id=593207 2 http://www.time.com/time/europe/hero2006/torvalds.html 2
fejleszt i lehet ség mint a diák, mint a tanár számára. Például, ha LEGO NXT robotot akarunk a Viselkedés API [5] használatával programozni, akkor a Java választása mellett 3 ezt megtehetjük, mert a Java mögött ma van egy kultúra, egy egész programozói civilizáció, generáció. Tovább er síti a nyílt forrású közösséget és az említett programozási kultúrát, hogy a Sun 2006 novemberében a Java mindhárom (Java SE, Java ME, Java EE) kiadását nyílttá tette a GNU GPL hatálya alatt, ezzel eltünt a többek által félt Java csapda. 1.3. Játékok és a nyílt forráskód A játékok megnyitása nem újdonság, csak a legismertebb példát említjük most meg: 2005-ben (a Doom játékáról híres) id Software a GNU GPL engedéllyel megnyitotta a Quake III Arena forrásait. A mi szóban forgó (Eurosmobil) játékaink koránt sem ilyen híresek, hiszen eleve nem járták meg csak a hazai játékszoftver piacot. De kipróbált, remek játékélményt nyújtó mobiltelefonos játékok, amiket a diákok és hallgatók méginkább magukénak tudnak majd érezni, ha maguk fordítják le, nem beszélve arról, ha módosítanak is a játékok er forrásain vagy magukon a forráskódokon. 2. A megnyitott játékok 2.1. El zmények Korábbi [6] könyvünk kapcsán - a levelez és a nappalis képzésünk több tárgya esetén - nagy sikerrel vezettük be a kész forráskódok felhasználásának gyakorlatát. Ezek segítik és katalizálják a hallgatók órai és otthoni munkájának megkezdését. Éppen ezért ezek még nagyon egyszer források voltak, a licenc meggondolását így nem vetették fel (s az Eurosmobil csupán a tárhelyet biztosítja a közzétételükhöz). 2.2. Az Eurosmobil nyílt forrású játékai Az Eurosmobil 4 2003-ban, f leg Java ME mobiltelefonos játékok fejlesztésére alakult családi cég formájában, Debrecenben. Most 2009-ben, Bátfai Norbert Mobiltelefonos játékok tervezése és fejlesztése cím [1] disszertációja kapcsán a cég, a GNU általános nyilvános engedélyének (GPL) hatálya alatt 3 http://lejos.sourceforge.net/nxt/nxj/api/index.html 4 EUROSMOBIL Játék- és Alkalmazásfejleszt Bt., http://www.eurosmobil.hu/ 3
megnyitja korábban kizárólag csak piaci forgalomban elérhet játékainak forrásait. Technikailag a szóban forgó, számos készülékre portolt játékokból egyetlen, a játék nevében NYFK címkével jelzett nyílt forrású kiadást készít. De fontos hangsúlyozni, hogy ez a kiadás nem valamely funkciók limitálását szolgálja, hanem azt, hogy csak egyetlen forrást kelljen karban tartani az esetlegesen érdekl d nyílt forrású közösségnek. A következ alpontokban röviden bemutatjuk a megnyitott játékokat és megjelöljük azokat a csatlakozási pontokat, amelyekkel az oktatás különböz szintjeihez köthet k. A megynyitott játékokat Maven 5 projektek formájában hozzuk majd nyilvánosságra, de támogatást adunk a NetBeans IDE használatához is. Illetve a telefonra töltés hogyanjára is kitérünk a Motorola, Nokia és Sony Ericsson készülékek tekintetében. 2.2.1. A Kapitális sorozat egy tagja A Kapitális sorozat tagjai a horgászat élményét adják a mobiltelefonon. A [1] alapján az alábbiakban felsoroljuk a játék f jellemz it. - Kellemes madárdal szórakoztatja a horgászt. - Realisztikusabb horgászat (a 102% értelmezése) a könnyebb szerelékkel felkínált csalit is felveszi a hal, maximum aztán a fárasztásnál elszakad a zsinór, törik a horog stb. - A tó bármikor újratelepíthet. - 5 méret zsinór, 6-féle el ke, 17-féle csali. 5 http://maven.apache.org/ 1. ábra. 104% Nyári Kapitális 4
E játék esetén nem programozás jelleg feladat lehet például a horgászhelyek megváltoztatása. Nem kell mást tennünk, mint lefotózni kedvenc helyünket és lecserélni a program képeit. Könnyebb programozás jelleg feladat például az lehet, ha a horgásztó halállományát vagy a halak viselkedését változtatjuk meg. Nehezebb átalakítás, s ezt a jelen források semmilyen formában nem támogatják, ha JSR 82 (Java Bluetooth) lehet ségekkel ruházzuk fel a játékot. Ez esetben horgászhatunk egymás telefonján. 2.2.2. A 2D Mobil Foci Liga sorozat egy tagja A sorozat tagjai a foci, a csapat játékának (izometrikus) irányításának élményét adják a mobiltelefonon. Az el z ponthoz hasonlóan a [1] alapján bemutatjuk a játék f jellemz it. - 2.5 D megjelenés. - Fotó készítése a telefon kamerájával a labdarúgókról. - A labdarúgók elnevezésének lehet sége. - Átadás orientált játék. - Egy saját, egy ellen-csapattal. - Szöglet, 11-es párbaj, 10 perces találkozók. - 3x3x3, 3x4x2, 4x3x2, 2x3x4 felállások. - 8 csapat. - A VB negyeddönt kt l a dönt ig. 2. ábra. Fociünnep Neked 5
Az el z játékhoz hasonlóan ennél a játéknál nem programozás jelleg feladat lehet például a játék képer forrásainak cseréje. Könnyebb programozás jelleg feladat pedig például az lehet, ha magát a foci interpretert változtatjuk meg, mondjuk b vítjük egy új játékrend megadási lehet ségével. Itt a hálózati verziót olyan formában tudjuk elképzelni, hogy két játékos megkapja a másik csapatát, s az egyik telefonon az oda, a másikon a visszajátszót játsszák le a játékosok. Ez az átalakítás nehezebb programozási feladat, de egy JSR 82 API alapú megoldás megfelel lenne. 2.2.3. A Hetedik Szem sorozat egy tagja A sorozat tagjai közösségi élményt adnak a mobiltelefonon azzal, hogy a készüléket úgy használhatjuk, mint egy mér eszközt: a játékos mentális újjlenyomatokat tud felvenni az ismer seit l. 3. ábra. Hetedik Szem Ennek a játéknak az implementálása már matematikai hátteret is feltételez, ennek részletes bemutatása megtalálható a [1] dolgozatban. Ennél a játéknál nem is magának a játéknak a továbbfejlesztése, hanem a játék, mint klienshez épített szerveroldal és közöösség, illetve az ett l a közösségt l felvett minták összehasonlítása, elemzése lehet az igazán érdekes. Ez tehát már nemcsak Java ME, hanem Java EE programozási elemeket is tartalmazó fejlesztés, ami a programozás mellett persze nem kevés szervezési munkát is igényel, további részleteket a [1] dolgozatban, a Digitális Tudatlenyomatok Összehasonlító Könyvtára és Hetedik Szem alapú közösségi portál a pontok alatt olvashatunk. 6
3. Bevezetési tervek A megnyitott forrásokat a hazai oktatási gyakorlatba a Debreceni Egyetem Informatikai Karának Pti. BSc. képzésének Mobil programozás cím tárgyán keresztül vezetjük be. Jelen pillanatban a forrásokat és a forrásokban használt API-k használatát bemutató tankönyvön dolgozunk, remélhet leg majd az id közben sikeressé váló TÁMOP pályázat támogatását is élvezve. A külföldi oktatási gyakorlatba való bevezetésre teszünk kísérletet a nyitrai Konstantín Filozófus Egyetem Közép-európai Tanulmányok Kara Természettudományi és Informatikai Intézettel (Szlovákia) való együttm ködésünk keretében. Ennek el készítését, szervezését szolgálja jelen munkánk is. Az Intézetben a mobil learning oktatásba való bevezetését tervezik. A tananyagot a mobil telefonokra nem egyszer elkészíteni, az e-learningel szemben sokkal kisebb képerny vel kell dolgozni. A mobil játékok kihasználása segíthet a programozás oktatásában, ami eredményesebbé teheti a mobil learninges tananyag készítését. 4. Összefoglalás Cikkünk bevezetésében röviden vázoltunk néhány a nyílt forráskódból táplálkozó változást, ezek olyan er snek és a jöv ben meghatározóvá válónak tünnek, hogy jogos a forradalmi, a forradalom elnevezés. Mi is ebbe a mozgalomba akartunk bekapcsolódni, azzal, hogy megnyitottuk néhány sikeres játékunk forrásait. De nem elég megnyitni a forrásokat, azt is támogatni kell, hogy használatuk az oktatásban elterjedjen. Az informatika oktató sikerrel és egyben kevés munkával tudja elkészítettni diákjaival vagy hallhatóival a mi forrásainkra alapozott, de immár a saját, magukra szabott, módosított, javított, jobbá tett, és természetesen akár telefonjaikra is feltölthet programjaikat. Jelen munkánkkal is ezt a célt akarjuk szolgálni. Hivatkozások [1] Bátfai Norbert, Mobiltelefonos játékok tervezése és fejlesztése, Ph.D. értekezés, Debreceni Egyetem, 2009. [2] Richard Stallman, GNU-kiáltvány, http://www.gnu.hu/ gnu-kialtvany.html. [3] Eric Steven Raymond, The Cathedral and the Bazaar: Musings on Linux and Open Source by an Accidental Revolutionary, O'Reilly, 7
2001. http://www.catb.org/~esr/writings/cathedral-bazaar/ cathedral-bazaar/index.html [4] Andrew S Tanenbaum, A UNIX clone with source code for operating systems courses., ACM SIGOPS Operating Systems Review Volume 21, 1987. http://portal.acm.org/citation.cfm?id=24592.24596 [5] Rodney A. Brooks, Intelligence without representation, Articial Intelligence, 47. 139-159, 1991. http://citeseerx.ist.psu.edu/viewdoc/ download?doi=10.1.1.12.1680\&rep=rep1\&type=pdf [6] Bátfai Norbert, Nehogy már a mobilod nyomkodjon Téged! A programozás egy szellemi sport: ismerd meg Te is az alaplépéseket!, Debrecen, DEENK 2008., http://www.eurosmobil.hu/nehogymar 8