Jump to content

Problem with SetNthEffectTraitNumeric and the game engine


GamerRick

Recommended Posts

I am trying to fix the problem where the WellRestedPerk's duration does not scale with changes to the TimeScale.

 

So, on GetGameLoaded I have this:

Set fTemp To 30.0 / TimeScale * 1440
SetNthEffectTraitNumeric WellRestedSpell 0 2 fTemp

At 12x TimeScale, the script sets the duration to 3600.

 

What I found is that it messes up the duration of the WellRestedPerk that is currently on the player when I load a savegame.

I was expecting it to only change the base object, not mess-up the remaining duration of running spells.

 

I also see the messages pop up on the screen at load saying "I am no longer well rested" followed immediately by "you are now well rested". So, there seems to be a problem where the game resets the duration of the running spell back to 1440 on loading the game files, and my resetting it back to 3600 causes it to take off again.

 

Why doesn't the running spell stop running and get removed from the player at the game-load when the message that it is no longer running appears??

 

Anyway, It shows that changing the base item will affect instances of that item, and such commands cannot be used to set the duration on spells that are already running, even it the duration were 3600 at the time the WellRestedPerk was cast on the player.

 

Since there seems to be no way to get the remaining duration of an existing spell, I have no way see what it's doing. It just makes the perk last a lot longer than 12 hours. The perk works fine if I allow the 12 hours to expire without restarting the game while it's running.

Edited by GamerRick
Link to comment
Share on other sites

  • Recently Browsing   0 members

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