SKYRIM
FIX for CTDs and Missing Textures- 32bit Large Memory Access by Stone-D
Skyrim » Patches
Added: 20/12/2011 - 01:28PM
Updated: 25/12/2011 - 03:59PM

511 Endorsements

1.0 Latest version

11,914 Unique D/Ls

25,090 Total D/Ls

177,644 Total Views

Uploaded by LMahesa

Description

Last updated at 15:59, 25 Dec 2011 Uploaded at 13:28, 20 Dec 2011

FIX for CTDs / Missing Textures : 32bit Large Memory Access

If you're on a 64 bit version of Windows, this does NOT apply to you so save yourself some eyeball wear and tear. The commands have no effect, they are ignored so don't even bother trying.

Comments seem broken for this so please discuss on the forum :

http://www.thenexusforums.com/index.php?/topic/503105-fix-for-ctds-and-missing-textures-32bit-large-memory-access/

My machine :
- Core 2 Duo E8500 3.12 Ghz
- ASUS P5K-SE
- 4Gb RAM
- MSI N560GTX-Ti Twin Frozr 2Gb
+ Dual-booting OSX and Windows 7 Ultimate 32 Bit
+ Playing at Ultra, 1080p.

Prior to taking these steps, I was frequently crashing to desktop and experiencing missing textures. It got to the stage I generally spammed the quicksave button and kept a recent save in a different area.

No more. In the past 4 hours of play, no missing textures and not one CTD. I've installed all the texture packs I was too scared to before and Skyrim looks glorious. I've fast travelled all over the place without a hitch, cast spells, dual wielded, shouted, killed dragons... all with another app thrashing my drive in the background. Not too shabby for my aged rig.

Now, I still have problems saving and loading in Whiterun from a fresh start - it won't - but I suspect something else is broken there and is unrelated.

I applied this on my machine last night, circa 24 hours ago. I've played Skyrim for about 8 hours since then, did some Photoshopping, alot of browsing (Opera and Palemoon), Perl coding, HD tv episode watching, played Shogun 2 for a bit as well as Dead Rising (my gfx card is brand new, still fapping over the upgrade from my 8800gt).

Anyway.

Before we continue, doing this *should* be OK on most systems. However, badly written drivers that assume they have access to 2Gb will likely crash and burn. Write down the fallback instructions just in case.

As it turns out, toggling the LAA flag in executables is NOT ENOUGH on 32bit Windows. Being 32bit, Windows is limited to 4Gb of 'address space', no more. It can't even *see* an entire 4Gb of physical RAM - only 3.25Gb is accessible. Don't believe me? Right-click My Computer, click Properties and look under Installed Memory (RAM).

It turns out that Windows splits that 4Gb of virtual address space in two - 2Gb for the Kernel (Windows core, drivers, yada yada yada), and 2Gb for User Applications.

In order for Skyrim (and others) to actually benefit from the LAA switch without crashing every time you breath wrong, that sharing balance must be shifted. Windows will not let you give more than 3Gb for User Applications, but, as it turns out, that's enough.

Configuring Windows XP for 3Gb User Memory :

1) Open boot.ini
2) Find (usually only one exists) your boot line, which looks something like this :
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional" /fastdetect

3) Duplicate that line, and edit it so it includes "/3GB" somewhere after the label. Also edit the label to reflect this change :
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional 3GB" /3GB /fastdetect

4) Reboot. If things go pear shaped if you use that boot option, use the original and remove that line from boot.ini.



Configuring Windows Vista and 7 for 3Gb User Memory :

1) Open an elevated (ie, with Administrator rights) cmd prompt (type CMD in the start menu, then CTRL-Shift-Enter)

2.1) Without the quotes, type "bcdedit /set IncreaseUserVa 3072", then press Enter/Return.

2.2) If you are on a multiboot machine, it may fail. If so, add "/store C:\Boot\BCD" to the command, changing the BCD store location accordingly.

2.3) If you're on a machine using Windows Deployment Services (At home? You're 99.99% probably not), you'll need to force regeneration of the BCD store.
Again without quotes: "sc control wdsserver 129"

3) Reboot.

4) To undo this, at an elevated cmd prompt type "bcdedit /deletevalue IncreaseUserVa" and reboot.


Following this, you'll find the 4Gb patch actually has an effect and Skyrim will no longer crash anywhere near as often.

To improve things further, open Skyrim.ini in your Mydocs/Mygames folder and match the following settings :

[Papyrus]
iMaxAllocatedMemoryBytes=3221225472


This next part of Skyrim.ini is optional. The uGridsToLoad variable is apparently set semi-permanently and cannot be reduced, only increased. The default is 5, I believe.

[General]
uGridsToLoad=7
uInterior Cell Buffer=12
uExterior Cell Buffer=142
fMasterFilePreLoadMB=128.0000
iPreloadSizeLimit=268435456


Good luck. If it doesn't work, I dunnolol.

Please endorse if it does work for you so others can gain confidence and benefit.

The files are merely my Skyrim INI files in case you want to eyeball them.

PS: Stone-D is me, its my preferred moniker on sites that allow hyphenated usernames.