View Single Post
Paragon
Senior Member
 
Join Date: Feb 2010
Posts: 874

Old April 20th, 2017, 08:24 AM
Quote:
Originally Posted by SeeleyOne View Post
And here I thought they were pretty obvious

"Attempt to access non-existent containing entity from script
Location: 'eval' script for Component 'Advance' (Eval Script 'Accrue Advances') near line 3

This means that the eval script, 'Accrue Advances', is trying to look at something on line 3. That something does not exist when the eval script is being looked at. Advances probably have a narrow window of timing.
I actually figured that one out; I just couldn't find where said eval script is so I couldn't conclude what it was looking for.

Quote:
- - -
Attempt to access non-existent containing entity from script
Location: 'eval' script for Component 'Advance' (Eval Script '#6') near line 11

The Eval Script #6 (how many are in that advance?) is trying to look at something on line 11 that does not exist at that time.
There's only one eval script (the one that resets the skill points properly) so that makes no sense. I'm assuming its actually in the eval scripts for handling advances, but see my note above.

Quote:


- - -
Attempt to access non-existent containing entity from script
Location: 'eval' script for Component 'Advance' (Eval Script '#6') near line 16"

Eval Script #6 is trying to do something that does not exist yet around line 16.
Again, must be somewhere elsewhere in the code.

Quote:
Either a) the timings and phases are out of sync with when an Advance is looked at, b) Advances cannot have eval scripts, or c) both a and b. I am guessing c. This is why I have been recommending that you should use a mechanic to look at the Advance and run the eval script. Then, since you did not seem to like that idea, I recommended an Edge. But really, for this a mechanic is the best. I showed how you can look for an advance in an earlier post.
I did. It didn't actually seem to help enormously. I perhaps should revisit the mechanic idea, though. Its just a weirdly backward way to do it.

As I said, the odd thing is that the simple advance I listed above doesn't trigger any kind of basic error in loading the .user file, just the errors with running (and notably, it seems to do what its supposed to do even though it throws the errors). However any attempt to integrate it with an extent Advance (say, the new skill advance) throws a variety of different errors depending on where its positioned. I'd actually been speculating on your a) but concluded I didn't have any way to figure out what the timing problems were.

Before I approach the mechanic end of that, I'm assuming what you're suggesting is to have an Advance that doesn't really do anything other than use up an Advance point, then have a Mechanic with an eval script that if it sees that Advance in place, does the actual work (i.e. bootstraps the two Knowledges, and corrects the skill point thing)? Is there liable to be a problem with it trying to do so every time you open the program (i.e. propagating new Knowledges all the time)? I imagine the timing on it may be a little fussy.
Paragon is offline   #42 Reply With Quote