Csoport neve: nullpointer

Feladat sorszáma: 6.

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








Rendszertervezés





Gyakorlatvezető::

RÉPÁSI TIBOR












Csoport tagok:


Bikki Balázs

FOJNI7

bikki@iit.uni-miskolc.hu

Bereczki Dániel

JJ92CZ

neuroster@gmail.com

Horváth Lajos

A2MT7H

l.horvath4@chello.hu

Kocsis Sándor

C144EG

rebel00@vipmail.hu

Majoros Zoltán

J1AHR8

majoros1@iit.uni-miskolc.hu


2006-04-21


Történet


Dátum

Verzió

Leírás

Szerző

2006.04.21

1.0

Kezdeti verzió

Bikki Balázs,

Horváth Lajos


Tartalomjegyzék

1 Bevezetés

2 Felhasználói felület

2.1 Irányítás

2.2 A játék megjelenése

3 Konkurrencia

4 Alrendszerek processzorokhoz rendelése

5 Adattárolás

6 Vezérlés elve

7 A rendszer határfeltételei

7.1 Tevékenységek a rendszer telepítésekor

7.2 A rendszer üzemszerű indulása

7.3 Üzemszerű leállás

7.4 Hibás befejeződés





1 Bevezetés



A termék valós idejű stratégiai játék a következő fikcióból kiindulva: Létezik egy bolygó, amely felszínét 85%-ban homoksivatag borítja. A maradék felület zömében sziklás és szinte elhanyagolható mértékben itt-ott növényzetet is tartalmaz. Valaha a felszínét dús esőerdő borította. Mára esőzés nincs, a bolygó vízháztartása a felszín alatt zajlik. Ott barlangokban tárolódik a víz. A bolygó őslakossága elhatározza, hogy újból virágzóvá teszi a Dűnét. De számolniuk kell a homokviharokkal és egy a sivatagi környezethez alkalmazkodott élőlény fajjal, a Homokférgekkel…

A fantáziabirodalom középpontjában az Arrakis bolygó és a csak itt található Fűszer áll. A bolygón azonban gyakorlatilag a Fűszer az egyetlen hasznosítható anyag, mivel a planéta felszínét hatalmas sivatagok borítják, ahol nagyon nehéz életben maradni. Maga a Fűszer az univerzum legcsodálatosabb anyaga: ami meghosszabbítja a tulajdonosa életét és nagyobb erők parancsolójává teszi őt, kitágítja az öntudatot, s ez teszi lehetővé, hogy a navigátorok (akiket még soha senki sem látott) meghajlítva a teret, csillagközi utazásokra vigyék a hatalmas űrhajókat. A bolygó fő terméke és kiviteli cikke (bolygóközi kereskedelem) a fűszer, másnéven melanzs, amit a homokférgek termelnek (fremen elnevezéssel mester, vagy Shai-hulud), a homokférgek számára viszont a víz és a nedves környezet mérgező.A történelem során számtalan csatát vívtak már ezért a varázslatos anyagért, és a bolygóért, de a Dűne évszázadokon át a Harkonnen Ház fennhatósága alatt maradt.

Frank Herbert eredeti regényétől eltérően a játék világa zárt világot alkot, az események menetébe nem szólnak bele a Padisah császár és a két ház, az Atreides és a Harkonnen közti háborúságok. A játékban nem szerepel továbbá a fremen nép összetett vallás- és hiedelemrendszere, a Bene Gesserit és egyéb iskolák hatása sincsen jelen.

A felhasználó feladata hogy megfelelően kialakított stratégiája szerint vezetve az őslakos fremeneket, lakhatóbb hellyé tegye az Arrakis bolygót anélkül hogy felborítaná a bolygó megváltozott ökoszisztémáját, ami a homokférgek teljes populációjának kipusztulásához és ezen keresztül a Fűszerhiányhoz vezet.
A játék során a déli palmáriumokból kiindulva fokozatosan növényeket kell telepíteni a Dűnén uralkodó hivatalos hatalom tudta nélkül, miközben folyamatosan termelni kell a fűszert, új fremen településeket, úgynevezett sziecseket alapítani, felszerelni. Mindezek közben a Harkonnenek folyamatos őrjárataival is számolni kell, és vissza kell verni a büntető vagy "hódító" támadásaikat is a Harkonnen-katonáknak és a velük szövetséges császári elitalakulatoknak, a Sardaukaroknak.

A tradicionális stratégiai alapokra épülő játék a jól ismert Dűne sci-fi világát dolgozza fel, néhol attól eltérve. A hatalmat úgy lehet megszerezni, hogy a lehető legnagyobb területeket kell meghódítani a Dűnén, a végső cél pedig a Fűszer feletti teljes kontroll megszerzése, hiszen "aki a Fűszert uralja, uralja az Univerzumot is!"



2 Felhasználói felület

2.1 Irányítás



A játék irányítása egérrel és billentyűzettel történik. A játék elindítása után megjelenik a főmenü, melyben a szokásos módon lehet navigálni. Menüpontra kattintás esetén belép a program a megfelelő menüpontba. Visszalépés a Bezár gombra kattintással.

Új játék indítása, vagy betöltés esetén a játékképernyőre jutunk. Itt vagy játékobjektumokat irányíthatunk, vagy beléphetünk a játék menübe.

Játékobjektumot úgy tudunk kiválasztani, hogy a bal egérgombbal rákattintunk. Ekkor jobboldalon megjelennek az adott egységgel végezhető tevékenységek (pl.: építés, állapot beállítása). Irányításuk úgy történik, hogy jobb egérgombbal a kívánt helyre kattintva az objektum oda mozog, vagy ha ellenséges objektum található ott és a kiválasztott egység támadó, akkor megtámadja. Kivétel ez alól a „fűszeres” szállítója, ez automatikusan mozog.

Az aktuális játékállás elmenthető, vagy egy korábbi mentett állapot visszaállítható.



2.2 A játék megjelenése




1. ábra: Előzetes képernyőterv






3 Konkurrencia



A rendszer explicit módon nem tartalmaz párhuzamosítást, azonban a használt SDL könyvtár implicit módon létrehoz szálakat. Külön szálat készít a hanglejátszáshoz és az eseménykezeléshez.


4 Alrendszerek processzorokhoz rendelése



A program nem optimalizált többprocesszoros rendszerekre. Így azon várhatóan ugyanolyan sebességgel, vagy minimálisan gyorsabban fog futni, mint egy egyprocesszoros rendszeren.



5 Adattárolás



A program minden, két futása között megőrzendő információt (mentések, beállítások, erőforrások) a fájlrendszeren tárol.



6 Vezérlés elve



A vezérlés esemény és eljárásorientált oly módon, hogy a felhasználó által generált események lekezelése egy eljáráshívási láncot indít el. Amíg az összes feldolgozás be nem fejeződik, addig a program nem kezd bele újabb események lekezelésébe.



7 A rendszer határfeltételei

7.1 Tevékenységek a rendszer telepítésekor



A telepítőprogram elindítása után meg kell adnunk a telepítés helyét. Ezután a telepítő automatikusan a megadott helyre másolja a szükséges fájlokat, hivatkozást hoz létre az asztalon és a Start menüben. Ezután a megfelelő ikonra kattintva indul a játék.

7.2 A rendszer üzemszerű indulása



Induláskor inicializálódnak az SDL rendszer hang, időzítő, video és eseménykezelő rendszerei. Ezután megjelenik a főmenü. Új játék indításakor, vagy mentett játék folytatásakor betöltődik a megfelelő játékállás, létrejönnek a szükséges játékobjektumok. Ezután elindul a játék fő ciklusa, mely bizonyos időközönként meghívja a játék logikájának futtatását és a renderelést.

7.3 Üzemszerű leállás



Ha a felhasználó a program befejezését választja, a program felszabadítja a lefoglalt memóriaterületeket és terminálódik.



7.4 Hibás befejeződés



Rendszerösszeomlás esetén nem garantálható, hogy a felhasználó mentett adatai, játékállásai konzisztens állapotban maradnak, előfordulhat adatvesztés. Ez elsősorban az operációs rendszer működése miatt lehetséges.



SourceForge.net Logo