About this mod
A small guide on what a PC user can do to control the frame rate for the game to get a better "feel" and smoothness of game play.
- Permissions and credits
Preface and Explanation
Frame Time is the amount of time between presenting each frame on screen. For example, if you are running a game at 60FPS, in 1 second of time, 60 frames are appearing on screen, if we convert that to milliseconds, that is 1000ms so each frame is showing up (in a perfect world) at 1 frame per 16.666 ms.
I said "Perfect World" above because a lot of games do not have stable Frame Times, and Fallout 4 is one of the worse offenders of this issue. With out a equal division of frames appearing on screen, that is where people will experience things informally known as "Micro Stutter" and also feel even though they are getting a solid 60 FPS, they still feel like its dipping. Frame are appearing at different intervals and causing this effect.
Only really until the recent 2-3 years did the greater gaming community as well as reviewers and game developers take this issue seriously. Now various reviewers and benchmarks take this statistic into consideration, some even more so now then Frame Rate.
Frame Time for Fallout 4 is all over the place, but we can change that with the use of some tools. Give this a try and enjoy a smoother game play experience!
NOTE: This can be Subjective in how it feels, it will objectively smooth out the frame delivery, but not everyone will notice it as night and day.
How to Stabilize Frame Time
Frame Time can be forcefully stabilized with use of tools for PC that allow you to "Cap Framerates", locking your game from going over a certain frame rate. The tools that do this vary in how they do it, and how effectively they control frame time, some do almost nothing to pace out the frames they are locking to the user, doing nothing to solve the issue, while some do it to a degree but fall short of making at least Fallout 4 stable.
I have tested 3 particular tools with Fallout 4 and have found the best by far and will use it as the tool in this guide. That tool is MSI afterburner and its built in RivaTuner application.
The other methods I have used included ENB Memory patch built in frame capper, as well as Nvidia Inspector. Enb memory patch with at least my hardware failed to lock the frame rate where I specified and did very little for the frame time, and Nvidia inspector (aside from only working with Nvidia Cards) did a middle of the road job at stabilizing frame times.
MSI Afterburner with RivaTuner however, locked the frame rate exactly where I needed it, kept the frame time evenly divided and paced and works with both Nvidia and AMD cards. It also comes with a handy graph monitor so you can visually see the frame rate, frame time and other handy statistics on how you game is running.
The Tools for the Job
MSI Afterburner can be downloaded Here
Extract and Install
Make a shortcut on desktop for easy access (will need to run before starting Fallout 4)
Also note that Fallout 4 is running at Full Screen (not windowed or borderless window) I recommend looking up how to adjust the ini files to do this. (window mode sometimes runs different then fullscreen, for better or worse, if after setting to full screen and following this guide, you feel window mode worked better, give it a try back in window mode with this tool, you can also just remove this tool if you dont like it.
Configuring the tool for Fallout 4
Run MSI afterburner by clicking on the icon either on desktop or start menu after installation. MSI afterburner is a multi purpose tool, one of its primary purposes is to be used as a overclock tool. What first appears when running the program is mostly for that, but you can ignore it, aside from the Monitor graphs below, we wont be using it for this guide.
Speaking of that Monitor, lets open it and get a better look, look for the "Detach" text at the top of the monitor
The monitor should now be standalone and you can minimize the other MSI app at this time and keep the monitor up (even better if you have a second monitor, you can keep this up to view live data for any game while its running.
By default, only a few graphs will be present, we are going to customize what we want to see. Note: for the purpose of this article I will only be showing Frame Rate and Frame Time, but you can add and remove any monitoring graphs as you want.
To ensure frame rate and frame time are showing up as graphs, right click the graphs and select Properties. In the Monitoring Tab look under the section called "Active Hardware Monitoring Graphs". We want to click on the check marks next to Frame Rate and Frame time about midway down this list. See image for visual aid.
There are additional options for each graph here if you click the text part but for now, going to ignore those. Once complete hit OK
Your Graph now will have 2 sections for Frame Rate and Frame Time, if you want before we move to the next step, why don't you leave this running and start up the game and play for about 5 mins? Even if you can not monitor it live via a second screen, you can take a look after your play test is over. At this point we have not set anything that will actually effect how the game plays and delivers frames, so this is just providing visual aid to how your game is pumping frames out to you.
Does the frame Time Monitor Graph look a bit....jaggy? if you were playing at 60 fps, how much of the time was your game at 16.666ms? Not much most likely. If you had nothing but a straight line, then some how your game is running beyond amazing (or you stood in one spot looking at the ground for 5 mins :) you have to actually move around and do stuff to see results.
If you gave it a test run or not, lets move on to the next step!
Locking the Frame Rate/Time
When MSI afterburner is running, its companion app (Rivatuner) is running in the background. In your System Tray, the part of your task bar next to the clock (normally in the bottom right corner), if expanded shows a running program called "RivaTuner statistics server" , lets click it to bring up its options menu.
The menu should look like this
to start lets add Fallout4.exe as a profile (global is everything that runs along side MSI afterburner, you can use that if you want but will trigger this frame cap for every game it runs with)
Click on Add, the green button in the bottom left corner. Navigate to your Fallout 4 game folder and click on Fallout4.exe, NOT the launcher. Hit Open and it should now add it to your list on the left of the options menu.
Select it from the list and we can not change the game specific properties. In this case all we need to ensure is that TWO things are set.
1) Application detection level is set to Low
2) Frame Rate limit has our frame cap number (click box, type frame rate, then hit Enter.) See below for more info
What should I put in here? - what is your monitors max refresh rate? if its the more typical 60 Hz then put 57 or 58 in there. (Note: if your game never seems to reach max frame rate, you can put your most typical frame rate here. Will take some checking (using this tool) but say your frames cap out at 40, go ahead and set 40 as the cap, you always want to cap at your most typical max. It will feel better not having major drops back down to 40 when you look away from a wall that brought it up to 50 fps.
Why 57 fps? - I find everything runs smoother if the game never hits max frame rate by a bit and triggers Vsync, now I in particular do this because of Gsync providing its benefits only when its not at or over my max frame rate, but running a frame or 2 below cap allows everything to do its job a bit more consistently in my experience.
What about other Refresh Rates? - If you have a higher frame rate monitor then we h ave a bit more wiggle room, my monitor goes up to 100 Hz for a potential 100 FPS. HOWEVER, Fallout 4 in particular does not tend to like anything that high. Its still to this day up for debate but the safest over 60 FPS seems to be about 70-72. I decided to use 67 for mine. Go over 70 hz at your own risk.
When all done, we hit the _ next to the X to minimize the options menu back down, do not hit X as it will close the tool and do nothing for you!
We are now going to test our efforts, but first lets determine what we are looking for in our test.
What should my Frame Time be?
As I stated at the start of this article, 60 fps should evenly divide to 16.66ms per frame. But depending on what you set in the previous step that will not be the case. So here is how to find your ideal Frame Time numbers you should see the majority of the time in the frame time graph.
Take 1000 and divide it by the Frame Cap you specified in the RivaTuner tool. In my case I used 67.
1000ms / 67fps = 14.9 ms per frame.
1000ms / 57fps = 17.5 ms per frame.
Note that as your frame rate is higher, the frame time goes lower, this is because you have less time per second to get those extra frames in.
Final Notes: Before Testing in Game
When you run through the game for a test, note the following caveats.
Even with this cap, there WILL be times when the frame time graph stops being a straight line and will jump up (spike).
-- When you open the pipboy or workshop menu
--When loading the game
-- When saving/auto saving
-- When ever your frame rate drops (but should stay proportional. So if you drop from 57 to 47 due to something reason, you will see your frame rate on the graph drop and in turn, frame time will adjust, in this case to 21.3ms and will adjust as needed as your frame rate goes up and down. Massive frame drops like this will still obviously be "felt" by the player, but the impact will be reduced as they will atleast be provided to the screen a bit more cleanly. (Gsync or freesync helps alot here)
The Moment of Truth - Final Test
Ok, now is the time to load up the game again and see how it compares to last time. As noted in the Preface, this can be subjective in how it feels but most people should be able to walk around in game and see the effects. While in game (if you have a second monitor) or after your test run, observe the Monitor graphs for Frame Time and Frame Rate. Aside from the spikes caused by the things listed above, is there much less frequency in the spikes? Even standing still with out this tool for me showed my Frame Time jumping up and down 2-5ms of jitter.Note that on the graph when frame rate changes, so does frame time, if frame rate does not change, you should not see any major changes in the frame time line.
We are done! How did this work out for you? I recommend giving it a few game play sessions to feel it out, its not directly going to make this game run any better or worse , if you have low frame rates , you still will have those, if your game has alot of loading of scripts or struggles to load cells, you will see more spikes. But this will help take those moments and hopefully reduce the jittery, stuttery impact.
If you just are not seeing any improvement, or for what ever reason you want to abort and be rid of this evil beast, then just uninstall MSI afterburner. It will take all that we have done with it to its grave!