Jump to content
  • 0

Common CTDs, Freezes, ILS and memory issues


hishutup

Question

 

 

Basic requirements to follow this FAQ

Use the following utilities and have some idea of what they do.

  • ENBoost: This extension moves the DX9 texture cache to a different 64 bit process. This reduces the chance of filling up the 32 bit process with textures causing random CTDs.
  • Crash Fixes: This is an SKSE plugin that helps catch some issues that cause skyrim to CTD, freeze or hang. 
  • Some form of memory fix:
    • SSME: Made redundant by SKSE memory tweaks.
    • SKSE memory tweaks: This changes the initial heap size to make it larger. This avoids the issue where skyrim will not increase the heap causing it to CTD, freeze or hang. This method requires some input for the correct size. This can be found by using Memory Blocks Log. This is a workaround to an issue.
    • Crash Fixes OSAllocators: This is a fix for the same issue that SKSE memory tweaks workarounds. This is a true fix but has its share of issues.
    • Crash Fixes CustomMemoryBlocks: This is a fix to some of the issues caused by OSAllocators. By breaking the heap into smaller blocks, the memory can be allocated and freed as needed. This method requires some input by observing how high you need to set the blocks size. This can be viewed in the console if the toggle is enabled.

 

Info that is typically useless:

  • Papyrus logs: These are NOT crash logs. Typically, the last entry could be several minutes before you even experience a crash. Any useful info is typically debugging code in scripts, this is usually removed/disabled before a mod is released. This is a very helpful tool to modders, but not to users.
  • Windows logs: These are rarely of any use to a user.

 

Issues caused by SKSE memory tweaks:

Problem: I randomly CTD.

Solution: Check the size against the memory blocks log. If the last element is close to the max size then you may need to increase heap 1 by some amount(~128 MB increments is accurate enough). Heap 2 doesnt need to be increased as it spawns more like it should.

 

Issues caused by Crash Fixes OSAllocators:

Problem: I get "Skyrim has failed to allocate memory"

Solution: This is caused by memory fragmentation and there isn't really a solution for this. Its suggest to use the custom memory blocks instead.

 

Issues caused by Crash Fixes CustomMemoryBlocks:

Problem: Stuff isn't loading in as expected.

Solution: Check to make sure the size is appropriate.

 

How to read and interpret Crash Fixes crash log:

I don't know, I'm curious myself. The hex given isn't a formid, its a memory location by my understanding.

 

 

 

 

 

This is the easiest solution to the memory issue.

 

Install this manually into the "Skyrim" folder(with the TESV.exe)

SKSE Plugin Preloader

Install this manually by moving the SKSE folder into the "Skyrim\Data\" folder

Crash fixes

 

Then open the "Skyrim\Data\SKSE\Plugins\CrashFixPlugin.ini"

Modify the "UseOSAllocators=0" to "UseOSAllocators=1"

Save.

 

You should be good now.

 

I'd recommend removing the old methods of heap modification, ENBoost is fine.

 

[spoiler=Old Post]

I made this sticky because there is a sudden up-rise in CTD relating to the memory tweaks not working. It is flooding The General forum and has kind of spread to the memory blocks log mod topic

 

If you are curious how the memory tweaks work, there is an amazing post by keith over here.

 

There are several reasons for one to CTD or freeze but the most common one is that the SSME/Memory Patch 3.0/SKSE memory tweaks are not applying for some reason.

NOTE: SSME is no longer needed and should be removed and replaced with the SKSE Memory Tweaks.

Safety load is also not needed anymore and may cause unexpected issues.

 

 

First, please copy and paste the following into your SKSE.ini file

Make sure your ini is located as such ...\Skyrim\Data\SKSE\SKSE.ini

If you follow STEP check this out.

[General]
ClearInvalidRegistrations=1

[Memory]
DefaultHeapInitialAllocMB=768
ScrapHeapSizeMB=256

To find out if your memory tweaks are working correctly, download and install Memory Blocks Log.

Run the game through MO, I would recommend fully loading into the game but the main menu will suffice. After which close out of the game and open MO again if it closed on you. Go to the overwrite folder and navigate to the "SKSE\plugins\" folder and open up the memoryblockslog.log.

 

Your log should look similar to this:

logging of blocks enabled
logging max values only
Timer disabled
Block1 Block2
512MB 256MB

However, people that experience a lot of crashing will have something like the following:

logging of blocks enabled
logging max values only
Timer disabled
Block1 Block2
256MB 256MB

The most common "fix" is to open the "Modify Executables" window by clicking the gears on  the top part of MO and select the SKSE executable and add the Argument 

-forcesteamloader

It should then look something like this.

ForceSteamLoader.png

After which, click the modify button and then relaunch the game through MO then close it and make the comparison again. 

 

If your results did not change then make a post below, otherwise search for topics that already exist in the General forum. If your particular issue does not already exist then make a new topic and there will be someone to answer your questions.

 

  • +1 3
Link to comment
Share on other sites

Recommended Posts

  • 0

 

Below are my skse.ini settings (I have  checked it is not .ini.txt):

 

[Memory]

DefaultHeapInitalAllocMB=768
ScrapHeapSizeMB=256

 

==============================================
 
@Saber47 >>> You are missing a vowel ( i ) in the argument DefaultHeapInitalAllocMB
Edited by BobbyTH
  • +1 2
Link to comment
Share on other sites

  • 0

 

==============================================
 
@Saber47 >>> You are missing a vowel ( i ) in the argument DefaultHeapInitalAllocMB

 

Huh! That solves the problem! Thanks so much. How stupid of me that I didn't notice that sooner. I couldn't remember where I got this wrong version from, but I copied these lines from some popular thread I found through google. I guess people who had problem with similar issues might wanna try double check their spellings. The interesting thing is that I didn't even have to do the -forcesteamloader to get this to work :)

Thanks BobbyTH!

  • +1 1
Link to comment
Share on other sites

  • 0

I think this thread should be required reading for any modder, as I, like some others, had plopped in skse.ini without realizing that we were missing something very important and thus experienced CTDs/ILS despite the settings.

Totally agreed. I was about to rip things apart and start over after going through everything trying to fix my ILS issue. This was definitely my issue. 

 

I saw SKSE on the STEP list and just went through the installer assuming SSMP was there and just set it and forgot it. 

Link to comment
Share on other sites

  • 0

I was able to get to work the Memory Patch throug skse.ini and also Memory Blocks Log, but there is a problem: in MemoryBlocksLog.log Block1 is always 256MB LESS than what I set for defaultHeapInitialAllocMB in the ini file.

EDIT: nevermind, I realized this is the way it is supposed to work XD

Edited by FirstChildren
Link to comment
Share on other sites

  • 0

Hi.  I've tried the above fix posted by Daedric and my log still reports 256 for block 1.  SKSE files are all located in the Skyrim directory.  I read a little bit into the ENBlocal INI/Memory guide and made the following change under [Memory]:

 

ExpandSystemMemoryX64=true

 

I get the same result as before (block reports 256 MB).  Here's what my SKSE pref file looks like:

 

ClearInvalidRegistraions=1
DefaultHeapInitialAllocMB=768
ScrapHeapSizeMB=256
iTintTextureResolution=512
WriteMinidumps=1
EnableContainerCategorization=1

 

The game launches fine, intro is good, and gameplay is smooth with no problems YET.  The issue is I hit an ILS when I try to enter Skyrim for the first time outside of Helgen Keep.  I'm using STEP 2.2.9 WITHOUT any of the DLC's.  I've been careful to use only mods and/or options that don't require the DLC's.  I followed the installation order exactly and have sorted the plugins properly. 

 

Any ideas are appreciated.

Link to comment
Share on other sites

  • 0

Hi.  I've tried the above fix posted by Daedric and my log still reports 256 for block 1.  SKSE files are all located in the Skyrim directory.  I read a little bit into the ENBlocal INI/Memory guide and made the following change under [Memory]:

 

ExpandSystemMemoryX64=true

 

Can you link where you found the info.

By today it should be ExpandSystemMemoryX64=false

because the MEM function is no longer needed and may cause issues with SKSE memory tweaks

Link to comment
Share on other sites

  • 0

@Jarl,

 

This fix is what I was referring to above "I've tried the above fix posted by Daedric and my log still reports 256 for block 1".  My executables window looks identical to that on page 1 of this thread in Daedric's post.

 

@Daedric,

 

https://wiki.step-project.com/Guide:ENBlocal_INI/Memory is the link to the instructions for setting that line of code to true.  If it does nothing (and since it hasn't helped me), I'll set it back to false.

 

Any other ideas? 

 

Thanks in advance.

Link to comment
Share on other sites

  • 0

The names aren't Daedric and Jarl. They're just titles. Much like yours at the moment is Prisoner. :) They'll change with post number. :)

 

Ok next thing is what's the exact path to you SKSE.ini? And another easy mistake to make is this one. are you showing file extensions? If not, turn them on. Make sure your SKSE.ini isn't SKSE.ini.txt by mistake. 

 

It's an easy mistake to make.

 

EDIT: also is that exactly how you have the SKSE.ini set up? As you put in the post?

 

Try something like this:

 

[General]

ClearInvalidRegistrations=1

 

[Memory]

DefaultHeapInitialAllocMB=768

ScrapHeapSizeMB=256

 

[Display]

iTintTextureResolution=512 *Though this seems smallish. Most use 1024 or 2048 here*

 

[Debug]

WriteMiniDumps=1

 

[interface]

EnableContainerCategorization=1

Edited by Nozzer66
Link to comment
Share on other sites

  • 0

Nozzer, thanks for the heads up on name convention (duh) :-)

 

Anyway, problem fixed!  I did two things:

 

-what you suggested

-then this little tidbit about skse and mod organizer shown here: https://[General] ClearInvalidRegistrations=1 [Memory] DefaultHeapInitialAllocMB=768 ScrapHeapSizeMB=256

 

I was always able to run skse as an executable from MO.  The issue was, I started STEP using NMM.  After it didn't work, I installed MO and merged all the mods into it and started the installation process all over again.  BUT, I didn't revisit part 2C in the guide, so I totally missed the specific instructions for installing SKSE scripts into the MO folder.

 

Anyway, thanks for the help!  I was able to enter Skyrim form Helgen Keep.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...

Important Information

By using this site, you agree to our Guidelines, Privacy Policy, and Terms of Use.