A játékot készítette Orosz Ákos (orosz@dcs.uni-pannon.hu) és Róth Gergő (roth@dcs.uni-pannon.hu). Esetleges kérdésekkel hozzájuk lehet fordulni.

Hasonló dokumentumok
Windows felhasználói felület

PlanetFight. Minden játékosnak van valamennyi űrhajója, amikkel képesek elfoglalni még fel nem fedezett, neutrális bolygókat.

Verzió CompLex Officium Felhasználói kézikönyv

MIKROPROCESSZOROS KAZÁN KF + HMV HŐMÉRSÉKLET SZABÁLYOZÓ

cato II. rész: Protokollok és Terápiatervek

Kiadói díjbeszedésű hírlapok előfizetői állományának adatcseréje

Szoftver-kézikönyv. GoPal Navigator 5.5

2013. novemberi jóváhagyás tervezett decemberi jóváhagyás tervezett

Felhívás. Csoportos tehetségsegítő tevékenységek megvalósítására. a TÁMOP azonosítószámú Tehetséghidak Program

10XONE Szoftver és szolgáltatási szerződés Általános Szerződési Feltételek (ÁSzF) XONE V3.3 SZERZŐDÉS

Canon MG5650 CISS rendszerrel

HÁZIREND. A gyermek óvodában tartózkodásának maximális ideje: heti 50 óra (a közoktatási törvény 24. (4) pontjának értelmében)

Normatív Határozat. Felelős: dr. Kelemen Márk polgármester Határidő: azonnal

1. Az ajánlatkérő neve, címe, telefon- és telefaxszáma; elektronikus levelezési címe

Csapata erősítésére keres gyakornokot a Kultúra.hu. Jelentkezni fényképes önéletrajzzal a takacs.erzsbet@kortarsmedia.hu címre várjuk.

Az állattenyésztési ágazat fejlesztése - trágyatárolók építése

Kerékpárosokra vonatkozó legfontosabb ismeretek 3. rész Oldal 1

Foglalkoztatás és a foglalkoztatási formák kérdőiv 2014

DS-9600/8600/7700/7600NI-ST és DS-7700/7600NI-SP sorozatú digitális rögzítők

Turisztikai attrakciók és szolgáltatások fejlesztése c. konstrukciójához. Kódszám: DDOP-2.1.1/D-12, KDOP-2.1.1/D-12, NYDOP-2.1.1/F-12 DAOP-2.1.

VBexpress 9.0 verzió új képességei

Szenzor konfigurálása (Informáld az NXT-t, hogy milyen eszközök vannak csatlakoztatva, és hová!)

ECSEGFALVI ÓVODA SZERVEZETI ÉS MŰKÖDÉSI SZABÁLYZAT

Turisztikai alkalmazás készítése, GSM alapú helymeghatározás

Visszapillantó Bluetooth tükör autós készlet

VESZPRÉM MEGYEI ÖNKORMÁNYZAT KÖZGYŰLÉSE HATÁROZAT

KÖZBESZERZÉSI SZABÁLYZAT

A PUBLIC RELATIONS TEVÉKENYSÉG ESZKÖZEI

Kijárat ellenőrző rendszer

BUDAPESTI MŰSZAKI ÉS GAZDASÁGTUDOMÁNYI EGYETEM REKTORI HIVATAL OKTATÁSI IGAZGATÓSÁG. Tanulmányi ügyrend 1. FÜZET A FELVÉTELI ELJÁRÁS

BallFight. A játék akkor ér véget, ha egy körben mindkét játékos passzol. Kommunikáció a BallFight programmal

Használati útmutató a VDO M6WL computereihez

a Magyar Építész Kamara névjegyzéke alapján, (zárójelben a kamarai kódokkal):

Közlemény. Módosított pont. dokumentum neve Pályázati útmutató és Pályázati felhívás. B1 Jogi forma (a szöveg kiegészítése)

Adatbenyújtási kézikönyv

Tervezői segédlet. Multi-IO egység

Esztergom Város integrált településfejlesztési stratégiája

Gyakorlati vizsgatevékenység A

VESZPRÉM MEGYEI ÖNKORMÁNYZAT KÖZGYŰLÉSÉNEK ELNÖKE 8200 Veszprém, Megyeház tér 1. Tel.: (88) , Fax: (88)

Aprító berendezések telepítése pályáztatásához

Testépítés. Kovács Zoltán (Nyíregyházi Főiskola Debreceni Egyetem) zeus.nyf.hu/ kovacsz július 7.

Mezőgazdasági termékek értéknövelése és erőforrás-hatékonyságának elősegítése a feldolgozásban

Számítógépes alapismeretek-kidolgozott szóbeli tételek I.(1-5 )

KEZELÉSI ÚTMUTATÓ. Budapest, MZV-18-S tipusú, gáztüzelésű, átfolyórendszerű, használati-vízmelegítőhöz

MATEMATIKA C 12. évfolyam 5. modul Ismétlés a tudás anyja

Prototípus, termék-, technológia- és szolgáltatásfejlesztés

E-közigazgatási költség-hatékonysági módszertanok és benchmarking/monitoring rendszer kidolgozása

Általános előírások. Az előírások hatálya 1..

K e m e n e s h ő g y é s z k ö z s é g h e l y i é p í t é s i s z a b á l y z a t a ( T e r v e z e t )

Az MRT-012 (Contact ID) encoder programozó szoftvere (vers. S0309) A Contact ID protokoll az alábbi adatokat küldi át (az adatok decimálisak):

3. prioritás: A minıségi oktatás és hozzáférés biztosítása mindenkinek

VerdA GaraS gépjármű költségnyilvántartó

Általános előírások. Az előírások hatálya. Jelen építési szabályzat hatálya Vinár község (továbbiakban település) igazgatási területére terjed ki.

A HUNYADI MÁTYÁS ÁLTALÁNOS ISKOLA HÁZIRENDJE HATÁLYOS:2009. JÚLIUS ELSEJÉTŐL

MATEMATIKA C 12. évfolyam 3. modul A mi terünk

Panini A V3/0211

Alapvető formázási műveletek a Word 2003 programban

Dáka Község Helyi Építési Szabályzata

H Á Z I R E N D 2013.

A KÖNYVKIADÁS KOLLÉGIUMÁNAK MEGHÍVÁSOS PÁLYÁZATI FELHÍVÁSA. A Könyvkiadás Kollégiuma meghívásos pályázatot hirdet, amelyre meghívja a :

PC-Kismester verseny első forduló feladatai. Beküldési határidő: december 6.

NAGYERDEI TEREP MARATON FÉL MARATON ÉS NEGYED MARATON. Ahol a futó és a futás van a középpontban

a Szervező vezető tisztségviselői, munkavállalói valamint az itt felsorolt személyek Ptk. 8:1

. 2 pont A 2 pont nem bontható. 3 Összesen: 2 pont. Összesen: 3 pont. A valós gyökök száma: 1. Összesen: 2 pont. Összesen: 2 pont

Készítette: Rév Bence GSPublisherEngine Ügyességi társasjáték felnőtteknek. 3D o b á s

Iktatószám: 158/2013. AZ EGRESSY BÉNI ZENEISKOLA ALAPFOKÚ MŰVÉSZETI ISKOLA HÁZIRENDJE. Tartalom

A SZŐKE TISZA pusztulása és a jogi felelősség kérdése

A helyi addiktológiai ellátórendszer

Pályázati felhívás és Útmutató. a évi Erasmus+ hallgatói tanulmányi és szakmai mobilitás-pályázat beadásához

Hardverek Villamosságtani Alapjai Házi feladat

Programozás Delphiben

Klinng! Mobil Pincér felhasználói (pincér) tájékoztató

LiPo akkumulátorok kezelése: LiPo akkumulátorok előnyei a NiMh-val szemben:

A felülvizsgálatok során feltárt hibákat a döntések tartalmához igazodó sorrendben csoportosítottuk.

thermotop plus fali gázkészülékek turbotop plus fali gázkészülékek

Általános Szerződési Feltételek

CAYLUS. A játéktábla. Tartalom. Egyszer volt, hol nem volt. A játék célja. Előkészületek. Nyersanyagok élelmiszer. posztó. arany. Épületek.

K6/B. sz. melléklet. Lehetséges hitelcélok: A kölcsönterméket felhasználási hitelcél megjelölése nélkül lehet igényelni.

DIGITÁLIS UJJLENYOMAT AZ ADATBIZTONSÁGBAN

TÁJÉKOZTATÓ AZ ADATLAP KITÖLTÉSÉHEZ

A HÁLÓ KÖZÖSSÉG MISSZIÓJA A KÁRPÁT-MEDENCÉBEN

Dr. Fóriánné Horváth Margit A bankári biztosítékok

ZÁRÓ VEZETŐI JELENTÉS TEVÉKENYSÉGELEMZÉS ÉS MUNKAKÖRI LEÍRÁSOK KÉSZÍTÉSE SZÁMÍTÓGÉPES ADAT- BÁZIS TÁMOGATÁSÁVAL

Mélyhúzás lemezanyagai és minősítési módszereik. Oktatási segédlet.

Pécs Uránváros főterének és kapcsolódó közterületeinek tervezése

Nők szolgálata. Tehát úgy teremtette Isten a férfit és a nőt, hogy személyükben egyenlőek, de sorrendiségükben és szerepükben eltérőek legyenek.

JELENTÉS. az önkormányzatok évi normatív állami hozzájárulás igénybevételének és elszámolásának ellenőrzési tapasztalatairól július 212.

PÁLYÁZATI FELHÍVÁS az Észak-Magyarországi Operatív Program keretében Helyi és térségi vízrendezés, vízrendszerek fejlesztésének.

A fogyasztói tudatosság növelése. az elektronikus hírközlési piacon

K I V O N A T. Kerekegyháza Város Önkormányzat Képviselő-testületének február 15-én megtartott rendkívüli ülése jegyzőkönyvéből

FELHÍVÁS. A felhívás címe: Felzárkóztató egészségügyi ápolói szakképzési programok. A felhívás kódszáma: EFOP

Aktív idõskor Generációk egészsége

5CG. számú előterjesztés

NYUGAT-MAGYARORSZÁGI EGYETEM PÉNZ-, ÉS ÉRTÉKKEZELÉSI SZABÁLYZAT

MINŐSÉGIRÁNYÍTÁSI KÉZIKÖNYV

EGT FINANSZÍROZÁSI MECHANIZMUS ENERGIAHATÉKONYSÁG PROGRAMTERÜLET BESZÁLLÍTÓI WORK-SHOP EMLÉKEZTETŐ

A Közép-Nyírségi Agroipari Park megvalósíthatósági tanulmányterve

Építészpárbaj 2 játékos részére, 10 éves kortól

Az új kereskedőváltási szabályok bejelentő táblázatának használata

SARKÍTOTT FÉNNYEL A VIKINGEK NYOMÁBAN AZ ÉSZAKI-SARKVIDÉKEN A polarimetrikus viking navigáció légköroptikai feltételeinek kísérleti vizsgálata

Átírás:

BmbFight Készítők: A játékt készítette Orsz Áks (rsz@dcs.uni-pannn.hu) és Róth Gergő (rth@dcs.uni-pannn.hu). Esetleges kérdésekkel hzzájuk lehet frdulni. Rövid leírás: Egy térképen egyszerre két játéks játszik egymással versenyezve. A játék célja az ellenséges játéks pntszámánál több pnt elérése az adtt térképen. Szabályrendszer: Cél: drágakövek megszerzésével több pntt kell szerezni a játék végére, mint amennyit az ellenfél szerez. A pályán többféle drágakő is szerepel. A különböző típusk különböző pntszámt érnek. A pályán nem csak drágakövek, hanem többféle gmba is található. A különböző típusú gmbáknak különböző pntszáma van. Ezek a pntszámk negatív értékkel számítanak bele a végeredménybe. A pálya a jól ismert Bmberman számítógépes játék pályájáhz hasnló. A játéktér négyzetrács alapú, minden négyzeten többféle elem lehet. A pálya minden másdik srában minden másdik elem kötelezően fal, valamint a teljes pályát zárt fal veszi körül. A kijárat minden esetben valahl a falban van. Ezek az elemek a következők: - Fal - Tégla - Bmba - Játéks - Kijárat - Drágakő 5 pnt: 10 pnt: 20 pnt:

25 pnt: 40 pnt: - Gmba -3 pnt: -6 pnt: -10 pnt: -15 pnt: -20 pnt: A játéks a pályán függőleges és vízszintes irányban mzghat lyan helyre, ahl nincs fal, vagy tégla. A játék körökre szttt. A játéks minden körben két dlgt csinálhat akármilyen srrendben: - Mzghat - Bmbát rakhat le A játék meghatárztt számú körből áll, minden egyes körben minden játéks léphet a saját Bmbermanjével. A bmba a lerakása után a 3. kör végén rbban, 3 mezőt vízszintes és függőleges irányban. A bmba rbbanása átmegy minden másik bmbán és minden drágakövön és gmbán. A rbbanás sugara falba, illetve téglába ütközés esetén áll meg. Téglába ütközés esetén bntó hatása van, vagyis a téglát eltünteti a pályáról. Pntszámk: A játék srán a játéksk drágaköveket gyűjtenek. A drágakövek pntt érnek. Tvábbá a pályán találhatóak különféle gmbák is. A gmbák felszedése mínuszpntt ér. Fnts: a különböző pntt érő elemek felszedése helyett, akár fel is rbbanthatjuk azkat. Felrbbantással az adtt elem értéke megkétszereződik. Tehát a felrbbanttt drágakő kétszer annyi pntt ér, a felrbbanttt gmba esetén pedig kétszer annyi pnt vnódik le. Tvábbá pntt ér az, ha eljutunk a kijáratig (80 pnt). Az elhalálzásért (saját magunk felrbbantása, vagy másik játéks által leraktt bmba kzta halál) mínusz pntt kap az adtt játéks (-40). A játék vége: A játék akkr ér véget, ha az egyik játéks a kijáratra lépett, vagy ha elfgy a körök száma.

Kmmunikáció a BmbFight prgrammal A BmbFight prgram feladata két mesterséges, illetve valódi intelligencia kezelése. Egy intelligencia lehet a játéks által megírt prgram és a játéks is. Ezeknek az intelligenciáknak az interakcióit a BmbFight prgram váltakzva kezeli, úgy, hgy minden körben minden egyes intelligencia léphet. A kmmunikáció a játéksk által megírt prgramkkal a standard input és a standard utput-n keresztül történik. A standard errr használható debug üzenetek írására. A BmbFight biztsítja a játéks által megírt prgramnak a standard input-n a teljes térképet és az összes játéks pzícióját. Ahl játéks aznsító szerepel, tt az 1 érték jelöli az első, a 2 érték a másdik játékst. A BmbFight a pályát egy mátrixn reprezentálja, ahl a mátrix minden négyzetrácsában különböző elemek vannak. A standard input-ra küldött infrmációk srrendben: - pálya szélessége -> w: egész szám - pálya magassága -> h: egész szám - h x w dimenziós mátrix, mely a pályát tartalmazza: egész számk mátrixa - első játéks pzíciója -> x1 y1: két egész szám - másdik játéks pzíciója -> x2 y2: két egész szám - aktuális játéks -> p: egész szám (értéke lehet 1, vagy 2) - hátralevő körök száma -> r: egész szám - az első játéks pntszáma -> p1: egész szám - a másdik játéks pntszáma -> p2: egész szám Az stdin-re kaptt mátrix elemei: - 0: -20 pntt érő gmba - 1: -15 pntt érő gmba - 2: -10 pntt érő gmba - 3: -6 pntt érő gmba - 4: -3 pntt érő gmba - 5: 5 pntt érő gmba - 6: 10 pntt érő gmba - 7: 20 pntt érő gmba - 8: 25 pntt érő gmba - 9: 40 pntt érő gmba - 10: fal - 11: tégla - 14: kijárat - 15: üres - 1000-1003: 1. játéks által leraktt bmba - 2000-2003: 2. játéks által leraktt bmba

Példabemenet a játéks által megírt prgram számára: 11 11 // szélesség magasság 10 10 10 10 10 10 10 10 10 10 10 10 15 7 15 9 15 0 11 15 15 10 10 15 10 15 10 15 10 11 10 11 10 10 0 15 11 11 15 4 15 11 15 10 10 15 10 15 10 15 10 11 10 15 10 10 15 15 15 15 15 15 11 11 3 10 10 15 10 15 10 15 10 3 10 15 10 10 15 15 15 15 15 15 15 15 15 10 10 15 10 15 10 15 10 15 10 3 10 10 15 15 15 1 15 15 3 2 15 14 10 10 10 10 10 10 10 10 10 10 10 3 6 // egyes játéks pzíciója 1 9 // kettes játéks pzíciója 1 // aktuális játéks srszáma 199 // hátralevő körök száma 0 // egyes játéks pntszáma 0 // kettes játéks pntszáma A játéks által megírt prgram a standard utput-n keresztül biztsít infrmációt a BmbFight-nak, így a standard utput-ra tils bármilyen más szöveget kiírni. A mesterséges intelligenciának utasítást kell adnia a hzzá tartzó Bmberman-nek. Ha nem ad utasítást, akkr a Bmberman nem csinál semmit az adtt körben. Mesterséges intelligencia kimenetének legfeljebb két szóból kell állnia. A két szó egyike a mzgást beflyáslja, a másik pedig bmba lerakásra szlgál. A srrend körönként lehet eltérő. A parancsk (szavak), amiket értelmez a BmbFight prgram: - up: a Bmberman-t arra utasítja, hgy felfelé menjen - dwn: a Bmberman-t arra utasítja, hgy lefelé menjen - left: a Bmberman-t arra utasítja, hgy balra menjen - right: a Bmberman-t arra utasítja, hgy jbbra menjen - bmb: a Bmberman-t arra utasítja, hgy bmbát rakjn le Pár példakimenet: bmb : a játéks lerak egy bmbát right : a játéks egy mezőt megy jbbra up bmb : a játéks egy mezőt megy felfelé, majd bmbát rak le bmb right : a játéks bmbát rak le, majd egy mezőt megy jbbra bmb bmb : a játéks lerak egy bmbát (csak egy bmbát rakhatunk le) left right : a játéks balra megy egy mezőt (csak egy lépést tehetünk) left up : a játéks balra megy egy mezőt (csak egy lépést tehetünk)

A játéksk debug üzeneteket a standard errr-ra írhatnak (pl. fprintf(stderr, debug infrmatin ) ). Az fprintf használata hasnló a printf-hez, a különbség annyi, hgy első paraméternek meg kell adni egy FILE mutatót, jelen esetben ez az stderr. A BmbFight level (.bflvl) fájltípus Ennek a fájlnak a kezelése nem szükséges, csak azknak, akik saját pályát akarnak készíteni. A BmbFight pályáit.bflvl fájltípus tárlja. Ha a felhasználó ad meg pályát ( Level melletti Brwse gmb), akkr a start game -re kattintva a megadtt pálya töltődik be, amennyiben ez nem sikerül, vagy nincs megadva fájl, akkr véletlenszerűen generál egy pályát a véletlenszerű beállításknak megfelelően. A pálya egy mátrixt tárl. A mátrix minden rácspntjában egy-egy elem szerepel. Minden elemet egyetlen karakter reprezentál. Példa egy.bflvl fájlra (// után kmmentek, nem a fájl része): 11 9 // a pálya 11 széles és 9 magas ########### // a pálya legfelső sra #XX XX BX# #X# # # # # # XX 1# # # # # #8# # A XX91# # # # # #X# # 37X # #E######### 40 // maximális körök száma A következő elemek lehetnek a mátrixban: - A: első játéks kezdőpntja - B: másdik játéks kezdőpntja - #: fal - X: tégla - E: kijárat - 0-4: gmbák 4: -3 pnt 3: -6 pnt 2: -10 pnt 1: -15 pnt 0: -20 pnt - 5-9: 5: 5 pnt 6: 10 pnt 7: 20 pnt 8: 25 pnt 9: 40 pnt

A BmbFight prgram kezelése Telepítés (Windws alatt): a mellékelt könyvtárstruktúrát mentsük el. A BmbFight prgramt a BmbFight.exe indítja. A játék megkezdéséhez meg kell adni a két játéks prgramját a megfelelő mezőben ( Player1 és Player2 melletti Brwse gmb). Értelemszerűen ez a prgram Windws-n egy.exe fájl. Amennyiben a felhasználó nem ad meg valamelyik Player-nek prgramt, úgy a megfelelő Player körében a felhasználónak kell cselekednie. A saját Bmberman-jének a billentyűzet segítségével tud parancst adni. Az irányítás a W, S, A, D, B és F gmbkkal történik. - W: a Bmberman fölfelé próbál meg menni - S: a Bmberman lefelé próbál meg menni - A: a Bmberman balra próbál menni - D: a Bmberman jbbra próbál menni - B: a Bmberman bmbát rak le - F: a játéks már nem kíván több parancst adni Értelemszerűen a Bmberman csak arrafelé közlekedik, amerre nem ütközik akadályba. A következő elemeken nem lehet átmenni: fal, tégla. A File menü start game pntjára kattintva kezdődik el a játék. A pályát még a játék megkezdése előtt meg kell adni a Level alatti beviteli mezőben. Amennyiben a felhasználó nem ad meg pályát, úgy a BmbFight generál egyet véletlenszerűen a Randm map ptins beállításainak megfelelően. Az Optins menü shw prcess utput alpntjára kattintva a felhasználó megnézheti, hgy mit ír ki a futtatandó prgram az stdut-ra és az stderr-re. Véletlenszerű pálya beállítási lehetőségei: Width: pálya szélessége Height: pálya magassága

Brick prbability: egy négyzetrácsn tégla létezésének a valószínűsége (minél nagybb, annál valószínűbb, hgy az adtt rácsn van tégla) Pint prbability: egy négyzetrácsn drágakő vagy gmba létezésének a valószínűsége (minél nagybb, annál valószínűbb, hgy az adtt rácsn van pntt érő elem) Max runds: legfeljebb hány körig tarthat a játék Exits: kijáratk száma (a kijáratkat a prgram véletlenszerűen generálja) Mellékelt prgramk randm.c / randm.exe (Windws): egyszerű prgram, mely illusztrálja a kmmunikációt a BmbFight prgrammal. A prgram lgikája nagyn egyszerű: véletlenszerűen kiválaszt a pályán egy pntt és a lehető legrövidebb útn elindul a kijelölt pnt felé. uber.exe (Windws): kicsivel ksabb lgikájú prgram. A beadtt pályaműveknek ezt ajánlats legyőzni. Frráskód nincs mellékelve. Értékelés A verseny srán különböző (előre nem ismert) pályákn zajlik majd a küzdelem körmérkőzések frmájában a pályázók prgramjai között. A prgramk egymás ellen fgnak játszani egy autmata segítségével, amelynek szabályai hasnlóak a kiadtt egyszerűbb BmbFight prgraméhz. Minden mérkőzést minden játéks pár kétszer játszik le, megcserélt kezdőpzíciókból. Így a pálya egyenlőtlenségeit kiküszöböljük. A futtatás srán egy lépésre maximum 2 másdperc ideje lesz a prgramknak, ennél hsszabb gndlkdási idő esetén a mérkőzést lebnylító prgram úgy értelmezi, hgy a mesterséges intelligencia nem akarja a játékst irányítani. Az egyes frdulókban szerzett pntszámk összeadódnak, a legtöbb pntt szerzett prgram lesz a győztes.

Beadandó fájlk Olyan C nyelvben íródtt kód leadása, melynek célja, hgy különböző előre nem ismert pályákn képes legyen irányítani a Bmberman-t, úgy hgy az a lehető legtöbb pntt érje el, maga mögött hagyva a másik játékst. A.c kiterjesztésű frrásfájlt érvényes Quincy Student digitális aláírással kell leadni. Érvénytelen digitális aláírással rendelkező kód leadása esetén a pályázó nem vehet részt a versenyen. Tvábbá futtatható állmányt sem fgadunk el.