Vampire The Masquerade: Bloodlines/Help

From SDA Knowledge Base

Jump to: navigation, search

Engine Notes

Since VTMB uses an early early beta version of Valve's Source engine, it's incredibly buggy. This renders most users unable to even launch the game properly, let alone play it. This section should cover the basics to get the game up and running (although it still won't fix all of the bugs in the game).

Compatibility Issues

During development of VTMB, 64bit Operating Systems weren't the norm, and most users still barely had 1Gb of RAM (let alone more than 2Gb). Due to this oversight, there are 2 main issues that most users have when it comes to playing the game: the dreaded "less than 15Mb of memory" and "blurred textures" bugs.

The bulk of the information for these fixes comes from here.

Less Than 15MB

The Source engine version used is very early and operates entirely within the confines of a 32bit program, so running it on a 64bit OS can cause some major issues. The biggest is the memory check done by VTMB upon initially loading the program. When vampire.exe checks to see how much memory your system has, it expects a 32bit INT number as a result. However since a 64bit number is returned, the extra bits are seen as a negative flag, which then tells the program that you have a negative amount of RAM (which is definitely under 15Mb). This issue can also occur on a 32bit system that has more than 2GB of RAM. Even though Windows can tell how much you have, VTMB loops back to negative numbers once it goes over 2GB.

  1. Compatibility modes - The easiest way to combat the issue is to run vampire.exe in a compatibility mode set to Windows XP or earlier. This will return a proper 32bit number to the memory check and allow the program to launch without issue. If you are running any version of Windows XP and need compatibility information, go here. For Vista and Win7, it works the same way. Right click on the exe, choose the Properties option, then find the Compatibility tab. However, in Vista, the compatibility tab isn't always there. To enable/disable the tab, go here.
  2. HEX edit engine.dll - If using a compatibility mode either isn't an option or doesn't work, you can always just fix the base problem itself. Follow the link above (at the start of this section) and use the instructions to HEX edit engine.dll to ignore any results obtained from the memory check and simply load the game.

Blurry Textures

Even using a 32bit OS will run into this problem. After the game figures out that you have enough physical memory to load properly, it then has to see how much memory you have to load models/textures/maps/objects/etc. This is done in a brute force fashion: all of your memory is filled with dummy textures, and then once done the game takes the total result from that and figures out how much memory it has to use. If you have anything over 2GB, a negative number is returned. As a base concept with the Source engine, it is designed to work with different hardware setups automatically and adjust settings to meet whatever it is running on. In this case, most game textures are blurred to an extremely low level-of-detail to work with a low memory system (even though you may physically have plenty of memory to spare). There are a few ways to combat this problem:

  1. Limit available OS memory - This requires you to boot up your OS and tell it that it can only use 2GB of your total system RAM. This doesn't just limit 1 program though, it limits the entire system. **Confirmed in Windows 7 Premium** Click on the Windows Start button, and in the Run/Search bar type in "msconfig" and press enter. Once the System Configuration dialog box loads up, click on the "Boot" tab and choose "Advanced options." In the next window you'll see an option on the right that is labeled "Maximum memory." Click on the checkbox to enable that feature, then in the textbox below enter a value of 2048. Save the changes, then reboot. Now you'll get to play VTMB without the blurry textures, but your ENTIRE system will be limited to only 2GB of RAM usage (not just the game itself).
  2. Modify shaderapidx9.dll - Rather than limiting the entire system to use only 2Gb of RAM, it's much easier to limit the program itself to simply think you only have 2Gb of RAM. Follow the directions here and the blurry textures will completely go away.
  3. Import unofficial patch files - If HEX editing and compatibility modes seem too involved, you can import the engine.dll and shaderapidx9.dll files from the unofficial patches to eliminate the 2GB limit and blurry textures. Install the community patch to an empty folder that does no contain VTMB, and once the extraction process is done, look for these two files in that directory:
    1. bin\engine.dll
    2. bin\shaderapidx9.dll

Copy both of those files over to your real VTMB folder and place them in the same place (make sure to backup your original files just in case). This should eliminate both the Less Than 15MB and blurry textures issues.

Community Patches

After Troika released the last official patch, v1.2, the company went belly-up. That didn't stop the community from continuing the quest the crush bugs and adding features. The current Unofficial Community patches can be found here Much love goes to Wesp5 and everyone else who work constantly to make sure this game remains playable and enjoyable. Aside from resolving the memory allocation issues, these patches also restore content that was left unused in the game AND change the gameplay just enough to keep things fresh.

For speedrunning purposes, the community patches aren't the best place to start with for a few reasons:

  1. Development holes have been sealed up
  2. Quest bugs have been addressed

The main quest tricks that are affected by these fixes are the sewers skip and the Chinatown temple early-opening-door skip. These two reasons alone are reason enough not to use the community patches for speedrunning, but for casual play they can greatly enhance the game.

Personal tools