vain.odamex.cz

Syndikovat obsah
Odamex - multiplatformní port hry DooM
Aktualizace: před 1 rok 10 týdnů

Odamex 0.5.0

25. Srpen 2010 - 8:35

Nebylo žádným tajemstvím, že je nový Odamex na spadnutí a vytyčené cíle šly jednoduše přes bug tracker sledovat. Dnes brzy ráno byly vydány všechny (včetně Mac OS X) balíčky a oficiální oznámení o vydání.
Jedná se o nutný update, pokud se chcete připojit na nové servery, stejně tak nemusí být kompatibilní staré konfigurační soubory, jelikož proběhly změny i v proměnných. Oficiální oznámení shrnuje verzi 0.5.0 jako první hlavní verzi po dvou letech (od 0.4.0), která přináší desítky oprav, nové funkce a hlavně spoustu optimalizací.

Nejvíce inovací se dočkala síťová hra a síťový kód, který mimo jiné pomůže v hraní velkých coop a ffa her. V teoretické rovině deathmatch server s dobrou konektivitou do internetu může zvládnout až stovku hráčů bez větších problémů, což zní hezky, užitečnost je asi menší, ale ukazuje to možnosti Odamexu.

Pro administrátory serverů jsou změněna proměnná nastavení, většina nastavení na straně serveru má předponu sv_ (existují vyjímky, seznam proměnných v Odawiki). Předělána podpora logování událostí jak na serveru tak na straně klienta a možnost nastavit uvítací zprávu pro hráče po připojení, jak známe z ostatních portů.

Změn se dočkal i Launcher. Zobrazuje nyní grafický indikátor pro odezvu, takže zelený pro ping nižší než… a podobně, hodnoty jdou pro jednotlivé indikátory v nastavení upravit. Přibylo i menší podokno, které zobrazuje detailní informace o označeném serveru.

Pokud jde o změny pod kapotou, tak byla dotáhnuta do konce podpora boom funkcí, z Chocolate Doomu přebrán kód pro „Endoom“ obrazovku (nostalgie především pro pamětníky na doom2.exe). Podpora pro alt+f4 – klávesová zkratka zatím funguje bohužel stejně jako klávesa F10, což jsem už v bug trackeru vytknul a snad to změní, je to přepsání jednoho slova ve zdrojových kódech a to z menu_quit na quit, snad bude v budoucnu fungovat, „jak má“, případně můžeme Odamex s touto funkcí forknout ;-)

Pro uživatele Windows a Windows Vista/7 ovšem existuje jeden, respektive dva problémy. Jedním z nich je myš, tento problém se vztahuje na Windows XP a novější, pokud vlastníte myš s vyšší dpi, což je dnes už skoro každá myš dražší než dvě stovky, je lepší pouštět Odamex s parametrem -directx, což přepne zpracování vstupů z myši z výchozího gdi na directx a myš bude fungovat tak, jak má (prostě nebude znát žádná deakcelerace a podobně), toto nastavíte v Launcheru přes File > Settings, a do políčka „Extra command line arguments“ napište „-directx“ bez uvozovek.

Druhým problémem, který se týká Windows Vista a Windows 7 je, že při ztlumení hudby ve hře může dojít ke ztlumení zvuků celkově. V Microsoftu změnili způsob ovládání hlasitosti nejen pro midi zvuky. Toto obejdete nejlépe tak, že budete spouštět Odamex s parametrem -nomusic. Odamex se spustí bez hudby, ale zvuky budou fungovat jak mají, to nastavíte stejně jako -directx, tedy přes File > Settings, a do políčka „Extra command line arguments“ napište „-nosound“ bez uvozovek. Tyto problémy by měly být v budoucnu samozřejmě opraveny elegantněji.

Změn je opravdu hodně a nejlepší asi bude si Odamex vyzkoušet na vlastní kůži. Servery od Cyberrealityho jsou více méně aktuální, ale nejsou dobře nastaveny (respawny předmětů v entryway a podobně), dám s Cyberem hlavy dohromady a během pár dní by mělo být vše v cajku, stejně tak se zkusím domluvit s Firestonem. Takže pokud vám není klasický doom cizí a chcete si vyzkoušet mu podobný port, určitě si nový Odamex stáhněte.

Odamex 0.5 – co nás čeká

6. Srpen 2010 - 7:46

Na vývoji se usilovně pracuje a ačkoliv se o tom moc nemluví, blíží se vydání verze 0.5. Vzhledem k tomu,že vývoj je transparentní, že to už víc nejde, můžeme pokrok sledovat a co víc, klidně si nějakou aktuální verzi stáhnout a zkompilovat/nainstalovat.

K účelům vývoje Odamexu verze 0.5 byl založen Release Metabug, který má číslo 567 a obsahuje 26 bugů. Toto nemusí být konečné číslo, jelikož vždy se může objevit další, který budou chtít vývojáři do vydání verze 0.5 opravit. Momentálně je ovšem těch bugů 26 s tím, že už 18 jich je vyřešených. Lehkými počty tedy zjistíte, že zbývá vyřešit nějakých 8 bugů, které blokují vydání verze 0.5.

Opraveny byly například bugy jako
594 – kvůli kterému docházelo k přetěžování serverů velikostí packetů
566 – možnost přejít na začátek/konec výpisu v konzoli pomocí komba Shift+pgup/shift+pgdn.
563 – opraven příkaz wad v konzoli
560 – Scythe 2 Coop Overflows, takže klient by již neměl vypadávat při připojení na servery s Scythe 2
559 – přidána a odladěna ENDOOM obrazovka (nostalgie, že ano ;-))
555 – opraveny příkazy +recordvanilla a +playdemo jako parametry při spuštění Odamexu
542 – DOOMWADDIR support in CFG, tedy můžete nadefinovat v konfiguráku cesty k wad souborům
512 – Things won’t fall off ledges, monstra a předměty nepadají. V klasice nepadají, v Boomu ano, takže opraveno aby padaly pouze když je to povoleno co_nodropoff. Zachována kompatibilita s vanillou tímto flagem.
385 – Sound Options Menu, možnost vypnout/zapnout různé zvuky jako při připojení hráče, objevení tajné místnosti atd…

A samozřejmě další věci jako stabilita, možnost nastavit zobrazení skóre na klávesu i ve hře atd…

Do výdání 0.5 zbývá vyřešit
590 – Player is not preserved between levels, těžce řešitelný bug, jelikož k němu nedochází vždy, občas se při přechodu do nového levelu v coopu nepřenesou zbraně, armor atd…
564 – Mouse Deceleration, další nepříjemný bug, tentokráte se týkající pouze Windows uživatelů (SDL.dll), podle názvu je asi jasné, deakcelerace myši.
508 – Boom: Generalized linedef type doesn’t work, tady se přiznám moc nerozumím o co se jedná, jde asi o nějakou mapperskou záležitost =)
475 – Servers aren’t checking client wads, problémová věc, server nekontroluje, zda má klient tentýž wad, který má server k dispozici.
287 – Incorrect E1M4 door+lift behavior, dveře v E1M4 nemohou být otevřeny, když je výtah dole a naopak, jelikož používají stejný tag
211 – Renderer problem: Slows down when you look at a wall, k bugu dochází pouze v rozlišení 1024*768 ve windows módu, zpomalení hry při blízké pohledu na stěnu
210 – BOOMEDIT bugaboos, pár věcí s boom kompatibilitou, více zde
206 – podobné jako bug 210

Verze 0.5 by mohla být tedy velmi zajímavá. Pokud si chcete vyzkoušet Odamex v aktuálním stádiu, můžete využít zkompilované binárky aktuální k dnešnímu dni.

Windows buildy a Linux RPM buildy

Windows buildy a Linux RPM buildy

15. Červenec 2010 - 21:58

Vzhledem k tomu, že tým okolo Odamexu začal vykazovat „nějakou“ činnost, musím měl bych vykázat nějakou tu činnost taky. Poslední stabilní verze Odamexu vyšla před víc než půl rokem. Ovšem to neznamená, že od té doby se nic neděje nebo nedělo, popravdě v porovnání s poslední stable verzí, která je 0.4.4. je aktuální verze, tedy ta ze zdrojových kódů, opět někde jinde, ne jen v hratelnosti, ale i ve stabilitě či funkčnosti.

Do teď jsem tu a tam dělal noční buildy pro win-platformu a vždy build doprovodil nějakým tím komentářem. Ale protože se teď programátoři činí a dělat každý druhý den build a sepisovat k tomu, byť i malý komentář, se mi moc nechce, tak jsem rozjel takové veřejné úložiště buildů, kde budou více, či méně, aktuální buildy, aniž bych na ně upozorňoval tady na stránkách.

Pokud se bude jednat o nějaký „závažnější“ update, určitě jeho změny zde popíšu, ale jinak se prostě tu a tam v onom úložišti objeví novější verze, aniž bych na ní upozornit. Jinými slovy, chcete si vyzkoušet aktuální stav Odamexu, ale nevíte jak si jej zkompilovat? Stáhněte si jeho nighlty build z mého úložiště.

Jak nadpis napovídá, jedná se o 7-zip archívy buildů pro Windows a RPM balíčky pro Linuxové distribuce založené na RPM. DEB by mohly časem následovat, zatím jsem do tajů DEB balíčku nepronikl, časem snad ale proniknu. Na závěr snad jen popřeji užijte si aktuální verze Odamexu a jen dodám, že Win buildy jsou 32bit a Linuxové balíčky jsou jak x86 tak x86_64 verze.

Windows buildy a Linux RPM buildy

Co se děje? #11 – práce na Launcheru a nový mód

13. Červenec 2010 - 8:24

Pánové začali opět něco dělat, tak je na čase, abych sebou také hnul. Ralphisovo oznámení, že se hledá nový vývojář a že to jde s vývojem Odamexu od desíti k pěti pohnulo některými vývojáři, kteří se opět začali věnovat programování Odamexu a dokonce přibyla i nová tvář, s přezdívkou Spleen, jehož několik patchů bylo do kódu už zařazeno.

Russell stále ladí Launcher, nová verze vypadá lépe než aktuální stable, zobrazuje z IDE důvěrně známe obrázkové znázornění kvality odezvy serverů, tedy zelený puntík do pingu 150, oranžový do 300 atd… od jakého pingu se má jaký puntík zobrazovat se dá jednoduše nastavit. Dále přibylo i okno o detailech právě označeného serveru, které se nyní dělí o spodní část Odamex Launcheru se seznamem hráčů, který byl pravda trochu roztahaný. Celkový aktuální vzhled si můžete prohlédnout na screenu níže.

Dále, a to se jedná o nejčerstvější informaci, jelikož s touto změnou přišel poslední release kódu je nový mód, s názvem Arena mode. Zatím jsem neměl možnost jej vyzkoušet, přece jen, je to pět hodin stará věc, ale prolétl jsem si zdrojové kódy

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 if (sv_arenamode) { size_t i;   p->health = deh.MaxSoulsphere; p->mo->health = p->health; p->armorpoints = deh.MaxArmor; p->armortype = deh.BlueAC; p->readyweapon = p->pendingweapon = wp_supershotgun; p->backpack = true; p->powers[pw_strength] = true;   for (i = 0; i < NUMWEAPONS; i++) p->weaponowned[i] = true;   p->weaponowned[wp_bfg] = false; p->weaponowned[wp_chainsaw] = false;   for (i = 0; i < NUMAMMO; i++) { p->maxammo[i] *= 2; p->ammo[i] = p->maxammo[i]; }   // inform client { size_t j; client_t *cl = &p->client;   MSG_WriteMarker (&cl->reliablebuf, svc_playerinfo);   for(j = 0; j < NUMWEAPONS; j++) MSG_WriteByte (&cl->reliablebuf, p->weaponowned[j]);   for(j = 0; j < NUMAMMO; j++) { MSG_WriteShort (&cl->reliablebuf, p->maxammo[j]); MSG_WriteShort (&cl->reliablebuf, p->ammo[j]); }   MSG_WriteByte (&cl->reliablebuf, p->health); MSG_WriteByte (&cl->reliablebuf, p->armorpoints); MSG_WriteByte (&cl->reliablebuf, p->armortype); MSG_WriteByte (&cl->reliablebuf, p->readyweapon); MSG_WriteByte (&cl->reliablebuf, p->backpack); }

A dá se usoudit, že se jedná o něco na způsob last man standing. Tedy že začínáte s 200% zdraví (p->health = deh.MaxSoulsphere;) a armoru (p->armorpoints = deh.MaxArmor;) a se všemi zbraněmí (ten if p->weaponowned[i] = true), kromě BFG a motorové pily (wp_bfg a wp_chainsaw = false). No, deathmatch by v tom mohl být zajímavý, prostě na život a na smrt, po spawnu pro všechny stejné podmínky.

Dále se samozřejmě opravilo pár dalších chyb a podobně. Pokud se opět bude dít něco podstatnějšího, budu samozřejmě informovat.

Nightly Build #1643

5. Červenec 2010 - 18:42

Po dlouhé odmlce vývojových buildů přináším další. Ačkoliv to vypadalo s vývojem Odamexu poslední dobou všelijak, začali se pánové opět pyšnit a dokonce pomáhá ve vývoji pár nových tváří, od posledního buildu se toho změnilo více než dost, takže pokud máte zájem si aktuální stav vyzkoušet, neváhejte si build číslo 1643 stáhnout.

Build neobsahuje Odamex Launcher. Jako vyhledávač tedy použijte buď to IDE nebo Doomseeker. Pokud jeden z těchto vyhledávačů nenabídne servery, změňte v nastavení master z master1.odamex.net:15000 na master2.odamex.net:15000.

Odamex na tenkém ledě

28. Červen 2010 - 9:10

Ralphis oficiálně naznačil, co lidé už poznat mohli sami. Odamex je s vývojem na hraně, občas se nějaká ta změna ve zdrojových kódech objeví, ale není to nic extra. Pasivita vývojového týmu dospěla do stádia pro Ralphise neúnosného a vyzval tak případné vývojáře k připojení se k Odamex týmu, případně k zasílání příležitostných oprav známých bugů.

Zmiňuje dobrý stav enginu v aktuální podobě (a má de facto pravdu), ovšem ne na tolik, jak očekává komunita, která se kolem Odamexu již vytvořila. Nejpalčivějším problémem je momentálně dotlačení Odamexu do verze 0.5, pro vydání je nutno uzavřít zhruba 18 bugů. Případné patche by bylo nejlepší směřovat asi zde.

Požadavky na případného lídra vývojového týmu nejsou nikterak strašné (v porovnání s těmi, co má id Software ;-)). Solidní znalost jazyka C++ a zkušenost se síťovým kódem, výhodou je samozřejmě znalost Doom enginu.

Pokud si myslíte, že můžete, byť i malou měrou, pomoct ve vývoji Odamexu, kontaktujte Ralphise na email nebo přes oficiální fórum Odamexu. Více se můžete dočíst v oficiálním vyjádření.