TES Skyrim

This is temporary page for CTD and Freeze fix in case of forum not working.

Original forum topic is here, it may be temporary disabled to free server resources, sorry.

ZerOxShadows post on the forum

Alright guys, it's 3 AM here so bear with me if I ramble. I've been playing with this Memory Patch all day and am ready to give feedback.

Mind = Blown

It's too good but it is true. Yes, it really does work. Initially tested ten times at five different freeze spots on my map with Safety Load turned OFF. Freezes every time at the exact same spots. Used the compiled skse_steam_loader.dll, tested all the previous freeze locations and never had a single CTD. Then proceeded to play the game normally for several hours. Rode on horseback from Whiterun to Falkreath, Markarth, Solitude, Dawnstar, and Riften. Not a single CTD. Interiors, exteriors, you name it. I actually got to play the game, the way it was meant to be played, with all the mods I want, without having to cross my fingers during known crash spots (menus, changing cells, heavily edited world space, etc).

I do think that the procedure could use a little fine tuning for those unfamiliar with the operation so I'll explain it with more clarity. Using Microsoft Visual C++ can appear intimidating but trust me, this is super easy. Here's a quick walk-through:

Before we begin, go to your Skyrim directory folder (Steam\steamapps\common\Skyrim) and back-up your original skse_steam_loader.dll as that is what is going to be replaced.

First, you'll need the SKSE source files. Download the 7z archive from SKSE.
You do NOT need to place these files inside the Skyrim directory folder. I kept my source files in a temporary location.

Download Microsoft Visual C++ Express 2010
Before you do anything else, UPDATE THE PROGRAM. You'll need to re-scan and install files multiple times until Windows Update no longer prompts you to install anything else.

In your newly downloaded SKSE folder, go to src, skse, skse.snl . SKSE.snl may not have the extension showing on your computer. You can verify that this is the correct file by right clicking and viewing Properties. Your folder path should look like this --> skse_1_06_16\src\skse\skse.snl

Open skse.snl with Visual C++ Express 2010.
If a conversion window pops up click Next, choose "Yes, create a backup before converting" then Next, and Finish. Don't worry about the Security Warning. Uncheck the "Ask me for every project in this solution" as it does get annoying. Click OK to open the project. If prompted to remove "source control bindings" click Yes. Click Close when prompted that conversion is complete. Don't worry about all the Warnings in the Conversion Report.

Click on the arrow next to "steam_loader" and double click on "main.cpp". Copy and paste sheson's code in the bracket starting with

InstallHook(void * retaddr, UInt32 hookSrc)
Placing the code just above
FlushInstructionCache(GetCurrentProcess(), NULL, 0);

Now locate the "Debug" drop-down on the tool bar and change it to "Release".

On the left panel, locate and right click on "steam_loader" and select "Build".

Visual will now start spitting out a bunch lines in the Output section. The last line should say:
========== Build: 2 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========

Don't worry about the 1 failed. That's normal.

Go back to your folders and find the Release folder. Folder path should look like this --> skse_1_06_16\src\skse\Release
Copy the "skse_steam_loader.dll" file and replace the one found in your Skyrim directory.

Of course, if you're realllllllly lazy and don't want to get your hands dirty (don't worry I won't judge) you can just download my pre-compiled skse_steam_loader.dll found here.

Finally, create a new text document with the following:


Save the text file as SKSE.ini and place it in your SKSE folder found in your Data folder. If you do not have an SKSE folder, create one then place the SKSE.ini file there. If you already have an SKSE folder, do not accidentally place the SKSE.ini file inside the Plugins folder. Folder path looks like this:
--> Steam\steamapps\common\Skyrim\Data\SKSE

ENBoost and newest version of ENB is required.

Stable uGridsToLoad is not required if you are not changing your uGrids. If you plan on keeping the default uGridsToLoad=5, you do not need Stable uGridsToLoad mod. If you want to play around with uGrids and test the capabilities of this memory patch or just want to increase your uGrids, download the mod.

Play the game

In order to verify that the patch is working correctly, go to your Skyrim folder located under My Documents and locate the SKSE folder. Folder path --> Documents\my games\Skyrim\SKSE. Open up the "skse_steam_loader" text document and inside you should find a little message near the bottom saying "Sheson took your first born in exchange for more memory". This will let you know that the patch is correctly implemented and everything works as it should.

Hope this helps and happy modding!

Return to CTD Fix page

copyright © 2007-2014 Boris Vorontsov