
pxc
Published
Use 'PROTON_NO_ESYNC=1 %command% -nointro' as your launch parameters. For me, the game technically worked without any tweaks, but only low-res textures loaded quickly before disabling esync. In general, textures were too blurry to make out the text and images on posters, and on some objects I could see higher resolution textures progressively loaded in in sequence in front of me. Disabling esync has given me performance I understand to be comparable to the Windows version, meaning occasional stuttering as entering and looking at new areas for the first time.
The first time I launched the game, I alt-tabbed around in between the splash screen loading and the game loading, and it crashed. Believing that tweaks were required, I opted for Wine D3D over DXVK, and the game launched successfully. However, I noticed significant artifacts, so I also disabled ESYNC, which resolved that issue. But performance was poor.
Upon subsequent runs, I tried removing those tweaks and lo and behold: the game still ran! Not only that, but it ran well, becoming playable in 4K with all settings maxed. There is still stuttering in new areas, which I understand to be a defect of the PC port.
I do have a large open file limit on my machine, which may be the reason that ESYNC is fine for me when DXVK is used (aka, no tweaks at all). If you don't know what that is, look into raising the hard limit of type nofile in your ulimit configuration with a web search for those terms.
I recommend the -nointro launch argument. The introductory series of logos and copyright notices is very long.
Only ONE DLL override, d3dcompiler_43 --- using a native d3dx10 DLL breaks things for me. The 64-bit Crysis executable from Warhead also causes the game to hang after the very first cutscene; leaving the original binaries in place works best for me.
After installing the d3dcompiler_43 DLL via env WINEARCH=win64 WINEPREFIX=$HOME/.steam/steam/steamapps/compatdata/17300/pfx winetricks d3dcompiler_43
and setting the launch options to PROTON_NO_ESYNC=1 %command%
, the game runs fine and performs well using DXVK.
The game requires you to disable esync and to make one DLL override: d3dcompiler_43. Additionally, you may choose to optionally run the 64-bit version. The steps for all of these, in order, are as follows. The commands and option values are copy/paste-able (#3 assuming the default Steam library location and a shell which supports pushd/popd and '&&' syntax like Bash, Zsh, and recent Fish) for convenience, because why not.
1.) PROTON_NO_ESYNC=1 %command%
2.) env WINEARCH=win64 WINEPREFIX="${HOME}/.steam/steam/steamapps/compatdata/17330/pfx" winetricks d3dcompiler_43
3.) pushd "${HOME}/.steam/steam/steamapps/common/Crysis Warhead" && mv Bin32 Bin32.orig && ln -s Bin64 Bin32 && cd Bin32 && mv Crysis.exe Crysis.exe.orig && ln -s Crysis64.exe Crysis.exe && popd
Note that pushd
and popd
are Bashisms, if you're using another shell you can use cd
, but the command will leave you inside that Crysis Warhead Bin32 directory
Runs flawlessly. On my system, the only substantially performance-impacting settings appear to be Shader Quality and Resolution. Pushing settings to max on 1080p and bumping only Shader Quality down to Medium works very nicely for me.
Awful. I was able to get game sound to work by installing FAudio, and performance is good (in fact the game can run at 4K), but not only will NPC dialogue randomly cut out--- when it does, the subtitles also cut out and all of the main quest's triggers stop activating. This had me stuck in the cart at the beginning of the game like 5 times in a row, and subsequently happened on the second building I entered with Hadvar (the first time the game loads a section after the opening sequence). Extremely frustrating and not worth playing this way.