Understanding primitives
#11 09-01-2016 
Thank you very much BO! That's super helpful. I've actually seen that line and it was on my list of things to ask you what it means. So if I want to make sure my code does not prevent Sims from being directed to perform an interaction, all I have to do is start it with one of those expressions, right? Set it's true to send true, and it's false to continue with the code that I wrote.

#12 09-01-2016 
Indeed: a lot of BHAVs - and especially Guardians - tend to incorporate one of these four lines to differentiate between autonomous and directed sims. So you were bound to have run into your share of them Smile I'm glad that my explanation did not confuse you too much... Big Grin

(09-01-2016 03:44 PM)gummilutt Wrote:  So if I want to make sure my code does not prevent Sims from being directed to perform an interaction, all I have to do is start it with one of those expressions, right? Set it's true to send true, and it's false to continue with the code that I wrote.

Yup, if you use one of the *last* two lines... But remember that the True target must not send "True" but "False" to exclude the autonomous sims.

#13 09-01-2016 
Okay I'm confused. Let me see if I can work out what I mean.

If I am using this one, and I want my additional code only to apply to autonomous behavior
[prim 0x0002] Expression (Param 0x0000 == Literal 0x0000)

My true target should be to continue the original code, if there is any left to be run, or if that's the end and I just want it to let the option appear, I set it to send true.
My false target should be to continue to the code that I wrote.

And if I instead of using literal value 0x0000 use 0x0001, it's the other way around. Am I following now?

#14 09-01-2016 
Woah, wait... The test that you have chosen is TRUE when you direct the sim, but FALSE if the sim is autonomous. So it looks like you want the option to ALWAYS appear for a directed sim, but run the rest of the Guardian if the sim is autonomous??? If THAT is what you're trying to do, then I think it's ok... Though I would still be careful. There is a reason why some things are made autonomous-only.

#15 09-01-2016 
Yes, I know that I have to be very careful with what I use this one for. But this is for interactions that are naturally both autonomous and user-directed, so I'm only using it in order to ensure that my changes don't end up deleting the option for Sims that don't fit my criteria.

I did apply it to two hidden interactions as well, but only to bypass a personality check for user-directed use. The rest of the original code still runs and prevents it in situations where it's not suitable, and autonomy runs the personality check as well. While I could remove the personality check, I wanted autonomy to stay exclusive to Sims the game think suited for it, and this allows me to do that Smile

#16 09-01-2016 
Well, good luck with all that, then. I've tried to be as complete and as accurate as possible, and you seem to have clearly understood what I've told you. So I think you'll be fine for this project of yours. Big Grin

#17 09-01-2016 
I thought you had gone to bed and would not see this until morning, so I removed it and replaced it with a new post since I realized I was totally wrong about pretty much everything. Sorry about that. Posting new post below.

This was the part of the post with the question
I notice that her mod has a different number in the format box under filename in the TTAB window. 0x0000004C, and the M&G one has 0x00000055. I have no idea what format means in this instance, but I notice that it's somehow tied to what's in the flag boxes. M&G one has one called 2-way? and pre-M&G has demo child instead. Any clue what that is about?
(This post was last modified: 10-01-2016 02:05 AM by gummilutt.)

#18 10-01-2016 
There are several things in the game that - sadly - I know less about than I would like. Alas, this is one of those things, The format is tied to the flags indeed; each flag sets/resets a bit in the format. But how or why different objects give different meaning to the bits - or in fact have different flags - is beyond me. That might be tied to the file version, but I couldn't say. I'm sorry.

But the spiral stairs are a complicated matter to begin with. They're very limited in their usage, because even the EAxoids didn't incorporate a lot of options. Toddlers, puppies and kittens can not even negotiate them - AT ALL! The only thing they can do, is block them by sitting down at whatever end they are at, and whailing/complaining that their path is blocked, all the while making it impossible for others to climb those same stairs in the other direction.
If Rebecah's mod is purely about those rugrats and pets negotiating stairs, then I imagine there was not much point for her to include TTABs for the spirals, because she couldn't affect them anyway.

#19 10-01-2016 
Turns out the problem was not Rebecah's mod. I should have remembered that I actually tested my fix yesterday and it worked. The problem was my new version with the autonomy check incorporated into it.

The two hidden interactions I was talking about is window washing and sliding down banisters. With window washing, adding the autonomy check was no problem. It works fine. But stair sliding is proving more difficult. No matter what I do, I can't get the expression to understand it should check autonomy.

What I'm doing is creating a primitive, and then copying the op code from another guardian bhav I found that has this check. But the end result does not remember the autonomy part. I even tried copying it and pasting, but without fail the autonomy part falls away. I don't understand why one knows it's checking autonomy, and the other doesn't, when everything looks the same. I used the same method for window washing, so it should work here too. Should, but doesn't.

Any idea what's going on?

This is from window washing, which works
[Image: Works_zpskdsjabry.jpg]

This is the stair sliding one, that refuses to grasp the autonomy part
[Image: Does%20not_zpsswxf03py.jpg]
(This post was last modified: 10-01-2016 02:07 AM by gummilutt.)

#20 10-01-2016 
Sorry for the double post, but I've kept trying to figure this out and I have more information to add.

Since window washing accepts the autonomy line, I deleted everything in it except the autonomy check. I then proceeded to re-create the stair sliding bhav from scratch, adding each line. So far so good. When it was done, I changed the group of the bhav I had just made to the stair sliding one. And immediately the "(Autonomous?)" part vanishes.

I've tried to google, and I found a random thread that mentions that line and labels. Is the word inside parenthesis just a label someone created to clarify what param 0x0000 actually does? Or is that part necessary? If it's just a label, I suppose the check is checking autonomy and the error isn't because of not understanding that line. It's definitely that line, though.
(This post was last modified: 10-01-2016 04:15 AM by gummilutt.)


Sorry, that is a members only option