File information
Created by
SkyRanger-1Uploaded by
skyranger-1Virus scan
About this mod
Fixes issues in the game engine to improve worst-case performance. Which helps with some stability issues too.
- Requirements
- Permissions and credits
4.1.34 up now. No performance improvements that I can recall. Fixes some things that are disabled by default involving bReplaceGetTickCount and bLogToConsole.
4.1.33 is up.
Fixes a bug that could probably cause crashes, probably after longer game sessions.
Default settings that probably produce fewer side effects and slightly better logging.
Very small performance improvements.
Slight changes to logging.
Source code is now present in the main download. Though not project files.
Changed behavior of bReduceSleep (was bReduceLongSleep) and iThreadsFixedToCPUs.
4.1.32 is up. Changes:
improved overrides for both Critical Sections and Hashtables - meaning, a small performance improvement
rewrote "FPS management"
rewrote what used to be the 64 Hertz Fix. Not sure what, if anything (possibly FPS management is now taking care of everything important 64-hertz-related), it should do. But it's adjustable, so maybe if there's something it needs to do that can be set from the ini file.
CS profiling now works
improvements to HT profiling (ie it no longer crashes after a few minutes when enabled, plus a bunch of other improvements)
got rid of some ini options that were never useful so far as I could tell
4.1.31 is up. Changes:
heap replacement should now properly support the extern heaps (tbmm, tcmalloc, fastmm4) on FNV & FO3, not just Oblivion.
it now has hashtable overrides set up for 1.4.0.525, though they're not too optimized yet
hashtable profiling has been completely redone and should now produce more complete information
iFPSClamp should now be properly hooked, allowing MinimumFPS to actually be meaningful
oh, and per request I attempted to set up the zip files structure to work with NMM correctly
-----------------------------------------------------
New Vegas Stutter Remover (NVSR) is a port of Oblivion Stutter Remover / Fallout Stutter Remover to Fallout: New Vegas.
Requirements:
The New Vegas Stutter Remover will not work without the New Vegas Script Extender (NVSE). It requires version 1 beta 5 or later of NVSE.
You can download NVSE here: http://nvse.silverlock.org/
NVSR does NOT support the no-gore versions for germany or whereever it is that uses those.
Settings Adjustments:
Default configuration is aimed at maximum stability. The settings are stored in sr_New_Vegas_Stutter_Remover.ini, in the Data/NVSE/Plugins Folder. The following changes are for maximum performance:
1. [Recommended] In the "Master" section, change bReplaceHeap from 0 to 1. If crashes result, go to the "Heap" section and change iHeapAlgorithm from 6 to 5, 3, or 2. If you have used a 4GB / LAA enabler (which I recommend), then in the "Heap" section also change iHeapSize from 250 to, oh, 450 is probably enough.
2. [Not exactly recommended, but it probably won't hurt] In the "Master" section at the top, try changing bExperimentalStuff from 0 to 1. Leave the stuff in the "Experimental" section how it is unless you feel like taking bigger risks.
3. [Not recommended] Go to the section named "OverrideList". The second entry there should have a comment starting with "Renderer+0x080" and a version of "FalloutNV 1.4.0.525". Change the setting named "Mode" there from 2 to 3 (a tiny bit higher FPS, a tiny bit worse stutter) or 5 (slightly higher FPS, slightly better stutter, significantly more prone to crashing though that varies from user to user).
Installation:
note 1: with 4.1.31 and later versions it should now support installation with the Nexus Mod Manager, replacing steps 1 through 3 here.
note 2: with 4.1.33, NVSR now includes source code for itself in the "src" folder. You can ignore that, it's probably useless to you.
1. Go to your Data folder, and create in it a new fold named NVSE. Now go in to that folder and create a new folder inside of it named Plugins. You can create a new folder by right-clicking inside of an old one and selecting "New", then selecting "Folder". If you already had such a path that's fine too.
2. Make sure that the file sr_New_Vegas_Stutter_Remover.dll from the zip ends up in Data/NVSE/Plugins (the Plugins folder you created in step #1 above).
3. If you have an old ini file for the Stutter Remover then either overwrite it with one that came with the new version or delete it so that the Stutter Remover will generate a new one with the new default settings. If you deleted the ini, then run the game so that the Stutter Remover will generate a new ini with the new default settings.
4. [optional, but recommended] See the "Settings Adjustment" section above.
Uninstalling:
Remove sr_New_Vegas_Stutter_Remover.dll from the Data/NVSE/plugins folder.
If you have trouble getting NVSR to install / work:
If you have difficulty understanding the install process, you can watch Gopher do it in this video: http://www.youtube.com/watch?v=MII4TO-G634
Various things to check in the process of figuring out why stutter remover might not be working:
1. sr_New_Vegas_Stutter_Remover.dll is in the right place?
2. sr_New_Vegas_Stutter_Remover.ini gets created in the same folder as the dll when you run the game? If the dll is in the right folder, and you still don't get an ini then you probably have not correctly installed / used the script extender (NVSE).
3. sr_New_Vegas_Stutter_Remover.log gets created in the game folder when you run the game? It may contain useful information about what went wrong. If it didn't get created or does not say anything, then proceed to #4...
4. nvse.log gets created in the game folder when you run the game? If not then you have not installed and used the script extender correctly. If it's there, it should contain the lines like: "checking plugin C:/blah/blah/blah/Steam/steamapps/common/Fallout New Vegas/Data/NVSE/Plugins//sr_New_Vegas_Stutter_Remover.dll"
"plugin C:/blah/blah/blah/Steam/steamapps/common/Fallout New Vegas/Data/NVSE/Plugins//sr_New_Vegas_Stutter_Remover.dll (00000001 sr_New_Vegas_Stutter_Remover 00004130) loaded correctly"
(or something like that... the paths will vary depending upon where New Vegas got installed, and it will have backslashes instead of forward slashes)
If Stutter Remover causes a problem:
Find the file stutter remover ini file (Data/NVSE/Plugins/sr_New_Vegas_Stutter_Remover.ini). See the section at the top of it labeled "Master". Each line in that section enables or disables a category of features in the stutter remover. Go through that section changing each "1" to a "0", one at a time, until your problem goes away. Then contact me (by posting on either the nexus forum or the bethesda forum or PMing me on the nexus), and tell me what your problem was and which item you had to disable to make your problem go away.
Less Common Settings Changes:
1. In the "Overrides" section at the end, find the line that says "CallerAddress = 0xA62B17". Immediately after it is a line that "Mode = 2". Changing that 2 to 3 should give you a tiny bit better FPS at a cost of a tiny bit worse stutter. Or changing it to a 5 should give you a tiny bit better FPS and a tiny bit better stutter at a cost in reduced stability.
Known Issues:
1. FPS reduction - this is INTENTIONAL. You can disable it by changing MaximumFPS from 30 to 0 in your stutter remover ini file.
2. A number of issues are cropping up with the 64 Hertz Fix. It fixes some major problems in New Vegas, but it's also reported to cause problems for some users with lip synch and some 3rd person camera things or something.
Version History:
4.1.34 - Fixes issues involving bReplaceGetTickCount and bLogToConsole.
4.1.33 - Fixes possible crashing bug. Slightly saner default settings. Very small improvement to HT overrides, slight changes to logging, source code is now included, changed behavior of bReduceSleep & iThreadsFixedToCPUs.
4.1.32 - improved CS overrides & defaults, improved HT overrides, fixed CS profiling, rewrote FPS management, rewrote 64 hertz fix
4.1.31 - improved HT overrides, hooked iFPSClamp, fixed external heaps, rewrote HT profiling, changed zip structure
4.1.30 - improves support for 1.4.0.525
4.1.29 - Adds basic support for 1.4.0.525.
Previously using NVSR with New Vegas 1.4.0.525 was only possible thanks to schlangsters NVSR patcher (as NVSR hacks FNV to improve performance, the NVSR patcher hacked NVSR to support FNV 1.4.0.525).
4.1.28 - Adds (incomplete, but fairly decent) support for 1.3.0.452. Also attempts to add support for heap replacement, though that's off by default.
4.1.25 - Improves partial support of F:NV 1.2.0.352.
4.1.23 - Adds partial support F:NV 1.2.0.352.
4.1.17 - Fixes a bug that can set volume to zero in rare circumstances. Also some other stuff that mostly should have no effect on the default settings.
4.1.16 - Seems to work. The latest features are currently only working on decrypted executables, but they should work on non-decrypted executables too soon.
4.1.15 - worked on decrypted executables, crashed with steam
4.1.14 - switched version numbering schemes to match the version numbers for Oblivion Stutter Remover and Fallout Stutter Remover; this version didn't work
WIP5 - should perform better on 1.2.0.314 now
WIP4 - adds more hooks for 1.2.0.314, doesn't actually improve performance more because of lack of data to configure it with, but now ready for collecting profiling data
WIP3 - adds some support for 1.2.0.314; support for that version will be improved in WIP4. NVSR WIP2 corresponds to stutter remover 4.1.7.
WIP2 - enables a lot more features, but completely untested at this time. Most features only work on 1.2.0.285, but some features also work on older versions of FNV. NVSR WIP2 corresponds to stutter remover 4.1.6.
WIP1 - first NVSE-based version, reported to work. NVSR WIP1 corresponds to stutter remover 4.1.4.
preliminary_6, preliminary_5, preliminary_4, preliminary_3, attempt_2, and attempt_1 were versions prior to WIP1. Unlike more recent versions they did not require NVSE.
Status of Stutter Remover features on Fallout: New Vegas:
1. 64 Hertz fix
Implemented & working correctly in WIP1.
This removes some microstutter, particularly at high framerates.
2. Critical Section hooks
Implemented & working correctly in WIP1.
These can help some performance and stability issues relating to stutter, but mostly they just allow the next item on the list to work...
3. Critical Section Overrides (in default configuration)
Implemented in WIP2 for FNV 1.2.0.285 and in WIP5 for 1.2.0.314.
When done right, these can significantly improve performance.
4. FPS Management
Partially implemented in WIP2, still missing slow-motion used to enforce MinimumFPS.
Some people perceive the game as smoother when its framerate is prevented from exceeding half the refresh rate, plus this helps free up resources for secondary threads.
5. Hashtable hooks
Implemented in WIP2.
Don't really do anything to performance on their own, but necessary for the next item on the list...
6. Hashtable Overrides (in default configuration)
Minimal set should be present in WIP2 for 1.2.0.285, in WIP5 for 1.2.0.314. Better set added as of 4.1.13. Still has room for a few more small improvements here.
Should improve general performance.
7. FastExit hook
Implemented in WIP2 and later.
Makes quitting faster. May be disabled by default.
8. Heap Replacement
Seems to be working.
9. Expiremental Stuff
Partially supported as of 4.1.13 or WIP5 (can't remember which).