Jump to content

CTD in SexLab Aroused


Recommended Posts

Posted

I have written a mod and on one of my test machines (only one), I am getting a CTD on loading a save game.  This CTD happens one out of 4 save game loads.  In the following discursion, I do not have my mod loaded for these tests because I have determined that it is either taking place in slaMainScr or in whatever mod writes the papyrus log entry "InitWidgetLoader()" (Anyone know where this InitWidgetLoader comes from?)

 

This is on a skookum machine with 16 gigs of memory, enboost installed as well as MemoryBlocks logger installed (which shows no memory issues), tesv5Edit run on all the mods (which aren't many)

 

Skyrim.esm=1
Update.esm=1
Unofficial Skyrim Patch.esp=1
ApachiiHair.esm=1
ZaZAnimationPack.esm=1
SexLab.esm=1
SexLabAroused.esm=1
HighResTexturePack01.esp=1
HighResTexturePack02.esp=1
HighResTexturePack03.esp=1
NewmillerPiercings2.esp=1
AmazingFollowerTweaks.esp=1
SexLabMatchMaker.esp=1
AliciaPainSlut.esp=1
dD - Realistic Ragdoll Force - Reduced.esp=1
voidLetsGetNaked.esp=0
NewmillerPiercings3.esp=1
Convenient Horses.esp=1
SBF All In One Vanilla.esp=1
MiasLair.esp=0
My Home Is Your Home.esp=0
TheEyesOfBeauty.esp=1
Kamille.esp=1
SkyUI.esp=1
LoversComfort.esp=0
MileySkyrus.esp=1
Remodeled Armor.esp=1
SexLabSquirt.esp=1
Alternate Start - Live Another Life.esp=1
Bashed Patch, 0.esp=1

 

Here are the first few lines of a good save load:

[09/21/2014 - 03:13:39PM] VM is thawing...
[09/21/2014 - 03:13:39PM] ==== LAL: DLC and Mod support check - Ignore errors about missing files. ====
[09/21/2014 - 03:13:39PM] zbf Register: Registered mod Zaz Animation Pack in slot 0.
[09/21/2014 - 03:13:39PM] [slamainscr <sla_Main (06042D62)>]: starting maintenance...
[09/21/2014 - 03:13:39PM] InitWidgetLoader()
[09/21/2014 - 03:13:39PM] ========== Convenient Horses: Scanning for supported plugins...
[09/21/2014 - 03:13:39PM] ========== ERRORS RELATED TO MISSING FILES SHOULD BE IGNORED!
[09/21/2014 - 03:13:39PM] Error: File "dawnguard.esm" does not exist or is not currently loaded.
  ...Bunch more convient Horses stuff

 

Here is the log of a crash:

[09/21/2014 - 03:11:39PM] VM is thawing...
[09/21/2014 - 03:11:39PM] ==== LAL: DLC and Mod support check - Ignore errors about missing files. ====
[09/21/2014 - 03:11:39PM] zbf Register: Registered mod Zaz Animation Pack in slot 0.
[09/21/2014 - 03:11:39PM] [slamainscr <sla_Main (06042D62)>]: starting maintenance...
 

 

So, I modified slamainscr to look like this:

 

    ;UpdateSoftLinks()
 

i.e. commented this out (it does nothing here except go through all the mods looking for devious devices).

After doing this, my ctd rate dropped to 1 in 6

 

Further investigation led to modifying the next function call  after UpdateSoftLinks like this:

Function UpdateDesireSpell()
    Debug.Trace(Self + "UpdateDesireSpell()")
    If (slaConfig.IsDesireSpell)
        Debug.Trace(Self + "Removing Desire spell")
        PlayerRef.RemoveSpell(slaDesireSpell)
        Debug.Trace(Self + "Adding Desire spell")
        PlayerRef.AddSpell(slaDesireSpell, false)
        Debug.Trace(self + ": Enabled Desire spell")
    Else
        PlayerRef.RemoveSpell(slaDesireSpell)
        Debug.Trace(self + ": Disabled Desire spell")
    EndIf
EndFunction
 

All I did here was add a lot of tracing stuff.  I did 20 restarts and had 5 crashes.  All produced the same log which looks like this:

[09/21/2014 - 04:09:40PM] VM is thawing...
[09/21/2014 - 04:09:40PM] ==== LAL: DLC and Mod support check - Ignore errors about missing files. ====
[09/21/2014 - 04:09:40PM] zbf Register: Registered mod Zaz Animation Pack in slot 0.
[09/21/2014 - 04:09:40PM] [slamainscr <sla_Main (06042D62)>]: starting maintenance...
[09/21/2014 - 04:09:40PM] [slamainscr <sla_Main (06042D62)>]: starting maintenance... 2
[09/21/2014 - 04:09:40PM] [slamainscr <sla_Main (06042D62)>]: starting maintenance... 3
[09/21/2014 - 04:09:40PM] [slamainscr <sla_Main (06042D62)>]UpdateDesireSpell()
[09/21/2014 - 04:09:40PM] [slamainscr <sla_Main (06042D62)>]Removing Desire spell
[09/21/2014 - 04:09:40PM] [slamainscr <sla_Main (06042D62)>]Adding Desire spell

 

It looks like        PlayerRef.AddSpell(slaDesireSpell, false)
causes a crash.  I have lots of experience in a multi-threaded environment and it is way more than possible that the crash turned out to be in some unrelated area.  However, this is a bird in the hand and so I wanted to bounce it off of other developers to see if they had some input.

 

I was expecting that the player already has the desire spell and this call is redundant.  To test this, I modified Debug.Trace(Self + "Adding Desire spell") to look like this:  Debug.Trace(Self + "Adding Desire spell, player has spell = " + PlayerRef.HasSpell(slaDesireSpell))

 

Now, it is crashing on that line.

 

I am trying to find a fix for this for everyone, not just myself.  If anyone has an Idea, I would love to here it.

 

Posted

Update:

 

Did some more experimentation and adding :

 

            PlayerRef.AddSpell(slaDesireSpell, false)

At the top of the Maintenence function causes a CTD right at that point, so this doesnt look like it is happening anywhere else.  I did a PlayerRef.HasSpell(slaDesireSpell) right before and it returns true.  So, I modified the real function like this:

 

Function UpdateDesireSpell()
    Debug.Trace(Self + "UpdateDesireSpell()")
    If (slaConfig.IsDesireSpell)
        Debug.Trace(Self + "Enable Desire spell")
        ;PlayerRef.RemoveSpell(slaDesireSpell)
        if(! PlayerRef.HasSpell(slaDesireSpell))
            PlayerRef.AddSpell(slaDesireSpell, false)
            Debug.Trace(self + ": Enabled Desire spell")
        endif
    Else
        PlayerRef.RemoveSpell(slaDesireSpell)
        Debug.Trace(self + ": Disabled Desire spell")
    EndIf
EndFunction
 

It is now failing on the if(! PlayerRef.HasSpell(slaDesireSpell)) line.  Anyone have a clue?  PlayerRef btw if a Actor Property Auto.

Archived

This topic is now archived and is closed to further replies.

  • Recently Browsing   0 members

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