Csoport
neve: TheBoyz
Feladat
sorszáma: H4
Feladat
címe: Rendszertervezés
Rendszertervezés
Dokumentum
Gyakorlatvezető::
Mileff
Péter
Csoport
tagok:
|
Longaver
Szabolcs
|
ECY3RI
|
jobbranyitbaltazar@gmai.com
|
|
Zagyva
Zsombor Gábor
|
FXVAUU
|
zsombor.zagyva@gmail.com
|
|
Laczik
Péter
|
VG5EHA
|
peterlaczik04@gmail.com
|
|
Valkó
Attila László
|
U7W4RZ
|
valkoatti@hotmail.com
|
|
Szekeres
Bendegúz
|
Z3VP2R
|
imp.bende@gmail.com
|
BEADÁSI DÁTUM
Történet
|
Dátum
|
Verzió
|
Leírás
|
Szerző
|
| 2024-11-03 |
1.0 |
Struktúra megalkotása |
Valkó Attila
László |
| 2024-11-17 |
1.0.1 |
Adatmodellek pont első verziója. |
Longaver Szabolcs |
| 2024-11-19 |
1.1 |
Felhasználói felület leírása, Adatmodellek pont |
Longaver Szabolcs |
Tartalomjegyzék
1. Bevezetés
2.
Felhasználói felület
3. Adatmodellek
3.1.
Adatbázis kezelő kiválasztása
3.2. Szemantikai
adatmodell
3.3
Relációs adatmodell
3.4. Az
adatbázis kezelővel kapcsolatot
tartó osztályok
4. A
funkcionális modell
kiegészítése
1.
Bevezetés
2.
Felhasználói felület
2.1. Főmenü
A főmenü három részből áll: a
bal alsó
sarokban elhelyezkedő logóból, a
képernyő bal
oldalát kitöltő menügombokból
(Új
játék,
játékállás
betöltése,
beállítások,
kilépés stb.) valamint egy dinamikus
háttérből. Bármely gomb megnyomása
után eltűnik a játék logója és a
főbb menüopciók gombja. Ezek csak akkor jelennek meg
újból, ha egy almenüből visszatérünk
erre a felületre.
 |
 |
| A főmenü két állása. A képernyő jobb
oldalán az
utolsó mentésben megszerzett hajó
úszik a
vízen. Ha a játékos még nem
szerzett meg
hajót az utolsó mentésében,
vagy még
nem rendelkezik elmentett
játékállással, a
hajó helyett egy félig elsüllyedt
víztorony
látható. |
2.1.1. Új Játék
Az Új játék gomb megnyomása után
elérünk a kampányválasztó
képernyőre. A képernyő bal egynegyedét egy
gördülő menü tölti ki, melyben
megtalálható minden telepített kampány, a
telepítés ideje szerint rendezve növekvő sorrendben
(ezáltal az alapjáték saját kampánya
mindig legfelül helyezkedik el). A kampányok neve alatt
kisebb betűmérettel a készítő van
feltüntetve. A maradék háromnegyedben egy, a
kampányhoz releváns nagy illusztráció
található. A bal aló sarokban egy Vissza gombot
találunk, mely visszavisz a főmenübe, a jobb alsóban
egy Játék! gomb helyezkedik el, mellyel elkezdhetjük
a kalandot.
2.1.2. Betöltés
A Betöltés gomb megnyomása után
egy gördülő menüvel találkozunk. Itt az
elmentett játékállások a mentés
időpontja szerint kerülnek rendezésre csökkenő
sorrendben, így a legújabb mentés mindig
legfelül helyezkedik el. Egy kattintással
kijelölhetünk egy mentést. A bal aló
sarokban egy Vissza gombot találunk, mely visszavisz a
főmenübe, a jobb alsóban egy Betöltés gomb
helyezkedik el, mellyel betölthetjük a kívánt
játékállást. Dupla kattintással
gyorsabban is betölthetünk egy
játékállást. A betöltés gomb
mellett továbbá elhelyezkedik egy Törlés gomb
is, mely kétszeri megnyomásával
törölhető a kiválasztott
játékállás.
2.1.3. Beállítások
A Beállítások gomb megnyomásával
elérhetőek azok az almenük, melyeken keresztül a
játék minden beállítását
módosíthatjuk. Minden almenü azonos
sémára épül: a képernyő tetején
egy sávban egymás mellett gombok helyezkednek el,
melyekkel kategóriát válthatunk. A menü egy
gördülő menüből áll, bal oldalon a
beállítások neve, jobb oldalon pedig egy
módosítást lehetővé tevő menüelem
(leugró menü, checkbox, beviteli mező, csúszka,
gomb) helyezkedik el. A bal aló sarokban egy Vissza gombot
találunk, mely visszavisz a
főmenübe, a jobb alsóban pedig egy
Alapértékek és egy Alkalmaz gombot. Előbbivel a
jelenlegi menü alapértékeit
állíthatjuk vissza, utóbbi pedig alkalmazza
és elmenti a beállításainkat. Előfordulhat,
hogy egy változtatást a játék csak egy
újraindítás után tud alkalmazni: ebben az
esetben egy képernyő közepén megjelenő
felugró üzenettel értesítjük a
játékost. A beállítások
kategóriái:
2.1.3.1. Játékmenet
Ez a menü elérhető játékon belül is.
| Név |
Típus |
Opciók/Intervallum |
Leírás |
| Oktatóanyagok |
Checkbox |
|
Ki, ill. bekapcsolja a játékon belüli
felugró, tanító jellegű üzeneteket (tutorial). |
| Mértékegységek |
Leugró |
Metrikus, Angolszász |
Átváltja a játékban található mértékegységeket. |
| Automentések |
Checkbox |
|
Ki, ill. bekapcsolja az automatikus játékállás-mentéseket. |
| Automentések száma |
Csúszka |
1-30 |
Legfeljebb hány különböző automentés fájl jöjjön létre. |
| Automentések frekvenciája |
Csúszka |
5-90 |
Hány percenként történjen automentés. |
| Egérérzékenység |
Csúszka |
1-10 (tört értékekkel, 1 tizedesjegy pontossággal) |
Az egér érzékenységének
(azaz a mutató sebességének)
módosítása. |
2.1.3.2. Irányítás
Ez a menü elérhető játékon belül is. Itt
a gombkiosztást tudjuk módosítani. Itt minden
opció egy speciális Bemenet típus, mely
segítségével egy lenyomott bilentyűt tudunk
megadni. Az itt lévő
opciók csupán példa jellegűek, a fejlesztés
során felmerülő igények szerint a lista jelentősen
bővülhet, szűkülhet ill. átalakulhat.
| Név |
Leírás |
| Kamera előre |
Előre mozgatja a kamerát a játéktérben. |
| Kamera hátra |
Hátrafelé mozgatja a kamerát a játéktérben. |
| Kamera forgatása jobbra |
Jobbra forgatja a kamerát. |
| ... |
2.1.3.3. Videobeállítások
A későbbi esetleges rendereléssel kapcsolatosan
felmerülő problémák megelőzése
érdekében ez a menü nem érhető el a
játékon belül. Az itt lévő opciók csupán példa
jellegűek, a fejlesztés során felmerülő igények szerint a lista
jelentősen bővülhet, szűkülhet ill. átalakulhat.
| Név |
Típus |
Opciók/Intervallum |
Leírás |
| Felbontás |
Csúszka |
1024x768, 1280x1024, 1280x800, 1280x720, 1366x768,
1440x900, 1600x900, 1680x1050, 1920x1080, 1920x1440, 2560x1080,
2560x1440, 3360x1440, 3840x2160 |
Mekkora felbontásban fusson a játék. |
| Megjelenítési mód |
Leugró |
Ablak, Teljes képernyő, Teljes képernyős ablak |
Megjelítés módja. A Teljes
képernyős ablak opció egy perem nélküli
ablakban futtatja a játékot,. |
| Elsődleges kijelző |
Leugró |
Csatlakoztatott kijelzők listája |
Mely kijelzőn jelenjen meg a játék. |
| ... |
2.1.3.4. Hangbeállítások
Ez a menü elérhető játékon belül is.
| Név |
Típus |
Opciók/Intervallum |
Leírás |
| Fő hangerő |
Csúszka |
0-100 |
Minden más hang hangerejét
módosítja. Ha 100, minden normál hangerőn
szól. 0, a játék elnémul. |
| Hangeffektek |
Csúszka |
0-100 |
Játékbeli hanghatások ereje. Minden hangeffekt, mely nem esik a következő kategóriákba. |
| Háttérhangok |
Csúszka |
0-100 |
Háttérhangok (ambience) ereje.
Madárcsicsergés, vízcsobogás,
süvítő szél stb. |
| Zene |
Csúszka |
0-100 |
Zene hangereje. |
| Beszédhang |
Csúszka |
0-100 |
Szinkron hangereje. |
| Némítás ha inaktív |
Checkbox |
|
Elnémít minden játékbeli hangot, ha nem a játék a jelenleg aktív ablak. |
2.1.3.5. Felhasználói felületek
Ez a menü elérhető játékon belül is.
| Név |
Típus |
Opciók/Intervallum |
Leírás |
| Feliratok |
Checkbox |
|
Feliratok engedélyezése. |
| Beszélő neve |
Checkbox |
|
Beszélő nevének megjelenítése feliratok esetén. |
| Feliratháttér |
Checkbox |
|
Sötétebb háttér a feliratok számára. |
| Betűméret |
Leugró |
Kicsi, Közepes, Nagy |
Játékban megjelenő szövegek mérete. |
| Hotbar mérete |
Csúszka |
1-4 |
Játékmenet során a képernyő alján megjelenő hotbar sorainak száma. |
2.1.3.6. Könnyű kezelés
Ez a menü elérhető játékon belül is.
| Név |
Típus |
Opciók/Intervallum |
Leírás |
| Kamera rengése |
Checkbox |
|
Vadabb kameramozgások (pl. földrengés hatására) tiltása |
| Színvak mód |
Leugró |
|
Játék színeinek
módosítása színvak játékosok
számára. |
| Felolvasó |
Checkbox |
|
Hangos felolvasó. Ha a kurzort egy szöveg
fölé helyezzük, a játék felolvassa
számunkra a szöveget. |
| Felolvasó hangereje |
Csúszka |
0-100 |
|
| Monó hang |
Checkbox |
|
Monó hang használata. |
2.1.4. Készítők és Kilépés
A Készítők gomb megjeleníti a
stáblistát, mely egy automatikusan gördülő
szöveg. A Kilépés gomb bezárja a
játékot.
2.2. Karakterkészítés és szintlépés
A
karakterkreáló menü a
következőképp
néz ki:
- A képernyő tetején egy
folyamatcsík
helyezkedik el, melyen gombok helyezkednek el. A gombok a
karakterkreálás lépéseit
jelképezik,
és minden teljesített
lépéssel
lehetővé válik egy újabb gomb,
ezáltal a
korábbi fázisok közt gyors
átjárást biztosítunk a
felhasználónak.
- A képernyő bal negyedében a karakter
3D modellje
jelenik meg, mellyel a játéktérben is
találkozni fogunk.
- A képernyő bal also sarkában egy "Vissza"
és egy "Kilépés a főmenübe," a jobb
alsóban pedig egy "Következő" gomb helyezkedik el.
- A képernyő maradék
területén
helyezkednek el az adott fázishoz
kapcsolódó
opciók.
A karakterkreálás fázisai:
- Kinézet. A karakter fajának,
nemének, testi
adottságaina (magasság, súly), történeti
hátterének
és küllemének testre szabása.
A
választható opciók leugró
menükből
választhatók.
- Kaszt. A karakter kasztjának
meghatározása,
a kasztok egy rácsban rendezkednek el díszes
piktogramokkal feltüntetve. A képernyő
alján a kaszt
neve és egy pár soros
leírás helyezkedik el
a kasztról.
- Kasztjellemzők. Ebben a fázisban
választhat a játékos alkasztot, ha a
kaszt rendelkezik ezzel. Ez a felület a Kaszt fázissal azonos sémára épül.
- Varázslatok. Ebben a fázisban
választhat a
játékos varázslatokat, ha a kaszt
képes
varázslatok használatára. Itt a lehetséges
varázslatok ikonjai egy rácsos menüből
választhatók. Kattintással
választható egy varázslat, ekkor az ikonja egy
fehér körvonalat kap. Egy újbóli
kattintással visszavonhatjuk a kiválasztást. A
rácsos menü alatt közvetlenül számmal
leírjuk a választott és a maximális
varázslatok számát. (Példa: Varázslatok: 3/5)
- Kompetenciák. A karakter által
használható kompetenciák
kiválasztása. Ezek is a kasztokhoz
hasonlóan
jelennek meg, de a készségek magas
számára
tekintettel kisebb piktogramokkal feltűntetve. A képernyő
alján itt is leírást olvashatunk a
jelenleg
kiválasztott kompetenciáról. A
kiválasztás menete a Varázslatok menühöz
hasonlóan történik.
- Karakterpontok. A fő meghatározó
értékek elosztása,
csúszkákkal.
Ahogy az elosztható pontok száma
csökken, úgy
vörösödik be (és válik
elérhetetlenné) a csúszkák
legvége. A csúszkák alatt díszesen
megjelnítve a hátralevő pontok száma jelenik meg.
- Összegző képernyő. Egy
képernyő, ahol a
karakter minden (a küllemet kivéve)
kiválasztott
tulajdonságát egyszerre láthatja
és
ellenőrizheti a játékos. Itt a
„Következő
lépés” gombot felváltja egy
zöld
színű „Kész” gomb, melyre
kattintva
elkezdődik a játék.
Szintlépés során a
játékos a
karakterkreáló menü egy
korlátozott
verziójával találkozik, ahol csak a
szintlépés által elért
új
erők/opciók között választhat,
de nincs
lehetősége a karakter újbóli testre
szabására. A szintlépés fázisai:
- Kaszt. A játékos itt dönthet a
többkasztúság mellett is ha a kezdő kaszttól
eltérőt választ; alapértelmezetten a kezdő
kaszt viszont már automatikusan ki van választva.
- Kézségek (ha lehetséges). Egy
gördülő menüben felsorolva jelennek meg a
választható kézségek egy ikonnal
kiegészítve. Kattintással választhatunk ki
egyet, ekkor a kézség "lenyílik," és egy
leírást is kapunk róla.
- Kompetenciák (ha lehetséges). Megegyezik a
karakterkreálásban megtalálható
iterációjával.
- Karakterpontok (ha lehetséges). Lásd feljebb.
- Összegző képernyő. Lásd feljebb. A
szintlépés mindig ezzel a képernyővel
végződik.
2.3. Játékmenetbeli GUI/HUD
A játékbeli GUI a következőképpen néz ki:

A képernyő jobb oldalán találhatóak a
karakterek portréi. A portrék jobb alsó
sarkában egy számláló
található, mely a karakter életpontjait mutatja.
Amennyiben egy karakter meghal a portréja fekete-fehérre
vált. A jobb felső sarokban egy felfelé mutató
nyíl jelenik meg, ha az adott karakter szintet léphet. A
portrék mellett balra kis piktogrammokkal jelöljük a
karakter jelenlegi hatásait (mérgezés,
varázslatok, aktív kézségek stb.) A
portrékat drag & drop módszerrel a
játékos bármikor átrendezheti.
Katinttással kiválasztható a jelenleg aktív
karakter. Ha lenyomva tartjuk a Shift billentyűt kattintáskor
akkor a jelenleg kiválasztott karakter mellé
választhatunk még további karaktereket, így
pl. egyszerre mozgathatóak. A karakterek kijelölhetőek
úgy is, hogy lenyomva tartjuk a bal egérgombot a
játéktérben és húzzuk a kurzort:
ekkor egy zöld kijelölő téglalap jelenik meg. A CTRL+A
gombkombinációval is kiválasztható minden
karakterünk. A kiválasztott karakterek körül a
földön egy zöld kör jelenik meg.
A képernyő alján helyezkedik el a Hotbar. Ez egy
négyzetrácsos mező, mely a karakter jelenleg
használható cselekvéseit, varázslatait
és tárgyait. A Hotbar oszlopainak száma mindig 16,
sorainak száma viszont a beállításokban
módosítható. Az első sor jobb felső
sarkában az adott mező gyorsbillentyűje olvasható. Az
ikonok játékmenet során nem átrendezhetőek,
sorrendjüket és elrendezésüket csak a
Felszerelés és a Kézségek menüben
módosíthatjuk.
A játéktérben bármilyen objektumra bal
egérgombbal kattintva az alap interakciót hajtjuk
végre az objektumon (társalgás
barátságos NJK-kal, tárgyak felvétele,
tárolók átkutatása, ellenségek
megtámadása, kapcsolók használata stb),
jobb egérbombbal kattintva pedig egy leugró menüt
kapunk, ahol az összes interakciós lehetőséget
megkapjuk (felvétel, vizsgálat, támadás
stb). Ha a Vizsgálat opciót választjuk akkor egy
felugró ablakot kapunk, melyben az adott objektum adatait
olvasthatjuk, ill. az ablak bal felében egy 3D modellt is
láthatunk az objektumról. Egyes tárgyakat
áthelyezhetünk a játéktérben a bal
egérgombot lenyomva, ekkor a tárgy és az új
helye közt egy kék nyíl jelenik meg, az új
helyét pedig egy kék sziluett jelöli. Amennyiben a
kiválasztott helyre nem tudjuk áthelyezni (mert
például túl messze vagy magasan van) a nyíl
és a sziluett is pirosra vált. Az egérgomb
felengedésével megtörténik az
áthelyezés.
2.3.1. Főbb menü
Játékmenet során bármikor
elérhetünk egy "főbb menü" felületet
(alapértelmezetten az ESC billentyűvel), mely
megjelenésében a hátteret kivéve azonos a
főmenüvel. A dinamikus háttér helyett maga a
játékvilág fogja képezni a
hátterünket. Az Új Játék
helyére egy Mentés gomb kerül. A Mentés
menüben a Betöltés menühöz hasonlóan
felsorolásra kerülnek a korábbi mentések,
illetve a lista tetején kiemelt helyen jelenik meg a
játékállás, melyet menteni
szeretnénk. Ha nem választunk korábbi
mentést, a Mentés gombra kattintva (mely felváltja
a Betöltés gombot) a játék egy új
fájlba menti az állásunkat.
2.4 Harc
Harc közben a kezelőfelület ugyanúgy épül
fel, mint átlagos játékmenet közben,
némi kiegészítésekkel és
változtatásokkal. Egyik főbb változtatás a
Mentés lehetőségének hiánya harc
közben: a menüben a Mentés gomb szürkén
jelenik meg, a játék pedig egy különleges
hangeffekten kívül nem reagál, ha a
játékos rákattint.

Harc közben megjelenik a képernyő tetején egy
Sorrend sáv. Ebben a sávban tűntetjük fel, hogy a
harcban részt vevő karakterek milyen sorrendben következnek
egymás után. Az itt található
portrék sarkában is feltüntetjük a karakterek
életpontjait. A rájuk hatással levő effektek a
portré alatt jelennek meg. A bal szélső portré
másfélszer nagyobb a többinél: ez mutatja a
jelenleg aktív karaktert. A sávban bármelyik
portréra kattintva a kamera az adott karakterhez ugrik.
2.5. Játékmenet közben megnyitható menük
Ezen menüket játékmenet közben nyithatjuk meg.
Használatuk közben a játék
szünetel. A képernyő
tetején
több fül helyezkedik el, mellyel menüt
válthatunk. Innen nem megnyitható a "főbb menü."
2.5.1. Felszerelés
A
képernyő
három részre
van osztva. A bal harmadban a karakterünk mutatóit
(életpont, sebzés,
páncélosztály
stb.), a középső harmadban a karakterünk
jelenlegi
modelljét és körben ikonokkal
feltűntetve
felszereléseit (sisak, páncél, nadrág,
kesztyű és csizma a bal oldalon, nyakék, gyűrű,
köpeny és fegyverek a jobb oldalon), az utolsóban
pedig egy
listát
láthatunk a jelenlegi tárgyainkról. A
lista egy
görgethető menü, ahol rácsosan jelennek
meg ikonok a
jelenlegi tárgyainkról. Innen vagy ide
húzva
cserélhetjük a fegyvereinket,
páncélunkat,
illetve kiegészítőinket. A rácsos menü
alsó szegélye egy
színezett
sáv, mely a jelenlegi
terheltségünk szerint telítődik balról
jobbra. A sáv jobb végénél a
terheltség számszerűsítve is van (pl. 78.5/150).
Ezen a képernyőn a jobb oldalon elhelyezkedő portrés
karakterlista
és a képernyő alján
elérhető hotbar ugyanúgy megjelennek, mint
játék közben. Későbbi gyors
használatra drag & drop módszerrel tárgyakat
húzhatunk a hotbarba a felszereléslistából.
Egy jobb egérgombos kattintással
törölhetjük az adott elemet a hotbarból.
2.5.2. Karakterlap
Ezen képernyő megegyezik a karakterkreáló
és a szintlépő menük utolsó, összegző
képernyőjével.Itt
megjelenítünk minden
információt a jelenleg
kiválasztott karakterről. Itt a jobb oldalon elhelyezkedő
portrés
karakterlista ugyanúgy megjelenik, mint
játék
közben.
2.5.3. Varázskönyv/Kézségek
Itt a
kiválasztott karakter készségeit, ill.
varázslatait láthatjuk.
Ha a karakterünk képes varázslatok
használatára, itt kiválaszthatjuk mely
varázslatokat készítse elő
későbbi
használatra. A varázslatok kiválasztása a
szintlépés Varázslatok fázisában
látottakkal azonos: kattintással
választható egy varázslat, ekkor az ikonja egy
fehér
körvonalat kap. Egy újbóli kattintással
visszavonhatjuk a kiválasztást.
A rácsos menü alatt közvetlenül számmal
leírjuk a választott és a
maximális varázslatok számát. Ezen a
képernyőn a jobb oldalon elhelyezkedő portrés
karakterlista
és a képernyő alján
elérhető hotbar ugyanúgy megjelennek, mint
játék közben. Későbbi gyors
használatra drag & drop módszerrel
kézségeket húzhatunk a hotbarba a
felszereléslistából. Egy jobb
egérgombos kattintással törölhetjük az
adott elemet a hotbarból.
2.5.4. Küldetések
Ez a képernyő a
jelenlegi
karaktertől függetlenül mindig ugyanazokat az
információkat tartalmazza. Itt a
képernyő bal
harmadában egy hierarchikus listán
keresztül
elérhetjük az összes jelenleg
aktív
küldetésünket és azok jelenlegi
céljait,
míg a maradék kétharmadban bővebb
leírást olvashatunk az ehhez releváns
információkról. Ezen a
képernyőn nem
jelenik meg sem a karakterlista, sem a mozdulataink alul elhelyezkedő
menüje.
2.5.5. Napló
Ez a képernyő a jelenlegi
karaktertől
függetlenül mindig ugyanazokat az
információkat
tartalmazza. Itt elérhetjük minden eddigi
összegyűjtött könyv, jegyzet vagy ehhez
hasonló
feljegyzés tartalmát egy lista
segítségével. A Küldetések
menühöz hasonlóan a lehetőségeink a bal
harmadban jelennek meg, az adott naplóbejegyzés tartalma
pedig a maradék kétharmadban található.
Ezen a
képernyőn nem jelenik
meg sem a karakterlista, sem a mozdulataink alul elhelyezkedő
menüje.
2.6 Hajózás menü

A hajózás képernyőn egy
térképet
láthatunk, melyen a jelenlegi helyzetünk egy hajó
ikonnal van feltűntetve. Az úticélokat a
térképen további ikonok jelölik. A
térképen a már felfedezett területek
látszódnak csak, ahol még nem jártunk a
kék tenger (és az ikonok) helyett egy barna
papírtextúra jelenik meg.
Nyílt vízen
egy pontot vagy egy másik, helyt jelölő ikont
kiválasztva a játék utat
tervez
nekünk, majd a képernyő alján megjelenik az
utazás hossza időben. A "Megerősítés" gombbal
útra
kelhetünk. Ekkor automatikusan elindul a hajónk a
tervezett
útvonalon. A képernyő alján a
Megerősítés opciót felváltja egy
"Állj" gomb. Megállás után ezt
felváltja
egy "Folytatás" gomb is, mellyel
folytathatjuk
utunkat. Ezen gomb felett megjelenik egy Megszakítás gomb
is.
Utazás közben egy véletlenszerű esemény
megszakítja az utazást és egy felugró
ablakot jelenít meg a képernyő közepén. Az
ablak szélessége és magassága a
képernyő szélességének, ill.
magasságának a fele. Ezek az ablakok a
következőképpen épülhetnek fel:
- Érdekességek: Egy nagyobb
illusztráció jelenik meg az ablakban, alatta pedig
szövegesen leírásra kerül az esemény.
Itt
egyetlen gomb
jelenik meg az ablak alján, mellyel
lenyugtázhatjuk az
adott eseményt, illetve ha csatába keveredtünk
megkezdhetjük a küzdelmet.
- Megoldandó
problémák: Egy nagyobb
illusztráció jelenik meg az ablakban, alatta pedig
szövegesen leírásra kerül az esemény. Az ablak alján a
lehetőségeink
száma szerint több gomb is megjelenik, ezekkel
tudunk döntést hozni.
3.
Adatmodellek
A játék perzisztens adatokat kizárólag a
beállítások és a
játékállások elmentésére
hasnzál. Ezeket a fájlok a Dokumentumok
könyvtárban a következő mappastruktúra
tartalmát képzik: /TheBoyz/The Tempest Throne/Saves/
Amennyiben nem létezik vagy törlésre kerül
valamelyik mappa, a játék automatikusan újakat hoz
létre a következő indításkor.
Ezen adatok tárolásához nem használunk
adatbázisokat, mivel betöltés után már
nem olvasunk belőlük adatot.
Beállítások mentése
A beállításokat egy Settings.ini nevű
fájlban tároljuk el. Ezen fájl az első
futtatás során jön létre és az
alapértelmezett beállításokkal
töltődik fel.
A fájl első sora a játék és a
fejlesztőcsapat nevét és egy verziószámot
tartalmaz. Ha ezek nem találhatóak a fájlban,
akkor a fájl törlésre kerül és egy
új jön létre az alapértelmezett
opciókkal. A fájl utolsó sora megegyezik az
elsővel, ezzel jelezzük a fájl végét.
A beállításokat beszédes nevekkel
jelöljük. A neveket egy egyenlőségjel követi,
majd ezután jön a beállítás
értéke idézőjelekkel határolva. A sort egy
vessző zárja. Példa:
| FullScreenMode="Borderless", |
| ScreenWidth="1600", |
| ScreenHeight="900", |
Ha valamelyik beállítás értéke
érvénytelen vagy hiányos, vagy egy
sorban olyan beállítás jelenik meg, mely nem
létezik a játékon belül,
akkor a sor felülíródik az alapértelmezett
értékekkel. Ezzel a tárolási
módszerrel egy olvasható fájlt
kívánunk biztosítani a
felhasználóknak.
Játékállás mentése
A játékállásokat a
beállításokkal ellentétben nem
kulcsfontosságú olvashatóvá tennünk
egy átlag felhasználó számára.
Ezért a játékállás
elmentéséhez egy .THRONESAV kiterjesztésű
bináris fájlt hozunk létre, mely neve a
mentés időpontja lesz
ÉÉÉÉ.HH.NN_ÓÓ.PP.MM
formátumban.
A bináris fájlba a játék jelenlegi
állapotát mentjük szerializáció
segítségével. Mivel a BinaryFormatter mára
már elavult, ezért a szerializáció
megvalósításához a protobuf-net nevű library-t használjuk.
4. A
funkcionális modell
kiegészítése
Ha szükséges, egy – egy
alpontban dokumentáljuk leírással
vagy a szükséges diagrammokkal a rendszerben
zajló legfontosabb
feldolgozási lépések
kivételes és alternatív
feldolgozási
folyamatait, az egyes tevékenységek
között szükséges
adatáramlásokat.
A feladattól függően a fejezet elmaradhat.
Végül itt következhet
még további fejezetekben minden olyan, ami a
részletes tervezés során
dokumentálandó. Például ide
kerülhetnek az
implementációhoz szükséges
osztályok tervei, osztálydiagramjai,
fontosabb algoritmusok és adatszerkezetek
leírásai stb. Ezek a
tervezési lépések
természetesen dokumentálhatók
forrás file-okkal is.