Jump to content

The critter thread


Sclerocephalus

Recommended Posts

Please post the savegame in weird stuff. That's an event, and the latter lines indicate it has the new CheckFor3D code. But the other line numbers don't come close, so it looks like odd incompatibility. Are you sure you don't have some old *.pex files hanging around?

I don't exactly know what you mean by old *.pex files, but I don't think I do. Anyway, here is a link to the save that I was experiencing these errors on.

Link to comment
Share on other sites

Some mods introduce loose .pex files in the scripts folder. These ALWAYS override every other instance of the file so if that particular file is bad it will always run so it will always cause problems

Link to comment
Share on other sites

Some mods introduce loose .pex files in the scripts folder. These ALWAYS override every other instance of the file so if that particular file is bad it will always run so it will always cause problems

Thanks for the explanation. I'm pretty sure I don't have any mods that would do that. Just in case, these are the mods and the load order I use (from BOSS): http://notepad.cc/petesmods

Link to comment
Share on other sites

Thanks for the explanation. I'm pretty sure I don't have any mods that would do that. Just in case, these are the mods and the load order I use (from BOSS): http://notepad.cc/petesmods

That doesnt actually tell me anything regarding this issue. You need to go to the Skyrim Data folder and look in the scripts folder if it exists

Link to comment
Share on other sites

If those are the only mods he has, they're not going to contribute to critter problems.

Link to comment
Share on other sites

If those are the only mods he has, they're not going to contribute to critter problems.

could be from an old mod

Link to comment
Share on other sites

could be from an old mod

 

Thanks for the explanation. I'm pretty sure I don't have any mods that would do that. Just in case, these are the mods and the load order I use (from BOSS): http://notepad.cc/petesmods

Could be from an old test, because I'm always assuming testers know how to use CK, compile, and log.

 

Look into Data/Scripts -- what do you see?

Link to comment
Share on other sites

Some more critter errors (in spoiler below) with the most recent release (01/29/14) of the USKP 2.0.1 beta.

Note: this was on an existing game, so probably more "baked in data".

[01/30/2014 - 05:27:18PM] error: Cannot call getDistance() on a None object, aborting function call

stack:

[ (FF000F12)].critterMoth.OnCritterGoalReached() - "critterMoth.psc" Line ?

[ (FF000F12)].critterMoth.OnTranslationComplete() - "Critter.psc" Line 855

[01/30/2014 - 05:27:18PM] warning: Assigning None to a non-object variable named "::temp19"

stack:

[ (FF000F12)].critterMoth.OnCritterGoalReached() - "critterMoth.psc" Line ?

[ (FF000F12)].critterMoth.OnTranslationComplete() - "Critter.psc" Line 855

[...]

OK. First off, thanks for the saved game. But I ran it and literally ran around Riften inside and outside the walls with no problems.

However, with logging on, none of the critter objects your log entries show (FF000F12, FF000EAE, FF000E70, FF000DBB, FF000AC4, FF000CDD, FF000EB1) came up in the logs. Perhaps they get renumbered during loading. I got a pile of moth/butterflies killing themselves immediately during early loading and initialization:

[01/31/2014 - 12:11:59PM] Critter [critterMoth < (FF001D81)>] just killed itself.
[01/31/2014 - 12:11:59PM] InitWidgetLoader()
[01/31/2014 - 12:12:00PM] Critter [critterMoth < (FF001DD0)>] just killed itself.
[01/31/2014 - 12:12:01PM] Critter [critterMoth < (FF001B89)>] just killed itself.
[01/31/2014 - 12:12:01PM] Critter [critterMoth < (FF000BCF)>] just killed itself.
[01/31/2014 - 12:12:01PM] Critter [critterMoth < (FF000F18)>] just killed itself.
[01/31/2014 - 12:12:03PM] Critter [critterMoth < (FF000F35)>] just killed itself.
[01/31/2014 - 12:12:04PM] [SKI_ConfigMenu <SKI_ConfigMenuInstance (0D000820)>]: Registered SKY UI at MCM.

Then, new instances started with:

[01/31/2014 - 12:12:25PM] Critter [critterMoth < (FF0026A1)>] is triggering OnStart

So all those low numbered critters were stuck in the saved game a very very long time ago!

Back to your log, even without line numbers, there's only one possible getDistance in 1 of the 3 OnCritterGoalReached():

State FollowingPlayer
    Event OnCritterGoalReached()
        ; Are we too far from our spawner?
        if (!(Spawner.GetDistance(self) >= fLeashLength) && ShouldFlockAroundPlayer())
            ; Nope, flock to the player
            FlockToPlayer()

There must be a conflict with OnUpdate() killing them at the same time, and wiping out the Spawner variable. But I couldn't verify.

 

However, that piece of code should never be executed. The FollowingPlayer state isn't used anymore! ShouldFlockAroundPlayer() always returns false in vanilla 1.9:

bool Function ShouldFlockAroundPlayer()
;    if (PlayerRef.GetDistance(Spawner) > fRadius)
;        return false
;    endIf
;    return (PlayerRef.GetItemCount(IngredientType) > 0)
    return false
endFunction

Did you start this game so long ago that butterflies/moths were attracted to players?

 

Based on that speculation, I'm thinking a semi-re-architect is needed. My guess is that there's a problem with trying to delete a critter from the event that ends the movement -- OnTranslationComplete() calling OnCritterGoalReached() -- and all deletes should be sequenced by OnUpdate events. I'll work on that.

Link to comment
Share on other sites

You might want to be sure Dawnguard isn't altering these. I hadn't thought about that until you mentioned moths attracted to the player. That happens during one of the quests but I'm not sure right now if that's a custom script for it or not.

Link to comment
Share on other sites

Could be from an old test, because I'm always assuming testers know how to use CK, compile, and log.

 

Look into Data/Scripts -- what do you see?

Take a look at this image: http://postimg.org/image/x9qfdc6y3/

Those are the contents of the Data/Scripts folder in my game directory. From what I understand that directory is created as a result of installing SKSE.

If you need further information, feel free to let me know. By the way, the save file that I gave you was a game started using the USKP v. 1.3.3 (and the equivalent UPs for the DLCs), in case it matters.

 

You might want to be sure Dawnguard isn't altering these. I hadn't thought about that until you mentioned moths attracted to the player. That happens during one of the quests but I'm not sure right now if that's a custom script for it or not.

I haven't done the Dawnguard quest "Unseen Visions" (at Ancestor Glade) yet on this save.

Link to comment
Share on other sites

 Installing the CK creates it for sure. SKSE may well do it too as I have the folder but none of those *.pex files (and no SKSE).

Link to comment
Share on other sites

However, that piece of code should never be executed. The FollowingPlayer state isn't used anymore! ShouldFlockAroundPlayer() always returns false in vanilla 1.9:

Did you start this game so long ago that butterflies/moths were attracted to players?

If you need further information, feel free to let me know. By the way, the save file that I gave you was a game started using the USKP v. 1.3.3 (and the equivalent UPs for the DLCs), in case it matters.

 

I haven't done the Dawnguard quest "Unseen Visions" (at Ancestor Glade) yet on this save.

OK. USKP 1.3.3 doesn't touch critterMoth, it is vanilla.

I just checked vanilla 1.8 Source, and it is identical to vanilla 1.9 Source for critterMoth.

Therefore, I conclude that the vanilla Source doesn't match the .pex for critterMoth. There is no possible way for the moths to follow the player (it is always false) in the Source.

As to Dawnguard, there is a critterMoth Source file. It is identical to vanilla 1.9 Source. However, there is no critterMoth.pex in the bsa.

We are screwed. Somebody needs to figure out how "Unseen Visions" works.

In the meantime, I've split the few OnCritterGoalReached() into an OnUpdate() part, so that only OnUpdate() coordinates all deletes. It seems to work. I've also looked at (and replied to) the reports over on Bethesda forums. Here is a bsa+esp with all the known fixes. I'll address another problem in the next message....

 

[old code removed]

Link to comment
Share on other sites

fTakeOff versus TakeOff

When I swap back to fTakeOff -- now the Butter/Moths flap wings again. There are no warning logs.

However, in critterBird:

FUNCTION takeFlight()
	;trace(self + " is taking flight")
	playAnimationAndWait("takeOff","end")
	sState = "inFlight"
	SplinetranslateTo(self.X, self.Y, self.Z + 64, 0, 0, self.getAngleZ(), 50, fSpeed/2)
endFUNCTION

Is it possible that moths need fTakeOff and birds need takeOff?

What about dragonflies and fireflies?

UPDATE: Sclero seems to be looking at birds in http://www.afkmods.com/index.php?/tracdown/issue/13907-crittermoth-ff000cce-cannot-find-variable-named-ftakeoff/ -- it has PeckState and GrndState and others that are only for birds.

But that report is an error for Moths and fTakeOff. We also have new reports for Moths and TakeOff. I'm not seeing either of them.

UPDATE: I can switch between at will. I'm not seeing any errors/warnings.

Dragonflies and Fireflies flap no matter which is used.

Butterfly/moths only flap with fTakeOff.

Link to comment
Share on other sites

I don't actually recall how the information was found to determine the variable name. Only that we did have bug reports in the tracker clearly pointing to fTakeOff being invalid.

 

Bug #14591 and Bug #13907 come up when searching Tracdown for "fTakeOff". Triggered for Firefly and CritterMoth.

Link to comment
Share on other sites

I don't actually recall how the information was found to determine the variable name. Only that we did have bug reports in the tracker clearly pointing to fTakeOff being invalid.

 

Bug #14591 and Bug #13907 come up when searching Tracdown for "fTakeOff". Triggered for Firefly and CritterMoth.

Yes, I found those. And Sclero was wrong, wasn't even looking at the correct animation. TakeOff is an event name for birds, along with startAirFlap and *Grnd* (ground) and *Peck* -- not an animation variable for FireFly or CritterMoth.

<hkparam name="eventNames" numelements="22">

Look more carefully:

<hkparam name="variableNames" numelements="0"></hkparam>

No variable names.

 

I think those reports are invalid. In fact, fireflies aren't affected by either variable name. They just keep flying.

 

My guess is they didn't work because of timing issues, trying to set a variable at the wrong time.

 

Somebody else had fixed a bunch of such cases by having them all RegisterForUpdate(0.0) and then handle the next translate in the OnUpdate() event. I've fixed the remainder to do the same thing. Everything is serialized through the update queue. I expect all these conflicts to go away.

 

I could be wrong. So, I've updated my code to overload the function name only in critterMoth, and set fTakeOff there. Works for me.

 

I'll post it soon. I'm testing the change for clearing followers (fish-only) discussed over on the BSW USKP forum. Too many forums, too little time.

Link to comment
Share on other sites

Well, you can say the reports are invalid, but they had the logs to back them up and changing the variable name silenced the issue. I don't know how much more concrete than that you want. It's not a bogus issue.

Link to comment
Share on other sites

My guess is they didn't work because of timing issues, trying to set a variable at the wrong time.

Well, you can say the reports are invalid, but they had the logs to back them up and changing the variable name silenced the issue. I don't know how much more concrete than that you want. It's not a bogus issue.

Please look at them again. The error was in the middle of a block of errors, the top lines of which were:

[10/10/2013 - 11:02:23AM] error:  (FF000CCE): has no 3d, and so cannot have its motion type changed.
stack:
    [ (FF000CCE)].critterMoth.SetMotionType() - "<native>" Line ?
    [ (FF000CCE)].critterMoth.BellShapeTranslateToRefAtSpeed() - "Critter.psc" Line 562

[10/10/2013 - 11:02:23AM] error:  (FF000CCE): cannot find variable named fTakeOff.
stack:
    [ (FF000CCE)].critterMoth.SetAnimationVariableFloat() - "<native>" Line ?
    [ (FF000CCE)].critterMoth.DoPathStartStuff() - "Critter.psc" Line 789
    [ (FF000CCE)].critterMoth.BellShapeTranslateToRefAtSpeed() - "Critter.psc" Line 565

[10/10/2013 - 11:02:23AM] error:  (FF000CEE): does not have any 3d and so cannot be moved to.
stack:
    [ (FF000CFF)].ObjectReference.MoveToNode() - "<native>" Line ?
    [ (FF000CCE)].critterMoth.PlaceDummyMarker() - "Critter.psc" Line 355
    [ (FF000CCE)].critterMoth.BellShapeTranslateToRefAtSpeed() - "Critter.psc" Line 579

[10/10/2013 - 11:02:23AM] error: Failed to setup moving reference because it has no parent cell or no 3D
stack:
    [ (FF000CCE)].critterMoth.SplineTranslateTo() - "<native>" Line ?
    [ (FF000CCE)].critterMoth.BellShapeTranslateToRefAtSpeed() - "Critter.psc" Line 612

You certainly aren't arguing that Moths cannot have 3D. I've fixed those issues. Fixing 3D fixed the variable name issue, too.

 

Butterfly/Moths simply won't flap without fTakeOff.

Link to comment
Share on other sites

Critter source final, as the other threads haven't come up with anything new.

 

Minor change to Critter for clearing followers (fish-only) discussed over on the BSW USKP forum.

 

Trivial change to CritterMoth for fTakeOff. All others will call a common null function, where I've commented out the original.

Critter test 6 Source final.zip

Link to comment
Share on other sites

how was the error log looking? manage to crush most?

Most everywhere was fine waiting 5 seconds for 3D, but every once in awhile something would bleat, so pushed to 8 seconds. No logs since then. Including testing Pete's Level 84.

 

For the first time, I've even seen the moths come out at night and the butterflies go "home" and fade away....

Link to comment
Share on other sites

Sounds almost like how I stepped out into the forest and saw sabre cats for the first time in ages after we put 2.0 out and they started respawning again :)

Link to comment
Share on other sites

I received these errors while playing the game [i'm using the 2.0.1 versions of all U**Ps]:

02/09/2014 - 01:20:20AM] error: Cannot call X() on a None object, aborting function call
stack:
    [ (FF002AB2)].critterMoth.BellShapeTranslateToRefAtSpeed() - "Critter.psc" Line 742
    [ (FF002AB2)].critterMoth.BellShapeTranslateToRefAtSpeedAndGotoState() - "Critter.psc" Line 797
    [ (FF002AB2)].critterMoth.GoToNewPlant() - "CritterMoth.psc" Line 297
    [ (FF002AB2)].critterMoth.OnUpdate() - "CritterMoth.psc" Line 130
[02/09/2014 - 01:20:20AM] warning: Assigning None to a non-object variable named "::temp60"
stack:
    [ (FF002AB2)].critterMoth.BellShapeTranslateToRefAtSpeed() - "Critter.psc" Line 742
    [ (FF002AB2)].critterMoth.BellShapeTranslateToRefAtSpeedAndGotoState() - "Critter.psc" Line 797
    [ (FF002AB2)].critterMoth.GoToNewPlant() - "CritterMoth.psc" Line 297
    [ (FF002AB2)].critterMoth.OnUpdate() - "CritterMoth.psc" Line 130
[02/09/2014 - 01:20:20AM] error: Cannot call Y() on a None object, aborting function call
stack:
    [ (FF002AB2)].critterMoth.BellShapeTranslateToRefAtSpeed() - "Critter.psc" Line 743
    [ (FF002AB2)].critterMoth.BellShapeTranslateToRefAtSpeedAndGotoState() - "Critter.psc" Line 797
    [ (FF002AB2)].critterMoth.GoToNewPlant() - "CritterMoth.psc" Line 297
    [ (FF002AB2)].critterMoth.OnUpdate() - "CritterMoth.psc" Line 130
[02/09/2014 - 01:20:20AM] warning: Assigning None to a non-object variable named "::temp60"
stack:
    [ (FF002AB2)].critterMoth.BellShapeTranslateToRefAtSpeed() - "Critter.psc" Line 743
    [ (FF002AB2)].critterMoth.BellShapeTranslateToRefAtSpeedAndGotoState() - "Critter.psc" Line 797
    [ (FF002AB2)].critterMoth.GoToNewPlant() - "CritterMoth.psc" Line 297
    [ (FF002AB2)].critterMoth.OnUpdate() - "CritterMoth.psc" Line 130
[02/09/2014 - 01:20:20AM] error: Cannot call Z() on a None object, aborting function call
stack:
    [ (FF002AB2)].critterMoth.BellShapeTranslateToRefAtSpeed() - "Critter.psc" Line 744
    [ (FF002AB2)].critterMoth.BellShapeTranslateToRefAtSpeedAndGotoState() - "Critter.psc" Line 797
    [ (FF002AB2)].critterMoth.GoToNewPlant() - "CritterMoth.psc" Line 297
    [ (FF002AB2)].critterMoth.OnUpdate() - "CritterMoth.psc" Line 130
[02/09/2014 - 01:20:20AM] warning: Assigning None to a non-object variable named "::temp60"
stack:
    [ (FF002AB2)].critterMoth.BellShapeTranslateToRefAtSpeed() - "Critter.psc" Line 744
    [ (FF002AB2)].critterMoth.BellShapeTranslateToRefAtSpeedAndGotoState() - "Critter.psc" Line 797
    [ (FF002AB2)].critterMoth.GoToNewPlant() - "CritterMoth.psc" Line 297
    [ (FF002AB2)].critterMoth.OnUpdate() - "CritterMoth.psc" Line 130
[02/09/2014 - 01:20:20AM] error: Cannot call X() on a None object, aborting function call
stack:
    [ (FF002AB2)].critterMoth.BellShapeTranslateToRefAtSpeed() - "Critter.psc" Line 745
    [ (FF002AB2)].critterMoth.BellShapeTranslateToRefAtSpeedAndGotoState() - "Critter.psc" Line 797
    [ (FF002AB2)].critterMoth.GoToNewPlant() - "CritterMoth.psc" Line 297
    [ (FF002AB2)].critterMoth.OnUpdate() - "CritterMoth.psc" Line 130
[02/09/2014 - 01:20:20AM] warning: Assigning None to a non-object variable named "::temp60"
stack:
    [ (FF002AB2)].critterMoth.BellShapeTranslateToRefAtSpeed() - "Critter.psc" Line 745
    [ (FF002AB2)].critterMoth.BellShapeTranslateToRefAtSpeedAndGotoState() - "Critter.psc" Line 797
    [ (FF002AB2)].critterMoth.GoToNewPlant() - "CritterMoth.psc" Line 297
    [ (FF002AB2)].critterMoth.OnUpdate() - "CritterMoth.psc" Line 130
[02/09/2014 - 01:20:20AM] error: Cannot call Y() on a None object, aborting function call
stack:
    [ (FF002AB2)].critterMoth.BellShapeTranslateToRefAtSpeed() - "Critter.psc" Line 746
    [ (FF002AB2)].critterMoth.BellShapeTranslateToRefAtSpeedAndGotoState() - "Critter.psc" Line 797
    [ (FF002AB2)].critterMoth.GoToNewPlant() - "CritterMoth.psc" Line 297
    [ (FF002AB2)].critterMoth.OnUpdate() - "CritterMoth.psc" Line 130
[02/09/2014 - 01:20:20AM] warning: Assigning None to a non-object variable named "::temp60"
stack:
    [ (FF002AB2)].critterMoth.BellShapeTranslateToRefAtSpeed() - "Critter.psc" Line 746
    [ (FF002AB2)].critterMoth.BellShapeTranslateToRefAtSpeedAndGotoState() - "Critter.psc" Line 797
    [ (FF002AB2)].critterMoth.GoToNewPlant() - "CritterMoth.psc" Line 297
    [ (FF002AB2)].critterMoth.OnUpdate() - "CritterMoth.psc" Line 130
[02/09/2014 - 01:20:20AM] error: Cannot call Z() on a None object, aborting function call
stack:
    [ (FF002AB2)].critterMoth.BellShapeTranslateToRefAtSpeed() - "Critter.psc" Line 747
    [ (FF002AB2)].critterMoth.BellShapeTranslateToRefAtSpeedAndGotoState() - "Critter.psc" Line 797
    [ (FF002AB2)].critterMoth.GoToNewPlant() - "CritterMoth.psc" Line 297
    [ (FF002AB2)].critterMoth.OnUpdate() - "CritterMoth.psc" Line 130
[02/09/2014 - 01:20:20AM] warning: Assigning None to a non-object variable named "::temp60"
stack:
    [ (FF002AB2)].critterMoth.BellShapeTranslateToRefAtSpeed() - "Critter.psc" Line 747
    [ (FF002AB2)].critterMoth.BellShapeTranslateToRefAtSpeedAndGotoState() - "Critter.psc" Line 797
    [ (FF002AB2)].critterMoth.GoToNewPlant() - "CritterMoth.psc" Line 297
    [ (FF002AB2)].critterMoth.OnUpdate() - "CritterMoth.psc" Line 130
[02/09/2014 - 01:20:20AM] error: Cannot call GetAngleX() on a None object, aborting function call
stack:
    [ (FF002AB2)].critterMoth.BellShapeTranslateToRefAtSpeed() - "Critter.psc" Line 748
    [ (FF002AB2)].critterMoth.BellShapeTranslateToRefAtSpeedAndGotoState() - "Critter.psc" Line 797
    [ (FF002AB2)].critterMoth.GoToNewPlant() - "CritterMoth.psc" Line 297
    [ (FF002AB2)].critterMoth.OnUpdate() - "CritterMoth.psc" Line 130
[02/09/2014 - 01:20:20AM] warning: Assigning None to a non-object variable named "::temp60"
stack:
    [ (FF002AB2)].critterMoth.BellShapeTranslateToRefAtSpeed() - "Critter.psc" Line 748
    [ (FF002AB2)].critterMoth.BellShapeTranslateToRefAtSpeedAndGotoState() - "Critter.psc" Line 797
    [ (FF002AB2)].critterMoth.GoToNewPlant() - "CritterMoth.psc" Line 297
    [ (FF002AB2)].critterMoth.OnUpdate() - "CritterMoth.psc" Line 130
[02/09/2014 - 01:20:20AM] error: Cannot call GetAngleY() on a None object, aborting function call
stack:
    [ (FF002AB2)].critterMoth.BellShapeTranslateToRefAtSpeed() - "Critter.psc" Line 749
    [ (FF002AB2)].critterMoth.BellShapeTranslateToRefAtSpeedAndGotoState() - "Critter.psc" Line 797
    [ (FF002AB2)].critterMoth.GoToNewPlant() - "CritterMoth.psc" Line 297
    [ (FF002AB2)].critterMoth.OnUpdate() - "CritterMoth.psc" Line 130
[02/09/2014 - 01:20:20AM] warning: Assigning None to a non-object variable named "::temp60"
stack:
    [ (FF002AB2)].critterMoth.BellShapeTranslateToRefAtSpeed() - "Critter.psc" Line 749
    [ (FF002AB2)].critterMoth.BellShapeTranslateToRefAtSpeedAndGotoState() - "Critter.psc" Line 797
    [ (FF002AB2)].critterMoth.GoToNewPlant() - "CritterMoth.psc" Line 297
    [ (FF002AB2)].critterMoth.OnUpdate() - "CritterMoth.psc" Line 130
[02/09/2014 - 01:20:20AM] error: Cannot call GetAngleZ() on a None object, aborting function call
stack:
    [ (FF002AB2)].critterMoth.BellShapeTranslateToRefAtSpeed() - "Critter.psc" Line 750
    [ (FF002AB2)].critterMoth.BellShapeTranslateToRefAtSpeedAndGotoState() - "Critter.psc" Line 797
    [ (FF002AB2)].critterMoth.GoToNewPlant() - "CritterMoth.psc" Line 297
    [ (FF002AB2)].critterMoth.OnUpdate() - "CritterMoth.psc" Line 130
[02/09/2014 - 01:20:20AM] warning: Assigning None to a non-object variable named "::temp60"
stack:
    [ (FF002AB2)].critterMoth.BellShapeTranslateToRefAtSpeed() - "Critter.psc" Line 750
    [ (FF002AB2)].critterMoth.BellShapeTranslateToRefAtSpeedAndGotoState() - "Critter.psc" Line 797
    [ (FF002AB2)].critterMoth.GoToNewPlant() - "CritterMoth.psc" Line 297
    [ (FF002AB2)].critterMoth.OnUpdate() - "CritterMoth.psc" Line 130

 

This was on an existing game, in case it matters. If these errors need a tracker issue, please let me know.

Link to comment
Share on other sites

I received these errors while playing the game [i'm using the 2.0.1 versions of all U**Ps]:

02/09/2014 - 01:20:20AM] error: Cannot call X() on a None object, aborting function call

stack:

    [ (FF002AB2)].critterMoth.BellShapeTranslateToRefAtSpeed() - "Critter.psc" Line 742

    [ (FF002AB2)].critterMoth.BellShapeTranslateToRefAtSpeedAndGotoState() - "Critter.psc" Line 797

    [ (FF002AB2)].critterMoth.GoToNewPlant() - "CritterMoth.psc" Line 297

    [ (FF002AB2)].critterMoth.OnUpdate() - "CritterMoth.psc" Line 130

...

 

This was on an existing game, in case it matters. If these errors need a tracker issue, please let me know.

Man on man, this is a conundrum.... That None failure is immediately after the new test to ensure the marker is valid:

; Place a dummy marker to store the position / orientation
if PlaceDummyMarker(landingMarker, ApproachNodeName)
    ; extra safeguard here - STEVE40
    return
endif

; Use the X,Y and Z of the dummy marker
fBellShapeStartLandingPointX = dummyMarker.X

So what bloody more can we test? It wasn't None on the line before!!!

 

My guess is this won't happen too often. Serializing all movement and deletions through the OnUpdate should have prevented this problem. But maybe the calculations are taking so bloody long that they get paused by the scheduler for taking too much time. Remember, the scheduler counts all time spent in Critter, even though there are dozens of critters accessing the same common code: http://www.creationkit.com/Threading_Notes_%28Papyrus%29 -- they all slow down together.

 

The next step is streamlining calculations. I can see some variables get made that are only used once, etc.

 

If it does happen a lot, a complete re-design needs to be done.

Link to comment
Share on other sites

This was on an existing game, in case it matters.

 

Existing for how long though - started with which U**P? Baked-in scripts perhaps?

My current game was only started on Feb 1st with the 2.0.1 beta made available on the same day. I'm no longer seeing those errors (but it's early days yet).

Link to comment
Share on other sites

Existing for how long though - started with which U**P? Baked-in scripts perhaps?

My current game was only started on Feb 1st with the 2.0.1 beta made available on the same day. I'm no longer seeing those errors (but it's early days yet).

I started that particular game in early October 13'. That was before the release of 2.0.0, so it would have been USKP 1.3.3 (and the DLC equivalents). It could very well be baked in data, but strangely I have never seen the X(), Y(), Z() stuff in the errors before, which leads me to believe it may be new.

 

Also, I am still getting these "warnings" (see this post here) in my log every so often, which Arthmoor said was the result of baked-in data.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...