c1-launcher
c1-launcher copied to clipboard
64 bit exe crash with custom object and textures
Hello there. I noticed that the 64 bit exe crashes a lot when using mods with custom objects and high res textures ( like maximum immersion mod or Crysis Enhanced). Found some post on the web saying that it is probably a memory management issue. Could you investigate it ? Because only be able to play with 32 bits when using mods is a pity...
Cheers and thanks for your work.
Hello. I've just tried the Maximum Immersion Mod and it works fine. I've finished the first singleplayer level without any problems. No crashes so far even with the max settings (e_lods 0
etc.) and 64-bit game.
Here are my system specs:
CPU: Intel Core i7-4790S
RAM: 16 GB
GPU: Sapphire Radeon NITRO+ RX 480 (8 GB version)
OS: Debian GNU/Linux sid
It's pretty old hardware as you can see :)
I use Wine + DXVK to run the game (64-bit version always). I also run it in DX9 mode because DX10 is just useless. There's no visible difference in graphics. Except that VeryHigh settings are not available in DX9 mode with the original exes. However, there's no technical reason for this. It's just a stupid restriction that Crytek added. I suspect Microsoft forced them to do so, because they wanted to give gamers a "reason" to use the new WinVista thing. That's also why DX10 was never officially available on WinXP. Anyway, the exes from here unlock Very High settings in DX9 mode, so there's no reason to use DX10 i think. DX9 seems to be more stable and slightly more efficient. DX10 looks like a useless trash, but i'm not a 3D graphics programmer, so who knows.
Can you try DX9 mode then? If it still crashes, open Game.log
and send me the crash info from there.
Also, don't forget to always wipe shader cache after installing or uninstalling these mods. Both Game/ShaderCache.pak
and My Games/Crysis/Shaders/
should be removed. You can keep the ShaderCache.pak
file stored somewhere because it works just fine with the original game. One more thing, the author of the mod forgot to say that you have to launch the game with +exec System.cfg
parameter to apply all those custom settings. The file should be named autoexec.cfg
, otherwise the game won't load it automatically.
By the way, the game looks worse with the mod. It's probably just my personal opinion, but a lot of those high resolution textures look so weird. Especially that new nanosuit. It doesn't fit C1 at all. Or that somewhat darker lighting combined with those ugly palms. Original Crysis at Very High settings without any mods looks the best i think :)
Maybe try increase r_texturesStreamPoolSize to 250, might help with those high texture quality
Hello, and thanks for your answer ! I tried yesterday with the Enhanced Edition mod and couldn't even enter the level ( village) . Crash during the loading. I got some random crash too with a less demanding mod ( Crysis HD textures 2018)
Pmed the author of enhanced mod, they told me it's a well known issue of the 64 bit launcher, but can't fix it, so i should stick with 32 bits which really bothers me.
Here is the crash info from log for the enhanced mod . Thanks again. I'm using a ryzen 2600x and a vega 56 GPU. Using the autoexec from the mod ( high view distances, e_lods 0.., tried to reduce values and use e_lods 1 but still crash with 64 bit exe).
Edit : Tried to play with texturestreaming and texturestreamingpool. Using texturestreaming = 1 instead of 0 seems to help a bit i can enter the level but random crash then very quickly at the beginning . So it looks like an issue related to loading assets and textures with the 64 bit exe. ( vanilla 64 bit exe crashes too)
================================ CRASH DETECTED ================================ C1-Launcher 2.5 64-bit Access violation exception (0xC0000005) at 0x000000003658A258 Write to 0x0000000036768669 failed Register dump: RIP: 000000003658A258 RSP: 000000000014BF10 RBP: 0000000036768669 EFLAGS: 00010206 RAX: 0000000088E31E93 RBX: 00000000C984FE84 RCX: 0000000036768669 RDX: 0000000088BD72DC RSI: 0000000000000004 RDI: 0000000088BD72FC R8: 0000000036768669 R9: 0000000000000000 R10: 000000000014BFB0 R11: 0000000088E31EF8 R12: 000000000014BF70 R13: 000000000014C1E8 R14: 000000008773A52C R15: 4924924924924925 Callstack: 000000003658A258: ?? () in CrySystem.dll 00000000365857AD: ?? () in CrySystem.dll 000000003658580E: ?? () in CrySystem.dll 000000003658E4AC: ?? () in CrySystem.dll 0000000030666146: ?? () in CryAction.dll 0000000030609968: ?? () in CryAction.dll 0000000030612C04: ?? () in CryAction.dll 000000003207FC0E: ?? () in CryEntitySystem.dll 000000003200E411: ?? () in CryEntitySystem.dll 00000000306A0695: ?? () in CryAction.dll 00000000308257DA: ?? () in CryAction.dll 00000000307AE009: ?? () in CryAction.dll 000000003953D200: ?? () in CryNetwork.dll 000000003956D7B3: ?? () in CryNetwork.dll 000000003955CD65: ?? () in CryNetwork.dll 00000000395351CD: ?? () in CryNetwork.dll 000000003953459C: ?? () in CryNetwork.dll 0000000030814AAA: ?? () in CryAction.dll 000000003081B1FE: ?? () in CryAction.dll 0000000030827527: ?? () in CryAction.dll 000000003656AB8A: ?? () in CrySystem.dll 000000003656A3AA: ?? () in CrySystem.dll 000000003656EDE2: ?? () in CrySystem.dll 0000000036563E1A: ?? () in CrySystem.dll 0000000033507262: ?? () in CryInput.dll 000000003350434F: ?? () in CryInput.dll 00000000335046B6: ?? () in CryInput.dll 00000000335065C6: ?? () in CryInput.dll 0000000036536AE1: ?? () in CrySystem.dll 000000003082543A: ?? () in CryAction.dll 00000000390BB616: ?? () in CryGame.dll 00000000390019DD: ?? () in CryGame.dll 000000003900534D: ?? () in CryGame.dll 00000001400031C3: ?? () in Crysis.exe 000000014000124C: ?? () in Crysis.exe 0000000140009AAC: ?? () in Crysis.exe 00007FFAE26A7034: BaseThreadInitThunk + 0x14 () in KERNEL32.DLL 00007FFAE42DD241: RtlUserThreadStart + 0x21 () in ntdll.dll
Well, it crashed somewhere in AI FlowGraph serialization code. Do you mix 32-bit and 64-bit save files? Saves from 32-bit version are not fully compatible with 64-bit version and vice versa.
There are multiple different crashes probably. Try to collect as many different crash reports as possible and post them here. You can omit the Modules
section.
Okay, thanks again for the help. I will post more crash as soon as possible and will be careful about saves!
So, another crash still trying to load Village level with r_texturestreaming=0, and after deleting shaders cache and all savefiles. Crash at the end of the loading.
================================ CRASH DETECTED ================================ C1-Launcher 2.5 64-bit Access violation exception (0xC0000005) at 0x0000000036586A1F Read from 0xFFFFFFFFFFFFFFFF failed Register dump: RIP: 0000000036586A1F RSP: 0000000000149E20 RBP: 000000008A418D2C EFLAGS: 00010246 RAX: 0000000000000000 RBX: 0000000000000000 RCX: FFFFFFFFFFFFFFFF RDX: 6E6100302C312C30 RSI: 000000007FD34FBC RDI: 6E6100302C312C30 R8: 0000000000000008 R9: 000000003676866C R10: 00000003DB0F8050 R11: 00000003C8BCB44D R12: 000000002B8A7DC0 R13: 0000000089BB735C R14: 000000002B8A7DC0 R15: 0000000000000001 Callstack: 0000000036586A1F: ?? () in CrySystem.dll 0000000036587794: ?? () in CrySystem.dll 0000000036587794: ?? () in CrySystem.dll 0000000036587794: ?? () in CrySystem.dll 0000000036587794: ?? () in CrySystem.dll 0000000036587794: ?? () in CrySystem.dll 0000000036587A92: ?? () in CrySystem.dll 0000000030790627: ?? () in CryAction.dll 0000000030792481: ?? () in CryAction.dll 00000000306A7AAD: ?? () in CryAction.dll 00000000306A0909: ?? () in CryAction.dll 00000000308257DA: ?? () in CryAction.dll 00000000307AE009: ?? () in CryAction.dll 000000003953D200: ?? () in CryNetwork.dll 000000003956D7B3: ?? () in CryNetwork.dll 000000003955CD65: ?? () in CryNetwork.dll 00000000395351CD: ?? () in CryNetwork.dll 000000003953459C: ?? () in CryNetwork.dll 0000000030814AAA: ?? () in CryAction.dll 000000003081B1FE: ?? () in CryAction.dll 0000000030827527: ?? () in CryAction.dll 000000003656AB8A: ?? () in CrySystem.dll 000000003656A3AA: ?? () in CrySystem.dll 000000003656EDE2: ?? () in CrySystem.dll 0000000036563E1A: ?? () in CrySystem.dll 0000000033507262: ?? () in CryInput.dll 000000003350434F: ?? () in CryInput.dll 00000000335046B6: ?? () in CryInput.dll 00000000335065C6: ?? () in CryInput.dll 0000000036536AE1: ?? () in CrySystem.dll 000000003082543A: ?? () in CryAction.dll 00000000390BB616: ?? () in CryGame.dll 00000000390019DD: ?? () in CryGame.dll 000000003900534D: ?? () in CryGame.dll 00000001400031C3: ?? () in Crysis.exe 000000014000124C: ?? () in Crysis.exe 0000000140009AAC: ?? () in Crysis.exe 00007FFF08ED7034: BaseThreadInitThunk + 0x14 () in KERNEL32.DLL 00007FFF0953D241: RtlUserThreadStart + 0x21 () in ntdll.dll
Now, another crash with texturestreaming=1 . The loading ended right this time but crash just after pressing the key to enter the level. Here it is.
C1-Launcher 2.5 64-bit Access violation exception (0xC0000005) at 0x000000003657A364 Write to 0x00000000011E7098 failed Register dump: RIP: 000000003657A364 RSP: 000000000014E0F0 RBP: 000000000014E1E0 EFLAGS: 00010206 RAX: 0000000000000014 RBX: 00000000000001E0 RCX: 00000000011E7090 RDX: 00000001011E9628 RSI: 0000000036500000 RDI: 000000000000001D R8: 0000000036500000 R9: 000000000000001D R10: 0000000002560000 R11: 00000001011E70A8 R12: 000000000014E3D0 R13: 0000000000000000 R14: 0000000000000000 R15: 00000000000000A5 Callstack: 000000003657A364: ?? () in CrySystem.dll 0000000036579E1E: ?? () in CrySystem.dll 0000000036579788: ?? () in CrySystem.dll 00000000351BCD85: ?? () in CryPhysics.dll 0000000035082B68: ?? () in CryPhysics.dll 00000000300D5173: ?? () in Cry3DEngine.dll 00000000300BB891: ?? () in Cry3DEngine.dll 00000000300A9360: ?? () in Cry3DEngine.dll 000000003010E9E6: ?? () in Cry3DEngine.dll 000000003010B0AD: ?? () in Cry3DEngine.dll 000000003011106F: ?? () in Cry3DEngine.dll 000000003654FBD5: ?? () in CrySystem.dll 00000000308247E9: ?? () in CryAction.dll 00000000390BB671: ?? () in CryGame.dll 00000000390019DD: ?? () in CryGame.dll 000000003900534D: ?? () in CryGame.dll 00000001400031C3: ?? () in Crysis.exe 000000014000124C: ?? () in Crysis.exe 0000000140009AAC: ?? () in Crysis.exe 00007FFF08ED7034: BaseThreadInitThunk + 0x14 () in KERNEL32.DLL 00007FFF0953D241: RtlUserThreadStart + 0x21 () in ntdll.dll
Crash with texturestreaming=0 at the end of Island level loading. Here it is :
C1-Launcher 2.5 64-bit Access violation exception (0xC0000005) at 0x000000006531E3FE Write to 0x0000000036774500 failed Register dump: RIP: 000000006531E3FE RSP: 000000000014BFD8 RBP: 00000000367744E8 EFLAGS: 00010206 RAX: 00000000728A786C RBX: 00000000728A76AC RCX: 00000000367744E8 RDX: FFFFFFFFD441D8F4 RSI: 00000000728A78DC RDI: 0000000000000020 R8: 0000000000000020 R9: 0000000000000001 R10: 00000000728A77FC R11: 00000000367744E8 R12: 0000000000000008 R13: 000000000014C1E8 R14: 0000000081E06B5C R15: 4924924924924925 Callstack: 000000006531E3FE: memcpy + 0x25E () in MSVCR80.dll 000000003658614D: ?? () in CrySystem.dll 0000000036582D6E: ?? () in CrySystem.dll 000000003658DD62: ?? () in CrySystem.dll 0000000030609911: ?? () in CryAction.dll 0000000030612C04: ?? () in CryAction.dll 000000003207FC0E: ?? () in CryEntitySystem.dll 000000003200E411: ?? () in CryEntitySystem.dll 00000000306A0695: ?? () in CryAction.dll 00000000308257DA: ?? () in CryAction.dll 00000000307AE009: ?? () in CryAction.dll 000000003953D200: ?? () in CryNetwork.dll 000000003956D7B3: ?? () in CryNetwork.dll 000000003955CD65: ?? () in CryNetwork.dll 00000000395351CD: ?? () in CryNetwork.dll 000000003953459C: ?? () in CryNetwork.dll 0000000030814AAA: ?? () in CryAction.dll 000000003081B1FE: ?? () in CryAction.dll 0000000030827527: ?? () in CryAction.dll 000000003656AB8A: ?? () in CrySystem.dll 000000003656A3AA: ?? () in CrySystem.dll 000000003656EDE2: ?? () in CrySystem.dll 0000000036563E1A: ?? () in CrySystem.dll 0000000033507262: ?? () in CryInput.dll 000000003350434F: ?? () in CryInput.dll 00000000335046B6: ?? () in CryInput.dll 00000000335065C6: ?? () in CryInput.dll 0000000036536AE1: ?? () in CrySystem.dll 000000003082543A: ?? () in CryAction.dll 00000000390BB616: ?? () in CryGame.dll 00000000390019DD: ?? () in CryGame.dll 000000003900534D: ?? () in CryGame.dll 00000001400031C3: ?? () in Crysis.exe 000000014000124C: ?? () in Crysis.exe 0000000140009AAC: ?? () in Crysis.exe 00007FFF08ED7034: BaseThreadInitThunk + 0x14 () in KERNEL32.DLL 00007FFF0953D241: RtlUserThreadStart + 0x21 () in ntdll.dll
Crash trying to enter fleet level with texturestreamingpool= 0 .
C1-Launcher 2.5 64-bit Access violation exception (0xC0000005) at 0x0000000036586A1F Read from 0xFFFFFFFFFFFFFFFF failed Register dump: RIP: 0000000036586A1F RSP: 0000000000149CE0 RBP: 0000000084DDD7AC EFLAGS: 00010246 RAX: 0000000000000000 RBX: 0000000000000000 RCX: FFFFFFFFFFFFFFFF RDX: 3537382E37303531 RSI: 000000008163E7EC RDI: 3537382E37303531 R8: 0000000000000008 R9: 000000003676866C R10: 000000018F26C050 R11: 000000018E60C7DB R12: 00000000279D71D0 R13: 00000000841138AC R14: 00000000279D71D0 R15: 0000000000000001 Callstack: 0000000036586A1F: ?? () in CrySystem.dll 0000000036587794: ?? () in CrySystem.dll 0000000036587794: ?? () in CrySystem.dll 0000000036587794: ?? () in CrySystem.dll 0000000036587794: ?? () in CrySystem.dll 0000000036587794: ?? () in CrySystem.dll 0000000036587794: ?? () in CrySystem.dll 0000000036587794: ?? () in CrySystem.dll 0000000036587A92: ?? () in CrySystem.dll 0000000030790627: ?? () in CryAction.dll 0000000030792481: ?? () in CryAction.dll 00000000306A7AAD: ?? () in CryAction.dll 00000000306A0909: ?? () in CryAction.dll 00000000308257DA: ?? () in CryAction.dll 00000000307AE009: ?? () in CryAction.dll 000000003953D200: ?? () in CryNetwork.dll 000000003956D7B3: ?? () in CryNetwork.dll 000000003955CD65: ?? () in CryNetwork.dll 00000000395351CD: ?? () in CryNetwork.dll 000000003953459C: ?? () in CryNetwork.dll 0000000030814AAA: ?? () in CryAction.dll 000000003081B1FE: ?? () in CryAction.dll 0000000030827527: ?? () in CryAction.dll 000000003656AB8A: ?? () in CrySystem.dll 000000003656A3AA: ?? () in CrySystem.dll 000000003656EDE2: ?? () in CrySystem.dll 0000000036563E1A: ?? () in CrySystem.dll 0000000033507262: ?? () in CryInput.dll 000000003350434F: ?? () in CryInput.dll 00000000335046B6: ?? () in CryInput.dll 00000000335065C6: ?? () in CryInput.dll 0000000036536AE1: ?? () in CrySystem.dll 000000003082543A: ?? () in CryAction.dll 00000000390BB616: ?? () in CryGame.dll 00000000390019DD: ?? () in CryGame.dll 000000003900534D: ?? () in CryGame.dll 00000001400031C3: ?? () in Crysis.exe 000000014000124C: ?? () in Crysis.exe 0000000140009AAC: ?? () in Crysis.exe 00007FFF08ED7034: BaseThreadInitThunk + 0x14 () in KERNEL32.DLL 00007FFF0953D241: RtlUserThreadStart + 0x21 () in ntdll.dll
Couldn't even enter one level for now with 64 bit exe. Don't know if the logs help you?
Note that Warhead vanilla 64 bit exe does the same thing if you transfer high res texture to the game. Tested it in the past.
By the way, how do you load levels? Do you use some saves or map
console command?
map village
I use the console command " Map" . I deleted all my saves
By the way, is there any perf improvement ( CPU side) by using the 64 bit exe ?
I use the console command " Map" . I deleted all my saves
That's good.
By the way, is there any perf improvement ( CPU side) by using the 64 bit exe ?
Well, it's hard to say. CryEngine 2 has more low-level optimizations in 32-bit code, but 64-bit code is usually more or less faster.
By the way, can you test the following 64-bit Crysis.exe
? I've disabled that broken CryMemoryManager there. It should fix at least one of those crashes, so let's see.
So, some news with this new exe. I can finally enter the levels ( texturestreaming=0 ). Tried with village and fleet.
I got quickly a crash for both level when playing . Noticed quickly that i got worse perf on a CPU limited scenario in Fleet in comparison with 32 bit exe. But i would need to be able to play more to confirm .
Here are the logs.
Crash for Village
================================ CRASH DETECTED ================================ C1-Launcher 2.5 64-bit Access violation exception (0xC0000005) at 0x0000000036002105 Write to 0x0000000028041C28 failed Register dump: RIP: 0000000036002105 RSP: 000000000014E2F0 RBP: 0000000036000000 EFLAGS: 00010286 RAX: 0000000000000000 RBX: 00000000000021C0 RCX: 0000000000000000 RDX: 000000000014E350 RSI: 00000000000001A8 RDI: 000000000014E350 R8: FFFFFFFFD7FBE3D8 R9: 000000002803FA68 R10: 0000000028041C28 R11: 00000000000001B0 R12: 0000000000000000 R13: 000000001F3CB1F0 R14: 0000000000000000 R15: 0000000000000001 Callstack: 0000000036002105: ?? () in CrySoundSystem.dll 0000000036003853: ?? () in CrySoundSystem.dll 0000000036007B8F: ?? () in CrySoundSystem.dll 000000001F35D7ED: FMOD::File::close + 0x2D91 () in fmodex64.dll 000000001F35DA34: FMOD::File::close + 0x2FD8 () in fmodex64.dll 000000001F3371D5: FMOD::GeometryI::getUserData + 0x439D () in fmodex64.dll 000000001F343A72: FMOD::System_GetDebugMode + 0xEEA () in fmodex64.dll 000000001F343EC1: FMOD::System_GetDebugMode + 0x1339 () in fmodex64.dll 000000001F36357E: FMOD::System::createChannelGroup + 0x2E () in fmodex64.dll 000000001F1AA591: FMOD::EventReverbI::getUserData + 0x7C1 () in fmod_event64.dll 000000001F1ACAA0: FMOD::EventI::getNumParameters + 0x1C0 () in fmod_event64.dll 000000001F1A4DBE: FMOD::EventGroupI::getNumProperties + 0xB0E () in fmod_event64.dll 000000001F1A5E33: FMOD::EventGroupI::getGroupByIndex + 0xE3 () in fmod_event64.dll 000000003601D4AD: ?? () in CrySoundSystem.dll 0000000036022D18: ?? () in CrySoundSystem.dll 0000000036023F73: ?? () in CrySoundSystem.dll 0000000036022199: ?? () in CrySoundSystem.dll 0000000036028868: ?? () in CrySoundSystem.dll 000000003602A53D: ?? () in CrySoundSystem.dll 000000003657D96B: ?? () in CrySystem.dll 000000003657D4E7: ?? () in CrySystem.dll 0000000036536640: ?? () in CrySystem.dll 000000003082543A: ?? () in CryAction.dll 00000000390BB616: ?? () in CryGame.dll 00000000390019DD: ?? () in CryGame.dll 000000003900534D: ?? () in CryGame.dll 00000001400031CC: ?? () in Crysis.exe 000000014000124C: ?? () in Crysis.exe 0000000140009D4C: ?? () in Crysis.exe 00007FFD359B7034: BaseThreadInitThunk + 0x14 () in KERNEL32.DLL 00007FFD3757D241: RtlUserThreadStart + 0x21 () in ntdll.dll
Crash for Fleet
================================ CRASH DETECTED ================================ C1-Launcher 2.5 64-bit Access violation exception (0xC0000005) at 0x000000001F32B94C Write to 0x0000000091DA440C failed Register dump: RIP: 000000001F32B94C RSP: 000000000014DF60 RBP: 000000000A7E82F0 EFLAGS: 00010202 RAX: 0000000091CE316C RBX: 0000000091CE2F8C RCX: 0000000091DA440C RDX: 0000000091CE2F8C RSI: 00000000360894E0 RDI: 000000000D3A893C R8: 0000000000000000 R9: 00000001920A9CA4 R10: 000000000014E0B8 R11: 000000000014E128 R12: 0000000000000000 R13: 000000000014E270 R14: 000000000014E308 R15: 0000000088418601 Callstack: 000000001F32B94C: FMOD::AsyncThread::addCallback + 0x7314 () in fmodex64.dll 000000001F360660: FMOD::ChannelGroup::addGroup + 0x24 () in fmodex64.dll 000000001A79CB9D: FMOD::EventI::getNumParameters + 0x2BD () in fmod_event64.dll 000000001A7A62B8: FMOD::EventI::start + 0xB8 () in fmod_event64.dll 000000001A7A06FC: FMOD::Event::start + 0x1C () in fmod_event64.dll 000000003601896E: ?? () in CrySoundSystem.dll 0000000036023074: ?? () in CrySoundSystem.dll 0000000036023F73: ?? () in CrySoundSystem.dll 000000003207F41D: ?? () in CryEntitySystem.dll 000000003207C19D: ?? () in CryEntitySystem.dll 0000000032028420: ?? () in CryEntitySystem.dll 00000000320471FB: ?? () in CryEntitySystem.dll 000000003550E078: ?? () in CryScriptSystem.dll 0000000035553F77: ?? () in CryScriptSystem.dll 00000000355698B3: ?? () in CryScriptSystem.dll 0000000035554092: ?? () in CryScriptSystem.dll 0000000035553031: ?? () in CryScriptSystem.dll 00000000355543EE: ?? () in CryScriptSystem.dll 000000003554A39A: ?? () in CryScriptSystem.dll 000000003550705E: ?? () in CryScriptSystem.dll 0000000032061F16: ?? () in CryEntitySystem.dll 0000000032062524: ?? () in CryEntitySystem.dll 000000003200F9AB: ?? () in CryEntitySystem.dll 000000003201D61E: ?? () in CryEntitySystem.dll 000000003201E1E1: ?? () in CryEntitySystem.dll 0000000036537A67: ?? () in CrySystem.dll 000000003082543A: ?? () in CryAction.dll 00000000390BB616: ?? () in CryGame.dll 00000000390019DD: ?? () in CryGame.dll 000000003900534D: ?? () in CryGame.dll 00000001400031CC: ?? () in Crysis.exe 000000014000124C: ?? () in Crysis.exe 0000000140009D4C: ?? () in Crysis.exe 00007FFD359B7034: BaseThreadInitThunk + 0x14 () in KERNEL32.DLL 00007FFD3757D241: RtlUserThreadStart + 0x21 () in ntdll.dll
Sometimes i can get into the level, sometimes it crashes at the end of the loading. It's still an improvement with this new exe. I managed to fly a bit in Village with fly mode enabled, then i crashed during a savepoint. Here is the log .
C1-Launcher 2.5 64-bit Access violation exception (0xC0000005) at 0x000000003550910E Write to 0x0000000084878378 failed Register dump: RIP: 000000003550910E RSP: 000000000014E190 RBP: 00000000000003C0 EFLAGS: 00010282 RAX: 0000000000000000 RBX: 0000000084877FB8 RCX: FFFFFFFF7B787C88 RDX: 0000000000000000 RSI: 0000000084877FB8 RDI: 0000000084878378 R8: 0000000084877FB8 R9: 0000000000000028 R10: 0000000000000000 R11: 0000000000000000 R12: 0000000000000030 R13: 000000000014E210 R14: 0000000096EBB460 R15: 000000007D7BDF38 Callstack: 000000003550910E: ?? () in CryScriptSystem.dll 0000000035509F35: ?? () in CryScriptSystem.dll 000000003550A7D3: ?? () in CryScriptSystem.dll 000000003555B44E: ?? () in CryScriptSystem.dll 0000000035564ADE: ?? () in CryScriptSystem.dll 0000000035565374: ?? () in CryScriptSystem.dll 00000000355658D9: ?? () in CryScriptSystem.dll 0000000035564F56: ?? () in CryScriptSystem.dll 0000000035567A7B: ?? () in CryScriptSystem.dll 0000000035568AF3: ?? () in CryScriptSystem.dll 0000000035554092: ?? () in CryScriptSystem.dll 0000000035553031: ?? () in CryScriptSystem.dll 00000000355543EE: ?? () in CryScriptSystem.dll 000000003554A39A: ?? () in CryScriptSystem.dll 000000003550705E: ?? () in CryScriptSystem.dll 00000000320602E9: ?? () in CryEntitySystem.dll 00000000320609BB: ?? () in CryEntitySystem.dll 000000003200E411: ?? () in CryEntitySystem.dll 00000000306A0695: ?? () in CryAction.dll 00000000308257DA: ?? () in CryAction.dll 0000000030824927: ?? () in CryAction.dll 00000000390BB671: ?? () in CryGame.dll 00000000390019DD: ?? () in CryGame.dll 000000003900534D: ?? () in CryGame.dll 00000001400031CC: ?? () in Crysis.exe 000000014000124C: ?? () in Crysis.exe 0000000140009D4C: ?? () in Crysis.exe 00007FFD359B7034: BaseThreadInitThunk + 0x14 () in KERNEL32.DLL 00007FFD3757D241: RtlUserThreadStart + 0x21 () in ntdll.dll
This is really weird. It crashes all over the place without obvious reason. Is 32-bit version really fully stable? And is 64-bit version stable too without those custom textures? By the way, can you also test the 32-bit Crysis.exe
from the ZIP above? It disables CryMemoryManager too. I want to be sure it doesn't have any negative impact on stability and performance.
Unfortunately, i can't reproduce any of those crashes here. Maybe it has something to do with Ryzen CPU or Windows 10. You use Win10, right?
Also, have you tried running the game in DX9 mode? Just make a shortcut of Crysis.exe
and add -dx9
at the end of Target in shortcut properties.
Hey ! Yes, the 32 bit is fully stable, no issue with it. I tried the DX9 command. It seems to crash a lot less. But to test it seriously with textures mod, you would need to make the textures load in VRAM and not RAM during the loading. Because in DX9, textures load into RAM and it makes the game a stutter fest, so that i can't really be sure of the results.
You may want to ask the crysis enhanced authors on moddb to give you their build with 4k textures in order to reproduce bugs. I can't send it to you because it's private for now. They will probably agree if it helps you to deliver a functional 64 bit exe.
Because in DX9, textures load into RAM and it makes the game a stutter fest, so that i can't really be sure of the results.
Here, DX9 is as fast as DX10. Maybe even slightly faster. There's noticeable performance difference for you?
Yes, because textures are loaded into RAM first in DX9 mode, and i reach my maximum RAM limit, it introduces a lot of stutters. Could you make the textures load into VRAM during the loading with DX9 ? So that it will work the same as DX10 mode
Crysis rarely uses more than 2 GB of RAM. Also, memory usage is the same in DX9 and DX10. You have at least 4 GB of RAM, right? 32-bit applications can't use more than 3 GB of RAM anyway. There's some serious issue if DX9 has noticeable worse performance than DX10.
Don't forget that to test i use the enhanced mod which have a lot of 4K textures. That's why it causes issues with the RAM in DX9 mode. I Get stutterring because all the textures are loading into RAM during the loading screen and my RAM gets full ( 16gb)
So if you want me to test the performance and stability in DX9 vs DX10 , you would need to make the textures load into VRAM and not RAM in DX9 mode. Can you do that?
It seems there's r_TexturesStreaming
cvar for that already. To be honest, Crysis filling 16 GB of RAM sounds completely insane to me, but who knows. I've read comments on ModDB and some people said that Crysis Enhanced mod works fine on 64-bit version for them. It must be some hidden bug causing incompatibility with modern hardware. Maybe something like that mysterious startup crash of 32-bit version on all modern AMD processors, which is correctly fixed now. Hopefully, i'll be able to do some research by upgrading my computer with a Ryzen CPU one day. Although 64-bit version works fine for you without those graphical mods, doesn't it? And vanilla game looks better anyway, so i'm not sure.
I think Crysis requires a new engine much more than anything else. The current engine is one big mess. It's probably the reason why Crytek never released source code of CryEngine 2. However, i don't want to blame them or something. They still did a great job by creating this wonderful game.
I use Wine + DXVK to run the game (64-bit version always).
@ccomrade Any idea of how to get dxvk working on Windows? I'm trying to run it on Win10, and seems to force the game into DX9 mode, so I guess it doesn't like DX10? I'm also not sure if dxvk is actually working or not... and on a side note, this is causing problems with ReShade which is important for me to have.
@Pfoiffee You can use -dx10
command line parameter to force Crysis into DX10 mode. I'm not sure about that ReShade thing, but DX9 is usually better choice anyway. By the way, what's the point of using DXVK on Windows? You have native Direct3D implementation there, which is faster than any additional emulation layer like DXVK. It seems DXVK devs don't really care about Windows support.
@ccomrade I have tried that command, and it seems to do nothing when launching the game with dxvk, it will always use DX9. The reason for wanting this is due to a potential problem with ReShade and it's recent addition of compute shaders, which is said to not work on DX9/10 API's, so this has lead to me look at trying a vulkan wrapper along with ReShade, in order to make these CS effects work on Crysis.
ReShade also has very long shader compiling times with DX9, which is why I prefer to not use it.
@Pfoiffee Do you use in-game r_DisplayInfo 1
cvar to check which renderer is being used? Also, i think this is not going to work because DXVK operates at lower levels than ReShade. The game is still DX9/DX10 unless someone implements a new renderer.
@ccomrade Yeah I did try the DisplayInfo cmd. Oh well... guess I'm shit outta luck then, unless some of the shader devs I support keep using pixel shading with the effects they're working on.