Preuzmite zakrpu za Crisis 3 direct 10. Priprema za hakiranje
Crysis 3 na Windows XP. Da li igra radi na DirectX 9 10
Na internetu često možete pronaći teme na forumu i pitanja sa sadržajem Da li Crysis 3 radi na Windows XP sa DiretcX 9 i 10?
U ovom članku ćemo konačno staviti tačku na rasprave o tome može li Crysis 3 raditi na Windows XP-u i objasniti sve nijanse.
Dakle, Crysis 3 samo fizički NE MOŽE da se pokrene i pokrene na Windows XP-u. Ne zato što je Windows XP prestar operativni sistem za Crysis 3, već zato što je maksimalna podržana verzija DirectX-a u XP-u 9, dok je MINIMALNI nivo DirectX-a potreban za pokretanje i pokretanje Crysis-a 3 11.
Zaista, na Windows 7, 8 i Windows Vista Crysis 3 se osjeća odlično, jer. ovi operativni sistemi mogu raditi sa DirectX 11, pod kojim je igra kreirana.
Još uvijek postoji nijansa, ponekad se korisnici pitaju zašto Crysis 3 ne radi na Windows 7, 8, Vista jer podržavaju DirectX 11. Ovo je zapravo vrlo dobro pitanje koje ima odgovor. Nije dovoljno da jedan operativni sistem podržava DirectX 11, potrebno je i da DirectX 11 podržava i sama video kartica. Uz GPU-Z možete odrediti podržava li vaša video kartica DirectX 11 ili ne.
Pa, što se tiče Windows XP-a, Crysis 3 neće raditi na ovom OS-u, šta god da se kaže. Zato preporučujemo da se ne zamarate pitanjima "kako pokrenuti Crysis 3 na Windows XP" itd., jer ćete ga pokrenuti na ovom operativni sistem nećeš moći.
Problem nedostatka lokalizacije leži u sledećem: u Crysis 2 postoji samo jedna arhiva gamecrysis2\Localized\English.pak, in Crysis 3 njih već dva - Lokalizacija\Russian.pak i Lokalizacija\Russian_xml.pakRadimo po "rigidnoj" šemi
Preuzimanje programa PAK Manager (Pak Manager alat), potrebno je za raspakivanje šifrovanog *.PAK fajlove igara, sa službene stranice CryTek isporučeno sa Crysis 2 Mod SDK
Crysis 3 DX9 projekat
Ažurirano 22.03.2013
!
Nakon iscrpljujućeg kopanja Cry Engine 2 i Cry Engine 3 ustanovljeno je da u potonjem (iz igre) postoje važne postavke.
Među njima treba istaći - r_Driver(CE3) prihvata vrijednosti: DX11, AUTO i NULL.
Citat iz crysis3.exe "Postavlja drajver za prikazivanje (DX11/AUTO/NULL)". A i linija je puno pomogla: Navedite u system.cfg ovako: r_Driver = "DX11". Određuje indeks željenog video adaptera koji će se koristiti za renderiranje (-1=isključeno, petlje dok se ne pronađe prvi odgovarajući adapter).
Podešavanje r_Driver="DX9" dovelo je do nestanka nekih objekata na mapama i izostanka crtanja likova (videla se samo glava i oružje).
Provjeravam r_ShadersExport (0 isključeno, 1 dozvoljava izvoz shadera tokom generiranja keša shadera - Trenutno samo 360.), odnosno izvozimo obrađene efekte u datoteke (Crysis3\USER\Shaders\Cache).
I opet, neuspjeh, kako su naučna istraživanja otkrila, većina komandi koje su bile dostupne u C2 je ili popravljena ovdje, ili motor ne reaguje na bilo koji način na njihovu promjenu, iako se postavke za PS3 i Xbox 360 često gledaju u kod, posebno: r_ShadersPS3 i r_ShadersXenon. Uopšteno govoreći, sam fajl crysis3.exe sadrži puno smeća i nepotrebnih informacija, na primjer, možete pronaći pozive kompajlera i parametre, ali ono što trebate pronaći nije se moglo pronaći, na ovoj napomeni, studija Cry Engine 3 je zaustavljen. Vrijedi napomenuti da u C3 kodu izraz preskače D3D9, tako da je moguće da je u početku CE3 kreiran i za DX9, očito su programeri naišli na neki neobjašnjiv problem i odlučili da se ne naprežu, brzo slažući "novi" motor.
Šta je postignuto
Empirijski je ustanovljeno da C3 odgovara na naredbu u system.cfg, sys_spec(0-6), sa vrijednošću 5 za Xbox 360 i vrijednošću 6 za PS3! (sys_spec=5). Treba napomenuti da u ovom slučaju igra počinje da koristi sav vaš N-core procesor bez zaustavljanja, učitavajući ga na 99%! Video ispod pokazuje glavni problem, nema tekstura niske rezolucije u CE3 engine-u, barem za likove. Osim toga, pronašli smo mogućnost ponovnog kompajliranja tekstura. Pogledajte snimke ekrana ispod i pogledajte video.
AT ovog trenutka tim entuzijasta HardWare Masters radimo na tome, čim završimo i testiramo - objavićemo!
Crysis 2 MOD SDK
Da biste instalirali programski paket od Nijemaca, potreban vam je C2 verzija 1.9, ako imate instaliran piratski i SDK nije instalirano, ruši sa sljedećom greškom: "zahteva potpunu instalaciju igra Crysis 2 ažuriran na zakrpu 1.9", tada morate uraditi sljedeće:
- provjerite ključ registratora (za 32-bitne sisteme) HKEY_LOCAL_MACHINE\SOFTWARE\Crytek\Crysis 2
ključ tipa string Install Dir, ako u registru nema takvog unosa ili je putanja pogrešna, kreirajte i registrirajte traženi!
- za x64 sisteme, ključ registratora se nalazi na: HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Crytek\Crysis 2
, radnje su slične prethodnom paragrafu.
korisni linkovi
DirectX 11 Hook/Hack/Patch
Nakon što sam proveo dosta vremena učeći Crysis 2 game engine, pala mi je na pamet ideja emulacije/zaobilaženja DirectX 11 API poziva. Zapravo, ideja nije nova, ako se prisjetite starog uslužnog programa njemačkog autora pod nazivom 3D analiza, koji je omogućio emulaciju verzije shadera i konfiguraciju svake aplikacije za gotovo svaku video karticu, tada je ovaj način rješenja brži i pouzdaniji. Poslali smo Thomas"imaju poruku, ali i sami su već počeli da rade u tom pravcu. Patch / Hack / Utility će se predstaviti ili kao direktna zakrpa (.dll) ili kao univerzalna (izmeniti procesnu memoriju).
Kao rezultat istraživanja EXE datoteke, odlučeno je da se napravi "sopstvena" biblioteka d3d11.dll, kako bi funkcije u biblioteci vraćale tražene parametre bez učešća drajvera. Takođe u procesu istraživanja tehnologije DirectX Pronađen je veoma interesantan broj detalja, na primer, da se bilo koji model sa DX11 efektima može renderovati na skoro svakoj video kartici. Zapravo, postojala je sumnja da su sve "dobrote" DX10/11 itd. dodaci preko DX9, a podrška za odgovarajući API leži samo u drajverima. Uostalom, koja je razlika šta poslati na čip? Na kraju, svejedno, mašinski kod se šalje na čip, na primjer, Tessellation - u stvari, dodaje još nekoliko žičanih okvira postojećem modelu. Kao rezultat toga, svojim očima vidimo sav moderni marketing, odnosno izmišljeni su novi čipovi za prodaju novih čipova, koji se mogu ponovo kreirati na ranijim modelima (8600GT / Radeon 4000 serija...). Na primjer, ako se u DX9 ispupčenje može napraviti sa 9 komandi, onda u DX11 samo 3, ovo je samo primjer, grafički čip će se i dalje učitavati na isti način na izlazu). Još jedna stvar, čak i ako napravite model samo za verziju 11 shadera, i dalje morate ručno podesiti "izbočine i osvjetljenje". Zato su u Crysis 3 shaderi za modele već u samoj igrici). U stvari, svi blokovi su u drajverima i bibliotekama (zahvaljujući MS, NV i AMD - svi monopolisti). Ispod je video koji pokazuje u kom pravcu kopati, a takođe jasno pokazuje tačnost moje izjave.
Šta želimo da radimo? Zamijenite DX11 biblioteke analognim, odnosno svaki poziv 11.0/11.1 API funkcije uvijek će biti uspješan;).
Prisjetimo se malo istorije... Na primjer, koliko dugo ljudi sede na XP-u, i sve je odgovaralo svima, kao i neuspjeh Viste (glavna karakteristika pseudo DX10), a zatim spori prelazak na Seven (popeo se iz Viste i pseudo-novog DX11), još jednom dokazuje izjave o lojalnosti.
Priprema za hakiranje
Alternativna DirectX 11 biblioteka - koncept
Nakon površnog pregleda igre za pozivanje DirectX funkcija, prije učitavanja menija, pronađene su dvije: D3D11CreateDevice i . Nakon otvaranja Microsoftove baze znanja (MSDN), ustanovljeno je da nema toliko nepodudaranja, izuzev broja argumenata.
Deklaracija funkcije D3D11CreateDevice HRESULT D3D11CreateDevice(_In_ IDXGIAdapter *pAdapter, _In_ D3D_DRIVER_TYPE DriverType, _In_ HMODULE Software, _In_ UINT Flags, _In_ const D3D_FEATURE_LEVEL *pFeatureLevels, _In_ UINT FeatureLevels, _In_ UINT SDKVersion, _Out_ ID3D11Device **ppDevice, _Out_ D3D_FEATURE_LEVEL *pFeatureLevel, _Out_ ID3D11DeviceContext **ppImmediateContext ); | Deklaracija funkcije D3D10CreateDevice HRESULT D3D10CreateDevice(_In_ IDXGIAdapter *pAdapter, _In_ D3D10_DRIVER_TYPE DriverType, _In_ HMODULE softver, _In_ UINT Flags, _In_ UINT SDKVersion, _Out_ ID3D10Device);** |
Deklaracija funkcije D3D11CreateDeviceAndSwapChain HRESULT D3D11CreateDeviceAndSwapChain(_In_ IDXGIAdapter *pAdapter, _In_ D3D_DRIVER_TYPE DriverType, _In_ HMODULE Software, _In_ UINT Flags, _In_ const D3D_FEATURE_LEVEL *pFeatureLevels, _In_ UINT FeatureLevels, _In_ UINT SDKVersion, _In_ const DXGI_SWAP_CHAIN_DESC *pSwapChainDesc, _Out_ IDXGISwapChain **ppSwapChain, _Out_ ID3D11Device ** ppDevice, _Out_ D3D_FEATURE_LEVEL *pFeatureLevel, _Out_ ID3D11DeviceContext **ppImmediateContext); | Deklaracija funkcije D3D10CreateDeviceAndSwapChain HRESULT D3D10CreateDeviceAndSwapChain(_In_ IDXGIAdapter *pAdapter, _In_ D3D10_DRIVER_TYPE DriverType, _In_ HMODULE Software, _In_ UINT Flags, _In_ UINT SDKVersion, _In_ DXGI_SWAP_CHAIN_DESC *pSwapChainDesc, _Out_ IDXGISwapChain **ppSwapChain, _Out_ ID3D10Device **ppDevice); |
Ovaj kod je na sajtu. MSDN tako da svako može provjeriti. Konkretno, funkcija D3D11CreateDeviceAndSwapChain se poziva samo dva puta u igri prije učitavanja glavnog menija, u stvari, najvjerovatnije je test za provjeru čipova 11. verzije DirectX-a zasnovan na tome, odlučeno je zamijeniti biblioteku d3d11.dll (smještenu u mapu sa crysis3.exe), napišem ga "klonom" koji će, prije svega, presresti sve pozive funkcija iz igre i zapisati ga u LOG datoteku, a drugo, uvijek će biti moguće vratiti vrijednosti koje su nam potrebne!
Snimak ekrana ispod ne pokazuje razliku između DX9 i DX11 ( dragon age 2), DX je samo softverski API za video drajver, drajver zauzvrat kreira skup komandi (instrukcija) za GPU. DirectX 11 karakteristike su samo dodatni efekti za DX9, DX10/DX11 - samo marketing za prodaju Windows Vista i drugih Microsoftovih operativnih sistema, kao i za češće mijenjanje video kartice zbog "novih" funkcija, koje u suštini nisu ništa više nego samo program. Ako ste imali dokumentaciju za video adapter (pokušali smo je nabaviti, ali smo bili odbijeni), na primjer GeForce 6600, lako biste mogli napraviti neophodan drajver za bilo koji API koji bi mogao kreirati tok komandi za primjenu istih DX11 efekata na jednostavan 6600 ili na bilo koji drugi čip i adapter!
Fajlovi
Važno: da biste raspakovali arhivu, morate koristiti arhiver koji podržava 7z format, na primjer, 7zip(7-zip.org) ili WinRAR(rarlab.com).