Csoport neve: Nil

Feladat sorszáma: 6

Feladat címe: Stratégiai játék

 

 

 

 

 

 

Rendszertervezés

 

 

 

 

 

 

Gyakorlatvezető::

Répási Tibor

 

 

 

 


Csoport tagok:


Szmetankó Gábor

EMS4D7

szmeti@chello.hu

Farkas Dániel

VGF0AV

farkasd@gmail.com

Borsody Péter

XRCMHR

borsody@iit.uni-miskolc.hu

Borsody Zsombor

AV8VOD

borsody_zs@freemail.hu

Herczeg Ádám

F8T8FT

herczeg@iit.uni-miskolc.hu

Soós Dániel

BJFFAF

soos1@iit.uni-miskolc.hu


2006.04.21.


Történet


Dátum

Verzió

Leírás

Szerző

2006.04.18.

1.0

A rendszerterv dokumentum első verziója

Szmetankó Gábor,
Farkas Dániel,
Borsody Péter,
Borsody Zsombor,
Herczeg Ádám,
Soós Dániel



Tartalomjegyzék

 

1. Bevezetés

2. Felhasználói felület

2.1 A főmenü rendszerterve

2.2. Játékon belül elérhető funkciók rendszerterve

2.3. A játék kezelés

2.4. A játék képernyőn található objektumok

2.5. Egységek a programban

3. Adatmodellek

 

 

1. Bevezetés

   A Dune: Children of the Wüstenplanet egy modern játékos minden igényét kielégítő startégiai játék. Célja, hogy a játékos elvonatkoztatva a valóságtól, egy elképzelt helyszínen, egy elképzelt hadúr szerepébe képzelje magát. A játékban a kezdeti nehézségektől fogva –víz és katona hiány, ellenséges túlerő – egyre fejlődve vezethejük csapatainkat a végső győzelem felé. Eközben csapataink fejlettebb egységekre tehetnek szert, hatékonyabbá tehetik meglévő harcosaikat és épületeiket, valamint a játékos is kitapasztalhat bizonyos stratégiákat, melyek a gépi ellenfél ellen sikeresen alkalmazhatók. Emellett lehetőséget biztosítunk hálózati játékra is LAN-on illetve interneten keresztül.

 
  Ezek igényes megvalósításához az objektum-orientált szemlélet nagy segítséget nyújt. Egyszerűsíti a rendszerterv, és a korábbi modellek alapján megvalósuló implementációt, megkönnyíti a programozók munkájának összehangolását. A megvalósításhoz kiválasztott programozási nyelv a JAVA, ennek tulajdonságait szem előtt tartva készítettük a rendszertervet, figyelve arra, hogy a későbbi bővíthetőség minél egyszerűbben megoldható legyen, ne fordulhasson elő az, hogy egy korábbi modul hiányosan működjön egy frissítés után. Ez a rendszerterv ismerteti a program fő komponenseit, különös tekintettel a felhasználói felületre és a felhasznált osztályok rendszerére.

 

2. Felhasználói felület

 

  A felhasználói felületet, a játékos kényelmét, a logikus felépítést, valamint a minél részletesebb konfigurálhatóságot szem előtt tartva terveztük meg. A felület tervezésekor  SVGA monitorból indultunk ki amely szerintünk szükséges a megfelelő felhasználói élmény  biztosításához.  A kezelőfelületet  több részre oszthatjuk: a menürendszerre amelybe az általános funkciókat fogtuk össze, és a játék kezelő felületére, mellyel. A menürendszer is két részből áll. A játék indítása után a főmenübe jutunk, itt elvégezhetjük a fontosabb beállításokat, választhatunk játékmódot, és belefoghatunk a játékba. A játékon belül szintén elérhető egy menürendszer, amely néhány elemet nem tartalmaz a főmenüből, azonban kibővül pár újabb funkcióval. A kezelői felület alapvetően az egérre, és a játék képernyőn található ikonokra épül.

 

2.1 A főmenü rendszerterve

 


1. ábra. Főmenü

2.1.1. Funkciók:

 

    2.1.1.1. Új játék:

·        Leírás: A felhasználó ezen funkció kiválasztásával kezdhet el egy játékot. Kiválasztása után újabb menüpontok közül válaszhat amik segítségével saját igényeit állíthatja be.

·        Előfeltétel: A menüpontnak aktívnak kell lennie.

·        Eredmény: Hatására megjelenik az új játék almenü a további opciók beállítására.

 

2.1.1.2. Egyjátékos üzemmód:

·       Leírás: Ilyenkor a szoftver egy felhasználó számára biztosít lehetőséget a játszásra. A lényege, hogy az új játék menü elindítása után és az egyjátékos üzemmód kiválasztása után a felhasználó ellenfele a számítógép lesz és ezután további almenü jelenik meg.

·       Előfeltétel: Az új játék kiválasztása a főmenüből.

·       Eredmény: Ezen menüpont kiválasztása után a felhasználó számára megjelenik az egyjátékos üzemmód almenü a részletes beállítási lehetőségekkel.

 

2.1.1.3. Küldetés:

·  Leírás: Az egyjátékos üzemmódba belépve az almenü egyik pontjában beállíthatjuk a Küldetést. A Küldetés kiválasztása azt jelenti, hogy a játékos önálló missziót fog véghez vinni. A küldetések sorozata egy Kampányt jelent és egy Kampányban pedig a küldetések logikusan egymásra épülnek.

·   Előfeltétel: A felhasználónak a megfelelő menüpontok egymás utáni kiválasztása( Új játék után az egyjátékos üzemmód kiválasztása).

·        Eredmény: Ezen menüpont kiválasztása után a felhasználó a gép ellen játszhat, de a játék előtt lehetősége válik arra, hogy beállítsa az almenüben a saját igényeit mind a küldetés mind pedig az ellenfél minőségi tulajdonságira nézve.

 

2.1.1.4. Kampány:

·       Leírás: Az egyjátékos üzemmód kiválasztása után a felhasználó különböző opciók közül válaszhat. Az egyik ilyen a Kampány, ami lehetővé teszi a játékos számára, hogy egy előre elkészített, önálló történettel rendelkező, animációkat és klippeket tartalmazó küldetéssorozatot teljesítsen. A Kampány elősegíti a játék történetének megismerését és a játék funkciók elsajátítását ezért elsősorban ezzel a kezdő felhasználók szamára kedvezünk.

·       Előfeltétel: A felhasználónak a megfelelő menüpontok egymás utáni kiválasztása( Új játék után az egyjátékos üzemmód kiválasztása).

·       Eredmény: A hatására a felhasználó kiválaszthatja a kívánt Kampány, majd a beállítások lekezelése után a játék elkezdődik.



2.1.1.5. Nehézségi szint

·       Leírás: A játékos hozzáértésének és tapasztalatának megfelelően a nehézségi szint opciói lehetőséget biztosítanak a megfelelő játék erősség kiválasztásához ezzel elősegítve a könnyed és élvezetes játékot. A nehézségi szint a gépi ellenfél tulajdonságait állítja be. A nehézségi szint beállítása mind a Küldetés mind pedig a Kampány üzemmódban fontos szerepet játszik ezért a beállítását mindig végezzük el a fokozatos játékélmény további növelése érdekében.

·       Előfeltétel: A felhasználónak a megfelelő menüpontok egymás utáni kiválasztása( Új játék után az  egyjátékos üzemmód kiválasztása).

·       Eredmény: Megváltozik a következő játék nehézségi szintje.

 

2.1.1.6. Többjátékos

·       Leírás: Az új játék kiválasztása után lehetőségünk van nem csak egyjátékos, hanem többjátékos üzemmód kiválasztására. Ekkor a játékos emberi ellenfelek elleni játékban fog részt venni, tehát most nem a számítógép ellen kell a feladatokat végrahajtani.

·       Előfeltétel: Az Új játék menüpont kiválasztása.

·       Eredmény: Hatására megjelenik a többjátékos almenü a beállítási lehetőségekkel.

 

2.1.1.7. LAN

·       Leírás: többjátékos üzemmód kiválasztása után a megjelenő almanüben kiválaszthatjuk a helyi hálózat segítségével történő, több emberi ellenfeleket tartalmazó játéktípust.

·       Előfeltétel:  A felhasználónak a megfelelő menüpontok egymás utáni kiválasztása( Új játék után a többjátékos üzemmód kiválasztása).

·       Eredmény: Hatására megjelenik a LAN almenü.

 

2.1.1.8. Szerver létrehozása:

·       Leírás: többjátékos üzemmód kiválasztása esetén a játékosnak lehetősége nyílik arra, hogy saját szervert létrehozzon. Itt állíthatja be a szerver nevét, itt engedélyezhet illetve tilthat bizonyos IP tartományokat és ezen kívül megmondhatja azt, hogy milyen típusú játékokat lehet játszani a szerveren.

·        Előfeltétel:  A felhasználónak a megfelelő menüpontok egymás utáni kiválasztása( Új játék után a többjátékos üzemmód kiválasztása után a LAN üzemmód).

·        Eredmény: Létrejön az így már testreszabott szerver, és vár a szerverhez kapcsolódó játékosokra.

·        Kivételek: hibák előfordulása esetén naplózás, és hibás beállítások esetén súgó megjelenítése.

 

2.1.1.9.  Csatlakozás a létező szerverhez:

·        Leírás: A többjátékos üzemmód lehetőségünk nyílik arra is, hogy nem mi hozzunk létre szervert, hanem egy már meglévő szerverhez csatlakozzunk. A csatlakozás a kliens szerverhez annak IP címével történik és csatlakozás után a játékosnak lehetősége nyílik a játékban való részvételhez.

·     Előfeltétel:   A felhasználónak a megfelelő menüpontok egymás utáni kiválasztása( Új játék után a többjátékos üzemmód kiválasztása után a LAN üzemmód).

·     Eredmény: Csatlakozás a kiválasztott szerverhez.

·     Kivételek:  hibák előfordulása esetén naplózás, és hibás beállítások esetén súgó megjelenítése.

 

2.1.1.10. Internet

·     Leírás: A többjátékos üzemmód belül megtehetjük azt, hogy az interneten keresztül választunk magunknak ellenfeleket. Ennek fizikai megvalósítása dedikált szerveren keresztül történik.

·     Előfeltétel:  A felhasználónak a megfelelő menüpontok egymás utáni kiválasztása( Új játék után a többjátékos üzemmód kiválasztása).

·     Eredmény:  Hatására megjelenik az Internet almenü.

 

2.1.1.11. Csatlakozás a Dedikált szerverhez

·        Leírás: Ha a felhasználó a többjátékos üzemmód választja akkor lehetősége van a dedikált szerverhez való kapcsolódáshoz. Ezt a szervert a játék üzemeltetői hozzák létre, és az IP cím segítségével a játékos kapcsolódhat a dedikált szerverhez és így a szerveren jelenlevő ellenfelekkel játszhat.

·        Előfeltétel: A játékosnak a következő menüpontokat kell egymás után választani: Új játék, Többjátékos üzemmód, Internet.

·        Eredmény: Csatlakozás a dedikált szerverhez.

·        Kivételek: Hiba esetén a megfelelő súgóablak megjelenítése.

 

2.1.1.12. Játék betöltése

·        Leírás: A felhasználónak lehetősége nyílik a korábban elkezdett és az eddig elmentett pályák, játékállásaik betöltésére.

·        Előfeltétel: játék főmenü aktív legyen.

·        Eredmény: hatására megjelenik a játék betöltése dialógus ablak, majd elindul a játék azon a ponton ahol elmentették.

·        Kivételek: hibás fájl, vagy betöltés során felmerülő hibák esetén hibaüzenet küldése.

2.1.1.13. Tutorial

·        Leírás: Azért hogy a felhasználó minél kevesebb energiát fordítson a játék megtanulására egy oktató pálya gondoskodik arról hogy a betanulás és az objektumok funkcióinak a berögzülése minél könnyebben menjen. Ezen a pályán narrátor segít a felhasználónak az elsajátításban.

·        Előfeltétel: a játék főmenü aktív legyen.

·        Eredmény: A Tutorial menüpont kiválasztása után elkezdődik az oktató pálya.

·        Kivételek: Az oktató pályának mindig el kell indulnia, ellenkező esetben azonnali üzenetet kell küldeni a játék készítői számára.

 

2.1.1.14. Beállítások

·        Leírás: A játék rengeteg opcióval rendelkezik ezért a Beállítások menü arra szolgál hogy ezen opciókon a felhasználó saját belátása szerint változtasson.

·        Előfeltétel: játék főmenü aktív legyen.

·        Eredmény: megkjelenik a Beállítások almenü.

 

2.1.1.15. Automatikus detektálás

·        Leírás: Kezdő felhasználók számára nagyon kedvező menüpont. Ez a menüpont felel azért hogy a játék beállításait a rendszer tulajdonságaihoz és képességéhez a legjobban beállítsa. Ez segít a kezdő játékos tapasztalatlanságán.

·        Előfeltétel: A játékos főmenüben a Beállítások menü kiválasztása szükséges.

·        Eredmény: A játék beállítások az adott rendszer számára ideális értéket vesznek fel.

·        Kivételek: amennyiben nem sikerül lekérdezni a rendszer információkat akkor hibaüzenetet küldünk és naplózzuk az eseményt.

 

2.1.1.16. Billentyű parancsok

·        Leírás: Ezek a funkciók csak a tapasztalt és gyakorlottabb játékosok számára okoz örömöt. A játék képes arra hogy bizonyos tevékenységeket rögzített billentyű kombinációkkal adjuk meg.

·        Előfeltétel: A játékosnak a főmenüben a Beállítások menüpontot válassza.

·        Eredmény: A játékos által megadott új billentyű kombinációk érvénybe lépnek.

·        Kivételek: amennyiben nem sikerült írni konfigurációs fájlt akkor hibaüzenet küldése a felhasználónak.

2.1.1.17. Hang

·        Leírás: Ebben a menüpontban lehet a játék hangbeállításait elvégezni.

·        Előfeltétel: A játékosnak a főmenüben a Beállítások menüt kell választania.

·        Eredmény: Megjelenik a hang almenüje.

 

2.1.1.18. Hangerő

·        Leírás: A játékosnak lehetősége nyílik a hangerő beállítására. Külön betudja állítani az aláfestő zene és a hang effektek hangereje.

·        Előfeltétel: A játékosnak egymás után ezeket a menüpontokat kell választani: Beállítások, Hang

·        Eredmény: Az új beállítások érvénybe lépnek.

 

2.1.1.19. Hangkártya

·        Leírás: Amennyiben az automatikus detektálás nem járna sikerrel és a rendszerben jelenlévő hangkártyát nem ismerné fel a játék akkor a felhasználónak megvan a lehetősége hogy egy listából válassza ki a megfelelő hangkártya típust.

·        Előfeltétel: A felsorolt menüpontok egymás utáni kiválasztása: Beállítások, Hang.

·        Eredmény: az új beállítások érvénybe lépnek.

·        Kivételek: hiba esetén a felhasználónak hibaüzenet küldése, hogy az adott illesztő program nem felel meg a hangkártya telepítésére.

 

2.1.1.20. Hangeffektek

·        Leírás: a rendszer biztosítja a felhasználó számára hogy egyenként is tudja módosítani az egyes hangeffekteket.

·        Előfeltétel: A játékos a következő menüpontokat kell hogy válassza: Beállítások, Hang.

·        Eredmény: az új beállítások érvénybe lépnek.

·        Kivételek: hiba esetén naplózás valamint hibaüzenet küldése a felhasználónak.

 

2.1.1.21. Grafika

·        Leírás: a játék grafikai beállításait lehet itt elvégezni. Ez a beállítási lehetőség az adott rendszer grafikai tulajdonságaitól függ.

·        Előfeltétel: a játékosnak a főmenüben a Beállítások menüt kell, hogy válassza.

·        Eredmény: megjelenik a Grafika almenü, ahol a játék grafikai beállításait módosíthatja a felhasználó a rendszer által biztosított keretek között.

 

2.1.1.22. Felbontás

·        Leírás: A játékosnak lehetősége nyílik arra, hogy a játék felbontását beállítsa a saját belátása szerint. Ez a beállítást csak a rendszer határain belül lehet módosítani.

·        Előfeltétel: A felbontás menüpontot a következő lépések után érhetjük el: Beállítások, Grafika.

·        Eredmény: Érvénybe lépnek a felhasználó által tett beállítások.

·        Kivételek: a hiba felmerülése után naplózás, valamint hibaüzenet küldése a felhasználónak.

 

2.1.1.23. Videókártya

·        Leírás: Ebben a menüpontban a felhasználó rendszerében található videókártya adatait módosíthatja. Ez lehetőséget ad arra, hogy a rendszerből a legjobb grafikai teljesítményt hozza ki a felhasználó, annak érdekében, hogy minél élvezetesebb legyen a játszás.

·        Előfeltétel: Ezt a menüpontot a Beállítások és azután pedig a Grafika menüpont kiválasztása után érhetik el.

·        Eredmény: a felhasználó által tett változtatások érvénybe lépnak.

·        Kivételek: az esetleges hiba esetén naplózás és hibaüzenet küldése a felhasználónak.

 

2.1.1.24. Színmélység

·        Leírás: A játékosnak megvan a lehetősége arra, hogy a számára legélvezetesebb színmélységet beállítsa ebben a menüpontban.

·        Előfeltétel: Ezt a módosítást a Beállítások menü Grafika almenüjében található Színmélység menüpontban tehetjük meg.

·        Eredmény: a játékos által tett beállítások érvénybe lépnek.

·        Kivételek: a hiba esetén naplózás történik, és emellett hibaüzenet küldése a felhasználónak.

 

2.1.1.25. Részletesség

·        Leírás: A játék részletességét tudja beállítani a játékos ebben a menüpontban. A felhasználó dönthet arról, hogy ő milyen részletesen akarja látni az előtte megjelenő játékfelületet. Ezt a beállítási lehetőséget főleg akkor használják mikor a rendszer lehetőségei csak éppen fedezik a játék alapfeltételeit és így ezzel a művelettel kevesebb „erőlködést” kell a rendszernek végeznie a játszás közben.

·        Előfeltétel: Ezen beállítási lehetőséget a Beállítások menü Grafika almenüjében található Részletesség menüpontjában tehetjük meg.

·        Eredmény: A felhasználó által tett beállítások érvénybe lépnek.

·        Kivételek: hiba felmerülése esetén naplózás, és ezzel egy időben hibaüzenet küldése a felhasználó számára.

 

2.1.1.26. Hálózati beállítások

·        Leírás: A játékos ha több játékos ellen szeretne játszani akkor ebben a menüpontban megteheti az ehhez szükséges hálózati beállítások elvégzését.

·        Előfeltétel: A játékosnak a főmenüben lévő Beállítások menüpontot kell választania.

·        Eredmény: a felhasználó előtt megjelenik a Hálózati beállítások almenü.

 

2.1.1.27. Kapcsolat típusa

·        Leírás: a hálózati beállításoknál lehetősége nyílik a felhasználónak arra hogy beállítsa a kapcsolat típusát. Ez a Hálózati komponens működése szempontjából fontos tényző.

·        Előfeltétel: a felhasználónak ezeket a menüpontokat kell egymás után választani: Beállítások, Hálózati beállítások.

·        Eredmény: a felhasználó által tett módosítások érvénybe lépnek.

 

2.1.1.28. Nyelv

·          Leírás: a játékosnak lehetősége van a saját maga számára kedvelt nyelvet beállítani a játék „nyelvének” így ezzel lehetővé válik, hogy más nemzetiségű emberek is játszhassanak egyszerre.

·          Előfeltétel: a játékosnak a főmenüben lévő Beállítások menüpontot kell választania.

·          Eredmény: a felhasználó által beállított nyelv érvénybe lép.

 

2.1.1.29. Automatikus frissítés

·        Leírás: A program automatikus frissítéssel lesz ellátva, ami lehetővé teszi hogy a program mindig naprakész legyen, tehát mindig tartalmazni fogja a teljes programfrissítéseket. Ehhez természetesen szükséges egy Internet kapcsolat amin keresztül hajtódik végre az automatikus frissítés művelete.

·        Előfeltétel: a felhasználónak a főmenüben lévő Beállítások almenüt kell választania.

·        Eredmény: érvénybe lépnek az új beállítások, a program komponensek.

 

2.1.1.30. Credits

·        Leírás: a játék készítőit megjelenítő menüpont, amely a főmenüben megtalálható.

·        Előfeltétel: a játék főmenüje legyen aktív.

·        Eredmény: visszatérés a főmenübe.

 

2.1.1.31. Kilépés

·        Leírás: az alkalmazás befejezésére szolgáló menüpont.

·        Előfeltétel: a játék főmenüje legyen aktív.

·        Eredmény: az alkalmazás terminálódik.

·        Kivételek: ha nem sikerül szabályosan leállítani az alkalmazást, akkor naplózás a hibáról, valamint hibaüzenet a felhasználónak.

 

2.2. Játékon belül elérhető funkciók rendszerterve

 

2.2.1. A játékon belüli menü rendszerterve

 

2.2.1.1. Játék mentése

·        Leírás: a játékos a pályáját tetszése szerint lementheti. Ez a menüpont a játék közben elérhető ezzel elkerülheti a játékos, hogy az eddig teljesített pályák elvesszenek. A mentés lehetővé teszi a későbbi pálya folytatását ugyanazokkal a pályatulajdonságokkal.

·        Előfeltétel: a játékos számára a játékon belüli menünek aktívnak kell lennie. Azon belül megtalálhatja a játék mentése címkéjű menüpontot. Itt megteheti a felhasználó, hogy a program által előre felajánlott mentési nevet megváltoztassa.

·        Eredmény: a játék elmentése megvalósul a menüpont kiválasztásával.

·        Kivételek: ha a játék mentése nem valósul meg akkor hibaüzenetet küld a program a felhasználónak és naplózás.

 

2.2.1.2. Játék betöltése

·        Leírás: a játékos ezen menüpont segítségével töltheti be a számára kiválasztott pályát.

·        Előfeltétel: a játékon belüli menünek aktívnak kell lennie.

·        Eredmény: a felhasználó által kiválasztott pálya betöltődik és elindul a pálya.

·        Kivételek: hiba esetén naplózás és hibaüzenet küldése a felhasználó számára.

 

2.2.1.3. Játék újrakezdése

 

·        Leírás: a játékosnak megvan a lehetősége, hogy a pálya nem megfelelő teljesítése esetén ismét megpróbálja a pályát teljesíteni. Erre a Játék újrakezdése menüpont szolgál.

·        Előfeltétel: a játékon belüli menünek aktívnak kell lennie.

·        Eredmény: az adott pálya ismét betöltődik.

·        Kivételek: hiba esetén naplózás, és hibaüzenet küldése a felhasználónak.

 

2.2.1.4. Beállítások

 

·        Leírás: a játékosnak megvan a lehetősége arra, hogy a pálya abbahagyása nélkül a játékon belüli menü segítségével változtasson a program beállításain, ezzel megspórolva a pálya újra betöltését.

·        Előfeltétel: a játékon belüli menünek aktívnak kell lennie.

·        Eredmény: a beállításokkal végzett módosítások végrehajtódnak.

·        Kivételek: hiba esetén naplózás és hibaüzenet küldése a felhasználó számára.

 

2.2.1.5. Kilépés a főmenübe

 

·        Leírás: a játékon belüli menü lehetőséget biztosít a játékosnak arra, hogy a főmenübe kiléphessen. Erre a Kilépés a főmenübe menüpont szolgál.

·        Előfeltétel: a játékon belüli menüpontnak aktívnak kell lennie.

·        Eredmény: a program kilép a főmenübe és ezzel befejeződik a pálya.

·        Kivételek: hiba esetén naplózás és hibaüzenet küldése a felhasználónak.

 

2.3. A játék kezelése


  Ha a főmenüből új játékot indítottunk, a kiválasztott térkép, vagy a soron következő küldetés térképe, egy terepasztalhoz hasonlóan jelenik meg a monitoron. Természetesen nem láthatjuk az egész területet, hanem csak a játékmenetben előre meghatározott kezdőpont környezetét, akkora sugárban amekkorával az akkor létező egységeink rendelkeznek. Indításkor általában néhány dolgozóegységgel és kevés fűszerrel rendelkezünk, amelyekkel megépíthetjük a bázisunk első épületét, a központot. Ezután a termelést beindítva újabb épületeket és egységeket építhetünk, felszerelhetjük és fejleszthetjük hadseregünket, eljutva a végső győzelemhez.

 

 Felhasználói Interfész

  A felhasználó kétirányú kommunikációt folytat a programmal. A játék képes kommunikálni a felhasználóval a képernyőn és a hangszórókon keresztül. A felhasználó a játék menetét a képernyőn követi, de az egységek megsemmisülését hangeffektek is kisérik. A program a képernyőre üzeneteket ír ki, és ezen keresztül értesül a játékos a rá váró feladatokról, a lehetőségiről.
  A parancsok kiadására, a programban egér és billentyűzet szolgál. Az egér segítségével mozgathatjuk az egérmutatót, mellyel az alábbi műveletek végezhetők:

- Kiválasztás: Egy adott egységre a bal egérgombbal kattintva kiválaszthatjuk azt. Ekkor az aktívvá válik, funkciói elérhetőek lesznek és végrehajthatjuk vele a azokat a cselekdeteket melyekre képes az egység. A harci egységeinknek külön parancsot nem adva az Őrködés funkciójuk aktív.

- Kijelölés: A baloldali egérgombot nyomva tartva a mutatóval egy téglalapot jelölhetünk ki, melyen belül lévő mozgó egységeink egy csoportot képeznek. Ehhez a csoporthoz gyorsbillentyűt is rendelhetünk, ekkor egy gombnyomásra újra létrejön a kijelölés. FONTOS!: Csak mozgó egységeket  jelölhetünk ki csoportnak

- Scrollozás: mozgás a képernyőn. Az egérmutatót a képernyő valamelyik széléhez húzva, a térképen a látható rész abba az irányba mozdul. Ha a képernyő szélét elértük a mozgás megáll.

                        - A parancsok kiadása a jobboldali gombokra  történő bal egér gomb kattintással lehetséges.

- A jobb egérgombbal az aktuális egység leggyakrabban használt parancsa érhető el. Ez támadó egységeknél mozgás, illetve ha ellenséges egységre kattintunk, akkor támadás. A begyűjtőnél ugyanezt a rendszert követve mozgás/begyűjtés, illetve a dolgozó esetében mozgás/javítás.

              Sugó: A jobboldali gombkonzolon található kérdőjelre a balgombbal kattintva, aktivizálódik a gyors sugó. Ekkor az egérkurzor egy kérdőjellé változik, és ha így kattintunk egy egységre akkor az pár mondatban összefoglalja annak tulajdonságait.

 


2. ábra. Játékon belüli felhasználói felület

2.4. A játék képernyőn található objektumok

I. Információs panel

A képernyő alján található. Itt követhetjük nyomon a statisztikákat a játék aktuális állapotáról, melyek a következők:

UNITS: A legyártott mozgó egységek száma.
            SPICE: A rendelkezésünkre álló fűszer. A nyersanyag a játékban, az épületek illetve mozgó egységek létrehozásakor egy egységenként előre definiált mennyiség fogy belőle. Bár a fűszerrel a játék története szerint kereskednek az Atreidesek, itt nem kell foglalkozni a gazdasággal, az átváltás nyersanyagra a háttérben megtörténik.  
    Ezenkivül itt látható még az éppen kijelölt épület vagy egység neve, csoportosan kijelölt mozgó egységek esetén a csoporthoz rendelt sorszám (pl: group 1), valamint  a csoportban többségben lévő egység neve, egyenlő méretű egységcsoportok (pl: 5-5 gyalogos és tank) esetén az erősebb egység neve (előző példánál maradva a Tank).

 

II. Jobboldali panelen található gombok

   A jobb oldalon található gombokkal az aktuálisan kiválasztott egységek funkciói érhetők el. Ezeket alapesetben az egér bal gombjával rákattintva aktivizálhatjuk. Részletesen a következők.

 

MENU: A játékon belüli menürendszer jön elő. A játékmenet eközben megáll, ha visszalépünk a játékba akkor azt onnan folytathatjuk, ahol a MENU gombra való kattintás pillanatában tartottunk. Ez a legfelső gomb, és bármilyen egységet válasszunk is ki ez mindig megtalálható.

 

             Abban az esetben, ha bármilyen mozgó egységünk aktív, akkor a következő gombok mindenképp megjelennek a jobboldalon:

           

MOVE: Mozgás. Az egér bal gombjával a térképen kiválaszthatjuk azt a pozíciót, ahova az egységet küldjük. Ha támadóegység az aktív egység, és a célterületen ellenséges egységet talál azt automatikusan támadni kezdi. Ez a parancs kiadható egyszerűbben is, ha a kiválasztott célterületre az egér jobb gombjával kattintunk, ugyanez az eredmény.
            Kivétel: Ha a mozgásnál megadott célállomás nem elérhető (hegy, szikla, egyéb tereptárgy miatt) akkor a játékmotor a mozgáshoz kiszámolt vektoron elindítja az egységet, és addig a pontig mozgatja ami legközelebb van, a megadott, de nem elérhető célhoz. Ha a kiszámolt vektor keresztez olyan tereptárgyat amelyen az egység nem képes áthatolni (akadály), de megkerülheti, akkor a játékmotor kiszámolja a lehető legrövidebb kerülő utat. Ha nincs kerülőút, akkor addig a pontig mozgatja az egységet ameddig az eléri az akadályt, majd ott megáll. 

STOP: Az egység azonnal megáll.

Az egyéb innen elérhető funkciók speciálisak, egységtípusonként változnak ezért azokat az egységek felsorolásakor, azok funkciói közt részletezzük, a két előző cselekvést pedig az összes mozgó egységre érvényesnek feltételezzük, és azt külön a felsoroláskor nem részletezzük.

 

Abban az esetben, ha az aktív egység statikus, azaz épület, akkor a jobboldalon található alapfunkciók módosulnak. Egy parancs van amely az összes épületre érvényes:

DESTRUCTION: Az épület megsemmisítése. Ha egy épületet megsemmisítünk az értékét fűszerben visszakapjuk. Az érték az alábbi módon határozható meg:
Az egység összes épsége (ÖÉ)

Az egység aktuális épsége(AÉ)
Eredeti ára: (EÁ)

                       A leromboláskor kapott fűszer mennyisége=(AÉ/ÖÉ)*(EÁ)
  

A speciálisan egyes épületnek kiadható parancsokat az épületek felsorolásánál részletezzük.


III.  Egység tulajdonságai

A képernyő jobb szélén található négyszög. Ebben az elkerített részben az aktuálisan kijelölt egység tulajdonságait, páncélzat, sebzés, életerő, csoporthoz tartozás, olvashatjuk le.

IV. Csevegés ablak

Csak hálózati játék esetén használható. Ekkor egy előre definiált billentyű, esetleg billentyűkombináció lenyomására egy kis ablak jelenik meg, amiből kiválaszthatjuk, hogy kinek-kiknek, szeretnénk üzenni.
Lehetőségek: Üzenet a csapatnak. Megszorítás: csak csapatjáték esetén
                      Üzenet minden játékosnak

                      Üzenet egy kiválasztott játékosnak.
Ezekhez a lehetőségekhez billentyű kombináció is rendelhető, ekkor az előző lépés kimarad, és  rögtön az üzenet beírására való ablak jelenik meg.
Üzenet  ablak: Maximum 32 karakter beírására alkalmas, az Enter billentyű lenyomása esetén a korábbiakban meghatározott céljátékos képernyőjének tetején megjelenik a nevünk, és utána a ”üzenete:” majd a beírt üzenet. Az üzenet 5 másodpercig olvasható, ha ezalatt az idő alatt újabb üzenet fut be, akkor az a korábbi üzenet fölé kerül és a korábbi egy sorral lejjebb csúszik. Ha újabb üzenet érkezik és a legelső számára kijelölt 5 mp még nem telt le, akkor újabb sort tolódnak lejjebb a korábbi üzenetek. Ha azonban negyedik üzenet is érkezik akkor a legkorábbi eltünik, akár hány másodpercet is volt jelen a képernyőn. Ennek oka, hogy a képernyőn a terepasztal azaz a térkép számára mindig elegendő helyet tartsunk fenn.

 

V. Mini-map

Egy kis térkép, a játéktér kicsinyített modellje. Bejelölődnek rajta a saját és az ellenfél felderített épületei, a játékos szinével. Megkönnyíti a nagy távolságokra történő navigálást, ha a mini-mapen kattintunk a kívánt pontra, nem pedig a fő térképen scrollozunk odáig.

 

2.5. Egységek a programban

 

A Dune:Children of Wustenplanet játékprogramban a játékos alapvetően két nagy csoportba tartozó objektumot irányíthat. Ezek a dinamikus azaz mozgó egységek, és statikus vagy álló egységek, tehát épületek. Ezenkivül vannak természetes objektumok, tereptárgyak melyek a környezet részei, a játékos ezeket, csakúgy mint az ellenséges egységeket, nem irányíthatja. Minden egység rendelkezik bizonyos épség ponttal, és páncélzattal. A páncélzat pontjai támadás esetén kivonódnak az ellenfél támadóértékéből, így kapjuk meg a sebzést. Ez az érték minden támadás esetén kivonódik az épségpontokból.



 I. Semleges egységek

A játék folyamán a legfontosabb semleges egység a homokféreg, avagy sai-hulud. Ez a lény , az Arrakis őslakója, két féle hatással lehet a játék menetére.

·          Az egyik, hogy ő termeli a fűszert. Ez véletlenszerűen történik. A pálya generálásakor már vannak adott, fűszerrel előre beborított területek, melyek mérete függ az adott térkép méretétől, azzal arányban nő. Ezenkivül a homokférgek amerre elhaladnak kisebb területeket szintén fűszerrel borítanak be. A homokférgek száma szintén függ a térkép méretétől

·          A másik hatása, hogy megrongálhatja, elpusztíthatja egységeinket. Ha gyalogos egységgel találkozik, kizárólag elpusztíthatja, a begyűjtő kombájnokat nem képes kapásból elpusztítani. Azonban a játékos egységei is sebezhetik, elpusztíthatják őt. Életereje a nagyobb épületekével megegyező.

Cselekvései: Mozog, Fűszert termel, Támad
Állapota: Épség (1000 pont), Támadóérték (150), Támadási sebesség (1/3 sec)

 

A homokférgen kivűli objektumok pl.: hegyek, sziklák, ritkán bokrok, egyetlen hatása, hogy azokra nem lehet építkezni, a mozgó egységeknek mozgás közben ki kell az útjukba eső ilyen objektumokat kerülni. A kikerülést a játékmotor irányítja, nem a játékos dolga.

 

II. Mozgó egységek

Az alább tárgyalt funkciókat a jobboldalon található panelen lévő gombokkal érhetjük el. A korábban tárgyalt MOVE és STOP funkciók mindegyik mozgó egységre elérhetőek.

 

1. Dolgozó egység (Worker): Játékunk egyik alappillére, páncél nélküli ember. Két alapvető funkciója vagy ha úgy tetszik feladata van a programban.

 

Kiadható Parancsok

1.1 Építés/BUILD/: Az épületek létrehozása. Az építésre a BUILD parancs szolgál a jobboldali menüben, erre kattintva először egy új ablak jelenik meg, melyből kiválaszthatjuk a megépítendő épületet.  Ezeken keresztül készíthetjük el egységeinket, ezért a   dolgozókra különösen ügyelnünk kell.
      Eredmény: A kiválasztott épület létrejön, a kiválasztott épület nyersanyagértéke kivonódik az összes fűszermennyiségünkből.

1.2 Javítás/REPAIR/: Az épületeinket és a mechanikus harci egységeinket ért sérülések kijavítása.  
       Eredmény :Ha az egységet/épületet közben nem támadják, rövid időn belül helyreállítja annak páncélzatát és eredeti életerejét. A javítás szintén fűszert von el, a javított egység eredeti érték 9.9%-át rendeljük a 99 százalékos sérüléshez. A tört éréket felfelé kerekítjük így értelemszerűen ha a sérülés kisebb, mint ami egy fűszeregység felhasználását eredményezné, akkor is 1-et von le a program.

Cselekvései: Mozog, Megáll, Épít, Javít

      Állapota: Épség (50 pont) Páncélzat (1pont)

 

2. Gyalogos (Soldier): A dolgozó egységhez hasonló felépítésű, könnyű páncélzattal, és     géppisztollyal felszerelt ember. A fegyverzete és páncélzata később fejlesztehető. Alapvető funkciói:

 

Kiadható Parancsok

2.1 Támadás/ATTACK/: Egy ellenséges egységre kattintva (a jobb egérgombbal is működik) a gyalogos elkezdi lőni azt.
2.2 Védekezés/BLOCK/: Ezt kiválasztva, az egység a helyén marad, onnan csak újabb parancsra mozdul el, a lőtávolba érő ellenséges egységeket azonnal lőni kezdi. Ezt újabb parancs, az ellenséges egység vagy saját halála esetén hagyja abba.

2.3 Őrjárat /GUARDING/: A védekezés egy változata, ezt a funkciót választva a térkép egy pontjára kattinthatunk, az egység az aktuális tartózkodási helyéről a kiválasztott pontig fog örjáratozni, ha ellenséges egység kerül a hatókörébe, azt megsemmisíti, (vagy ő semmisül meg) ezután folytatja az őrjáratozást. Fontos, hogy a két pont közt a legrövidebb járható utat a program magától meg keresi.

Cselekvései: Mozog, Megáll, Támad, Örködik, Védekezik

      Állapota: Épség (70 pont), Páncélzat (1 pont), Támadóérték (15 pont), Támadási sebesség (1/sec)

 

3.  Páncélozott harci jármű (Tank): Harci egység, erősebb a gyalogosnál mind páncélzatát mind támadóerejét tekintve. Funkcióiban megegyezik a gyalogossal.

 

Kiadható Parancsok

3.1 Támadás/ATTACK/: Egy ellenséges egységre kattintva (a jobb egérgombbal is működik) a Tank elkezdi lőni azt.
3.2 Védekezés/BLOCK/: A védekezés egy változata, ezt kiválasztva, az egység a helyén marad, onnan csak újabb parancsra mozdul el, a lőtávolba érő ellenséges egységeket azonnal lőni kezdi. Ezt újabb parancs, az ellenséges egység vagy saját halála esetén hagyja abba.

3.3 Őrjárat /GUARDING/: Ezt a funkciót választva a térkép egy pontjára kattinthatunk, az egység az aktuális tartózkodási helyéről a kiválasztott pontig fog örjáratozni, ha ellenséges egység kerül a hatókörébe, azt megsemmisíti, (vagy ő semmisül meg) ezután folytatja az őrjáratozást. Fontos, hogy a két pont közt a legrövidebb járható utat a program magától meg keresi.

Cselekvései: Mozog, Megáll, Támad, Örködik, Védekezik

      Állapota: Épség (150 pont), Páncélzat (2 pont), Támadóérték (50 pont), Támadási sebesség (1/2sec)

 

4. Begyűjtő (Harvester): Elsődlegesen a fűszer begyűjtésére szolgáló mozgó egység, melyet önvédelemre felszerelnek a gyalogosok tűzerejének megfelelő fegyverrel. A jobboldali panelen kiválasztahtó funkciói:

 

Kiadható Parancsok

4.1 Begyűjtés (HARVEST):  A fűszer begyűjtése. A támadáshoz hasonlóan jobb egér-kattintással szintén elérhető. Ha a begyűjtő tartálya megtelt, visszatér a bázisra, és kiüríti azt. A kiürítés érkezési sorrendben történik. Kivétel: egyszerre érkezés, ekkor véletlenszerű döntés.

4.2 Támadás: A harci egységekével megegyező művelet. Ha megtámadják a begyűjtő magátol támadni kezdi az ellenségét.

4.3 Ürítés: A legközelebbi Bázis épülethez megy, és kiüríti a tartályát, automatikusan működik megtelt tartály esetén.

Cselekvései: Mozog, Megáll, Támad, Begyűjt, Ürít

Állapota: Épség (1000 pont), Páncélzat (1 pont), Támadóérték (15 pont), Támadási sebesség (1/sec)

 

III. Statikus egységek (Épületek)

 

1. Bázis: A legfontosabb épület a játékban. Megléte gyakorlatilag alapfeltétel, a győzelem csak különleges esetekben oldható meg nélküle. A Bázis által ellátott funkciók szintén a jobboldalról választhatók miután kijelöltük az épületet.

 

Kiadható Parancsok

1.1 WORKER: Dolgozó egység gyártása. Néhány máodperc alatt készít egy dolgozó egységet.

Eredmény: 1db Dolgozó, és a dolgozóhoz rendelt fűszermennyiség levonódik az összmennyiségből.

1.2 HARVESTER: Begyűjtő egység gyártása. Ennek legyártása hosszabb időt vesz igénybe, a fűszerigénye is jóval nagyobb mint egy egyszerű gyalogos egységé, vagy tanké.
Ezenkívül van még egy passzív funkciója is a Bázisnak. A megtelt Harvesterek itt üríthetik ki rakományukat. Miközben a kiürítés zajlik, nem adhatunk ki parancsot Worker vagy Harvester építésére, azonban a korábban kiadott parancsok végrehajtása – tehát a gyártás – folyik tovább.

Cselekvések: Megsemmisül, Workert gyárt, Harvestert gyárt.

Állapota: Épség (1500 pont), Páncélzat (5 pont),


2. Laktanya (Barrack): Itt készíthetjük a gyalogos harci egységeket (kezdetben csak Soldier-t, de később az ilyen típusú egységek száma gyarapodni fog). Jelenleg egyetlen elérhető funkciója tehát:

 

Kiadható Parancsok

2.1 SOLDIER: Gyalogos gyártása. Nyersanyag igénye a dolgozóéval megegyező, gyorsan elkészül.

            Cselekvések: Megsemmisül, Soldiert gyárt

            Állapota: Épség (900 pont), Páncélzat (1 pont)

 

3. Gépgyár (factory): A mechanikus harci egységeket gyártására adhatunk ki itt parancsot. (kezdetben csak Tank-ot, de tervezzük könnyű páncélos egységek illetve légi egységek gyártását is a későbbi fejlesztések folyományaként)  

 

Kiadható Parancsok

3.1 Tank: Tank gyártása. A fűszer igénye magasabb, kb öt gyalogossal egyenértékű. Legyártása is lassabb.

      Cselekvések: Megsemmisül, Tankot gyárt

            Állapota: Épség (1000 pont), Páncélzat (1 pont)

 

4. Fejlesztő központ (Upgrade Center): A játék közben fejlesztéseket hajthatunk végre ezen az épületen keresztül. Ez azt jelenti, hogy ha a fejlesztés végrehajtódott, akkor azután a az egységeink már a fejlett változatban fognak létrejönni. Fejlszthetünk páncélzatot, illetve fegyvert. Ekkor egy egységgel nő a sebzése, illetve ha találat éri egységünket, eggyel csökken az őt ért találat rá gyakorolt negatív hatása.

 

Kiadható Parancsok

4.1 UPGRADE SHIELDS: Páncélzat fejlesztése. Minden lefuttatás alkalmával eggyel nő egységeink páncélzata. Egy fejlesztési szint fűszerigénye kb egy begyűjtő megépítésének fűszerigényével ér fel.

4.2 UPGRADE WEAPONS: Fegyverek fejlesztése. Az egységek sebzése 1 ponttal nő. A fűszerigény a páncélzat fejlesztésével megegyező.

 

A fejlesztés korlátlan alkalommal hajtható végre mind a két esetben. A fűszerigény azonban akkor, hogy megfontolandó érdemes e állandóan fejleszteni.
            Cselekvések: Megsemmisül, Pajzsot fejleszt, Fegyvert fejleszt

            Állapota: Épség (700 pont), Páncélzat (1 pont)

 

5. Bunker: A gyalogos egységek ide menekülhetnek, ha ide be jutnak a lövések nem érik őket, amíg a bunker létezik. Ha megsemmisítik, akkor az egységek újra közvetlenül támadhatók lesznek. Ha a mozgás célpontjául egy bunkert jelölünk ki a gyalogosaink automatikusan bemennek abba, ha van hely benne, megállnak mellette, ha nincs. Egyszerre maximum öt gyalogos tartózkodhat bent. Ők továbbra is teljes tűzerejükkel támadhatják a kint tartózkodó ellenfelet.

Kiadható Parancsok

5.1 RELASE: Kiereszti a bent tartózkodókat.

      Cselekvések: Megsemmisül, Kiereszt

 

6. Betontalapzat (Platform): Minden épületet csak erre építhetünk fel. Ez védi épületünket a homokférgektől, ha mobil egységeink ezen tartózkodnak akkor a féreg nem bánthatja őket.
Semmilyen cselekvésre nem képes.

            Állapota: Épség (500 pont), Páncélzat (1pont)
 

 

3. Adatmodellek

A rendszer nem használ adatbáziskezelő rendszert, mivel minden szükséges perzisztens információ fájlokon keresztül tárolódik. A külünböző fájlok típusai: