Csoport
neve: Nil
Feladat
sorszáma: 6
Feladat
címe: Stratégiai játék
Szoftver követelmény specifikáció
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.03.24.
Történet
Dátum |
Verzió |
Leírás |
Szerző |
2006.03.24.
|
1.0
|
SRS 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.
Áttekintés
2.1. Fejlesztő környezet
2.2. Futtató környezet
2.3. Felhasználók jellemzői
2.4. Legfontosabb funkciók
2.5. A játék belső környezete (háttértörténet, szereplők)
3.
A rendszer funkciói
3.1.
Főmenüből elérhető funkciók
3.1.1. Aktorok
3.1.2. Use case-ek
3.1.3. A diagramon szereplő use case-k kapcsolatai
3.2.
Játékon belül elérhető funkciók
3.2.1. Aktorok
3.2.2. Use case-ek
3.2.3. A diagramon szereplő use case-k kapcsolatai
3.3. A hálózati komponens funkciói
4.
Használhatóság
5.
Megbízhatóság
6.
Teljesítmény
7.
Támogatottság
8.
Tervezési korlátozások
9.
On-line dokumentáció és Help rendszer
10.
Felhasznált kész komponensek
11.
Interfészek
11.1. Felhasználói
interfészek
11.2. Hardware
interfészek
11.3. Software
interfészek
11.4. Kommunikációs
interfészek
12.
Alkalmazott szabványok
12.1. Kötelezően
alkalmazandó szabványok
12.2. Választás
alapján alkalmazott szabványok
13.
Mellékletek
13.1. Információ források
13.2. A projekt egyéb dokumentumai
1. Bevezetés
A továbbiakban a NIL csoport által fejlesztett játékprogram paramétereit, tulajdonságait vázoljuk nagyvonalakban. Az itt bemutatásra kerülő “Wüstenplanet Project” lényege az, hogy a korábbi stratégiai játékoknál felmerülő problémákat megoldjuk és a hiányosságokat pótoljuk. Ezért a NIL csoport célkitűzése a projekttel kapcsolatban, hogy a majdan elkészült termék minél szélesebb rétegek számára elérhető legyen és jelentsen számukra felhőtlen szórakozást. Ehhez többféle feltételt kell biztosítanunk, amire a korábbi népszerű stratégiai játékok nem voltak képesek vagy a fejlesztőik nem is akarták megvalósítani.
Legfontosabb cél számunkra a teljes platform függetlenség. Ezzel lehetővé szeretnénk tenni a felhasználók számára, hogy a különböző operációs rendszerek elkötelezettjei felhőtlenül játszhassanak egymással. Az egész projekt nyílt forráskódú, azaz a teljes kód hozzáférhető bárki számára, így - a felhasználási engedély alapján - bárki módosíthatja, javíthatja és tovább írhatja térítés ellenében Ez segíti a projekt gyors fejlődését, hisz tömegek számára nyílik meg a lehetőség e nagyszerű program fejlesztésére.
Szándékunk szerint azok a felhasználók is képesek lesznek futtatni az általunk készített programot, akik gépüket főleg munkára használják, ugyanis az nem igényel majd különösebb grafikus támogatást. A platformfüggetlen fejlesztéshez kitűnő eszközt nyújt a Java nyelv, mely széles körben elterjedt programozási környezet. Így a felhasználónak egyetlen feladata – hogyha korábban még nem tette volna meg- a JVM telepítése, ezzel Java kompatibilissé téve számítógépét. Ennek megvalósításához egy olyan hátteret kellett találnunk amely az emberek számára hasonlóan “platform független”. Ez Frank Herbert Dűne univerzuma, amely egy széles körben ismert történet. Reményeink szerint, ezzel háttértörténettel a jövendőbeli felhasználók könnyebben beleélhetik magukat a játék nyújtotta élményekbe.
Egyik alapelvünk az, hogy egy játéknak az ember gondolatait nem a grafika látványosságával kell lekötni, hanem az érdekes játékmenettel, az intelligens gépi ellenfelekkel, és a kihívást jelentő, de nem teljesíthetelen küldetésekkel. Másik célkitűzésünk, hogy a felhasználónak ne kelljen rendelkeznie különösebb számítástechnikai ismeretekkel, az első indítás után is könnyedén eligazodjon a program használatában. A programunk rugalmasságát a széleskörű konfigurálhatóság teszi teljessé. Játékunkat ezen elveket szem előtt tartva próbáljuk meg fejleszteni.
Egyik legfontosabb célunk a hálózati felhasználhatóság, ezzel minél több felhasználó számára szeretnénk lehetővé tenni az egyidejű játékot. A játékprogram támogatni fogja a helyi hálózaton (LAN) és az interneten keresztüli kommunikációt. A helyi hálózaton keresztüli játék alkalmával a játékosok számát 16 főben maximalizáljuk. Ezenfelül ha az internetes lehetőséget a felhasználók biztosítani tudják (elegendő sávszélesség), akkor a játékosok száma ebben az esetben sem csökken.
A kezelhetőséget igyekszünk minél tovább egyszerűsíteni, a korábbi játékoknál bevált sémákat megőrizzük, és nem erőltetjük a felesleges változtatásokat, hogy minél egyszerűbbé tegyük a játék megtanulását. Szem előtt tartjuk a menürendszer ésszerűségét és könnyű átláthatóságát. Logikus felépítéssel próbáljuk segíteni az eligazodást a részletes beállítási lehetőségek között.
2. Áttekintés
2.1. Fejlesztő környezet
A program kódjának megírásához a népszerű Eclipse fejlesztőeszközt fogjuk használni. A kód fordításához a J2SDK 1.5-ös verzióját használjuk.
A grafikus elemeket képszerkesztő alkalmazással (elsősorban GIMP mivel ez ingyenes, és esetleg 3DStudio-val) fogjuk elkészíteni. Az audio részek elkészítéséhez felhasznált szoftverek: Audacity, Sony SoundForge.
2.2. Futtató környezet
A futtatáshoz Java Runtime Enviroment szükséges, ez határozza meg a hardverigényt is. Ez a Sun ajánlásai szerint Pentium PC166MHz-es processzorral, legalább 32Mb memóriával, valamint a JRE telepítéséhez szükséges 40 Mb tárterület a merevlemezen. Az elkészített program várható mérete kezdetben valószínűleg szintén nem lesz nagyobb 40Mb-nál, de ez esetleg nőhet a későbbi kiegészítések, és esetleges javítások következtében. A felhasználó grafikus felületen fogja irányítani a játékot, főleg egér segítségével, de egyes parancsokat billentyűzeten is kiadhat, ezért ez a két periféria szintén a minimum rendszerkövetelmény része, egy VGA monitorral egyetemben. A programban egyéb játékirányítókat (Joystick, gamepad) a kivitelezés jelenlegi fázisában nem kivánunk támogatni. Persze szükséges még Javat támogató operációs rendszer is, de ez gyakorlatilag manapság nem jelenthet akadályt a program széleskörű elterjedése előtt.
2.3. Felhasználók jellemzői
A programot igyekszünk minél szélesebb körben, kortól és érdeklődési körtől függetlenül, játszhatóvá tenni. A felhasználók körét tehát úgy tudnánk meghatározni, hogy “bárki aki egy jót akar szórakozni”. A program mentes lesz a túlzottan naturális és erőszakos elemektől, igyekszik a csatákat minél kevésbé véresen ábrázolni, de a jelenlegi szigorú szabályozás miatt a 12 éves korhatár alatt csak szülői engedéllyel javasoljuk a program használatát. Felső korhatár nincs. A kikapcsolódást elősegíti a népszerű háttértörténet, melyet a számítógéppel rendelkező emberek szinte mindannyian ismernek már.
2.4. Legfontosabb funkciók
A program játékprogram, ebből következik, hogy legfontosabb funkciója a szórakoztatás. Ez függ a felhasználók igényeitől melyet igyekszünk a legteljesebb módon kielégíteni. Mivel a készítők maguk is játékprogram felhasználók egyben, ezért olyan játék várható, mely az átlagos igényeket messzemenően ki fogja elégíteni, és a különleges ízléssel rendelkezőknek is megpróbál újat mutatni.
A játék elindítása után dönthetünk, hogy új játékot indítunk, ezt megtehetjük hálózaton, emberi ellenfelekkel, vagy gépi ellenféllel. Ha gépi ellenfél ellen játszunk a korábban elmentett állásokat is visszatölthejük. A felhasználói felületet is egyéni ízlésünknek, és persze számítógépünknek megfelelően szabhatjuk testre.
2.5. A játék belső környezete (háttértörténet, szereplők)
A háttértörténet alapvetően Frank Herbert Dűne univerzumára építkezik. Ebben az eredeti történet szerint az Univerzum teljhatalmú ura a Császár. A gazdasági szektorokat egymás közt a nagy házak osztották fel. Ezek egyike az Atreides ház, amit történetünk kezdetén a császár az Arrakis nevezetű sivatagbolygóra irányít. Ez felér egy száműzetéssel. A bolygó őslakossága a fremenek, egy kemény sivatagi nép, mely hozzászokott a víz állandó hiányához, takarékosan bánik vele, és megpróbál minél többet termelni belőle. Az Arrakison egyébként gyér a növényzet eső szinte sohasem esik, ellenben gyakoriak a homokviharok. A bolygón élő különleges faj a homokféreg azaz a Shai-Hulud. Ennek a fajnak egyes példányai a sivatag mélyén akár 400m-es nagyságúrai is megnőhetnek. A játékban legfontosabb funkciójuk, hogy az általuk termelt váladék a Fűszer, mely körül a bolygó egész gazdasága forog. A fűszer begyűjtése játékunkban az egyik alapfeladat, ez ugyanis meghosszabítja az életet ezért az univerzumban drága kincsként tartják számon. A homokférgek azonban veszélyesek az egységeinkre, képesek pillanatok alatt elpusztítani azokat, ha nem felügyelünk rájuk. A homokférgek egy módon pusztíthatók el biztosan, ha víz éri őket. Az Atreides házat vezetve először szövetkeznünk kell a fremen őslakossággal, majd le kell győznünk a császár csapatait, akik a megerősödött Atreides ház ellen törnek. Mindeközben elegendő vizet és fűszert kell biztosítanunk a további fejlődéshez.
3. A
rendszer funkciói
3.1. Főmenüből elérhető funkciók

1. ábra. A felhaszáló által elérhető funkciók a főmenüben
3.1.1. Aktorok
Játékos: A program elsődleges felhasználója. A szoftver összes funkciója a játékos kényelmét és elégedettségét szolgálja, így kiemelt fontosságú a követelmények alapos vizsgálata az ő szemszögéből.
3.1.2. Use case-ek
3.1.2.1. Új játék
- Leírás: ezen menüpont kiválasztásával kezdhet a felhasználó egy új játékot , kiválasztásával egy almenü fog megjelenni.
- Prekondíciók: játék főmenü aktív legyen
- Post kondíciók: hatására megjelenik az új játék almenü
- Szokásos működés: normál működés esetén megjelenik az "Új játék" almenü
- Alternatív esetek: N/A
- Kivételes esetek: esetleges hiba esetén naplózás
3.1.2.2. Egyjátékos
- Leírás: új játék kezdése esetén további opciók jelennek meg a felhasználó számára. Egyjátékos üzemmód kiválasztása esetén a felhasználó gépi ellenfelek elleni játékban fog részt venni, további almenü jelenik meg.
- Prekondíciók: ezen use case szükséges előfeltétele, hogy a játékos a főmenüben az "Új játék" menüpontot válassza.
- Post kondíciók: hatására megjelenik az "Egyjátékos üzemmód" almenü.
- Szokásos működés: újabb almenüt nyit meg
- Alternatív esetek: N/A
- Kivételes esetek: esetleges hiba esetén naplózás
3.1.2.3. Küldetés
- Leírás: egyjátékos üzemmód kiválasztása esetén újabb opciók jelennek meg a felhasználó számára. A "Küldetés" kiválasztásával a felhasználó úgy dönt, hogy önálló küldetést hajt végre. Ez a választás általában a játékhoz adott kampányok végigjátszása után válik gyakorivá.
- Prekondíciók: ezen use case szükséges előfeltétele, hogy a játékos a követekező menüpontokat válassza egymás után: Új játék -> Egyjátékos
- Post kondíciók: hatására a felhasználó kiválaszthatja a kívánt küldetést, majd a gépi ellenfelek számának és minőségének meghatározása után elkezdődik a játék
- Szokásos működés: megfelelő beállítások után a játék elkezdése
- Alternatív esetek: rossz beállítások esetén hibaüzenetek megjelenítése a felhasználónak
- Kivételes esetek: esetleges hiba esetén naplózás
- Leírás: egyjátékos üzemmód kiválasztása esetén újabb opciók jelennek meg a felhasználó számára. A "Kampány" kiválasztásával a felhasználó úgy dönt, hogy egy előre elkészített, önálló történettel, átvezető animációkkal ellátott küldetéssorozatot hajt végre. Ez a választás általában a játék használatának kezdeti időszakában jellemző.
- Prekondíciók: ezen use case szükséges előfeltétele, hogy a játékos a követekező menüpontokat válassza egymás után: Új játék -> Egyjátékos
- Post kondíciók: hatására a felhasználó kiválaszthatja a kívánt kampányt, majd a nehézségi szint meghatározása után elkezdődik a játék
- Szokásos működés: megfelelő beállítások után a játék elkezdése
- Alternatív esetek: rossz beállítások esetén hibaüzenetek megjelenítése a felhasználónak
- Kivételes esetek: esetleges hiba esetén naplózás
3.1.2.5. Nehézségi szint
- Leírás: egyjátékos üzemmód kiválasztása esetén újabb opciók jelennek meg a felhasználó számára. A "Nehézségi szint" kiválasztásával a felhasználó saját igényeihez és képességeihez alakíthatja a játékban szereplő gépi ellenfelek intelligenciáját, az erőforrások mennyiségét, valamint a környezeti viszonyokat. A nehézségi szint állítása mind a küldetés, mind a kampány üzemmód kiválasztása esetén szükséges.
- Prekondíciók: ezen use case szükséges előfeltétele, hogy a játékos a követekező menüpontokat válassza egymás után: Új játék -> Egyjátékos
- Post kondíciók: hatására a következő játék nehézségi szintje megváltozik.
- Szokásos működés: az alkalmazás állapotváltozókban eltárolja a kiválasztott jellemzőket
- Alternatív esetek: N/A
- Kivételes esetek: esetleges hiba esetén naplózás
3.1.2.6. Többjátékos
- Leírás: új játék kezdése esetén további opciók jelennek meg a felhasználó számára. Többjátékos üzemmód kiválasztása esetén a felhasználó emberi ellenfelek elleni játékban fog részt venni, további almenü jelenik meg.
- Prekondíciók: ezen use case szükséges előfeltétele, hogy a játékos a főmenüben az "Új játék" menüpontot válassza.
- Post kondíciók: hatására megjelenik az "Többjátékos üzemmód" almenü.
- Szokásos működés: új almenü jelenik meg
- Alternatív esetek: N/A
- Kivételes esetek: esetleges hiba esetén naplózás
3.1.2.7. LAN
- Leírás: többjátékos üzemmód kiválasztása esetén újabb opciók jelennek meg a felhasználó számára. A "LAN" kiválasztásával a játékos a helyi hálózaton keresztüli játék beállításait érheti el.
- Prekondíciók: ezen use case szükséges előfeltétele, hogy a játékos a követekező menüpontokat válassza egymás után: Új játék -> Többjátékos
- Post kondíciók: hatására megjelenik az "LAN" almenü.
- Szokásos működés: új almenü jelenik meg
- Alternatív esetek: N/A
- Kivételes esetek: esetleges hiba esetén naplózás
3.1.2.8. Szerver létrehozása
- Leírás: többjátékos üzemmód kiválasztása esetén a felhasználónak lehetősége nyílik saját szerver létrehozására. Itt állíthatja be a szerver nevét, engedélyezhet, illetve tilthat bizonyos IP tartományokat, megszabhatja, milyen tipusú játékokat lehessen játszani a szerveren.
- Prekondíciók: ezen use case szükséges előfeltétele, hogy a játékos a követekező menüpontokat válassza egymás után: Új játék -> Többjátékos -> LAN
- Post kondíciók: létrejön a szerver, további játékosok csatlakozására várás.
- Szokásos működés: megfelelő beállítások végrehajtása után az alkalmazás megpróbálja létrehozni a szervert.
- Alternatív esetek: nem megfelelő beállítások, kevés résztvevő esetén a játék elindításának letiltása, hibaüzenetek kiírása a felhasználónak.
- Kivételes esetek: hibás beállítások esetén megfelelő súgó ablakok, üzenetek megjelenítése.
3.1.2.9. Csatlakozás létező szerverhez
- Leírás: többjátékos üzemmód kiválasztása esetén a felhasználónak lehetősége nyílik már létező szerverhez csatlakozni. Ezt a szervert egy másik kliens hozta létre, annak IP címével a játékos csatlakozni tud a szerverhez, és az ott zajló játékokban részt tud venni.
- Prekondíciók: ezen use case szükséges előfeltétele, hogy a játékos a követekező menüpontokat válassza egymás után: Új játék -> Többjátékos -> LAN
- Post kondíciók: csatlakozás a megadott szerverhez.
- Szokásos működés: a távoli géphez való csatlakozás után a játékos társak kiválasztása, majd a játék elkezdése.
- Alternatív esetek: nem létező szerver esetén az alkalmazás connection timeout hibaüzenetet ad.
- Kivételes esetek: hibás beállítások esetén megfelelő súgó ablakok, üzenetek megjelenítése.
3.1.2.10. Internet
- Leírás: többjátékos üzemmód kiválasztása esetén újabb opciók jelennek meg a felhasználó számára. Az "Internet" kiválasztásával a játékos a dedikált szerveren keresztüli játék beállításait érheti el.
- Prekondíciók: ezen use case szükséges előfeltétele, hogy a játékos a követekező menüpontokat válassza egymás után: Új játék -> Többjátékos
- Post kondíciók: hatására megjelenik az "Internet" almenü.
- Szokásos működés: új almenü jelenik meg.
- Alternatív esetek: N/A
- Kivételes esetek: esetleges hiba esetén naplózás.
- Leírás: többjátékos üzemmód kiválasztása esetén a felhasználónak lehetősége nyílik egy dedikált szerverhez csatlakozni. Ezt a szervert a játék üzemeltetői hozzák létre, annak IP címével a játékos csatlakozni tud a szerverhez, és az ott zajló játékokban részt tud venni.
- Prekondíciók: ezen use case szükséges előfeltétele, hogy a játékos a követekező menüpontokat válassza egymás után: Új játék -> Többjátékos -> Internet
- Post kondíciók: csatlakozás a megadott szerverhez.
- Szokásos működés: a távoli géphez való csatlakozás után a játékos társak kiválasztása, majd a játék elkezdése.
- Alternatív esetek: nem létező szerver esetén az alkalmazás connection timeout hibaüzenetet ad.
- Kivételes esetek: hibás beállítások esetén megfelelő súgó ablakok, üzenetek megjelenítése.
3.1.2.12. Játék betöltése
- Leírás: a felhasználónak lehetősége nyílik korábban elkezdett és elmentett játékállásainak betöltésére és tovább folytatására. Ezen menüpont kiválasztásával választhat az elmentett fájlok közül.
- Prekondíciók: játék főmenü aktív legyen.
- Post kondíciók: hatására megjelenik a játék betöltése dialógus ablak.
- Szokásos működés: a felhasználó kiválasztja a listából a mentést, majd a töltés után a játék ott folytatódik, ahol azt abbahagyta
- Alternatív esetek: N/A
- Kivételes esetek: hibás fájl, illetve egyéb olvasási hiba esetén a megfelelő hibaüzenet kiírása
- Leírás: az alkalmazás használatának könnyebb és gyorsabb elsajátítása érdekében a játék tartalmaz egy oktató pályát, melynek teljesítése által a játékos megszerzi a szükséges tudást, hogy a tényleges játékot elkezdje. Ezen a pályán a narrátor utasításai alapján ismerkedik meg a program egyre részletesebb funkcióival a felhasználó.
- Prekondíciók: játék főmenü aktív legyen.
- Post kondíciók: a "Tutorial" menüpont kiválasztása után elkezdődik az oktató küldetés.
- Szokásos működés: normál működés esetén betöltődik az oktató pályát tartalmazó fájl.
- Alternatív esetek: N/A
- Kivételes esetek: amennyiben nem sikerülne elindítani az oktató pályát, akkor ezt a felhasználónak jelezni kell.
3.1.2.14. Beállítások
- Leírás: a játékosnak lehetősége nyílik az alkalmazás egyes tulajdonságainak megváltoztatására. Ezt a "Beállítások" menüpont kiválasztásával teheti meg.
- Prekondíciók: játék főmenü aktív legyen.
- Post kondíciók: megjelenik a "Beállítások" almenü.
- Szokásos működés: újabb almenü jelenik meg, további választási lehetőségeket felkínálva a felhasználónak.
- Alternatív esetek: N/A
- Kivételes esetek: esetleges hiba esetén naplózás.
3.1.2.15. Automatikus detektálás
- Leírás: kezdő felhasználók számára rendkívül előnyös funkció, az alkalmazás a rendszer erőforrások figyelembe vételével megállapítja az ideális beállításokat, így leveszi ezt a fölösleges terhet a játékos válláról
- Prekondíciók: ezen use case szükséges előfeltétele, hogy a játékos a főmenüben a "Beállítások" menüpontot válassza.
- Post kondíciók: a játék beállítások az adott rendszer számára ideális érteket vesznek fel.
- Szokásos működés: a rendszer információk lekérdezése és a szükséges számítások elvégzése után az alkalmazás megállapítja a megfelelő beállításokat.
- Alternatív esetek: N/A
- Kivételes esetek: amennyiben nem sikerül lekérdezni a rendszer információkat, akkor egy hibaüzenetben tájékoztatjuk a felhasználót, valamint naplózzuk az eseményt
3.1.2.16. Billentyű parancsok
- Leírás: a gyakorlottabb játékosok igényeit kielégítve a szoftver képes lesz kezelni a különböző tevékenységekhez rögzített billentyű kombinációkat. A felhasználó ezeket igény szerint testreszabhatja.
- Prekondíciók: ezen use case szükséges előfeltétele, hogy a játékos a főmenüben a "Beállítások" menüpontot válassza.
- Post kondíciók: az új billentyű kombinációk érvénybe lépnek.
- Szokásos működés: a megfelelő parancs kiválasztása után a felhasználó leüti a kívánt billentyű kombinációt, majd frissül a beállítás
- Alternatív esetek: ütköző billentyű parancs megadása esetén nem engedélyezi a beállítást
- Kivételes esetek: amennyiben nem sikerül írni a konfigurációs fájlt, akkor hibaüzenet küldése a felhasználónak
3.1.2.17. Hang
- Leírás: ebben a menüpontban lehet a játék hangbeállításait megváltoztatni.
- Prekondíciók: ezen use case szükséges előfeltétele, hogy a játékos a főmenüben a "Beállítások" menüpontot válassza.
- Post kondíciók: megjelenik a "Hang" almenü.
- Szokásos működés: új almenü megjelenítése kattintás után.
- Alternatív esetek: N/A
- Kivételes esetek: esetleges hiba esetén naplózás.
3.1.2.18. Hangerő
- Leírás: a játékosnak lehetősége nyílik a játék hangerejének állítására. Külön állítható az aláfestő zene és a hangeffektek hangereje.
- Prekondíciók: ezen use case szükséges előfeltétele, hogy a játékos a követekező menüpontokat válassza egymás után: Beállítások -> Hang
- Post kondíciók: az új beállítások érvénybe lépnek.
- Szokásos működés: a különböző hangerő szabályozók állításával változtatható a hangerő.
- Alternatív esetek: N/A
- Kivételes esetek: esetleges hiba esetén naplózás.
3.1.2.19. Hangkártya
- Leírás: amennyiben az auto detektálás nem járna sikerrel a megfelelő hangkártya kiválasztásánál, akkor a felhasználónak még mindig lehetősége van egy listából kiválasztani a megfelelő illesztőprogramot.
- Prekondíciók: ezen use case szükséges előfeltétele, hogy a játékos a követekező menüpontokat válassza egymás után: Beállítások -> Hang
- Post kondíciók: az új beállítások érvénybe lépnek.
- Szokásos működés: egy lenyiló listából történő választás után az új illesztőprogram betöltése
- Alternatív esetek: N/A
- Kivételes esetek: esetleges hiba esetén naplózás, valamint üzenet a felhasználónak, hogy a hangkártya a kiválasztott illesztőprogram használatával nem lehetséges.
3.1.2.20. Hangeffektek
- Leírás: a rendszer biztosítja a felhasználó számára, hogy a különböző hangeffektek tulajdonságait egyenként is befolyásolni tudja.
- Prekondíciók: ezen use case szükséges előfeltétele, hogy a játékos a követekező menüpontokat válassza egymás után: Beállítások -> Hang
- Post kondíciók: az új beállítások érvénybe lépnek.
- Szokásos működés: a különböző típusú hangeffektek tulajdonságai egyenként állíthatók, majd a beállítások véglegesíthetők.
- Alternatív esetek: N/A
- Kivételes esetek: esetleges hiba esetén naplózás, valamint üzenet a felhasználónak.
3.1.2.21. Grafika
- Leírás: a játék grafikai beállításait lehet ebben a menüpontban megváltoztatni.
- Prekondíciók: ezen use case szükséges előfeltétele, hogy a játékos a főmenüben a "Beállítások" menüpontot válassza.
- Post kondíciók: megjelenik a "Grafika" almenü .
- Szokásos működés: új almenü megjelenítése kattintás után.
- Alternatív esetek: N/A
- Kivételes esetek: esetleges hiba esetén naplózás.
- Leírás: a felhasználónak lehetőséget biztosít a játék a megfelelő képernyő felbontás beállítására, amelyet ebben a menüpontban tehet meg.
- Prekondíciók: ezen use case szükséges előfeltétele, hogy a játékos a követekező menüpontokat válassza egymás után: Beállítások -> Grafika
- Post kondíciók: érvénybe lépnek az új beállítások.
- Szokásos működés: a felkínált listából választhat a felhasználó, amelyet a szoftver a videókártya és a monitor típusának megfelelően állapít meg.
- Alternatív esetek: N/A
- Kivételes esetek: esetleges hiba esetén naplózás, valamint üzenet a felhasználónak.
3.1.2.23. Videókártya
- Leírás: amennyiben az auto detektálás nem járna sikerrel a megfelelő videókártya kiválasztásánál, akkor a felhasználónak még mindig lehetősége van egy listából kiválasztani a megfelelő illesztőprogramot.
- Prekondíciók: ezen use case szükséges előfeltétele, hogy a játékos a követekező menüpontokat válassza egymás után: Beállítások -> Grafika
- Post kondíciók: érvénybe lépnek az új beállítások.
- Szokásos működés: egy lenyiló listából történő választás után az új illesztőprogram betöltése.
- Alternatív esetek: N/A
- Kivételes esetek: esetleges hiba esetén naplózás, valamint üzenet a felhasználónak.
- Leírás: a felhasználónak lehetőséget biztosít a játék a megfelelő színmélység beállítására, amelyet ebben a menüpontban tehet meg.
- Prekondíciók: ezen use case szükséges előfeltétele, hogy a játékos a követekező menüpontokat válassza egymás után: Beállítások -> Grafika
- Post kondíciók: érvénybe lépnek az új beállítások.
- Szokásos működés: a felkínált listából választhat a felhasználó, amelyet a szoftver a videókártya és a monitor típusának megfelelően állapít meg.
- Alternatív esetek: N/A
- Kivételes esetek: esetleges hiba esetén naplózás, valamint üzenet a felhasználónak.
3.1.2.25. Részletesség
- Leírás: a felhasználónak lehetőséget biztosít a játék a megfelelő részletesség beállítására, amelyet ebben a menüpontban tehet meg.
- Prekondíciók: ezen use case szükséges előfeltétele, hogy a játékos a követekező menüpontokat válassza egymás után: Beállítások -> Grafika
- Post kondíciók: érvénybe lépnek az új beállítások.
- Szokásos működés: a különböző objektumok megjelenítési részletességének(árnyékoltság, felbontás stb.) beállítása.
- Alternatív esetek: N/A
- Kivételes esetek: esetleges hiba esetén naplózás, valamint üzenet a felhasználónak.
3.1.2.26. Hálózati beállítások
- Leírás: a játék hálózati beállításait lehet ebben a menüpontban megváltoztatni.
- Prekondíciók: ezen use case szükséges előfeltétele, hogy a játékos a főmenüben a "Beállítások" menüpontot válassza.
- Post kondíciók: megjelenik a "Hálózati beállítások " almenü .
- Szokásos működés: új almenü megjelenítése kattintás után.
- Alternatív esetek: N/A
- Kivételes esetek: esetleges hiba esetén naplózás.
3.1.2.27. Kapcsolat típusa
- Leírás: a hálózati beállításokon belül lehetőség nyílik a kapcsolat típusának kiválasztására. Ez a Hálózati komponens működésének szempontjából fontos tényező.
- Prekondíciók: ezen use case szükséges előfeltétele, hogy a játékos a követekező menüpontokat válassza egymás után: Beállítások -> Hálózati beállítások
- Post kondíciók: érvénybe lépnek az új beállítások.
- Szokásos működés: a felkínált listából választhat a felhasználó, aminek a hatására frissülnek a beállítások.
- Alternatív esetek: a felhasználó olyan kapcsolattípust szeretne megadni, amely nem szerepel a listán, ekkor külön input mező megjelenítése, hogy konkrét számértékeket adhasson meg a játékos.
- Kivételes esetek: esetleges hiba esetén naplózás.
3.1.2.28. Nyelv
- Leírás: a játék többnyelvűsége folytán lehetőséget kell biztosítani a felhasználónak a neki megfelelő nyelv kiválasztására, amelyet ebben a menüpontban tehet meg.
- Prekondíciók: ezen use case szükséges előfeltétele, hogy a játékos a főmenüben a "Beállítások" menüpontot válassza.
- Post kondíciók: érvénybe lépnek az új beállítások.
- Szokásos működés: a felkínált listából választhat a felhasználó, aminek a hatására megváltozik a szoftver nyelve.
- Alternatív esetek: a listában nem szereplő nyelvet szeretne választani a felhasználó, ekkor lehetőséget kell biztosítani számára, hogy kapcsolatba léphessen a fejlesztőkkel az esetleg bővítés lehetőségeinek megbeszélésére.
- Kivételes esetek: esetleges hiba esetén naplózás.
3.1.2.29. Automatikus frissítés
- Leírás: a szoftver beépített automatikus frissítés funkcióval lesz ellátva, amely biztosítja a felhasználót arról, hogy alkalmazása mindig naprakész legyen. Ennek a funkciónak a futtatását, illetve beállításait érheti el itt a felhasználó
- Prekondíciók: ezen use case szükséges előfeltétele, hogy a játékos a főmenüben a "Beállítások" menüpontot válassza.
- Post kondíciók: érvénybe lépnek az új beállítások, program komponensek.
- Szokásos működés: az automatikus frissítések ki- és bekapcsolása állítható, valamint lehetőség van a frissítés explicit végrehajtására is.
- Alternatív esetek: N/A
- Kivételes esetek: esetleges hiba esetén naplózás.
3.1.2.30. Credits
- Leírás:a játék készítőit megjelenítő menüpont a főmenüben.
- Prekondíciók: a játék főmenüje legyen aktív.
- Post kondíciók: visszatérés a főmenübe.
- Szokásos működés: készítők, szponzorok felsorolása egy új képernyőn.
- Alternatív esetek: N/A
- Kivételes esetek: esetleges hiba esetén naplózás.
3.1.2.31. Kilépés
- Leírás: az alkalmazás befejezésére szolgáló menüpont.
- Prekondíciók: a játék főmenüje legyen aktív.
- Post kondíciók: az alkalmazás terminálódik.
- Szokásos működés: állapot mentések után befejeződik a játék futása.
- Alternatív esetek: nem mentett játék esetén a program felajánlja a mentés lehetőségét, majd csak ezután fejeződik be.
- Kivételes esetek: ha nem sikerül szabályosan leállítani az alkalmazást, akkor a hiba naplózása, valamint a felhasználó értesítése.
3.1.3. A diagramon szereplő use case-ek kapcsolatai
A diagramon szereplő use case-ek hierarchikus kapcsolatban állnak egymással. Egyes use case-ek mások részét képezik. Ezek a kapcsolatok elsősorban nem alá-, vagy felérendeltséget jelentenek, hanem tartalmazást.
3.2. Játékon belül elérhető funkciók

2. ábra. A felhaszáló által elérhető funkciók a játékon belül
3.2.1. Aktorok
Játékos: definíció
3.2.2. Use case-ek
3.2.2.1. Menü
- Leírás: a játékon belül is elérheto egy menü, amely a fomenühöz hasonló funkciókat biztosít a felhasználónak.
- Prekondíciók: futnia kell egy aktuális játéknak, innen érheto el ez a funkció.
- Post kondíciók: megjelenik a játékon belüli menü.
- Szokásos működés: kattintás után egy dialógus ablakban megjelenik a játékon belüli menü.
- Alternatív esetek: N/A
- Kivételes esetek: esetleges hiba esetén naplózás.
3.2.2.2. Játék mentése
- Leírás: az aktuális játék mentését biztosítja ez a funkció.
- Prekondíciók: a játékon belüli menü aktív legyen.
- Post kondíciók: létrejön egy fájl, amely a mentést tartalmazza.
- Szokásos működés: egy dialógus ablakban a játékos beírja a mentés nevét, majd a fájlrendszerben létrejön a megadott névvel egy mentés fájl.
- Alternatív esetek: amennyiben a felhasználó többjátékos üzemmódban próbál menteni, akkor ezt nem engedi a rendszer, illetve a szerver létrehozója elvégezhet ilyen muveletet.
- Kivételes esetek: ha nem sikerül létrehozni, felülírni a mentés fájlt, akkor az alkalmazás naplózza az eseményt, és értesíti a felhasználót egy hibaüzenettel.
3.2.2.3. Játék betöltése
- Leírás: a játékos betölthet egy korábban elmentett játékállást, így onnan folytathatja a játékot, ahol azt abbahagyta.
- Prekondíciók: a játékon belüli menü aktív legyen.
- Post kondíciók: az elmentett játék folytatódik.
- Szokásos működés: egy dialógus ablakban a játékos beírja a mentés nevét, majd az alkalmazás betölti az elmentett játékállást.
- Alternatív esetek: többjátékos játékok mentéseit csak a szerver létrehozója töltheti be, amennyiben csatlakozott az összes résztvevo.
- Kivételes esetek: ha nem sikerül elérni a mentés fájlt, akkor az alkalmazás naplózza az eseményt, és értesíti a felhasználót egy hibaüzenettel.
3.2.2.4. Újrakezdés
- Leírás: a felhasználónak lehetosége nyílik az aktuális játék újrakezdésére, ezt a funkciót ezzel a menüponttal érheti el.
- Prekondíciók: a játékon belüli menü aktív legyen.
- Post kondíciók: új játék kezdodik.
- Szokásos működés: az aktuális játék befejezodik, majd a hozzá tartozó pályát újrakezdheti a felhasználó.
- Alternatív esetek: többjátékos üzemmód esetén csak a játék létrehozója adhatja ki ezt az utasítást.
- Kivételes esetek: amennyiben többjátékos üzemmód esetén nem a játék létrehozója adja ki ezt az utasítást, akkor a kérelmet figyelmen kívül hagyja a szoftver, valamint hibaüzenetet ír ki a felhasználónak.
3.2.2.5. Beállítások
- Leírás: a főmenüből elérhető beállításokkal azonos funkciókat biztosító menüpont, a pontos leírást a 3.1.2.14. - 3.1.2.29. pontoknál találhatja meg.
- Prekondíciók: a játékon belüli menü aktív legyen.
- Post kondíciók: megjelenik a "Beállítások" almenü.
- Szokásos működés: új almenü jelenik meg.
- Alternatív esetek: N/A
- Kivételes esetek: esetleges hiba esetén naplózás.
3.2.2.6. Kilépés a főmenübe
- Leírás: ezt a funkciót választva a játékos befejezi az aktuális játékot, és a szoftver visszatér a főmenübe.
- Prekondíciók: a játékon belüli menü aktív legyen.
- Post kondíciók: megjelenik a "Főmenü".
- Szokásos működés: befejeződik az aktuális játék, és a szoftver visszatér a főmenübe.
- Alternatív esetek: amennyiben az aktuális játék nincs elmentve, akkor a program előbb felajánlja a mentés lehetőségét, s csak ezután tér vissza a főmenübe.
- Kivételes esetek: esetleges hiba esetén naplózás.
3.2.2.7. Objektum(ok) kijelölése
- Leírás: a felhasználó a saját epületeit, egységeit ki tudja jelölni, majd ezután különböző utasításokat adhat nekik. Lehetősége nyílik egyetlen objektum kijelölésére, de akár többet is vezérelhet egyszerre.
- Prekondíciók: fusson egy játék, és legyen legalább egy saját objektum a játéktéren.
- Post kondíciók: egy befoglaló téglalap jelenik meg az objektum körül, jelezve, hogy ki van jelölve.
- Szokásos működés: a játékos az egér, illetve a billentyűzet segítségével megjelöli a megfelelő objektumot, majd véglegesíti a kijelölést.
- Alternatív esetek: amennyiben a felhasználó olyan területen akar kijelölni, ahol egyetlen objektum sem tartózkodik, akkor nem történik semmi.
- Kivételes esetek: N/A
3.2.2.8. Objektum(ok) kijelölésének megszüntetése
- Leírás: a játékos megszüntetheti az objektum(ok) kijelölését. Ezt vagy úgy teszi, hogy egy újabb objektumra rakja át a kijelölést, vagy leveszi azt a kijelölt objektumról.
- Prekondíciók: legyen legalább egy kijelölt objektum.
- Post kondíciók: az objektum(ok) kijelölése megszűnik.
- Szokásos működés: a játékos az egér, illetve a billentyűzet segítségével megjelöli az új objektumot, vagy olyan területen kattint a bal egér gombbal, ahol nincs más objektum. Ennek hatására az aktuális objektum kijelölése megszűnik.
- Alternatív esetek: amennyiben a felhasználó meg akarja szűntetni a kijelölést, de nincs kijelölve egyetlen objektum sem, akkor nem történik semmi.
- Kivételes esetek: N/A
3.2.2.9. Objektum tulajdonságok megjelenítése
- Leírás: minden objektum rendelkezik különböző tulajdonságokkal. Ezzel a funkcióval megjeleníthetőek egy objektum jellemzői.
- Prekondíciók: legyen legalább egy objektum a játéktéren.
- Post kondíciók: megjelenik egy "tooltip", amely az objektum tulajdonságait tartalmazza.
- Szokásos működés: ha a felhasználó egy adott objektumon tartja az egér mutatót legalább 2-3 másodpercig, akkor megjelennek az objektum tulajdonságai egy "tooltip"-ben.
- Alternatív esetek: N/A
- Kivételes esetek: esetleges hiba esetén naplózás.
3.2.2.10. Objektum súgó megjelenítése
- Leírás: a játékon belül minden egyes objektumhoz tartozik egy részletes leírás, ha a súgó mód aktiválva van, akkor megjelenik az aktuális objektum súgója.
- Prekondíciók: legyen legalább egy objektum a játéktéren.
- Post kondíciók: megjelenik egy dialógus ablak, amely az objektum részletes leírását tartalmazza.
- Szokásos működés: ha a felhasználó egy adott objektumon kattint a bal egér gombbal és a súgó mód aktiválva van, akkor megjelenik az objektum részletes leírása egy dialógus ablakban.
- Alternatív esetek: N/A
- Kivételes esetek: esetleges hiba esetén naplózás.
3.2.2.11. Objektum speciális tevékenységének végrehajtása
- Leírás: egyes játékon belüli objektumok rendelkezhetnek speciális, csak rájuk jellemző tevékenységgel.
- Prekondíciók: legyen kijelölve egy objektum.
- Post kondíciók: végrehajtódik az objektum speciális tevékenysége.
- Szokásos működés: ha a felhasználó a megfelelő billentyű kombinációval, illetve a speciális tevékenységhez tartozó ikonra kattint, akkor végrehajtódik az objektum speciális tevékenysége.
- Alternatív esetek: egyes speciális tevékenységek csak bizonyos időközönként hajthatóak végre, ilyenkor inaktív a funkció.
- Kivételes esetek: esetleges hiba esetén naplózás.
3.2.2.12. Katonai egységek
- Leírás: a játékon belül különböző típusú egységek léteznek, ezek különböző funkciókat biztosítanak a felhasználó számára. A katonai egységek kezelésére vonatkozó use case-ek ezen use case-en belül találhatók.
- Prekondíciók: legyen kijelölve legalább egy katonai típusú egység.
- Post kondíciók: a kijelölt katonai egység végrehajtja a kívánt funkciót.
- Szokásos működés: a játékos a kijelölt egységnek különböző utasításokat adhat.
- Alternatív esetek: N/A
- Kivételes esetek: N/A
3.2.2.13. Védekezés
- Leírás: a katonai egységek utasíthatóak, hogy védekező állást vegyenek fel, ilyenkor jobban ellenállnak a különböző támadásoknak, viszont saját támadó erejük lecsökken.
- Prekondíciók: legyen kijelölve legalább egy katonai típusú egység.
- Post kondíciók: a kijelölt katonai egység védekező állást vesz fel.
- Szokásos működés: a játékos a megfelelő billentyű kombinációval, illetve a megfelelő ikonra való kattintással utasítja az egységet, hogy vegyen föl védekező állást.
- Alternatív esetek: ha nincs kijelölve katonai egység, akkor nem történik semmi.
- Kivételes esetek: esetleges hiba esetén naplózás, felhasználó értesítése hibaüzenettel.
3.2.2.14. Támadás
- Leírás: a katonai egységek utasíthatóak, hogy támadjanak meg egy ellenséges objektumot.
- Prekondíciók: legyen kijelölve legalább egy katonai típusú egység.
- Post kondíciók: a kijelölt katonai egység megtámadja a célpontot.
- Szokásos működés: a felhasználó kijelöl legalább egy katonai típusú egységet, majd a jobb egér gombbal a célponton kattintva megindíthatja a támadást.
- Alternatív esetek: ha a játékos nem egy ellenséges objektumra kattint, akkor nem indul támadás.
- Kivételes esetek: esetleges hiba esetén naplózás, felhasználó értesítése hibaüzenettel.
3.2.2.15. Mozgás
- Leírás: a katonai egységek utasíthatóak arra, hogy egy másik helyre mozogjanak.
- Prekondíciók: legyen kijelölve legalább egy katonai típusú egység.
- Post kondíciók: a kijelölt katonai egység felveszi az új pozíciót.
- Szokásos működés: a felhasználó kijelöl legalább egy katonai típusú egységet, majd a jobb egér gombbal a célpozícióra kattintva az egységek megváltoztatják a helyzetüket.
- Alternatív esetek: ha a felhasználó olyan helyre kattint, amely megközelíthetetlen az adott egység számára, akkor nem történik semmi.
- Kivételes esetek: esetleges hiba esetén naplózás, felhasználó értesítése hibaüzenettel.
3.2.2.16. Megállás
- Leírás: a katonai egységek utasíthatóak arra, hogy aktuális tevékenységüket befejezzék.
- Prekondíciók: legyen kijelölve legalább egy katonai típusú egység.
- Post kondíciók: a kijelölt katonai egység befejezi az aktuális tevékenységet.
- Szokásos működés: a felhasználó kijelöl legalább egy katonai típusú egységet, majd a megfelelő billentyű kombináció leütésével, illetve a megfelelő ikonra kattintással az egység befejezi az épp folytatott műveletet.
- Alternatív esetek: ha a felhasználó olyan egységet utasít, amely épp nem csinál semmit, akkor nem történik semmi.
- Kivételes esetek: esetleges hiba esetén naplózás, felhasználó értesítése hibaüzenettel.
3.2.2.17. Dolgozó egység
- Leírás: a játékon belül különböző típusú egységek léteznek, ezek különböző funkciókat biztosítanak a felhasználó számára. A dolgozó egységek kezelésére vonatkozó use case-ek ezen use case-en belül találhatók.
- Prekondíciók: legyen kijelölve legalább egy dolgozó típusú egység.
- Post kondíciók: a kijelölt dolgozó egység végrehajtja a kívánt funkciót.
- Szokásos működés: a játékos a kijelölt egységnek különböző utasításokat adhat.
- Alternatív esetek: N/A
- Kivételes esetek: N/A
3.2.2.18. Javítás
- Leírás: a dolgozó egységek képesek más objektumok javítására, amelyet bizonyos nyersanyagok felhasználásával tehetnek meg.
- Prekondíciók: legyen kijelölve legalább egy dolgozó típusú egység.
- Post kondíciók: a kijelölt dolgozó egység elkezdi javítani a megjelölt objektumot.
- Szokásos működés: a felhasználó kijelöl legalább egy dolgozó típusú egységet, majd a megfelelő billentyű kombináció leütésével, illetve a megfelelő ikonra kattintással, majd a célpont kijelölésével az egység elkezdi javítani a megjelölt objektumot.
- Alternatív esetek: amennyiben nem áll rendelkezésre a megfelelő mennyiségű nyersanyag a javításhoz, akkor az egység várakozni fog. Ha a kijelölt célpontot nem szükséges javítani, akkor nem történik semmi.
- Kivételes esetek: esetleges hiba esetén naplózás, felhasználó értesítése hibaüzenettel.
3.2.2.19. Építés
- Leírás: a dolgozó egységek képesek új épületek epítésére, amelyet bizonyos nyersanyagok felhasználásával tehetnek meg.
- Prekondíciók: legyen kijelölve legalább egy dolgozó típusú egység, és álljon rendelkezésre a megfelelő mennyiségű nyersanyag.
- Post kondíciók: a kijelölt dolgozó egység elkezdi építeni a megfelelő épületet.
- Szokásos működés: a felhasználó kijelöl legalább egy dolgozó típusú egységet, majd a megfelelő billentyű kombináció leütésével, illetve a megfelelő ikonra kattintással, majd az üres célhely kijelölésével az egység elkezdi építeni a megfelelő épületet.
- Alternatív esetek: amennyiben nem áll rendelkezésre a megfelelő mennyiségű nyersanyag az építéshez, akkor az egység várakozni fog. Ha a kijelölt célhelyre nem lehet építeni, akkor nem történik semmi.
- Kivételes esetek: esetleges hiba esetén naplózás, felhasználó értesítése hibaüzenettel.
3.2.2.20. Mozgás
Ez a use case megegyezik a katonai egységeknél leírt use case-zel(3.2.2.15.), azzal a különbséggel, hogy az ott leírt funkciók a dolgozó egységre értendők.
3.2.2.21. Épületek
- Leírás: a játékon belül különböző típusú objektumok léteznek, ezek különböző funkciókat biztosítanak a felhasználó számára. Az épületek kezelésére vonatkozó use case-ek ezen use case-en belül találhatók.
- Prekondíciók: legyen kijelölve legalább egy épület.
- Post kondíciók: a kijelölt épület végrehajtja a kívánt funkciót.
- Szokásos működés: a játékos a kijelölt épületnek különböző utasításokat adhat.
- Alternatív esetek: N/A
- Kivételes esetek: N/A
3.2.2.22. Új egység létrehozása
- Leírás: egyes épületek létre tudnak hozni új egységeket, ezen funkciót írja le a use case.
- Prekondíciók: legyen kijelölve legalább egy épület.
- Post kondíciók: létrejön az új egység.
- Szokásos működés: a játékos az épület kijelölése után a megfelelő billentyű kombinációval, illetve a megfelelő ikonra kattintással megadhatja a létrehozni kívánt egység típusát, illetve darabszámát. Ezután az egységek gyártása elkezdődik.
- Alternatív esetek: amennyiben nem áll rendelkezésre a megfelelő mennyiségű nyersanyag a gyártáshoz, akkor az épület várakozni fog. Ha már nem lehet több egységet létrehozni, akkor nem történik semmi.
- Kivételes esetek: esetleges hiba esetén naplózás, felhasználó értesítése hibaüzenettel.
3.2.2.23. Fejlesztés
- Leírás: egyes épületeket tovább lehet fejleszteni, ezáltál javulnak bizonyos tulajdonságaik, illetve újabb egységeket tudnak gyártani. A különböző egységek fejlesztését is az épületeken keresztül lehet elérni.
- Prekondíciók: legyen kijelölve legalább egy épület.
- Post kondíciók: a kijelölt fejlesztés végrehajtódik.
- Szokásos működés: a játékos az épület kijelölése után a megfelelő billentyű kombinációval, illetve a megfelelő ikonra kattintással kijelölheti a megfelelő fejlesztést. Ezután a fejlesztés elkezdődik.
- Alternatív esetek: amennyiben nem áll rendelkezésre a megfelelő mennyiségű nyersanyag a fejlesztéshez, akkor az épület várakozni fog.
- Kivételes esetek: esetleges hiba esetén naplózás, felhasználó értesítése hibaüzenettel.
3.2.2.24. Kiürítés
- Leírás: egyes épületek képesek egységeket befogadni, védelmet biztosítva számukra. A befogadott egységek képesek az épületen belülről támadni, védekezni. Ezzel a funkcióval az épületben lévő egységek küldhetők ki.
- Prekondíciók: legyen kijelölve legalább egy épület.
- Post kondíciók: az épületben lévő egységek kimennek az épületből.
- Szokásos működés: a játékos az épület kijelölése után a megfelelő billentyű kombinációval, illetve a megfelelő ikonra kattintással kiküldheti a bent tartózkodó egységeket.
- Alternatív esetek: amennyiben nem tartózkodik egy egység sem az épületben, akkor a funkció inaktív.
- Kivételes esetek: esetleges hiba esetén naplózás, felhasználó értesítése hibaüzenettel.
3.2.2.25. Támadás(opcionális)
- Leírás: egyes épületek képesek más objektumokat megtámadni. A use case ezt a funkciót írja le.
- Prekondíciók: legyen kijelölve legalább egy épület.
- Post kondíciók: a kijelölt épület megtámadja a célpontot.
- Szokásos működés: a felhasználó kijelöl legalább egy épületet, majd a jobb egér gombbal a célponton kattintva megindíthatja a támadást.
- Alternatív esetek: ha a játékos nem egy ellenséges objektumra kattint, akkor nem indul támadás, illetve ha a célpont túl messze van, akkor sem történik semmi.
- Kivételes esetek: esetleges hiba esetén naplózás, felhasználó értesítése hibaüzenettel.
3.2.2.26. Csapatkezelés
- Leírás: a játékon belül különböző típusú egységek léteznek, ezek különböző funkciókat biztosítanak a felhasználó számára. Ezek az egységek csapatokba is szervezhetőek, így a felhasználó egyszerre utasíthajta őket.
- Prekondíciók: legyen kijelölve legalább két egység, vagy egy csapat.
- Post kondíciók: a kijelölt csapat végrehajtja a kívánt funkciót.
- Szokásos működés: a játékos a kijelölt csapatnak különböző utasításokat adhat.
- Alternatív esetek: N/A
- Kivételes esetek: N/A
3.2.2.27. Összevonás
- Leírás: a játékos kijelölhet egyszerre több egységet, és ezeket összevonhatja egy csapatba, együtt irányítva őket. Lehetőség nyílik több csapat összevonására is.
- Prekondíciók: legyen kijelölve legalább két egység, vagy két csapat.
- Post kondíciók: a kijelölt egységek, illetve csapatok összevonódnak.
- Szokásos működés: a felhasználó kijelöl legalább két egységet, vagy két csapatot, majd a csapatnak egy sorszámot adva később a megfelelő billentyű kombinációval elérheti azt.
- Alternatív esetek: amennyiben csak egy egység, illetve csapat van kijelölve, akkor nem történik semmi.
- Kivételes esetek: esetleges hiba esetén naplózás, felhasználó értesítése hibaüzenettel.
3.2.2.28. Szétbontás
- Leírás: összevont csapatokat szét is lehet bontani önálló egységekre.
- Prekondíciók: legyen kijelölve legalább egy csapat.
- Post kondíciók: a kijelölt csapat megszűnik.
- Szokásos működés: a felhasználó a megfelelő billentyű kombinációval kijelöl egy csapatot, majd szétbontja azt.
- Alternatív esetek: N/A
- Kivételes esetek: esetleges hiba esetén naplózás, felhasználó értesítése hibaüzenettel.
3.2.2.29. Formáció
- Leírás: a csapatokat különböző formációkba is lehet szervezni, ezáltál hatékonyabbak lesznek mind a támadásnál, mind a védekezésnél. Az egyes formációk által a csapaton belüli egységek bizonyos tulajdonságaikra bónusz értékeket kapnak. Számos beépített formáció létezik, de ezenkívül a felhasználó saját formációkat is létrehozhat.
- Prekondíciók: legyen kijelölve legalább egy csapat.
- Post kondíciók: a kijelölt csapat felveszi a megfelelő formációt.
- Szokásos működés: a felhasználó a megfelelő billentyű kombinációval kijelöl egy csapatot, majd a formációhoz tartozó billentyűkombinációt leütve, illetve a megfelelő ikonra kattintva a kijelölt csapat felveszi a megfelelő formációt.
- Alternatív esetek: N/A
- Kivételes esetek: esetleges hiba esetén naplózás, felhasználó értesítése hibaüzenettel.
3.2.2.30. Chat
- Leírás: az alkalmazás lehetőséget biztosít a játékban résztvevő felhasználók számára, hogy egymással kommunikáljanak.
- Prekondíciók: fusson egy játék.
- Post kondíciók: megjelenik egy beviteli mező, ahová a felhasználó beírhatja a megfelelő üzenetet.
- Szokásos működés: a játékos az üzenetek számára elkülönített részen láthatja a többi felhasználó által küldött üzeneteket, valamint egy külön beviteli mezőbe írhatja be a saját üzeneteit.
- Alternatív esetek: ha a felhasználó nem megengedhető üzeneteket írna be, akkor ezt az alkalmazásnak szűrnie kell a többi felhasználó nyugalma érdekében. A játékban elérhetők különböző csalási módszerek az egyjátékos üzemmódban, ezeket a titkos kódokat szintén a chat részben kell megadni.
- Kivételes esetek: esetleges hiba esetén naplózás, felhasználó értesítése hibaüzenettel.
3.2.2.31. Csapat üzenet
- Leírás: a felhasználó küldhet üzenetet a saját csapatának, ilyenkor a csapaton belül minden résztvevő megkapja az üzenetet.
- Prekondíciók: legyen aktív a chat beviteli mező.
- Post kondíciók: a csapat tagjainak megjelenik az üzenet.
- Szokásos működés: a játékos az üzenetet a megfelelő előtaggal ellátva jelezheti a rendszernek, hogy egy csapat üzenetről van szó.
- Alternatív esetek: a felhasználó hibás előtagot ad meg, ekkor hibaüzenetet jelenít meg a program.
- Kivételes esetek: esetleges hiba esetén naplózás, felhasználó értesítése hibaüzenettel.
3.2.2.32. Privát üzenet
- Leírás: a játékos küldhet üzenetet egy adott felhasználónak, ilyenkor csak a megadott felhasználó kapja meg az üzenetet.
- Prekondíciók: legyen aktív a chat beviteli mező.
- Post kondíciók: a megjelölt felhasználónál megjelenik az üzenet.
- Szokásos működés: a játékos az üzenetet a másik felhasználó nevével kezdi, jelezve a rendszernek, hogy egy privát üzenetről van szó.
- Alternatív esetek: a felhasználó hibás előtagot(nem létező játékos) ad meg, ekkor hibaüzenetet jelenít meg a program.
- Kivételes esetek: esetleges hiba esetén naplózás, felhasználó értesítése hibaüzenettel.
3.2.2.33. Térképkezelés
- Leírás: a játékosnak lehetőséget kell biztosítani, hogy a játékterület különböző részeit el tudja érni. Ezen funkciókat írja le ez a use case.
- Prekondíciók: fusson egy játék.
- Post kondíciók: végrehajtódik a kívánt térkép művelet.
- Szokásos működés: végrehajtódik a kívánt térkép művelet.
- Alternatív esetek: N/A
- Kivételes esetek: N/A
- Leírás: a játékon belüli user interface része egy úgynevezett minimap, amely a játékterület kicsinyített térképe. Ez a térkép gyors pozícionálást biztosít a felhasználó számára, valamint rálátást ad a játékban zajló eseményekre.
- Prekondíciók: fusson egy játék.
- Post kondíciók: a minimap-en kijelölt terület láthatóvá válik a teljes nézeten.
- Szokásos működés: a játékos a bal egér gombbal kattint a minimap egy részére, és ennek hatására a teljes nézeten megjelenik a játékterület kijelölt része.
- Alternatív esetek: N/A
- Kivételes esetek: esetleges hiba esetén naplózás, felhasználó értesítése hibaüzenettel.
3.2.2.35. Pozícionálás a térképen
- Leírás: amennyiben a játékos olyan objektumot jelöl ki, amely nem látható a teljes nézeten, akkor az alkalmazás automatikusan az objektumra pozícionál.
- Prekondíciók: fusson egy játék és ne legyen látható a teljes nézeten a kijelölni kívánt objektum.
- Post kondíciók: az alkalmazás frissíti a teljes nézetet.
- Szokásos működés: a felhasználó aktívvá tesz egy nem látható objektumot, ennek hatására a szoftver a teljes nézetet a megfelelő térkép pozícióba állítja.
- Alternatív esetek: ha az objektum már látható a teljes nézeten, akkor nem történik semmi.
- Kivételes esetek: esetleges hiba esetén naplózás, felhasználó értesítése hibaüzenettel.
3.2.2.36. Scrollozás
- Leírás: a játékosnak lehetősége nyílik objektumtól függetlenül változtatni a teljes nézetet. Ezt a funkciót írja le ez a use case.
- Prekondíciók: fusson egy játék.
- Post kondíciók: folyamatosan frissül a teljes nézet pozíciója.
- Szokásos működés: a felhasználó a teljes nézet valamelyik széléhez viszi az egér kurzort, ennek hatására a teljes nézeten látható terület a megfelelő irányban elmozdul.
- Alternatív esetek: ha a játékterület szélét elérte a teljes nézet, akkor nem történik semmi.
- Kivételes esetek: esetleges hiba esetén naplózás, felhasználó értesítése hibaüzenettel.
3.2.2.37. Súgó mód ki/be kapcsolása
- Leírás: az alkalmazásban minden egyes objektum, illetve funkció rendelkezik részletes leírással. Amennyiben a súgó mód be van kapcsolva, akkor egy objektumra kattintva megjelenik annak részletes leírása.
- Prekondíciók: fusson egy játék.
- Post kondíciók: megjelenik az objektum részletes leírása.
- Szokásos működés: a játékos egy objektumra kattintva lekérheti a hozzá tartozó részletes leírást.
- Alternatív esetek: amennyiben az objektumhoz nem tartozna leírás, akkor a dialógus ablakban ezt jelezzük a felhasználónak.
- Kivételes esetek: esetleges hiba esetén naplózás, felhasználó értesítése hibaüzenettel.
3.2.3. A diagramon szereplő use case-ek kapcsolatai
A diagramon szereplő use case-ek hierarchikus kapcsolatban állnak egymással. Egyes use case-ek mások részét képezik. Ezek a kapcsolatok elsősorban nem alá-, vagy felérendeltséget jelentenek, hanem tartalmazást.
A "Wüstenplanet" project egyik fontos célkitűzése, hogy az elkészült alkalmazás lehetőséget biztosítson a hálózaton keresztüli játékra. Ennek megfelelően a szoftver Hálózati komponensének számos követelménynek kell eleget tennie.
Kétféle hálózati játék lehetősége adott a felhasználók számára:
- az egyik helyi hálózaton keresztül teszi elérhetővé a többjátékos üzemmódot. Ehhez nincs szükség másra, mint hogy a játékban résztvevő felhasználók számítógépei össze legyenek kötve hálózatba. Ekkor a játékosok egyike létre tud hozni egy szervert, megadva annak nevét, a különböző hálózati paramétereket, a kiválasztott pályát, a játékosok számát, csapatokat tud kialakítani, el tudja indítani a játékot. A többi játékos dolgát megkönnyítendő, a szoftver automatikusan detektálja az elérhető szervereket a helyi hálózaton, így a felhasználónak csak egy listából kell kiválasztania a megfelelőt. Csatlakozáskor megadhatja a felhasználói nevét, választhat magának színt, fajt, valamint a szerver létrehozója engedélyezhet további beállítási lehetőségeket is.
- a másik lehetőség az Interneten üzemeltetett dedikált szervereken keresztüli játék. A dedikált szerverek kifejezetten a játék kiszolgálására jöttek létre, különleges hardware konfigurációkkal ellátva. A felhasználók előzetes regisztráció végrehajtása után kapnak engedélyt, hogy a szerverek szolgáltatásait igénybe vegyék. A program többjátékos üzemmód indításakor lekérdezi a hivatalos szerverek adatait, felkínálva a választási lehetőséget a játékosnak. Listázza a különböző szerverek nevét, kapacitását, a jelenlévő felhasználók számát, az aktuális játékokat, az átlagos válaszidőt, valamint lekérdezhető a játékosok rangsora is, amely megteremti a résztvevők rangsorolásának lehetőségét. A kiválasztott szerverhez való csatlakozás után a felhasználó kiválasztja a megfelelő játékot, majd elegendő játékos esetén elindul a játék.
A szoftver a TCP/IP protokoll szolgáltatásait fogja használni, annak elterjedtsége miatt.
A Hálózati komponens fontos funkcionális egysége a chat modul. Többjátékos üzemmód esetén elengedhetetlen, hogy a játékban résztvevők képesek legyenek egymással kommunikálni. Ez megkönnyíti a csapatok mozgásainak összehangolását. A felhasználók kétféle üzenettípust küldhetnek az alkalmazáson belül:
- Privát üzenet: ezt az üzenettípust csak egyetlen felhasználó fogja megkapni, nevezetesen az, akit a feladó címzettként megjelöl.
- Csapat üzenet: többjátékos üzemmód esetén a felhasználók alakíthatnak csapatokat is, az ilyen jellegű üzeneteket csak a feladó csapatába tartozó játékosok fogják megkapni.
A kimenő üzeneteket egy beviteli mezőbe írhatja be a felhasználó, míg a beérkező üzeneteket az alkalmazás egy külön erre a célra elkülönített részen fogja kiírni. Az üzeneteket a játék különböző szinezésekkel látja el, hogy a felhasználó könnyen meg tudja különböztetni az eltérő típusú üzeneteket. A szoftver része lesz egy beépített szűrő, amely kiszűri az üzenetekből a felhasználók nyugalmát megzavaró obszcén szavakat, kifejezéseket.
4.
Használhatóság
A felhsználói felület a jelenleg használatos stratégiai játékokhoz hasonló, annak érdekében, hogy a felhasználó minél hamarabb otthon érezze magát a programban. Az irányítás legfőbb eszköze az egér. Ezt mozgatva navigálhatunk a térképen, a bal gombbal kiválaszthatjuk egységeinket, a jobb gombbal akció parancsot adhatunk nekik (“menj ide”, “lődd ezt”). Az épületek tulajdonságait a képernyő szélén ikonokon keresztül érhetjük el. Az ábrák egyértelműek lesznek ezzel elősegítve a gyors alkalmazkodást. A térképen való könnyebb eligazodást elősegítendő lesz egy mini térkép az egyik sarokban, melynek segítségével a nagy képernyőn könnyebben mozoghatunk. Azokat a felhasználókat, akik életükben először játszanak valós idejű stratégiával, egy úgynevezett tutorial vezetheti végig a főbb irányítási funkciókon. Ez megtanítja az épületek tulajdonságait, szükségességüket és a mozgó egységek specialitásait. Az alkalmazandó stratégiákra azonban a játékosnak később magától kell rájönnie.
A pályák elején minden esetben megtudja a játékos a küldetés célját, ezt igyekszünk nem a “Pusztítsd el az összes ellenfelet a pályán!” célra korlátozni. (Persze akik ezt szeretik azoknak sem kell rögtön megijedni, ilyen is lesz.) A játékidőt az internetről letölthető, folyamatosan bővülő pályákkal gyakorlatilag a végtelenségig ki lehet tolni. Lesznek azonban olyan küldetések melyek pusztán néhány percig tartanak, de a történet szempontjából lényegesek és olyanok is, melyek akár hosszú órákra lekötik a felhasználót.
Mivel számunkra nagyon fontos cél, hogy a felhasználó ne azzal foglalkozzon, hogy eligazodjon a bonyolult játéktörténet és játék funkciók között ezért a tutorial mellett más részletesebb segítséget is szeretnénk nyújtani a felhasználó számára, a minél zökkenőmentesebb betanulás és játék elősegítésére. Ezért a programhoz mellékelünk egy kézikönyvet(dobozos verzió esetén valódi könyv, online verzió esetén pedig html dokumentum), melyben minden egyes programfunkciót, beleértve az egységek és objektumok tulajdonságait, a menürendszeren keresztül elérhető funkciókat részletesen dokumentálunk. Ezen kívül bővebb ismertető található benne a háttértörténetről, de a történet befejezéséhez végig kell játszani a játékot.
5.
Megbízhatóság
-
Mivel az internetes játéklehetőséget folyamatosan bíztosítani kell a játékosok számára, a dedikált szervernek napi 24 órában rendelkezésre kell állnia. Elkerülhetetlen azonban a szerver évi egy-két alkalommal bekövetkező 4-5 órási időtartamú karbantartása, erre az időtartamra a szolgáltatás szünetel.
-
A fejlesztő csapat heti rendszerességgel megvizsgálja a felmerülő hibákat, és a hiba nagyságától függően legkésőbb egy hónapon belül javításokat hoz nyilvánosságra.
-
A beépített automatikus frissítés funkció segítségével a program naprakészen tartja a hibajavításokat, így az új verziók telepítésével nem kell a felhasználóknak bajlódniuk. Az internetes kapcsolattal nem rendelkező játékosok CD-n is megrendelhetik a hibajavító csomagokat.
6.
Teljesítmény
Ideális esetben a játék az alábbi teljesítmény tényezők mellett működik:
-
A hálózati válaszidő átlagosan 2-8 ms körül ingadozik, ez az érték nagyban függ a hálózathoz kapcsolódó játékosok számától.
-
A játék képfrissítési ideje igen széles skálán mozog attól függően milyen paramétereket állított be a felhasználó a grafikai menüben. Több részletet tartalmazó kép 25-30 képváltás/s, közepes kidolgozottságú képeknél 35-45 képváltás/s, míg a legkevésbé részletgadag képeket 50-60 képváltás/s-mal képes megjeleníteni a program.
-
A dedikált szerver 100 Mb/s-os sávszélességgel üzemel, maximálisan 500 felhasználó egyidejű játékát tudja biztosítani. Amennyiben ezt a keretet elérné az egyszerre jelen lévő játékosok száma, az újabb csatlakozási kísérleteket a szerver visszautasítja. Ezen szituációk ritkábbá tétele érdekében a szerver a hosszabb ideje tétlen (idle) felhasználók kapcsolatát automatikusan bontja.
A szoftver használatához és fejlesztéséhez elengedhetetlen a Java környezet megléte. Ez a korlátozás valamelyest csökkenti a teljesítményt, azonban ezt a korlátozást nagyban kompenzálja a Java által biztosított platformfüggetlenség, illetve a fejlett hálózati szolgáltatások. A projekt célkitűzése, hogy a játék az alábbi minimális hardverkonfiguráción is kielégítően fusson:
-
Pentium 300 MHz-es processzor
-
64 MB RAM
-
CD-ROM
-
SVGA megjelenítő
-
300 MB háttértároló kapacitás
7.
Támogatottság
Használandó kódolási szabvány:
Szerver adminisztráció: A szerver üzemeltetésének gördülékenységét és biztonságosságát a szerver adminisztrátorok (adminok) munkája segíti elő. Ebben az alábbi funkciók lehetnek segítségükre:
-
Szerver állapotával kapcsolatos funkciók: Kliensek számának maximalizálása, hoszt nevének beállítása, privát jelszó beállítása, valamint időnként szükséges lehet a teljes szerver leállítása is.
-
Felhasználókkal kapcsolatos funkciók: Szükség lehet a felhasználók adatainak illetve jogosultságainak a menedzselésére, valamint az etikátlan, rosszindulatú felhasználók bannolására, kitiltására egyaránt.
-
A rendszeren végrehajtott műveletekről folyamatosan log fájl készül, ennek segítségével kideríthető, mely műveletek váltották ki a fellépő hibákat, megléte nélkülözhetetlen a program utólagos kijavításához.
-
A felhasználóknak is lehetősége nyílik webes felületen jelenteni az esetleges bugokat, ez szintén nagy segítséget nyújt az utólagos tökéletesítésben.
8.
Tervezési korlátozások
A program Java nyelven
készül, ami rengetek lehetőséget nyújt, azonban hátrányaival is
számolni kell. Az első és legnagyobb hátránya a más programozási
nyelvekhez (pl .C++) viszonyított lassúsága, ami éppen egy valós
idejű játékprogramnál fontos szempont. A tervezés során végig szem
előtt kell tartani a sebességet, amiről igazán pontos képet csak az
implementálás során kapunk. Mindenképp el kell kerülni, hogy a
kódolás során derüljön ki, a papíron addig „jól működő”
program a valóságban túl lassú.
Közvetlenül a kódolást az
Eclipse fejlesztőeszköz fogja segíteni, ám ehhez (az SRS írásának
időpontjában) még nem áll rendelkezésre egy teljes értékű GUI
szerkesztő, ezenkívül a csoportmunkát sem támogatja elég hatékonyan.
(Összevetve például a Visual Studio 2005-tel.)
Korszerű grafikai
segédprogramokkal (pl. MAYA) szinte bármit el lehet készíteni, ami
csak elképzelhető, viszont nem szabad megfeledkezni az időről és az
erőforrásigényről. Előbbi azért fontos, mert ugyan bármit el lehet
velük készíteni, de ez nem könnyű munka, sok időt emészt fel, ezzel
szemben az alkalmazást rövid határidőn belül kell befelyezni. Utóbbi, az
erőforrásigény pedig ismét a sebesség tekintetében játszik fontos
szerepet. Egy feleslegesen túlságosan kidolgozott objektum eredménye
szintén a játék lelassulása lehet. Meg kell találni az optimumot a
szép grafika és a sebesség között. Meg kell még említeni, hogy az
efféle grafikus programok igen drágák, az anyagiak is lényeges
korlátozó tényezők.
A hálózat
áteresztőképessége szintén fontos tervezési szempont. A játék
hálózati modulját úgy kell megírni, hogy többjátékos módban a
sebesség megmaradjon, a hálózatot pedig minél kisebb mértékben
terhelje. A Hálózati komponens írásakor derül ki igazán, hogy miért
érdemes a programot Javaban megírni. Sokkal többet nyerünk a Java
kimagasló hálózati lehetőségei igénybevételekor, mint amennyit a
grafika és sebesség terén elvesztettünk. Mindemellett sok múlik a
szerveren is (ami a hálózatban játszókat összekapcsolja), úgy a
szoftver, mint a hardver terén.
A program tervezését
befolyásolják még a RUP megkötései, amelyek mindegyikének igyekszünk
eleget tenni. A tervezés során szintén segítségünkre van a Java nyelv
modernitása, objektum-orientáltsága és a fejlesztést megkönnyítő
szinte végtelen számú csomag.
9. On-line dokumentáció és Help rendszer
Az elkészült alkalmazáshoz mellékeljük a pontos rendszerkövetelményeket és a részletes telepítési és konfigurációs útmutatót (beleértve a Java Virtuális Gép telepítésének leírását is), valamint a Felhasználói kézikönyvet. Ezek segítségével az informatikában kevésbé járatosak is használatra kész programot kapnak könnyen és gyorsan. Interneteléréssel rendelkező felhasználóinknak további szolgáltatásokat is nyújtunk, úgymint:
- Honlapunkon megtalálhatók a termékkel kapcsolatos legfrissebb információk (javítások, kiegészítések, stb.). Innen az érdeklődők első kézből kaphatják meg kérdéseikre a választ.
- Mindig naprakész leírásokat olvashatnak. A mellékelt leírások hibajavított változatai is letölthetők. A hibajavításokon kívül a dokumentumok módosulhatnak még a felhasználók visszajelzései, technikai és egyéb változások folyományaként. (Mint például új perifériákkal való együttműködés.)
- A legújabb frissítések letöltésének lehetősége (akár a honlapunkról, akár a programból). A programot úgy tervezzük, hogy az könnyen frissíthető legyen, ami az esetleges bugok, új perifériák támogatása, stb. miatt szükséges. Másik fontos tervezési szempont, hogy egyszerűen lehessen hozzá kiegészítéseket készíteni, amit az Interneten teszünk mindenki számára ingyenesen elérhetővé.
- Fórumot működtetünk, ahol a játékosok egymásnak adhatnak tanácsot, vitázhatnak, felhívhatják mások figyelmét az általuk készített kiegészítésekre. Alkalomadtán maguk a fejlesztők is hozzászólhatnak a fórumhoz.
- Nyilvánossá tesszük a fejlesztés során készült dokumentációk egyes részeit, így jobban megismerhető programunk.
Az egyes leírások, dokumentációk, help-ek előreláthatóan HTML formátumban kerülnek publikálásra a platformfüggetlenség megőrzésének céljából.
10. Felhasznált kész komponensek
Java 2 Platform, Standard Edition (J2SE)
Ingyenes
A J2SE (és a JRE) szabadon letölthető, kereskedelmi programok készítésére szabadon felhasználható. A JRE szabadon mellékelhető az elkészült alkalmazáshoz. További információ: http://java.sun.com
Eclipse SDK 3.1
Ingyenes
Szabadon felhasználható (akár üzleti) Java alkalmazások készítésére. Az Eclipse Public License (EPL) itt (http://www.eclipse.org/org/documents/epl-v10.php) olvasható.
GIMP 2.3.6
Ingyenes
Szabadon terjeszthető és használható program olyan célokra, mint fényképek retusálása, képek létrehozása és képek megtekintése. A GIMP használatának feltételeit a GNU GPL szabályozza, amely http://www.gimp.org/about/COPYING címen érhető el.
Adobe Photoshop CS2
Adobe internetes boltjában: Ł485 (kb. 187 450 Ft)
www.kimsoft.hu honlapon: 202 500 Ft
A Adobe Photoshoppal készült képek szabadon felhasználhatók az alkalmazásban. A program licenszszerződése itt olvasható: http://www.adobe.com/products/eulas/main.html
Sound Forge 8.0 for Windows
A sonymediasoftware.com ajánlatában: $ 299.96 (kb. 64 000 Ft)
www.kimsoft.hu honlapon: 78 900 Ft
A termék honlapja: http://www.sonymediasoftware.com/Products/ShowProduct.asp?PID=961
Autodesk Maya
A termék honlapja: http://usa.autodesk.com/adsk/servlet/index?id=6871843&siteID=123112
11.
Interfészek
11.1. Felhasználói interfészek
A felhasználó kényelme érdekében a megtervezett felhasználói felületen olyan átgondolt, kifejező elemekkel találkozik, amik esztétikusan, a játék hangulatának varázsát átadva nagy kifejezőerővel bírnak. A stílusos szín és animáció kompozíciók összhangban állnak egymással, az elérhető menü elemek és irányító, parancsadó szervek jól felismerhető ikonnal, ábrával és/vagy felirattal segítik a felhasználót a tájékozódásban. A kurzort az elemek felé véve pedig segítségként pár szóval jellemzi az érintett elemet.
A kialakítás különbözik a szokványos felhasználó programoktól, hisz játékunknál a cél a szórakoztatás, az egyszerű átláthatóság és a mindent átölelő egyedi hangulat. A kezelőfelület egyaránt megfelel a fiatalabb korosztály elvárásainak az animált, grafikus irányítással, és a felnőttek igényeit is kielégítik a könnyen tanulható, pozícionálható kezelőszervek.
Előzetes terv a játék főmenüjére:

3. ábra. A főmenü user interface terve
Játék közbeni felhasználói felület előzetes terve:

4. ábra. A játékon belüli felhasználói felület előzetes terve
11.2. Hardware interfészek
A legkülönfélébb hardware részegységek lekezeléséről, a Java egységesített illesztőfelülete miatt külön nem kell gondoskodnunk.
11.3. Software interfészek
Játékunk támogatja a csalás elleni védelmet, ügyelve a fair játékra. Ennek érdekében a PunkBuster védelmi szoftverrel együttműködik, amely lehetőséget biztosít arra, hogy a programmal védett szerverre, csak csalásokat távoltartva tudjunk belépni. Ellenkező esetben figyelmeztetést kap a felhasználó.
Szoftverünk támogatja a népszerű All-Seeing Eye programot, amivel a játékhoz kapcsolódó szerverek közt lehet tallózni a hálózaton. Nagyban segíti az interneten való kényelmes játszást.
11.4. Kommunikációs interfészek
A program lehetőséget nyújt hálózaton történő véget nem érő, önfeledt játékra. A többjátékos üzemmódan akár tizenhat játékos társával is felveheti a küzdelmet. Erre lehetősége nyílik otthoni hálózaton és szélessávú internet kapcsolaton keresztül is. Ehhez mindössze TCP/IP - protokollt támogató eszközre van szüksége! Helyi hálózaton létrehozhat saját játékszervert, ahová barátai kapcsolódhatnak, beállíthatja a hálózai paramétereket, a hálózaton megjelenő nevet, a kívánt pályát, játékon belüli időjárási viszonyokat és beiktathat számítógépes ellenfeleket is. A hálózaton lévő, létrehozott szerverekre egyszerűen, tallózás után csatlakozhat.
Internetes játékhoz szükséges internetes kapcsolat megléte, a program listát ad az összes hivatalosan működő, elérhető szerver nevéről, mellettük feltüntetve a rajtuk játszók számát, aktuális pályát, és a hálózati válaszidőt. Lehetőség van saját név regisztrálására, ekkor központi nyilvántartásban szereplő felhasználók pontszámaik alapján rangsorolódnak. Helyi hálózathoz hasonlóan interneten is tudunk saját szervert létrehozni és privát szerverhez kapcsolódni, ha ismerjük a hálózati címét.
Játék menete folyamán a felhasználók üzenetet válthatnak egymással, a chat ablakon keresztül. Üzenetváltásokon kívül egymással diplomáciai kapcsolat is kialakítható. A nyerő stratégiához erre feltétlenül szükség van.
12.
Alkalmazott szabványok
12.1. Kötelezően alkalmazandó szabványok
A program szigorúan alkalmazkodik az erőszakmentes játék érdekében az alábbi előírásokhoz. Aggressziót kiváltó, véres, brutális, gyerekeknek nem való tartalmat szűrjük, illetve csak megadott kor felett engedélyezzük.
Magunkra nézve kötelezőnek érezzük az OpenSource szabályokat a forrás elérhetősége tekintetében.
12.2. Választás alapján alkalmazott szabványok
A jobban átlátható, könnyen megérthető forráskód érdekében követjük a Java kódolási konvenció-t. Ezáltal a fejlesztőcsapaton kívüleső személyek, programozók hatákonyabban tudják módosítani, kiegészíteni.
A program az http://www.esrb.com-on lévő minél jobb megítélés érdekében rendelkezik tartalomszűréssel, a különböző korú felhasználók és az aggódó szülők számára.
13.
Mellékletek
13.1. Információ források
A
projekt létrejöttének
nélkülözhetetlen forrás irodalma:
- Ian
Somerwille
Software engineering, 6th Edition, Addison Wesley,
2001
- Erik Bethke
Game Development and Production, Wordware Publishing, Inc., 2003
- Tom Meigs
Ultimate Game Design: Building Game Worlds, McGraw-Hill/Osborne, 2003
Internetes oldalak:
13.2. A projekt egyéb dokumentumai
Vízió dokumentum
Projekt terv
Felhasználói kézikönyv
Szótár
Munkanaplók
Értékelési táblázatok