Skip to content

SilentPatch for NFS2: Special Edition, NFS3: Hot Pursuit, NFS4: High Stakes and NFS: Porsche Unleashed

License

Notifications You must be signed in to change notification settings

CookiePLMonster/SilentPatchNFS90s

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

23 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SilentPatch for NFS2: Special Edition, NFS3: Hot Pursuit NFS4: High Stakes and NFS: Porsche Unleashed

This modification addresses several numerous more or less several bugs in the classic Need for Speed games from the late 90s - starting from Need for Speed 2: Special Edition, through Need for Speed: Porsche Unleashed. Since all those games already have their established unofficial patches, I concentrated my efforts on issues either omitted by those patches, or (in the case of NFS2SE and NFS Porsche) caused by them.

Modern Patches from VEG (NFS3/NFS4) and Verok (NFS2SE/NFS Porsche) are strongly recommended, although not mandatory. SilentPatch can work with or without them.

Featured fixes

Fixes marked with ⚙️ can be configured/toggled via the INI file.

Essential fixes:

  • ⚙️ Locked all (NFS3/NFS Porsche) or specific problematic threads (NFS2SE/NFS4) to one core, while allowing worker threads to use any CPU cores - combining good stability and performance. This option has to be enabled by adding SingleProcAffinity=1 to an INI file named like the game's executable. This change is fully compatible with Modern Patches and overrides its single-core affinity solution.
  • (NFS2SE) Fixed a potential race condition on starting the movie decoding thread.
  • (NFS2SE) Fixed a bug preventing controller button mappings from working correctly with gamepads that report more than 15 buttons (such as the Xbox One controller).
  • (NFS2SE) Fixed the game closing when the controller disconnects during the race.
  • (NFS2SE, Verok's Modern Patch only) Fixed an issue where online races were displayed only on the top half of the screen as if they were split-screen races.
  • (NFS Porsche) Fixed a startup crash due to DirectInput controller enumeration being broken under specific circumstances on Windows 10 and newer.
  • (NFS Porsche) Fixed severe performance issues on Windows 10 and newer when rebinding controls.
  • (NFS Porsche, Verok's Modern Patch only) Fixed unresponsive keyboard inputs after Alt + Tab during the race.
  • (NFS Porsche, Verok's Modern Patch only) Fixed a severe memory leak in OpenGL1 and OpenGL3 thrash drivers occurring after every race.

Miscellaneous fixes:

  • Alt + F4 now works.
  • Num Lock, Caps Lock, and Scroll Lock don't get forcibly disabled on game launch anymore.
  • (NFS2SE/NFS3/NFS4) Fixed issues with stuttery/unresponsive mouse cursor in menus when using mice with high polling rates.
  • (NFS2SE/NFS3/NFS4) Fixed a controller polling bug resulting in potential incompatibilities with DirectInput wrappers such as Xidi.

Enhancements:

  • Pasting text into text boxes now works with Ctrl + V.

Compilation requirements

  • Premake5 and Visual Studio 2022 are required for project generation and compilation. Invoke premake5 vs2022 in the main project directory to generate a project.

Related reads