Hi again everyone!
I figured that in order to give everyone the best possible experience with SRM once it’s launched I will write a small tweak guide and explain a few caveats that might be good to know.
I know, I know there are thousands of these guides out there but I will mainly focus on memory, CTD (Crash to Desktop) and ILS (Infinite Loading Screen) in a simplistic way and not delve into all the other tweaks one can do to the game (for good and for bad).
If you have a very stable game now with lots of scripted heavy mods then chances are you already have done most of the tweaks, or know of them, and might not have much need for this.
So, lets get into it – and if you don’t care at all for the technicalities of this then at least read the Papyrus section and then jump on to the SKSE and ENBoost guide at the bottom.
MEMORY
Skyrim is a 32-bit game. That means a lot of things but what is most important is that it means that the amount of memory the process can allocate is limited to ~3.1GB. It does however not stop the application from trying to access more but if it does then it will instantly crash to desktop. And there is nothing you can do tweaking the game itself or it’s configuration files to stop this behaviour – it’s a coding limitation.
The next problem is that when the game is started it allocates a memory block that is 512MB in size. Half of this is then allocated to scrap and half for the game to store whatever resources it needs while running.
When that block is full, or nearing full, the Skyrim engine should then allocate further memory blocks and this is when things start to go wrong: instead of properly accessing more memory to assign it’ll simply crash to desktop or freeze.
Again, no matter how much you tweak your ini’s or the game itself you can’t stop this behaviour – once you fill up the first block you will crash or freeze.
Okay, so all of this sounds pretty grim, is there nothing we can do? Well, not to the game engine itself we can’t but we can work around the problems.
The first tweak we can do is that we can force DirectX (which the game engine is dependant on) to load a specific set of instructions which essentially move the handling of textures to a different process. This means that all textures that are loaded no longer will work toward the 3.1GB limit that we have but instead use a different process to store the textures. This is done with the program part of ENB which is called ENBooster.
The second tweak we can do is that we can force Skyrim to allocate a bigger memory block directly at start up, bypassing the need (and very crash-prone) system to allocate more memory when we start to run out. This is done with SKSE and it allows you to tweak how much memory we should allocate from the start.
With these two tweaks we can work around most of the problems that Skyrim has.
PAPYRUS
In a lot of the guides out there you are told to tweak your papyrus settings in the Skyrim.ini file – I’ve seen one more ridiculous than the other and they’re almost always wrong with how things should be set.
The lines I’m talking about are these (these are the standard values):
fUpdateBudgetMS=1.2
fExtraTaskletBudgetMS=1.2
fPostLoadUpdateTimeMS=500.0
iMinMemoryPageSize=128
iMaxMemoryPageSize=512
iMaxAllocatedMemoryBytes=76800
bEnableLogging=0
bEnableTrace=0
bLoadDebugInformation=0
bEnableProfiling=0
Without going into technical explanations too much I’m going to say – don’t change them.
There is one exception and that is if you’re consistently having issues during times of heavy script load. This could be during combat, for instance. In that case you can change the following two lines:
fUpdateBudgetMS=1.2
fExtraTaskletBudgetMS=1.2
Only change them by 0.4 at a time, so if you’re having freezes or crashes during combat try to change them to:
fUpdateBudgetMS=1.6
fExtraTaskletBudgetMS=1.6
If you have to go over 2.4 to get a stable game; stop right there and look over your mods. Can you really run all those mods? Is something else wrong; is my CPU overheating or graphics card or is there something in the background using system resources that you can turn off?
In essence, going much higher will have impact on your game that will be hard to foresee. You may play another 100 hours with no issues and then suddenly be unable to proceed due to constant crashing and/or freezing.
It should also be noted that as soon as you leave 1.2 and go upwards you WILL start getting out-of-sync lips with dialogue. It can’t be helped, so don’t bother trying to solve it. If it’s a big issue for you then you MUST stay at 1.2 and instead clean out mods or get a faster computer – there is NO way around that!
Lastly – the logging is NOT a crash guide! A lot of people treat it like that, but it’s not and shouldn’t be used like one. It can be used to pinpoint errors or get hints of the issue but it requires experience with modding to tell what may be the actual problem. Logging should always be turned off unless you have problems that someone experienced (yourself or someone else) can look over because it will put further strain on the system to actually write to the log-file.
ENB & SKSE GUIDE
If you want to use the ENBooster to help with memory do the following steps.
1. Download ENB from http://enbdev.com/enbseries_skyrim_v0279.zip . Check how much VRAM you have, in megabytes (take GB times 1024 to get megabytes) then subtract 170 from that figure if your run Win7 or Vista, if you run Win8 or Win10 subtract 350. Replace YYY in accordance to this table: To use SKSE to help you with memory management do the following steps. As you may understand there is a lot of more things and tweaks that can be done with these two programs but this simple guide should get you started and on your way to a, hopefully, less problem-prone Skyrim game session. And this concludes the lesson of today – keep it simple if possible! Regards,
2. Unpack the contents in the Wrapper directory straight into your Skyrim directory (typically c:\Programs\Steam\steamapps\common\Skyrim).
3. Go to your Skyrim installation directory.
4. Open enblocal.ini.
5. Make sure you go the following settings:
EnableOcclusionCulling=true
[MEMORY]
ExpandSystemMemoryX64=false
ReduceSystemMemoryUsage=true
DisableDriverMemoryManager=false
DisablePreloadToVRAM=false
EnableUnsafeMemoryHacks=false
ReservedMemorySizeMb=YYY
VideoMemorySizeMb=XXXX
EnableCompression=false
AutodetectVideoMemorySize=false
Take the total and replace XXXX above with that number.
Example:
Graphics card:GeForce GTX 960 2GB - 2048MB.
OS: Win7
Replacement number: 2048 - 170 = 1878
Video Card Memory | Replace YYY with
512 | 64
1024 | 128
1536 | 128
2048 | 256
3072 | 384
4096+| 512
6. Save and close the file.
7. Open enbseries.ini.
8. Look for the following line and ensure it looks this way:[GLOBAL]
UseEffect=false
9. Save the file if you needed to change it from True to False and then close it.
10. ENB setup is done.
1. Download SKSE from http://skse.silverlock.org/beta/skse_1_07_03.7z
2. Unpack the contents straight into your Skyrim directory (typically C:\Programs\Steam\steamapps\common\Skyrim).
3. Go to your Skyrim\Data\SKSE directory.
4. If not present, create a new text-file and name it SKSE.ini (make sure that it does NOT end in .txt).
5. Open the SKSE.ini file in Notepad.
6. Paste the following into the file:[General]
ClearInvalidRegistrations=1
ScrapHeapSizeMB=256
7. Save and close the file.
8. From now on start the game by launching skse_loader.exe from the Skyrim installation. Do NOT launch Skyrim via steam.
9. All the big mod-managers out there (NMM, Wrye, MO) should automatically see that SKSE is now installed and use it but if you had the manager open while making the SKSE installation you may have to restart it.
DigitalVixen