Az alábbi dokumentum leírja, hogy milyen lesz a játék. SEMMIT SEM garantál a mostani verzióval kapcsolatban.
A játék
A projekt célja, hogy újra elkészítse a Stunts-ot Unix/Linux-ra.
"A régi játék"
Az eredeti DOS-os játékot (melyet a Broderbund és a Mindscape készített) több régiség-oldalról le lehet tölteni, mint pl. az XTC -site.
A Stunts egy 3D-s verseny-szimulátor, egyszerû CGA/EGA/VGA grafikákkal és textúra, vagy finom árnyékolás nélkül, de az érdekfeszítõ mutatványok (visszafordítók, ugratók, hidak) miatt elég jól el lehet benne "merülni". A játék egyik legjobb része a pályaszerkesztõ. A "darabos" pályakészítési elmélet alapján bárki elkészíthette saját pályáját.
Hasonlóságok/különbségek
Az UltimateStunts nagyon fog hasonlítani a Stunts-ra:
- 3D-s versenyszimulátor
- Egyszerûen készítsd el saját pályáid
- A pályákat nagy részekbõl lehet felépíteni
- Viszonylag alacsony konfiguráción is fut
- NAGYON hatásos mutatványok
- Oda mész, ahova akarsz (Büntetésért! Hehe!)
- Az UltimateStunts valószínûleg bármilyen rendszeren fut majd.
- 3D-s hang
- Jobb pályák, szabályozható nagysággal, magassággal, több pályadarabot pedig egymás tetejére lehet majd helyezni.
- Jobb OpenGL grafikák, textúrával, finomárnyékolással, fényvisszaverõdéssel, stb.
- Multiplayer: Az eredeti játékban max 1 ellenfeled lehetett, az is csak a gép. Az UltimateStunts-ban lesz IP-s hálózati mód, több játékossal
- Bõvített mennyiségû útdarabok és pályák. Egyébként te is készíthetsz saját pályadarabokat.
Részletesebb leírás
A játék
A játék háromdimenziós versenyjáték lesz, melyben a saját pályáid és mutatványaid készítése létfontosságú. A viselkedés fél-realisztikus lesz: az élvezet fontosabb lesz, mint a realizmus. A célok az ellenfelek legyõzáse, minél jobb pontok elérése, vagy akár olyan pályák készítése, amelyek hosszúak, gyorsak, viccesek, vagy (majdnem) lehetetlenül megoldhatók.
Többjátékos mód
A játékosok egyedül mehetnek (csak pontokért), számítógépes ellenfelek ellen, osztottképernyõben a barátok ellen, vagy többjátékos módban LAN-on vagy interneten. Ezek kombinációi szintén lehetségesek (pl. 4 emberi játékos 2 PC-vel, vagy számítógép ellen az interneten keresztül)
Hálózat
Ha hálózati játékról van szó, egy külön szerver program indul majd az egyik gépen. Ezt a szervert akár a kliensprogramból is indíthatjuk egy menüparanccsal, de manuálisan is indítható lesz egy kinevezett szerverrõl. Minden kliens program, mely részt vesz a játékban, ide csatlakozik. A szerver nem csak közvetíti az adatokat, hanem bíróként is szerepet játszik majd. A szimuláció a szerveren történik, minden kliens a szerverrel fog szinkronizákódni. A szerver dönti el, melyik pályák és autók lesznek választhatóak. Minden fájlnak ott kell lenni a szerveren, de ha nem lesznek ott jelen, akkor a szerver összegyûjtheti majd õket.
Grafika
Az UltimateStunts jó minõségû grafikát kínál majd, de nagyon rugalmas is lesz. Ha ott is játszható programot akarunk, ahol nincs hardveres gyorsítás, akár minimálisra is legyengíthetõ lesz a grafika. A gyorsabb platformokon viszont különbözõ modernebb technológiák is választhatók lesznek.
Pályák
A pályák négyzet alakú darabokból állnak majd össze mint a Stunts-ban de lesznek különbségek is:
A pályaszerkesztõ
A pályaszerkesztõ egy felhasználóbarát program pályák készítésére. A pályaszerkesztõ menübõl indítható lesz. Mivel a pályák a Stunts-al ellentétben 3D-szerûek lesznek, a pályakészítõ is összetettebb lesz. Mondhatjuk, a Rollercoaster Tycoon inspirálta. Az alapötlet egy "kurzor" az út végén. A felhasználó választja ki, hogy az út jobbra vagy balra fordul, ha fel vagy le megy, vagy ha egy mutatvány kell a kijelölt területre. Ekkor a szerkesztõ megcsinálja a változtatásokat. Persze a pályaszerkesztõ érvényesíti a pályát, és a nem megfelelõ változtatásokat lehetetlenné teszi. Az eredeti Stunts pályák importálása is meg lesz oldva.
Visszajátszások
Hasonlóan a Stunts-hoz, az UltimateStunts-ban is lehet majd visszajátszást készíteni (de az eredeti Stunts visszajátszást nem fogja olvasni). Az UltimateStunts visszajátszásai minden tárgy pozícióját és irányát rögzítik, minden képkockában. Megfelelõ konverziós eszközökkel videószerkesztõkben is használható lesz, mint például a 3D Studio, így filmet, vagy esetleg bevezetõfilmet is készíthetsz az UltimateStuntshoz. Az UltimateStunts-ban a visszajátszást "szellem" játékosként is használni lehet majd.
A stunts3dedit szerkesztõ
Amikor a projekt elkezdõdött, 3D-s szerkesztõ nem volt tervbe véve, de mivel egyre összetetteb pályadarabokra volt szükség, kellett valami, ami megkönnyíti a 3D-s modellek szövegfájlokba írását. A 3D-s szerkesztõ olyan lesz, mint amilyen most: gyenge változtatásokra képes, erõsebb változtatókkal. A fõ fontossága az idegen formátumok importálása. Felhasználás: Készíts egy modellt egy külsõ szerkesztõben, importáld a stunts3deditbe, csináld meg a javításokat, és mentsd el az UltimateStunts-al való használatra.
Rendszerkövetelmények
Az UltimateStunts elég rugalmas lesz: Nem kötelezõ neki a hardware-es gyorsítás, de használja a modern PC-k 3D-s technológiáját.
A következõ a Windows-os változathoz kell:
- Windows 95,NT vagy jobb (de a Wine-nal, a Linux Windows-emulátorával is valószínûleg mûködik majd)
- openGL (vagy Mesa) telepítés (alapértelmezés a legtöbb rendszeren)
- Az x-window rendszer
- openGL (vagy Mesa)
- SDL (az elõzõ verzióknál: glut)
- BSD hálózati könyvtár(mindig(?) megvan a BSD és Linux-rendszereken)
A következõ konfiguráción már jól fut a játék:
- Pentium 200MHz processzor vagy jobb (vagy valami hasonló a nem PC-s alapokon)
- openGL-t támogató hardware-gyorsítós videókártya
- Hang (FMOD által, vagy a jövõben az openAL-al))
- Joystick
Technológia
Az alapvetõ fejlesztõfelület a Linux/Cygwin (= a Windows-ban), de megpróbálom a többi gépre átvihetõvé tenni, például a MacOS/X rendszerekre. A grafika input-jához openGL/SDL kombinációt használunk. A hálózat az általános UNIX (BSD) hálózati funkciókra alapul. A kommunikáció UDP/IP-t használ majd. A hangot az FMOD könyvtár implementálja, de amikor megtanulom a használatát, openAL-implementálást használok majd.
A projekt több különbözõ programot kínál majd:
- A fõ UltimateStunts program, grafikával, hanggal, stb. Egy szép GUI is lesz benne.
- A szerver program
- Egy AI kliens
- Egy egyszerû 3D-s szerkesztõ, a pályadarabok és az autók megváltoztatására, és a más formátumokból való importálásra.
- A pályaszerkesztõ
Jelenleg a kdevelop programot használjuk a fejlesztésre.
Hálózat és szimuláció
Nagyon rugalmasak lesznek a különbözõ programok, mivel az optimális konfiguráció olyan dolgokon fog múlni, mint a sávszélesség. A következõ szöveg a jövõbeli verziókra vonatkozik és NEM a mostanira.
Hely játékban, ha egy számítógépes ellenfél van, minden számolást (például grafika, gép-játékosok és fizika) egyetlen program végez. Mikor egynél több emberi játékos van, például egy hálózati játéknál, az adatot a szerver szolgáltatja. A fõ fizikát a szerver számolja, de (sávszélességtõl függõen) néhány kliens is számolhat, hogy javítsák a gyenge szinkronizációt.
A gép-játékosokat a szerverrõl és a kliensrõl is indíthatjuk. A külön AI-kliens programmal is hozzá lehet õket adni a játékhoz. A profik, akik jó teljesítményt akarnak, beállíthatják a szerverprogramot kliensnek. Ezen a módon a szerver lassú összeköttetéssel is tud csatlakozni egy internet-játékhoz, és szerverként viselkedhet a LAN-on. Ezzel meg lehet osztani külön-külön szerver-kliens kapcsolatokat.
Grafika
Mivel a grafikák darab-alapúak, gyorsabban lehet õket kezelni az alapbeállítás OpenGL Z-Buffer kikapcsolásával, és az eredeti sorrendben kezelni õket. Emellé a grafikák elég beállíthatóak lesznek. Ha a Z-Buffer, a textúra, a finom árnyékolás, a háttér ki van kapcsolva, a felbontás 320X200, stb.A játék hasonlítani fog az eredeti DOS-os játékhoz, de minden gépen futni fog.