Home/Glide/NFSFix | Donate - Impressum
Need help running Need for Speed part 3 or 4?
Mark sent me these instructions via email. As he has no way to host them, we agreed that I put them onto the web.
In the words of the man himself:
Mark Bell's Need for Speed series fixes
Need for Speed 3 Hot Pursuit (and NFS4 High Stakes) CAN Work in Glide API mode with your Glide Wrapper (with some issues and limitations
listed later, tested on NFS3), assuming you follow these directions:
- For Need For Speed 3, make sure the "Voodoo 3 Patch" (NFS3_UPDATE.ZIP) has already been installed, even for OEM version of the game that came
bundled with the Voodoo3. Follow the directions with the patch PRECISELY, especially the copying of the VOODOO2A.DLL file (5/4/1999, 108KB) to the
games install directory (this allows for higher resolutions to be selected in game, as high as 1600x1200 from what I can tell).
- Run the 3D Device Setup program in the NFS3/4 Program Group at least once, and select "Direct3D Device 1".
- MANUALLY EDIT THE REGISTRY as follows:
HKEY_LOCAL_MACHINE\SOFTWARE\Electronic Arts\Need For Speed III
HKEY_LOCAL_MACHINE\SOFTWARE\Electronic Arts\Need For Speed High Stakes
keys and highlight them..
Change these key values as follows:
- "3D Card" = "3Dfx Voodoo3"
- "3D Card Description" = "3dfx Voodoo3"
- "Group" = "3Dfx"
- "Thrash Driver" = "voodoo2" ("voodoo" also works for Voodoo1/Graphics mode..not as good as voodoo2 of course)
- "D3D Device" should already be set at "0"...
- "Hardware Acceleration" should already be set at "1"...
- "Thrash Resolution" (only exists in NFS4) should already be set at "640x480"...
- Run the game normally, but make sure the shortcut used to start the game DOES NOT contain any command line parameters (these parameters mostly
override the registry and force the game to run in different Direct3D compatibility modes ... and are often suggested for 3dfx/Glide problems by EA
support documents and persons ...)
- Glide Wrapper settings should be as follows (Tested with NFS3 only, NFS4 should be similar):
- Texture Memory = 16MB
- Resolution = Default (By App)
The games can run in Glide mode at least up to 1600x1200 via in-game configuration - no expansion needed
- Refresh Rate = whatever the user prefers/system can support
- Vertical Sync = Normal
- Mip Mapping = Default
Force Trilinear leads to increased "banding" in the sky/clouds, and Generate Mipmaps causes odd texture corruption/
artifacts on (or above) the upper edges for vertical textures like trees etc
- LOD Bias = +0.00 (didn't test this)
- Anisotropy = None
Anything else causes vertical artifacts (lines) to appear on the edges of vertical textures like trees
- Gamma = User Preference
MUST be locked for NFS3 in order to be effective if changed from default of 1.3
- Limit Feature Set = Basic Stuff Only (Simple and Fancy work fine too..but cause corruption in the games introductory video sequence)
- Render To = Own Window
However, this produces super-flickering in the games menu configuration screens. Client Window SOLVES this super
nasty flicker for the menu screens, however, the introductory video sequence doesn't display, AND the game crashes to the desktop when starting a
race, ergo, Own Windows is required to actually play the game
- Thread Policy = Use Render Thread
Classic and Hard To Explain result in a crash back to desktop with exception, and Crazy results in a
crash back to desktop. I do have a HyperThreaded Enabled P4 based system, and do have Thread Policy set to Use Render Thread as a Global setting,
having read your notes ...
Details of Testing Configuration:
Windows XP SP2
Glide Wrapper Version .82
ATI Driver Version 4.12 (non Catalyst Control Center version - "classic" version) with Default D3D/OpenGL settings.
Intel P4 3Ghz with HyperThreading Enabled (and APIC as well)
Intel 865PE Chipset based motherboard
Things of Note:
- All detailed Glide Wrapper settings testing was done on NFS3 (not NFS4), including comments below..
- Generate Mipmaps caused texture artifacts/corruption on vertical textures (in Race), might want to look into that..
- Anisotropy caused texture artifacts/corruption on vertical textures (in Race), might want to look into that...
- Simple and Fancy Shaders both caused weird corruption in the game's intro video/movie sequence, might want to look into that..
- Render To needs to be looked into significantly, considering the massive-flicker in the games' menu screens (not in Race) in "Own Window" mode,
and the fact that the menu flickering disappears (but the introductory video doesn't run and the game crashes to desktop on a race load) in "Client
Window" mode. Apparently this behavior occurs on NFS2 SE as well (according to your notes)..so I would try and delve into what's going on in general
with EA's NFS game code architecture to see if there is a potential solution. I do have NFS 2 SE as well, though its not installed..so if you need
some testing done, let me know (Yes, I know you don't trust other peoples testing, but if you were smart and efficient, you would take MY testing at
the very least as a starting/comparison point to save yourself some time..)
- Thread Policy should be stressed for Pentium 4 HT users, maybe even defaulted to "Use Render Thread" upon install on such systems.
- Occasionally, pixel/color artifacts will appear on the bottommost screen line during the intro video sequence when the game is run, might want to
look into that...
I've included .INF files that do the absolute minimum to change the games from D3D mode into Glide (Voodoo2) mode, and back again..
These work for both NFS3 and NFS4 regardless of how the game is currently configured.
I've used them to test/compare D3D and Glide mode using your Glide Wrapper on my Radeon 9600, and/or with original Glide on a Voodoo3.
Again, for Need for Speed 3 (Hot Pursuit) I HIGHLY recommend installing the "Voodoo 3 Update" (NFS3_UPDATE.ZIP) in order to be able to gain access to higher
resolutions/etc (like 1600x1200) under "voodoo2" thrash mode.
It is also possible to get the game to detect (and specifically list) modern video cards using the games' 3D Setup (3DSETUP.EXE) utility, and even have two instances
of a single card listed available as choices in the drop down box (aside from the Software Renderer mode), one for Glide mode, the other for Direct3D mode.
[Note: I don't think these are Glide vs D3D choices. Radeon cards always show up as two devices because of how ATI chooses to support multi-monitor
functionality. You'll see the same thing in your device manager which definitely doesn't know nor care about Glide. -z]
I've included a couple of screen shots of the 3DSETUP.EXE utility detecting my Radeon 9600 with two instances, one for Direct3D, and one for Glide. At this time, this
procedure takes far more effort than just using the INF files to switch between modes, though it does have the advantage of working within the process of the games
natural video card detection and configuration process that end users might expect to use (3D Setup). I may write a little utility that makes all the necessary
registry and game settings changes and adjustments so users can run the 3D Setup utility to both specifically detect their modern card, and, choose between the two
For the record, this was a technique that I developed back in 1998/1999 when the Voodoo3 was released and I wanted to easily switch between Glide and Direct3D modes so
I could compare etc.
Please feel free to distribute these 4 INF files so that ANYONE can EASILY switch to/from Glide mode for NFS3/4, assuming they have your Glide Wrapper (or original
Glide itself) installed.
If I write the utility to update the game for modern card detection/mode switching using the 3D Setup utility as I described, I'll forward that to you too (I don't
maintain any web space at this time).