Jump to content

Papyrus Log Error and Asis Help


Dungeonfighter123

Recommended Posts

My log is just this:

WeaponRackActivateScript.OnActivate() - "WeaponRackActivateScript.psc

 

I mean it spams the hell out of it. Most everything is just that. I checked my scripts and I don't even have that psc file. Maybe that is the issue.

Link to comment
Share on other sites

 

I checked my scripts and I don't even have that psc file. Maybe that is the issue.

 

You do have it, but it's part of the Hearthfires.bsa package and gets dynamically extracted at run-time. (BSA = Bethesda Softworks Archive)

 

On another note, this logspam has nothing to do with the CTDs I was getting in the Soul Cairn. Those were being caused by a world map tweak I had made to skyrim.ini...once I removed the two offending entries, I've been able to play that level with no issues.

 

FYI, these are the entries I deleted:

 

uLockedObjectMapLOD=8

uLockedTerrainLOD=8

Link to comment
Share on other sites

  • 2 weeks later...

You're misinterpreting the logs.

 

Taking the following message block as an example, I will try to explain it in more detail:

 

[None].SilverSwordScript.Is3DLoaded() - "<native>" Line ?
[ (03016ADB)].WeaponRackActivateScript.PlaceItem() - "WeaponRackActivateSCRIPT.psc" Line 268
[ (03016ADB)].WeaponRackActivateScript.HandlePlayerItem() - "<savegame>" Line ?
[ (03016ADB)].WeaponRackActivateScript.RunPlayerActivation() - "WeaponRackActivateSCRIPT.psc" Line 188
[ (03016ADB)].WeaponRackActivateScript.OnActivate() - "WeaponRackActivateSCRIPT.psc" Line 84

 

In every line, the reference is that of the object that runs the script. Next is the name of the object. Since scripts extend object references, a scripted object and the script running on it are logically the same, so the logs will list the objects by their script name. Thus, "[(03016ADB)].WeaponRackActivateScript" is a weapon rack activator object (it runs WeaponRackActivateScript and its reference is 03016ADB, presumably a Hearthfires rack).

What stands next is the command that was logged. The message blocks have to be read from the bottom up to trace the error chronologically: first, the script handled an OnActivate() event (lowest line). From within the event block, it called the RunPlayerActivation() function (second lowest line). From this function, it called the HandlePlayerItem() function (third line; note that this function was restored from the save, which might indicate that the mod which holds the scripts was temporarily disabled, but there also are other explanations). From the HandlePlayerItem() function, it called the PlaceItem() function (second line), and then the error occurred.

 

The actual error is always logged in the top line, and this line is conspicuous, because there is no object listed that runs the script! What happened here is that the engine lost the reference of the object and is now unable to proceed (no surprise is that ...). Simply speaking, there is a loose script instance running that is not attached to anything.

 

There only are two possible reasons for this phenomenon:

(1) The engine is temporarily overcharged with scripting tasks. This may happen when a cell is loaded to the brim with scripted objects (especially weapon racks, because the scripts on them will all start running at the same time).

(2) An invalid tweak in Skyrim.ini. Read this for example:

http://www.creationkit.com/INI_Settings_%28Papyrus%29#iMaxAllocatedMemoryBytes

Link to comment
Share on other sites

  • Recently Browsing   0 members

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