Jump to content

Help me fix my Skyrim SE CTD


famaffe

Recommended Posts

Hello everyone!

 

Ive been playing my newly modded skyrim for about 10 hours now without any issues.

But i just visited the Elysium player home and went straight across to the giants camp and when i get close it instantly CTD's.

Ive looked in the papyrus logs and the last line always have spriggan.psc in it.

For example

 

 

[02/06/2021 - 10:20:42PM] Error: Actor value "aggression" - attempt made to set illegal value (-1.00)..
stack:
[ (FF002047)].Actor.SetActorValue() - "<native>" Line ?
[None].sprigganCallAnimalsAOE.OnEffectFinish() - "sprigganCallAnimalsAOE.psc" Line 52
AND
[ (000CB12D)].SPELL.Cast() - "<native>" Line ?
[Active effect 1 on (FF002052)].SprigganFXSCRIPT.OnCombatStateChanged() - "SprigganFXSCRIPT.psc" Line 93
[02/06/2021 - 10:07:14PM] WARNING: (FF002052): Ref is in an unloaded cell, so it cannot cast spells..
stack:
[ (000CB12D)].SPELL.Cast() - "<native>" Line ?
[Active effect 1 on (FF002052)].SprigganFXSCRIPT.OnCombatStateChanged() - "SprigganFXSCRIPT.psc" Line 93
[02/06/2021 - 10:07:14PM] WARNING: (FF002052): Ref is in an unloaded cell, so it cannot cast spells..
stack:
[ (000CB12D)].SPELL.Cast() - "<native>" Line ?
[Active effect 1 on (FF002052)].SprigganFXSCRIPT.OnCombatStateChanged() - "SprigganFXSCRIPT.psc" Line 93

 

 

Someone please help me with this?

I think its something that we can fix, maybe an issue with immersive creatures since its always a spriggan thats causing the issues

Link to comment
Share on other sites

Here are some actions you can try, if you want to keep using the same saved game.

 

1) You can try loading an earlier save, to see if you can visit the troubled location.

If an earlier save allows you to reach the in-game camp, then the later save is probably corrupted.

 

2) Visit/search uesp.net>wiki> Skryim:Console, to find console commands to help you. Load your latest troubled saved game. Now, approach the crashing location in game.

Before it crashes open the console and type 'pcb' (without the quotes) and hit enter. Scan the records it shows deleted, which may give a clue to what's causing your crashes.) Now, exit the console.

See if you can now access the area in-game.

 

3) Or, try this. Load your latest troubled saved game. Now, approach the crashing location in game. Before it crashes, stop and use the pcb command in console. Save the game. Now open the console and type player.kill plus enter.

This is disturbing, but your character will die on screen, and Skyrim will reload the saved game, your character alive again, but it will clear all unnecessary references held in memory. You may find you can now proceed.

 

4) Out of game, on the Internet, visit wiki.step-project.com to review all the methods for making your game stable so it will not crash.

 

5) At the wiki console site above, #2, you can find how to use coc codes to access in-game locations using the conosle. Look up the coc code at uesp for the location of the camp you are trying to get to. Now, when you start Skyrim, load your very first save

after you left Helgen at the beginning, if you still have it, or load a very early game in your playthrough. Within that saved-game, open the console, type in coc plus the location of the camp, hit enter. If the game takes your beginning character to that location

successfully, then the location is not bugged. Immediately, before your inexperienced character gets killed by giants, open the save menu and load the latest save, and now see if you can get to the location.

 

GL.

Edited by Gorgopis
Link to comment
Share on other sites

famaffe wrote: "Someone please help me with this?"

 

vanilla scripts are:

sprigganCallAnimalsAOE

 

scriptname sprigganCallAnimalsAOE extends activeMagicEffect
{Prototype for an ability where SPriggans call helper animals}

faction property creatureFaction auto
faction property sprigganFaction auto

actor caster
objectReference casterRef

float myConfidence
float myAggression         ; this has value [default = 0.0]

bool property bDebug = FALSE auto

EVENT OnEffectStart(Actor akTarget, Actor akCaster)
    caster = akCaster
    casterRef = (caster as ObjectReference)
    
    if bDebug
;         debug.trace("TEST: applied Spriggan AoE to :"+akTarget)
;         debug.trace("TEST: AoE was cast by: "+casterRef)
;         debug.trace("TEST: Enemy of Spriggan: "+caster.getCombatTarget())
    endif
    
    if akTarget.isInFaction(creatureFaction) == TRUE && !akTarget.isDead()
        
        ; save my conf/aggro values so they can be reset
        myConfidence = akTarget.getActorValue("confidence")
        myAggression = akTarget.getActorValue("aggression")
        
        ; make my enemies the spriggans enemies temporarily
        akTarget.addToFaction(sprigganFaction)
        
        ; if the spriggan caster has a combat target (she should) then I will beeline to attack it!
        if caster.getCombatTarget()
            akTarget.startCombat(caster.getCombatTarget())
        endif

        ; make this animal very aggressive/confident for the duration of the spell
        akTarget.setActorValue("confidence", 4)
        akTarget.setActorValue("aggression", 1)
        
    endif
    
endEVENT

EVENT OnEffectFinish(Actor akTarget, Actor akCaster)

;     debug.trace("TEST: Released from Spriggan Enthrallment: "+self)

    akTarget.setActorValue("confidence", myConfidence)
    akTarget.setActorValue("aggression", myAggression)   ; Line 52, Error: Actor value "aggression" - attempt made to set illegal value (-1.00)..
    akTarget.RemoveFromFaction(sprigganFaction)
    akTarget.evaluatePackage()
endEVENT

 

 

SprigganFXSCRIPT

 

Scriptname SprigganFXSCRIPT extends ActiveMagicEffect  
{Attaches and controlss spriggan FX}

import utility
import form

Actor selfRef
VisualEffect Property SprigganFXAttachEffect Auto
Spell Property crSprigganHeal01 Auto
Spell Property crSprigganCallCreatures Auto
Idle Property FFselfIdle  Auto  
int doOnce
;===============================================

;RegisterForSleep() ; Before we can use OnSleepStart we must register.
 

    EVENT OnEffectStart(Actor Target, Actor Caster)
        ;Play your particles.
        selfRef = caster        
        ;test to see if spriggan is in ambush mode
        if (selfRef.GetSleepState() == 3)
;             Debug.Trace("Spriggan is sleeping! 3")
            selfRef.PlaySubGraphAnimation( "KillFX" )
        else
            SprigganFXAttachEffect.Play(selfRef, -1)
        endIf
    ENDEVENT

    Event OnEffectFinish(Actor akTarget, Actor akCaster)
        SprigganFXAttachEffect.Stop(selfRef)
    endEvent
    
    Event OnGetUp(ObjectReference akFurniture)
;         Debug.Trace("We just got up from " )
        SprigganFXAttachEffect.Play(selfRef, -1)
        selfRef.PlaySubGraphAnimation( "Revive" )
    endEvent
    
    EVENT onDeath(actor myKiller)
        ;(selfRef as actor).PlaySubGraphAnimation( "LeavesScared" )
        ;wait(10.0)
        selfRef.PlaySubGraphAnimation( "KillFX" )
        wait(10.0)
        SprigganFXAttachEffect.Stop(selfRef)    
    ENDEVENT
    
    EVENT onCombatStateChanged(Actor akTarget, int aeCombatState)
        if aeCombatState == 1
            selfRef.playIdle(FFselfIdle)
            utility.wait(3.0)
            
            crSprigganCallCreatures.cast(selfRef,selfRef)        ; error line 53, but yours is line 93 that means you have running a non vanilla script
        endif
    endEVENT
    
    Event OnEnterBleedout()
;         Debug.Trace("dude im bleeeding out" )
        if doOnce == 0
            selfRef.PlaySubGraphAnimation( "KillFX" )
            wait(2.0)
            crSprigganHeal01.Cast(selfRef)
            selfRef.setActorValue("variable07",1)
            selfRef.evaluatePackage()
            wait(1.0)        
            selfRef.PlaySubGraphAnimation( "Revive" )            ; error line 66
            doOnce = 1
        endIf
    ENDEVENT

 

 

Edited by ReDragon2013
Link to comment
Share on other sites

[03/03/2014 - 05:37:45AM] error: (FF002791): Failed to send event Revive for unspecified reasons.
stack:
[ (FF002791)].Actor.PlaySubGraphAnimation() - "<native>" Line ?
[Active effect 1 on (FF002791)].SprigganFXSCRIPT.OnEnterBleedout()
- "SprigganFXSCRIPT.psc" Line 66

[01/14/2015 - 03:02:19AM] warning: (FF0021EA): Ref is in an unloaded cell, so it cannot cast spells..
stack:
[ (000CB12D)].SPELL.Cast() - "<native>" Line ?
[Active effect 1 on (FF0021EA)].SprigganFXSCRIPT.OnCombatStateChanged() - "SprigganFXSCRIPT.psc" Line 53

 

Years ago I tried to change these scripts as follow:

 

sprigganCallAnimalsAOE

 

Scriptname sprigganCallAnimalsAOE extends activeMagicEffect
{v1.4 ReDragon 2014, Prototype for an ability where Spriggans call helper animals}

  Faction PROPERTY creatureFaction auto
  Faction PROPERTY sprigganFaction auto

  Bool    PROPERTY bDebug = False  auto      ; UnUSED

  Float myConfidence
  Float myAggression
 
  Actor caster
  Actor targetREF                            ; Added by ReDragon
 ;ObjectReference casterRef                  ; UnUSED


; -- EVENTs -- 2

EVENT OnEffectStart(Actor akTarget, Actor akCaster)
    caster    = akCaster
    targetREF = akTarget

    Debug.Trace("Spriggan AOE: OnEffectStart() - caster = " + caster + ", target = " + targetREF + "  " +self)

IF (targetREF) && !targetREF.IsDead() && targetREF.IsInFaction(creatureFaction)

;=1 save my conf/aggro values so they can be reset
;--------------------------------------------------
    myConfidence = targetREF.GetActorValue("confidence")        ; >> 1
    myAggression = targetREF.GetActorValue("aggression")        ; >> 2


;=2 make my enemies the spriggans enemies temporarily
;-----------------------------------------------------    
    targetREF.AddToFaction(sprigganFaction)


;=3 make this animal very aggressive/confident for the duration of the spell
;---------------------------------------------------------------------------
    targetREF.SetActorValue("confidence", 4)
    targetREF.SetActorValue("aggression", 1)


;=3 if the spriggan caster has a combat target (she should) then I will beeline to attack it!
;--------------------------------------------------------------------------------------------
    actor aRef = caster.GetCombatTarget()
    IF (aRef)
        targetREF.StartCombat(aRef)
    ENDIF
ENDIF
ENDEVENT


EVENT OnEffectFinish(Actor akTarget, Actor akCaster)
    Debug.Trace("Spriggan AOE: OnEffectFinish() - caster = " + akCaster + ", target = " + akTarget + "  " +self)

IF (akTarget) && (akCaster == caster) && ((akTarget == targetREF) || (targetREF == None))
    akTarget.SetActorValue("confidence", myConfidence)            ; << 1
    akTarget.SetActorValue("aggression", myAggression)            ; << 2
    akTarget.RemoveFromFaction(sprigganFaction)
    akTarget.EvaluatePackage()
ENDIF
ENDEVENT

 

 

SprigganFXSCRIPT

 

Scriptname SprigganFXSCRIPT extends ActiveMagicEffect  
{v1.4 ReDragon 2014}    ; attaches and controls the spriggan FX behavior

  Idle         PROPERTY FFselfIdle              auto
  Spell        PROPERTY crSprigganHeal01        auto
  Spell        PROPERTY crSprigganCallCreatures auto
  VisualEffect PROPERTY SprigganFXAttachEffect  auto
 
  Actor selfRef
  Int   doOnce    ; see OnEnterBleedOut()


; -- FUNCTIONs -- 2

FUNCTION myF_Help(Int i, ObjectReference oRef)
;---------------------------------------------
IF (i == 0)
    Debug.TraceStack("SprigganFXSCRIPT: Becomes a <None> value! " + i + " for actor " +selfRef+ " " +self)
    RETURN    ; - STOP -
ENDIF
;---------------------
IF (i == 1)
    IF oRef.Is3DLoaded()                                    ; ### USKP 2.0.1 ### 3D check after waittime
        crSprigganHeal01.Cast(oRef)
    ENDIF
    selfRef.SetActorValue("Variable07", 1)
    selfRef.EvaluatePackage()
    RETURN    ; - STOP -
ENDIF
;---------------------
IF (i == 2)
    IF oRef.Is3DLoaded()                                    ; ### USKP 2.0.1 ### 3D check after waittime
        crSprigganCallCreatures.Cast(oRef, oRef)
    ENDIF
    RETURN    ; - STOP -
ENDIF
;---------------------
ENDFUNCTION


FUNCTION myF_Action(Int i)
;-------------------------
IF (!selfRef) || (!self)
    myF_Help(0, None)
    RETURN    ; - STOP -
ENDIF
;---------------------
IF (i == 2)                                            ; 2 OnCombatStateChanged()
    selfRef.playIdle(FFselfIdle)
    Utility.Wait(3.0)
    myF_Help(2, selfRef as ObjectReference)
    RETURN    ; - STOP - 2
ENDIF
;---------------------
IF (i >= 0)
    SprigganFXAttachEffect.Play(selfRef, -1)        ; 0 OnEffectStart(), ambush mode
    IF ( i == 1 )                                    ; 1 OnGetUp()
        ;SprigganFXAttachEffect.Play(selfRef, -1)
        selfRef.PlaySubGraphAnimation( "Revive" )
    ENDIF
    RETURN    ; - STOP - 0, 1
ENDIF
;---------------------
    selfRef.PlaySubGraphAnimation( "KillFX" )

IF ( i == -3 )                                        ; -3 OnEnterBleedOut()
    ;selfRef.PlaySubGraphAnimation( "KillFX" )
    int j = 2
    WHILE (j > 0)
        Utility.Wait(j as Float)                    ; first time "wait(2.0)", second time "wait(1.0)"
        IF ( selfRef )
            IF (j == 2)
                myF_Help(1, selfRef as ObjectReference)
            ELSEIF !selfRef.IsDead()    ; && (i == 1)
                selfRef.PlaySubGraphAnimation( "Revive" )
            ENDIF
        ELSE
            j = 0
        ENDIF
        j = j - 1
    ENDWHILE
    RETURN    ; - STOP -
ENDIF
;---------------------
IF ( i == -2 )                                        ; -2 OnDeath()
    ;selfRef.PlaySubGraphAnimation( "KillFX" )
    Utility.Wait(10.0)
    IF ( selfRef )
        SprigganFXAttachEffect.Stop(selfRef)
    ENDIF

;ELSEIF ( i == -1 )                                    ; -1 OnEffectStart(), sleeping
    ;selfRef.PlaySubGraphAnimation( "KillFX" )
ENDIF
ENDFUNCTION


; -- EVENTs -- 6

;===================================================
 EVENT OnEffectFinish(Actor akTarget, Actor akCaster)
;===================================================
    SprigganFXAttachEffect.Stop(selfRef)                ; DO NOT use OnUpdate() event for this !!!
ENDEVENT


;===================================================
 EVENT OnEffectStart(Actor akTarget, Actor akCaster)
;===================================================
    selfRef = akCaster

    IF (selfRef.GetSleepState() == 3)                    ; if TRUE spriggan is sleeping
        myF_Action(-1)
    ELSE
        myF_Action(0)
    ENDIF
ENDEVENT

;============================
 EVENT OnDeath(Actor myKiller)
;============================
    myF_Action(-2)    
ENDEVENT


;======================
 EVENT OnEnterBleedout()
;======================
IF ( doOnce == 0 )
    doOnce = 1
    myF_Action(-3)
ENDIF
ENDEVENT


;=========================================
 EVENT OnGetUp(ObjectReference akFurniture)
;=========================================
    myF_Action(1)
ENDEVENT


;============================================================
 EVENT OnCombatStateChanged(Actor akTarget, Int aeCombatState)
;============================================================
IF (aeCombatState == 1)
    myF_Action(2)
ENDIF
ENDEVENT

 

 

Edited by ReDragon2013
Link to comment
Share on other sites

  • Recently Browsing   0 members

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