SKYRIM
Speed and Stability Guide for ENB by tony971
Skyrim » Bug fixes
Added: 22/01/2014 - 03:07PM
Updated: 19/04/2014 - 02:49AM

421 Endorsements

2.1 Latest version

11,828 Unique D/Ls

14,088 Total D/Ls

151,898 Total Views

Uploaded by tony971

Description

Last updated at 2:49, 19 Apr 2014 Uploaded at 15:07, 22 Jan 2014



BACKUP EVERYTHING FIRST.
Endorsements Welcome ;) The more people that see this, the less confused and upset users there'll be.

Info below is courtesy of Boris Vorontsov, Sheson (endorsed), Mangaclub (endorsed), SkyrimTuner (endorsed), ewi65 (endorsed), firemanaf (endorsed), artem1s, The STEP Project, and adelinadragonborn (endorsed).





1. Make sure that all of the required mods for your ENB are installed.
2. NMM/Wrye users open the Skyrim menu through Steam.
2. MO users run Skyrim Launcher through MO.
3. In the options section, turn off Antialiasing, Anisotropic Filtering, and FXAA. (in the advanced section)
4. In your video driver, set the features from step 3 and SSAO to application controlled. Only do this for Skyrim.
5. Go to Steam/steamapps/common/Skyrim/enbseries and look for enbhelper.dll. If there isn't one, download ENB Helper from the downloads section, extract it, and add it.
*This provides ENB with more info from the Skyrim engine to base its rendering off of. This is required for ENBSeries 0.250+.
6. Download ewi65’s ini settings here
7. Extract, open, and set the following values:

skyrim.ini
[General]
sLanguage=ENGLISH <-- change to your language
uGridsToLoad=5 <-- change to your preference
*Higher values will enhance distant detail but also hurt performance and start scripts earlier. (This can mess up quests, dialog, etc.)
*Be sure to use Stable uGridsToLoad (requires SKSE) and Sheson's memory patch if you use uGridsToLoad 7 or higher.

[Grass]
iGrassCellRadius=2.5 <-- change to 2 if your uGridsToLoad is 7 or higher
iMaxGrassTypesPerTexure=7 <-- Unique Grasses and Groundcovers users change to 8
iMinGrassSize=30 <-- Grass on Steroids users change to 75 for best look, 100-128 for no performance loss

skyrimprefs.ini
[Display]
bTransparencyMultisampling=1 <-- change to 0 if TransparencyAA is enabled in your enblocal.ini
fGamma=1.0000 <-- change if your preset wants a different gamma setting
iSize H=1080 <-- change to your screen height
iSize W=1920 <-- change to your screen width
sD3DDevice="NVIDIA GeForce GTX 780" <-- change to your card
iShadowMapResolution=2048 <-- change to 4098 if you really need ultra shadows
[GamePlay]
iDifficulty=2 <-- change to your preferred difficulty - 0 (Novice) through 5 (Legendary)
[Particles]
iMaxDesired=750 <-- CoT - Weather Patch users change to 1750 if using the fog edition
[Water]
iWaterReflectHeight=1024 <-- change to 512 if you really need the FPS
iWaterReflectWidth=1024 <-- change to 512 if you really need the FPS

8. NMM/Wrye users move these files to Documents/My Games/Skyrim. Overwrite when asked.
8. MO users move these files to Mod Organizer/profiles/(your profile--probably Default). Overwrite when asked.
9. Right click skyrimprefs.ini, select "Properties", and check "Read-only" under Attributes.
10. Download and install Particle Patch All-in-One and Subsurface Scattering Patch in the downloads section.






1. Download LOOT, TES5Edit, Wrye Bash, and Save game script cleaner.
*If you use MO, you have to run these within MO. To do this, click on the gears icon in the toolbar. Select their respective .exe files as the binaries and enter the name of the program as the title. You can now run these programs like you would SKSE or Skyrim.
*Some virus programs think that LOOT and/or Save game script cleaner are viruses. Check the most common problems for solutions.

2. Run LOOT, select "Sort Plugins," and click apply.
3. Go to the "Details" tab and check to see if LOOT recommends any mods be cleaned with TES5Edit. Do not close the results. You'll have to know the order of which ones need cleaning.
4. Run TES5Edit and leave all of your mods checked. Make sure that it doesn't have any errors loading them all.
*If it does, you probably have a mod that you shouldn't be using. Find out which it is, get rid of it, and run LOOT again.
5. Close TES5Edit.
6. Run TES5Edit again and ONLY CHECK THE FIRST MOD IN THE LIST THAT LOOT SAYS NEEDS CLEANING.
*Other mods will load with it. This is normal.
7. When it loads, right click the mod that needs cleaned and select "Apply Filter for Cleaning."
8. Right click again and select "Remove 'Identical to Master' Records." (Yes, you're sure.)
9. Right click again and select "Undelete and Disable References."
10. Close TES5Edit and save. (No, I didn't mess up the order on that. The save dialog pops up when you hit the close button.)
11. Repeat steps 4-8 for each mod that needs cleaning. DO NOT DO MORE THAN ONE MOD AT ONCE.
12. Re-run LOOT and check for any more tips other than Bash Tag suggestions. Obey all of them.
13. Run Wrye Bash and find "Bashed Patch, 0.esp."
14. Right click on it and select "Rebuild Patch..."
15. Skip the step about disabling mods first.
16. Uncheck "Merge Patches."
17. Click "Build Patch" and close Wrye Bash.
*LOOT will still give you Bash Tag suggestions after this. Don't worry, what you did in Wrye Bash fixed these. LOOT just likes to keep these suggestions there.
18. Run Save game script cleaner (SaveTool.exe) and click "Open."
19. Point SaveTool to your game saves located at Documents/My Games/Skyrim/Saves.
20. Click "Fix all #->" followed by "FixScriptInstances."
21. SaveTool will create backups for your save files ending with "-backup.ess." Move these to a different folder so that you don't accidentally load them into your game.

*You'll have to repeat this section each time you add or remove a mod but you'll see a lot less CTDs and bugs.



64 BIT OS USERS ONLY
Set the following values in your enblocal.ini file in Steam/steamapps/common/Skyrim:

[MEMORY]
ExpandSystemMemoryX64=true
ReduceSystemMemoryUsage=true
DisableDriverMemoryManager=false
DisablePreloadToVRAM=false
EnableUnsafeMemoryHacks=false
ReservedMemorySizeMb=XXX <-- You only NEED it to be set to 64. Users have seen better performance with it being set to 256 or 512. Only set to 512 if you have at least a 2GB graphics card.
VideoMemorySizeMb=XXXX <-- You only NEED it set to (VRAM - 128). Users have seen better performance with (RAM + VRAM - 2048). 1GB=1024.
EnableCompression=true <-- False if you experience stuttering or use ENBSeries 0.246 or older.
AutodetectVideoMemorySize=false
[ENGINE]
ForceAnisotropicFiltering=true
MaxAnisotropy=16
EnableVSync=true
AddDisplaySuperSamplingResolutions=false
VSyncSkipNumFrames=0
[LIMITER]
WaitBusyRenderer=false
EnableFPSLimit=false


Download and install Skyrim Project Optimization for more FPS indoors.
*This can have a lot of incompatibilities with mods that modify buildings in major cities.







There's a few options for optimizing your vanilla textures.

First, you could simply download the ones from the downloads section and install with your mod manager. This is recommended for three reasons. One: these files have been cleaned by texture type. This means that a landscape texture would get more compressed than a face texture. Two: The time needed to clean by texture type yourself is just as long as downloading them. Three: If you install them like a mod, you can un-install them like a mod. This means that if you try it and decide you don't like the look, you can uninstall instead of re-downloading Skyrim.
*Big thanks to adelinadragonborn for helping remove ITM textures and troubleshooting compression errors.

Second, you could clean them with DDSopt yourself. DDSopt has the best options for cleaning textures. However, this is a pain to use. I won't go into it because I've provided the end results already, check this STEP guide if you want to do it.

Third, you could use Skyrim Mods Complex Organizer - SMCO or Optimizer Textures. These don't have the ability to separate by texture type but they're much faster and easier to use. You pretty much click start and walk away.

1. Go to Steam/steamapps/common/Skyrim/Data and copy and paste the following files into a new folder. You might not have all of these. That's okay.

Skyrim - Textures.bsa
Skyrim - Meshes.bsa
Dawnguard.bsa
Hearthfires.bsa
Dragonborn.bsa
HighResTexturePack01.bsa
HighResTexturePack01.bsa
HighResTexturePack01.bsa

2. Direct SMCO or Optimizer Textures to this new folder and begin. Make sure that BSA optimization options are checked.
3. When it's finished, replace the original BSA files with the ones in the temporary folder. Be sure to back up the originals.


For those of you looking for a quick fix, you can use Skyrim Mods Complex Organizer - SMCO or Optimizer Textures to clean your mods. These programs are fast and pretty much run on their own. However, they will optimize every texture the same way. Face textures will get compressed/resized just as much as landscape textures.

NMM/Wrye Users
1. Create a temporary folder full of your mods' BSA files, Texture folders, and Meshes folders like you did for the Optimizing Your Vanilla Textures section. They can be found in Steam/steamapps/common/Skyrim/Data as well as the Textures and Meshes folders within the Data folder.
*You should not optimize parallax files. If you know that your mod uses parallax, don't optimize it.
2. Run your optimizer of choice directed at this temporary folder and walk away. Make sure that the options to optimize BSA files are checked.
3. When it's done, replace the original files in your Data folder with the ones from the temporary folder. Backup the originals first in case you don't like the way the new ones look.

MO Users
1. If you chose Optimizer Textures, download the Modified INI by Thorne67 in the optional downloads section of Optimizer Textures. Replace the Ordenador.ini with it.
2. Copy and paste all of the mods that you want optimized from Mod Organizer/mods into a temporary folder.
*You should not optimize parallax files. If you know that your mod uses parallax, don't optimize it.
3. Direct SMCO or Optimizer Textures to this temporary folder.
4. If you chose SMCO, change the folder option "skyrim root" to "standalone."
5. Run your optimizer of choice directed at this temporary folder and walk away. Make sure that the options to optimize BSA files are checked if you don't have MO setup to automatically extract BSA files.
6. When it's done, replace the original mods in Mod Organizer/mods with the ones from the temporary folder. Backup the originals first in case you don't like the way the new ones look.

For those of you that want the best looking results and don't mind a tedious process to get to them, we're going to be using DDSopt.

1. Download and install DDSopt - pre-release - update 4.
2. Copy these lines of code and replace the contents of your DDSopt.ini with them.
3. Now here comes the tedious work. All of the textures you want to optimize need to be loose. If you use the BSA versions of texture mods, you'll have to extract them.
*Mod Organizer users that have MO set to automatically extract BSA files, skip steps four through seven. Instead, rename the mods folder under Mod Organizer to "Mod Extracted"
4. Make a file directory that looks like this:

Working
>>Mod Extracted
>>>>A folder for each mod you want to optimize. Examples Below
>>>>Skyrim HD 2K Textures
>>>>Serious HD Retexture Skyrim
>>>>Another mod you want optimized...

5. Download and install BSAopt.
6. NMM/Wrye users go to Steam/steamapps/common/Skyrim/Data
6. MO users that aren't set to automatically extract BSAs go to Mod Organizer/mods/
7. Follow this guide to extract each mod's BSA into their corresponding folders that you just made in the Mod Extracted folder.
8. Download and extract these batch files into the same folder that contains your Mods Extracted folder.
9. Run 4_Mod_Sorting_Pre-optimization_2.73.bat. It will make sure that "Mod Extracted" is in the same folder. Remember, all of your extracted mods should be in their own sub-folders in "Mod Extracted"
10. As it runs, hit any key when it tells you to and type "Y" when it asks. Don't exit out. It will close itself on the last prompt to hit another key to continue.
11. When it's done, a log.txt file will be made. Make sure that there are no errors that are level 4 or higher.
12. Along with "Mod Extracted" and your batch files, there should be new folders titled Mod Optimized, Mod Ordinary Textures, Mod Normal Maps, Mod Body Textures, Mod Exterior Textures, and Mod Exterior Normal Maps. Each of these folders should contain sub-folders named the same as the folders you made in Mod Optimized.
13. Follow the "Optimizing the Mod Textures" portion of this page.
14. Run 5_Compress_Mods_7z_2.71.bat. Once again, don't exit out. It will close itself on the last prompt.
15. When it's finished, you should have a new folder titled "Mod Optimized Archive." This folder contains your new optimized textures! Move these .7z archives to wherever you put your manually downloaded mods. You can install these like any other mod.
*Note: These archives contain loose files. Loose files will overwrite all BSA archives. Because of this, these optimized textures will overwrite all other mods that use BSA files. Even if those mods are later in the load order.
16. Mod Organizer users that renamed their "mods" folder to "Mod Extracted" should change it back at this point.
17. After your optimized texture .7z files have been moved, you can delete your "Mod Whatever" folders.










*This will not work for non-Steam users without special instructions. Google if you don't use Steam.
1. Download and install SKSE 1.7.0 alpha
2. Go to Steam/steamapps/common/Skyrim/Data and see if you have a SKSE folder with an SKSE.ini file inside. If you do, add these values to SKSE.ini:

[General]
ClearInvalidRegistrations=1
[Display]
iTintTextureResolution=2048
[Memory]
defaultHeapInitialAllocMB=768 <-- only use this as a starting point - refer to the Memory Blocks Log guide below for a more permanent value
scrapHeapSizeMB=256

If you don't have an SKSE.ini file, download and install SKSE ini from the downloads section.
*If you use MO and one of your mods supplies its own SKSE.ini file, it will overwrite this one. Add the aforementioned values to that mod's SKSE.ini file. You can find it in Mod Organizer/mods/(your mod)/SKSE/.
4. If you previously used SSME, delete d3dx9_42.dll and ssme.ini from your Steam/steamapps/common/Skyrim folder.
5. Delete Safety Load and ShowRaceMenu Precache Killer if you have them installed.
6. Read the Memory Blocks Log section below to find out what value defaultHeapInitialAllocMB should be.



1. Download and extract SSME.
2. Move d3dx9_42.dll and ssme.ini to Steam/steamapps/common/Skyrim.
3. Delete Safety Load and ShowRaceMenu Precache Killer if you have them installed.
4. Read the Memory Blocks Log section directly below.



1. Download and install Memory Blocks Log.
2. Play Skyrim for a few hours and try to get as much cell data on the screen as possible. Use this video for ideas. Warning: Contains crude language.


3. NMM/Wrye users go to Skyrim/Data/SKSE/Plugins/.
3. MO users go to Mod Organizer/overwrite/SKSE/Plugins/.
4. Open up MemoryBlocksLog.log and check to see that the value under Block 1 is 512.
*If it isn't, you've installed the memory patch wrong.
5. Now check the last number in the Block 1 column. We'll call this value Z.
6. Set the appropriate value for Block 1 based on your Z value and version of the memory patch.

SKSE 1.7.0 Alpha: In SKSE.ini, set defaultHeapInitialAllocMB to (Z + 276.) Do not set lower than 512.
*MO users that downloaded SKSE ini, this will be in Mod Organizer/mods/SKSE ini/.

SSME: Find the value you want to set (Z + 276) and type it in Windows Calculator. Change the view to "Programmer" and hit the Hex button. You should get a three digit number. Open up ssme.ini and Find NewValue01=0x00000300. Change the last 3 digits (300) to the ones you just found on Windows Calculator. Do not set lower than 150.

Patched skse_steam_loader.dll: You will use (Z + 20) for MemBlock1. I don't know how you compiled your dll so I can't tell you how to change it. I assume you already have the know-how since you compiled it yourself. Do not set lower than 256.

7. Play Skyrim some more and make sure that Block 1 is roughly 20 higher than your peak usage.

*This value may need adjusted over time as you add more texture mods, NPCs, or increase your uGridsToLoad.



That's it! You're done! Enjoy your game. (But you should keep reading to see if you have any special circumstances that need accounted for)





1. Optimus cards confuse ENB. Use the injector version of ENB to avoid this.
2. "Why do I get sun reflections on the water? The sun is behind a mountain right now." - Sorry. It was the only way to get the sun to reflect in flat areas. If someone could make a mod that lets mountains cast shadows, that'd be great.
*Some users have reported that using the injector can fix this.
3. Some users have reported issues with SLI. Try turning it off if you're having issues.
4. MSI Afterburner/EVGA Precision/Rivatuner OSD need some tweaking to use shader mods. Look below to see what you have to do.
5. If you use OneTweak, you have to set BWmode to 2 in OneTweak.ini. You can find it in Steam/steamapps/common/Skyrim/Data/SKSE/Plugins or Mod Organizer/mods/OneTweak/SKSE/Plugins if you're a MO user.
6. Sometimes Norton will prevent LOOT from downloading because of a "suspicious.cloud.7.ep" warning. Turn off "Antivirus Auto Protect" to fix it. - "But won't that give me all the viruses of teh internetz?" - Yep. Probably. Do it.
7. Avast thinks that Save game script cleaner is a virus. To fix this, go to your virus chest and find the URL that Avast "protected you from" when you tried to install Save game script cleaner. Then, go to "Settings -> Global Exclusions" and add that URL as an exclusion. After that, right click on the file in the virus chest and select restore. You can install it now.





1. If you have d3d9.dll in your Steam/steamapps/common/Skyrim folder, delete it.
2. Extract the ENBSeries archive and move the the files from “Injector” to Steam/steamapps/common/Skyrim. DO NOT OVERWRITE WHEN ASKED.
3. Set the following values in enbinjector.ini:

[LIBRARY]
LibraryName=enbseries.dll
[TARGETPROCESS]
ProcessName0=skse_loader.exe
ProcessName1=SkyrimLauncher.exe
ProcessName2=tesv.exe

4. Run the ENBinjector.exe.
5. Start your game and enjoy!
*You have to run ENBinjector.exe before you start your game every time you play from now on. I suggest making a shortcut somewhere more accessible. If you still have some missing features, try setting ForceFakeVideoCard in enblocal.ini to true.





The steps below are for MSI Afterburner but all 3 are based on the same program so the steps will be similar, if not identical. (thanks SkyrimTuner)

1. Update and start MSI Afterburner
3. Switch to the "MSI On-Screen Display Server" window.
4. Create a new profile for your game and change to it.
5. Click the big wrench icon to change advanced settings.
6. Go to General -> Compatibility properties and turn on "Enable compatibility with modified Direct3D runtime libraries".