Menu

Gothic overhaul pack

Příspěvekod Vilem Otte » pát 29. črc 2011 0:54:42 » Gothic overhaul pack
Zdravím všechny,

jelikož jsem si našel chvilku času a konečně se dokopal k nějakým úpravám na Gothicovi, tak jsem se konečně rozhodl napsat. Celý overhaul "mod" (on to není mod) se skládá z více částí, ještě má docela dlouhý list todo, ale zde je seznam featur, které jsou plánovány (a některé již zčásti hotovy):

Retexture světa - toto je jediná část, která je víceméně hotova, jelikož jsem využil retexturovací balíčky, které existují (s trochou úsilí také přidal mé vlastní kousky), samozřejmě credits jdou také autorům texture patchů.

Remodelling světa - celý svět se remodellovat nebude, nicméně rád bych se pokusil o úpravu stromů a listů u nich, jelikož ty jsou na tom kvalitativně nejhůře. Remodelling celého světa by byl bez stabilního týmu grafiků nemožný.

Daemon - nejsložitější část ze všeho, doslova jde programově o hook Direct3D knihovny tak, abych mohl zasahovat do rendereru a jeho pipeline. Teoreticky by bylo možné celý jej přepsat, prakticky to asi nepůjde. Nicméně pár věcí co je v plánu jsou - Unlimited view distance, tedy uvidíte do "nekonečna", a Bloom effect, nicméně ne přehnaný. Daemon se tedy bude skládat z dvou částí - prvně nabourá D3D8 knihovnu a zajistí zFar ořezávací rovinu "v nekonečnu" (což momentálně jakkoliv přes ini nejde), v druhé nabourá samotný výstup a trošku jej znásilní (pokud by se zadařilo, tak možná i nějaký antialiasing v prostoru obrazu by byl - jako Morphological Antialiasing); Daemon jsem zatím testoval jen ve WinE pod linuxem (kde nabourávám OpenGL, což je snazší) a fungoval (což je podstatné), ve Windows momentálně sháním DirectX 8 SDK.

Zde je pár ukázek přímo z WinE:
Obrázek Obrázek Obrázek Obrázek Obrázek

Download balíku sem zatím dávat nebudu, jelikož musím v něčem napsat jeho instalátor :lol: asi v C#...

Pokud by někdo měl zájem se k projektu připojit, především moddeři, kteří umí konvertovat textury a modely do Gothicu, jelikož o modely ve formátu 3ds a textury ve formátu tga se postarám, ale s konverzí jakou takovou mám docela problémy (bazillionkrát mi spadl GothicStarter, který to má umět (někdy teda prošel) ... teoreticky bych si mohl tool ke konverzi tga-tex vytvořit, protože vím, že je ve formátu S3TC komprese, kterou znám) ... samozřejmě vliv na to bude mít i fakt, že pracuji pod linuxy.

Teď jdu pokračovat v práci na Daemonovi, pokud by se někdo měl zájem přidat, pište prosím zde do threadu.

Možná se časem rozhodnu podobně upravit další hru ... třeba G2.
Currently working on "Project RPG (subject name to change)".
El. Psy. Congroo.
Uživatelský avatar
Vilem Otte
Uživatel
 
Příspěvky: 340
Registrován: ned 23. zář 2007 22:30:50
Bydliště: Znojmo - Sedlešovice, Kraví Hora

Příspěvekod vrabčanda » sob 30. črc 2011 16:00:26 » Re: Gothic overhaul pack
Pěkný, držím ti palce, ať to vyjde... :wink:
.-.Štýl.-.
Uživatelský avatar
vrabčanda
Uživatel
 
Příspěvky: 1171
Registrován: ned 01. bře 2009 8:05:28
Bydliště: Tam kde jsem

Příspěvekod Vilem Otte » ned 31. črc 2011 21:39:31 » Re: Gothic overhaul pack
vrabčanda píše:Pěkný, držím ti palce, ať to vyjde... :wink:

Jo, prozatím to nějak jde, pracuji na Daemonu - na DirectX 8 kompatibilní aplikace se již dostanu (testoval jsem ho na pár aplikacích), jenomže na Gothic.exe se stále nějak "nabourat" nemohu (nevím zda načítá knihovnu přes LoadLibrary - to by byl problém, zkusím to ještě upravit). Hlavně si musím zjistit jeho library-dependencies (tedy které knihovny používá), momentálně se nabourávám do d3d8.dll, které by používat *měl* ale z nějakého důvodu hook nezabírá ... jdu dále ladit. :twisted:
Currently working on "Project RPG (subject name to change)".
El. Psy. Congroo.
Uživatelský avatar
Vilem Otte
Uživatel
 
Příspěvky: 340
Registrován: ned 23. zář 2007 22:30:50
Bydliště: Znojmo - Sedlešovice, Kraví Hora

Příspěvekod Greg » ned 31. črc 2011 21:48:15 » Re: Gothic overhaul pack
Vypadá to dobře. Už se nemůžu dočkat. Jen upozorním, že i Gothic podporuje nekonečnou viditelnost. Když do konzole napíšeš "set clippingfactor 5" a "zfogzone", tak to hodí nekonečnou viditelnost. Akorát ty okraje světa a stromy z výšky pak vypadají trochu divně :???: .
Obrázek
Uživatelský avatar
Greg
Zasloužilý člen fóra
 
Příspěvky: 1891
Registrován: pon 25. úno 2008 7:20:59
Bydliště: Mezi piráty...

Příspěvekod Vilem Otte » pon 01. srp 2011 2:26:09 » Re: Gothic overhaul pack
Objevil jsem nový problém mé implementace - Gothic nereagoval ani na hookovanou D3D8.dll, tak jsem zjišťoval kde je problém, a ač u sebe obsahuje instalaci DirectX 8, sám používá DirectX 7 :lol:

Bohužel knihovna D3D7.dll neexistuje a vše jde skrz DDraw.dll (tedy DirectDraw), který je relativně velký na hookování, takže budu testovat na kterou část zareaguje (předpokládám však že to bude IDirectDraw7). Pro mě je nejdůležitější zjistit, jak dostanu finální výsledek z DirectDraw (což snad půjde, aniž bych se musel pokoušet přepsat vše pod novější 3D api), případně to udělat jako Overlay - tedy jako Fraps.

Hook na D3D8.dll jsem úspěšně otestoval jak na testovacím prográmku z DirectX SDK, tak na hře TES 3: Morrowind. (Předchozí D3D9.dll jsem otestoval na CS:Source :lol: )
Currently working on "Project RPG (subject name to change)".
El. Psy. Congroo.
Uživatelský avatar
Vilem Otte
Uživatel
 
Příspěvky: 340
Registrován: ned 23. zář 2007 22:30:50
Bydliště: Znojmo - Sedlešovice, Kraví Hora

Příspěvekod Romop5 » pon 01. srp 2011 13:03:51 » Re: Gothic overhaul pack
môžem sa opýtať, akým spôsobom hackuješ engine ? Cez vonkajšiu app inject-neš DLL alebo upravuješ pamet cez WinAPI funkcie ? Ešte by sa dalo aj zmeniť exač Gothicu cez Hex Editor / OllyDbg, ale tam by sa bol problém, že pirátom by to nefikčalo
Obrázek
Uživatelský avatar
Romop5
Uživatel
 
Příspěvky: 54
Registrován: úte 29. čer 2010 18:38:46

Příspěvekod Vilem Otte » pon 01. srp 2011 15:00:05 » Re: Gothic overhaul pack
Romop5 píše:môžem sa opýtať, akým spôsobom hackuješ engine ? Cez vonkajšiu app inject-neš DLL alebo upravuješ pamet cez WinAPI funkcie ? Ešte by sa dalo aj zmeniť exač Gothicu cez Hex Editor / OllyDbg, ale tam by sa bol problém, že pirátom by to nefikčalo

Používám standardní DLL injection - tedy standardní library hook, paměť přes WinAPI funkce neupravíš (leda že bys měl program v kernel ring0, to však důrazně nedoporučuji). Hex editovat exe soubor (případně reverse-engeneerovat a upravit) nesmíš, je to nelegální - tedy to dělat nebudu, navíc zde by bylo jednodušší celý engine přepsat, než to reverse engeneerovat.
Currently working on "Project RPG (subject name to change)".
El. Psy. Congroo.
Uživatelský avatar
Vilem Otte
Uživatel
 
Příspěvky: 340
Registrován: ned 23. zář 2007 22:30:50
Bydliště: Znojmo - Sedlešovice, Kraví Hora

Příspěvekod Romop5 » pon 01. srp 2011 18:17:21 » Re: Gothic overhaul pack
niektore cheaty (trainery) neinjectnu DLL ale len otvoria bežiaci proces a pomocou niektorej windowsackej funkcie zmenia hodnoty niektorých premenných. Ale lepši je aj tak podla mňa DLL inject už len preto, že DLL ma prístup k celej pameti procesu
Obrázek
Uživatelský avatar
Romop5
Uživatel
 
Příspěvky: 54
Registrován: úte 29. čer 2010 18:38:46


Kdo je online

Uživatelé procházející toto fórum: Žádní registrovaní uživatelé

cron