Quake II

      Další pokračování Quaka se tentokrát posunulo do budoucnosti. Jako jediný přistanete v modulu na neznámou planetu, kterou je třeba vyčistit. Stejně z ní pak odletíte. Nový engine využívá OpenGL, 3DFx-MiniGL a softwarový render (pozn. se softrenderem je možno spustit Quake II i v DOSu pomocí HX DOS Extenderu). Pěkně jsou zde udělaná skla. Sada zbraní poměrně slušná. Za zmínku stojí veliká brokovnice, roták, krásně provedený railgun a paprskující BFG. Jako potvory vás čekají převážně různí roboti.
      Pokud si chcete změřit framerate, spusťte konzoli klávesou vlnovka ~ , napište timedemo 1, enter, demomap demo1.dm2, enter a po přehrání dema se objeví opět konzole s výsledným FPS.
      Zde je dokumentace ke konzoli a pár cheatů - do konzole napiš: GIVE ALL - všechny zbraně; GOD - nesmrtelnost; NOCLIP - prochazení zdmi.
      31.12.2004 Tak jsem si o Vánocích pařnul Q2 znovu, tentokrát pod Linuxem. Stačilo nainstalovat příslušný .deb balík a udělat symlinky na originální .pak soubory. Engine vypadá úplně stejně jako windowsácký, akorát je pomalejší (ale i tak jsem měl nějakých 50FPS v 1280x1024). Dohrál jsem ho za jeden večer, prostě taková pohodovka u které se nemusí myslet a jde to od ruky :). Jo a podařilo se mi najít jeden tajný level - jakási vesmírná stanice s nízkou gravitací na palubě, zhruba ve 2/3 hry, už si nepamatuju název levelu, muselo se tam nějak proplavat vodou a pak vlízt do teleportu.
      7.6.2015 Neozeed vydal první alfa verzi DOSového portu Quake II enginu zkompilovaného v DJGPP. O průběhu a nástrahách portace si můžete přečíst na jeho blogu: část 1., 2., 3., 4., 5. Balíček binárek si můžete stáhnout zde a aktuální zdrojáky jsou na Bitbucketu. V současnosti je podporována VESA SVGA grafika, starší zvukové karty SB, GUS (sound system převzatý z QDOSu, ovládání myší (v posledním commitu je i podpora myšího kolečka) a klávesnicí, síťová hra přes knihovnu WATTCP (je potřeba packet driver pro vaši síťovku) a jako bonus podpora přehrávání hudebních souborů OGG co by alternativa k audio CD. Na svém hlavním PC s Core 2 Duo E8600 a GeForce 7900GT jsem naměřil 205 FPS v demo1.dm2 při rozlišní 1024x768. Pro nižší rozlišní by vám měl postačit i starý stroj s Pentiem 1.
      20.6.2015 Neozeed na vývoji dál intenzivně pracuje, už se povedlo staticky přeložit některé gamemody. Testuje se alternativní zvuková knihovna s podporou moderních zvukových karet HDA. Sice úspěšně detekovala můj SB Audigy 2, ale zvuk byl sekaný a po spuštění nové hry program crashnul. S pomocí Ozkana Sezera se nám podařilo vyřešit problém s hrou po síti při kompilaci v novém prostředí DJGPP 2.05, kde bylo potřeba v souboru linux\net_udp.c na řádku 463 změnit volání funkce ioctl() na ioctlsocket() a pro kompatabilitu s GCC 5.x.x jsem přidal do CFLAGS makefilů parametr -std=gnu90, aby se správně inlinovaly funkce definované jako extern __inline__. Hru po síti jsem zkoušel a funguje, pro seznam serverů zadej do konzole příkaz /slist2. Také jsem commitoval patch, který umožní nastavit vyšší VESA rozlišení (pokud je karta podporuje, zkoušel jsem 1600x1200 a 1920x1200). Aktuální zdrojáky jsou zde. Kvejka jsem zkusil spustit i na svém starém PC Pentium Pro 200 MHz, 192 MB RAM, SB AWE64, Matrox Millennium II MGA 2164WP s 4 MB WRAM, kde DOSová verze dosáhla 7 FPS v rozlišení 1024x768, zatímco windowsí (pod WinXP SP2) jen 5,9 FPS. V nižších rozlišeních se dalo hrát plynule. Zvuk přes SB fungoval bezchybně.
      23.6.2015 Tak paráda, zvuk na SB Audigy 2 už funguje. Kvejka je nutno spustit s parametrem -hda. Při nastavení vzorkovací frekvence 44 kHz jsem zaznamenal ve hře občasné praskání (více při pohybu v menu), ale při 22 kHz je to v pohodě. Akorát je tam zatím nějaká chyba, že po třetí změně nastavení frekvence nebo bitového rozlišení program crashne. Otevírá se tak možnost, že by mohla být podpora nových zvukových karet přidána i do QDOSu a Hexenu II. Dále je možné k ovládání hry využít i rolovacího kolečka myši (např. na přehazovaní zbraní), je však nutno Kvejka spustit s parametrem -mwheel a použít ovladač myši, který rolovací kolečko podporuje - např. CuteMouse s parametrem /O. Později byla podpora kolečka zapnuta defaultně a pouze v případě problémů je možno ji vypnout parametrem -mnowheel. Neozeed taky vyčistil zdrojové kódy od většiny warningů a sloučil předchozí verze do 1 (master).
      26.6.2015 A je tu další pokračování Neozeedova blogu, kde popisuje, jak se mu podařilo nahradit dynamické knihovny (windowsí DLL) rozšířených gamemodů pomocí DJGPP modulů DXE3, které lze taktéž loadovat i unloadovat, takže už není potřeba vybírat mezi více staticky linkovanými exáči. Ruslan Starodubov, od nějž pochází nová zvuková knihovna libau, která je DJGPP portem zvukových ovladačů z přehrávače MPXPlay, zakompiloval podporu pro nové zvukovky do herních enginů ZDoom a QDOS. Vyzkoušel jsem je a zvuk na SB Audigy 2 funguje. Dříve používaný parametr -hda se nyní změnil na -sndpci.
      17.9.2015 Další novinkou Q2DOSu, o které pojednává 5. díl seriálu, je nativní podpora 3D akcelerace na kartách 3Dfx Voodoo 1 - 5 skrze knihovnu Mesa 3D, jejíž starší verze byly portované i pro DOS (poslední verze 6.4.3). Kód SW a OpenGL rendereru byl přesunut z hlavní binárky do dynamických modulů ref_soft.dxe a ref_gl.dxe. Před prvním spuštěním je potřeba zkopírovat správnou verzi modulu Glide driveru glide3x.dxe podle typu vaší 3Dfx karty do adresáře, kde je umístěn q2.exe. Vyzkoušel jsem to na svém starším PC Pentium Pro s 3Dfx Voodoo 1, akcelerace fungovala v módu 640 x 480 / 16 bpp, ale v timedemu demo1.dm2 jsem dosáhl stejných 12,6 FPS, jako při použití neakcelerované VESA grafiky.

screenshot 1
Elektrárna.

screenshot 2
Jen počkej až tě chytim...

screenshot 3
Takhle má vypadat railgun.

screenshot 4
A máš po ptákách.

screenshot 5
Překvápko na záver - idGalery



Zpět

Aktualizováno 30.12.2016 v 19:44