Author Topic: Fixes for Shader Problems (including Black and White Ironsights)  (Read 3234 times)

Offline Ionizer

  • Full Member
  • ***
  • Posts: 1.524
  • Carrier of Squirrel Flu
    • View Profile
To try to stop the tidal wave of Shader-related Problems in the Bug Reporting and Help/Support Forums, I am compiling all shader-related problems and fixes here.  First, a little bit of background:

Quote from: Ionizer
A certain patch of BF2 made it impossible for mods to use different graphics shaders in the game.  To remedy this, the FH2 Developers made the FH2.exe, which switches around some files before launching the game, thus allowing them to use their own shaders and improving the quality of their work.  If you play FH2 from the "Community" tab in BF2, those files never get moved, and can result in some bugs (including wavy black and white iron sights, as well as psychedelic sandbags and bland camo nets).

Always play FH2 through the FH2.exe that it came with.  If you lost it, it should be in Program Files>EA Games>Battlefield 2.  It's an application (sized 64 Kb) called FH2, and it's icon is the FH2 logo.  Create a shortcut of it on your desktop and play FH2 through that.

Right.  Now that that's over with, let's get to the actual problems and fixes:

For a general fix for Vista/Win7 users:  Make sure you run FH2 as Administrator and possibly in Windows XP Compatibility mode.

--Black and White Ironsights, Psychedelic Sandbags, Weird Camo Nets--
This can be a symptom of more serious problems, but more often than not, there are two easy fixes:

1.  The easiest fix for the Black and White Ironsights (and other related problems) is to go to My Documents\Battlefield 2\mods\fh2\cache and delete the funny-looking folder there with the random letters and numbers for a name.  The next time you play, it should optimize the shaders and then the problem should be fixed.
2. Always play FH2 through the FH2.exe.

If those don't work, there might be an underlying problem (possibly one of the ones below).  If that's the case, try the below fixes.

--"Failed to move 'mods/bf2/shaders_client.zip' to 'mods/bf2/shaders_client.zip_vanilla': The system cannot find the file specified"--
If you get that Error Message when trying to start the game through the FH2.exe, it can lead to the above problem with the Ironsights, etc.  See below for causes and solutions:
It happened originally because you didn't shut down FH2 properly.  When you start the FH2.exe, it moves the original BF2 shaders and renames them "mods/bf2/shaders_client.zip_vanilla".  It then moves the FH2-specific shaders in their place.  It moves everything back if you shut the game down normally.  If you don't shut it down normally (for example, if you use Alt+F4, if your power goes out, sometimes if your game crashes) the files never get moved back.  To fix it, you have to manually move and rename the shader files.
  To do that:
I had trouble with this after adding the 1.5 patch and installing FH2.  Right-clicking while sighting and I'd be looking at the dull fuzzy world of someone knocked out on Thorazine.

Following suggestions, I'd tried deleting anything in my shaders folder, but that didn't work.  Googling, I found that you need to copy the shaders_client.zip file from the fh2 folder to the bf2 folder, renaming the bf2 file first.  that did it.

--Can't see Icons on minimap, cannot sprint, blurry vision--
This is not a bug, but a feature.  FH2 uses a "Wounded Shader" that blanks out your minimap, causes you to be unable to sprint and makes your vision blurry.  It is activated once you take enough damage.  To cure it, throw your bandage (weapon slot Eight) on the ground and prone over it for a few seconds.  Some people do not see the blurriness, this is because certain Graphics Cards with certain Drivers with certain settings disable the blurry aspect of the Shader (but not the minimap blanking and inability to sprint).  For a solution, see: [Fix] Broken Wounded Shaders on Nvidia with AA enabled.

--"mods/bf2/shaders/staticmesh.fx not found!!!"--
For possible solutions, see: http://fhpubforum.warumdarum.de/index.php?topic=1461.0

Well, those are the most common shader issues that keep popping up here.  Also note, sometimes the only thing can fix a problem is a full reinstall.  For this reason, it is strongly suggested that you keep a backup of the BF2 1.41 patch, the BF2 1.5 patch, and the Full Installer for FH2.2.  This way, you won't have to spend an inordinate amount of time redownloading everything you need.

If anyone has anything to add, feel free to post and I will add it to this original post if I need to.  (I would especially like a step-by-step guide for manually moving and renaming the shader files mentioned in Problem #2.)
« Last Edit: 18-09-2009, 17:09:07 by Ionizer »
 

Offline Stonechater

  • Jr. Member
  • **
  • Posts: 123
    • View Profile
Anyway to play Fh2 when starting through bf2? My friends has lost his CD and can only start bf2 when doing it through Steam, but somehow fh2 cant be started using steam.

Offline Ionizer

  • Full Member
  • ***
  • Posts: 1.524
  • Carrier of Squirrel Flu
    • View Profile
I will answer your questions in order:

Anyway to play Fh2 when starting through bf2?
You can run it through the Community Tab, but the shaders will be screwed up, causing the Black and White Ironsights (as well as other bugs).  Best to run it with the FH2.exe.

My friends has lost his CD
Since BF2 patch 1.5, you no longer need the CD/DVD in the drive to play.  So using the FH2.exe should work fine. 

and can only start bf2 when doing it through Steam, but somehow fh2 cant be started using steam.
If you want to try to start FH2 through Steam anyway, another forum member was able to do that:
I got round that in Steam by directing my Steam shortcut to 'FH2.exe' not a convoluted mod addon filename on top of BF2.exe.
What that means, I'm not sure, but you could try directing Steam to the FH2.exe instead of BF2.

Of course, if your friend's only problem was not having the CD/DVD, he shouldn't have any problem running it outside of Steam.  At least, until he has to reinstall BF2 for some reason, that is.