Csoport neve: nullpointer
Feladat sorszáma: 6.
Feladat címe: Stratégiai játék
Analízis modell
Gyakorlatvezető::
RÉPÁSI TIBOR
Csoport tagok:
Bikki Balázs |
FOJNI7 |
bikki@iit.uni-miskolc.hu |
Bereczki Dániel |
JJ92CZ |
neuroster@gmail.com |
Horváth Lajos |
A2MT7H |
l.horvath4@chello.hu |
Kocsis Sándor |
C144EG |
rebel00@vipmail.hu |
Majoros Zoltán |
J1AHR8 |
majoros1@iit.uni-miskolc.hu |
2006-04-15
Történet
Dátum |
Verzió |
Leírás |
Szerző |
---|---|---|---|
2006.04.15. |
0.5 |
Előzetes verzió |
Bikki Balázs Majoros Zoltán Bereczki Dániel |
|
|
|
|
|
|
|
|
Tartalomjegyzék
A termék valós idejű stratégiai játék a következő fikcióból kiindulva: Létezik egy bolygó, amely felszínét 85%-ban homoksivatag borítja. A maradék felület zömében sziklás és szinte elhanyagolható mértékben itt-ott növényzetet is tartalmaz. Valaha a felszínét dús esőerdő borította. Mára esőzés nincs, a bolygó vízháztartása a felszín alatt zajlik. Ott barlangokban tárolódik a víz. A bolygó őslakossága elhatározza, hogy újból virágzóvá teszi a Dűnét. De számolniuk kell a homokviharokkal és egy a sivatagi környezethez alkalmazkodott élőlény fajjal, a Homokférgekkel…
A fantáziabirodalom középpontjában az Arrakis bolygó és a csak itt található Fűszer áll. A bolygón azonban gyakorlatilag a Fűszer az egyetlen hasznosítható anyag, mivel a planéta felszínét hatalmas sivatagok borítják, ahol nagyon nehéz életben maradni. Maga a Fűszer az univerzum legcsodálatosabb anyaga: ami meghosszabbítja a tulajdonosa életét és nagyobb erők parancsolójává teszi őt, kitágítja az öntudatot, s ez teszi lehetővé, hogy a navigátorok (akiket még soha senki sem látott) meghajlítva a teret, csillagközi utazásokra vigyék a hatalmas űrhajókat. A bolygó fő terméke és kiviteli cikke (bolygóközi kereskedelem) a fűszer, másnéven melanzs, amit a homokférgek termelnek (fremen elnevezéssel mester, vagy Shai-hulud), a homokférgek számára viszont a víz és a nedves környezet mérgező.A történelem során számtalan csatát vívtak már ezért a varázslatos anyagért, és a bolygóért, de a Dűne évszázadokon át a Harkonnen Ház fennhatósága alatt maradt.
Frank Herbert eredeti regényétől eltérően a játék világa zárt világot alkot, az események menetébe nem szólnak bele a Padisah császár és a két ház, az Atreides és a Harkonnen közti háborúságok. A játékban nem szerepel továbbá a fremen nép összetett vallás- és hiedelemrendszere, a Bene Gesserit és egyéb iskolák hatása sincsen jelen.
A felhasználó feladata hogy megfelelően kialakított stratégiája
szerint vezetve az őslakos fremeneket, lakhatóbb hellyé tegye az
Arrakis bolygót anélkül hogy felborítaná a bolygó megváltozott
ökoszisztémáját, ami a homokférgek teljes populációjának
kipusztulásához és ezen keresztül a Fűszerhiányhoz vezet.
A játék
során a déli palmáriumokból kiindulva fokozatosan növényeket kell
telepíteni a Dűnén uralkodó hivatalos hatalom tudta nélkül, miközben
folyamatosan termelni kell a fűszert, új fremen településeket,
úgynevezett sziecseket alapítani, felszerelni. Mindezek közben a
Harkonnenek folyamatos őrjárataival is számolni kell, és vissza kell
verni a büntető vagy "hódító" támadásaikat is a
Harkonnen-katonáknak és a velük szövetséges császári
elitalakulatoknak, a Sardaukaroknak.
A tradicionális stratégiai alapokra épülő játék a jól ismert Dűne sci-fi világát dolgozza fel, néhol attól eltérve. A hatalmat úgy lehet megszerezni, hogy a lehető legnagyobb területeket kell meghódítani a Dűnén, a végső cél pedig a Fűszer feletti teljes kontroll megszerzése, hiszen "aki a Fűszert uralja, uralja az Univerzumot is!"
CInput
Eseménykezelő osztály ha parancsot kap lekérdezi a kapott eseményeket az SDL_Event rendszeren keresztül.
CRenderable
Bázisosztály, melyből az összes képernyőn megjeleníthető, renderelhető osztály származik. Tárolja az osztály helyét a képernyőn, és felelős a megjelenítésért.
CGraphics
A játék vizuális megjelenítéséért felelős osztály. Tartalmazza a legfontosabb grafikai adatszerkezeteket, algoritmusokat. Inicializálja a grafikai elemeket.
CFilePanel
Megjelenít egy fájl panelt, melyben directory struktúra jelenik meg. Felelős a viselkedéséért. Kiválasztható egy fájl.
CMainMenu
A játék inicializációja után megjelenítendő menü, amelyből elindíthatjuk a játékot, megváltoztathatjuk a beállításokat, vagy kiléphetünk az operációs rendszerbe.
CGameMenu
Játék közben előhozható menü, amely segítségével lementhetjük, visszatölthetjük az aktuális állást, kiléphetünk a a játékból, vagy újraindíthatjuk azt.
CControlPanel
A játék közben a felhasználó számára biztosít egy felületet, ami segítségével parancsokat, utasításokat tud kiadni a játék egységeinek, irányíthatja a játékot.
CGameUnit
Ősosztály, melyből származik az összes játékobjektum. Tartalmazza ezek közös tulajdonságait, viselkedését.
CFixedUnit
Ősosztály, a nem mozgatható játékobjektumok őse. Tartalmazza közös tulajdonságaikat, viselkedésüket.
CMovingUnit
A mozgatható játékobjektumok őse. Felelős a megjelenítés helyének számításáért.
CBuilding
Az épület játékobjektumok őse. Közös tulajdonságaik, viselkedésük.
CSound
Feladata a hangrendszer inicializációja. Effektek, zenék lejátszása. Hang betöltése. Hangerő szabályozása.
CPlayer
Az egyes játékosok tulajdonságait tartalmazza.
CTile
A játéktér építőelemei.
CGameField
Tartalmazza a CTile-okat, szolgáltatásokat nyújt a játékobjektumoknak.
CGameLogic
Felügyeli a játékmenetet. Felelős a betöltésért, mentésért. Hozzá jutnak el a felhasználó által küldött események.
CResources
A játék közben a játékos számára egy ablakon belül a nyersanyagok mennyiségéről ad tájékoztatást.
Felelős a megjelenítésért, ezen belül a textúrák betöltéséért, a játékobjektumok kirajzolásáért.
CResources
A játék közben a játékos számára egy ablakon belül a nyersanyagok mennyiségéről ad tájékoztatást.
CRenderable
Bázisosztály, melyből az összes képernyőn megjeleníthető, renderelhető osztály származik. Tárolja az osztály helyét a képernyőn, és felelős a megjelenítésért.
CGraphics
A játék vizuális megjelenítéséért felelős osztály. Tartalmazza a legfontosabb grafikai adatszerkezeteket, algoritmusokat. Inicializálja a grafikai elemeket.
CFilePanel
Megjelenít egy fájl panelt, melyben directory struktúra jelenik meg. Felelős a viselkedéséért. Kiválasztható egy fájl.
CMainMenu
A játék inicializációja után megjelenítendő menü, amelyből elindíthatjuk a játékot, megváltoztathatjuk a beállításokat, vagy kiléphetünk az operációs rendszerbe.
CGameMenu
Játék közben előhozható menü, amely segítségével lementhetjük, visszatölthetjük az aktuális állást, kiléphetünk a a játékból, vagy újraindíthatjuk azt.
CControlPanel
A játék közben a felhasználó számára biztosít egy felületet, ami segítségével parancsokat, utasításokat tud kiadni a játék egységeinek, irányíthatja a játékot.
Felelős a hanghatásokért, hangfájlok betöltéséért, zene és hangeffektek lejátszásáért.
CSound
Feladata a hangrendszer inicializációja. Effektek, zenék lejátszása. Hang betöltése. Hangerő szabályozása.
A felhasználói események beolvasása.
CInput
Eseménykezelő osztály ha parancsot kap lekérdezi a kapott eseményeket az SDL_Event rendszeren keresztül.
Felelős a játék logikájának végrehajtásáért, az események lekezeléséért, és a játék futásának felügyeletéért.
CGameUnit
Ősosztály, melyből származik az összes játékobjektum. Tartalmazza ezek közös tulajdonságait, viselkedését.
CFixedUnit
Ősosztály, a nem mozgatható játékobjektumok őse. Tartalmazza közös tulajdonságaikat, viselkedésüket.
CMovingUnit
A mozgatható játékobjektumok őse. Felelős a megjelenítés helyének számításáért.
CBuilding
Az épület játékobjektumok őse. Közös tulajdonságaik, viselkedésük.
CSound
Feladata a hangrendszer inicializációja. Effektek, zenék lejátszása. Hang betöltése. Hangerő szabályozása.
CPlayer
Az egyes játékosok tulajdonságait tartalmazza.
CTile
A játéktér építőelemei.
CGameField
Tartalmazza a CTile-okat, szolgáltatásokat nyújt a játékobjektumoknak.
CGameLogic
Felügyeli a játékmenetet. Felelős a betöltésért, mentésért. Hozzá jutnak el a felhasználó által küldött események.