Jump to content
Sign in to follow this  
Benny Moore

Any group member not present

Recommended Posts

I have a trigger, grouped to an infantry group, all of whom have "moveindriver" or "moveingunner" or "moveincargo" into a boat. This trigger is activated by "any group member" and "not present," and has a radius. It is of type "mission end."

The problem is, it doesn't work. When either the boat or any of the group members on foot leave the radius, nothing happens. And there is no reason why it should not. I tried making it activated by "vehicle," but this brought up additional problems. Firstly, only the player triggered it then, and secondly, the mission started randomly ending even when the entire group was many hundreds of meters inside the radius.

All variables have been listed. Make sense of it if you can. And please help me! I've spent about four hours on this, not counting the twenty minutes I've wasted searching here. I don't know why this is happening. I can provide a mission file if it is necessary.

Share this post


Link to post
Share on other sites

i haven't tested this yet, but I think if you named the boat to boat01 and then made it to when boat01 wasn't present it would work. I'm assuming the boat and all its crew is in the water, and since OPFP waters are infested with piranhas, there wouldn't be a case of one of the soldiers getting out of the radius without the boat getting out of the radius too. So its safe to say the entirety of the group will be with the boat throughout the mission(at least the part relevant to the group exiting the trigger radius). Therefore you can just substitute the group with only one of them, or as I suggested above, the boat. Next time I load up opfp I'll test this out myself, until then gl

Share this post


Link to post
Share on other sites

Thanks; I'm trying to make the same trigger for the mission boundary work both while the troops are afloat and after they've become landlubbers. But I think I'll have to do it your way, since the trigger apparently doesn't do what it says it does.

There's an additional problem! For whatever reason (is scripting always this nonsensical or have I gone through my virtual looking glass?), whenever one of the boats gets blasted by the shore defenses, it considers it "not present," even though it's still present but dead. I'm going to probably have to either put "and alive boatone"'s all over the place, or make a trigger that activates only after the boats land, or something. How tiresome!

Oh no, it just got worse. A boat only fits eight men (including crew), so I had to split some groups into different boats. Now I can't just tell that group's trigger to only affect "boatone," because some of that group is in "boatsix." Now what do I do?

I've been banging my head against this wall for about twelve hours now. I'm too tired, and too thick, to figure this out. Perhaps in the morning some genius will have come along and taken an interest in my plight.

Share this post


Link to post
Share on other sites

The original problem I have figured out. It was that, although the conditions were "any group member" "not present," what it actually meant was "not any group member present." That simple misplaced "not," due almost certainly to language barrier, completely changed the meaning. So remember to mentally throw the "not" in "not present" in front of the other modifier. So if you want "any group member not present," you actually have to choose "whole group not present," and it will think you mean "not whole group present" and act accordingly.

But, my new problem is downright ridiculous. I've simplified the circumstances; there's a trigger activated by "whole group" and "present," which on activation "A = true," grouped to the infantry group. There's another trigger which is exactly the same only on activation, "B = true." There's a third trigger with the condition "not A and not B" that's supposed to end the mission.

Problem is, it doesn't. This is a very, very simple and basic trigger. Why does it not work? I've tried "(not A) and (not B)," "not (A and B)," "!A and !B," "!(A and B)," and many other configurations. My dad is a computer programmer, although not a game programmer, and he couldn't figure it out. I'm convinced that this is another bizarre Czech language barrier thing. My total time wasted on this stupid problem is nearing eighteen hours. Can't someone figure out how to fix this very basic problem?

Share this post


Link to post
Share on other sites

yah opfp uses wild C++. It hurts my head sometimes.

Anyway, I think there's a way you can tell opfp that if !A And !B then C or something, then make that next trigger go off when C is true. However, if the two first triggers are teh same, then why do you need B = true anyway? gl

Share this post


Link to post
Share on other sites
But, my new problem is downright ridiculous. I've simplified the circumstances; there's a trigger activated by "whole group" and "present," which on activation "A = true," grouped to the infantry group. There's another trigger which is exactly the same only on activation, "B = true." There's a third trigger with the condition "not A and not B" that's supposed to end the mission.

First of all - why need two triggers? Can't you just use "Activation by whole group" and "Not present" grouped with the group to check whether one member leaves the area?

Also, you need to initialize A and B with "false" in some init line or the init.sqs. Else they are not defined.

Share this post


Link to post
Share on other sites
Quote[/b] ]But, my new problem is downright ridiculous. I've simplified the circumstances; there's a trigger activated by "whole group" and "present," which on activation "A = true," grouped to the infantry group. There's another trigger which is exactly the same only on activation, "B = true." There's a third trigger with the condition "not A and not B" that's supposed to end the mission.

Problem is, it doesn't. This is a very, very simple and basic trigger. Why does it not work? I've tried "(not A) and (not B)," "not (A and B)," "!A and !B," "!(A and B)," and many other configurations. My dad is a computer programmer, although not a game programmer, and he couldn't figure it out. I'm convinced that this is another bizarre Czech language barrier thing. My total time wasted on this stupid problem is nearing eighteen hours. Can't someone figure out how to fix this very basic problem?

Well, by your settings of the triggers it would be like that:

Trigger 1 - whole group present - A=true

this means that A=true, once the whole group is inside the

trigger area - A will not become false afterwards. If your

group is from beginning inside the trigger area, A will be true

from beginning and remain true.

Trigger 2 - whole group present - B=true

same goes here as above for Trigger 1

Trigger 3 - not A AND not B

this trigger should end the mission - right?

OK, by your setup for Trigger 3 i can see that Trigger 1 or

Trigger 2 (at least one of them) should be true right from

beginning of the mission - else the mission would end straight

from start.

btw - Hardrock - booleans don't need to be initialized as they

are not true by default if not initialized, until they become

true - numeric variables need to be initialized, but booleans

not.

back to you Benny Moore:

If your intension was that A or B become false once the whole

group leaves the trigger's area, then you need to do this by

ondeactivation field of the trigger: A=false (or B=false).

~S~ CD

Share this post


Link to post
Share on other sites
btw - Hardrock - booleans don't need to be initialized as they

are not true by default if not initialized, until they become

true - numeric variables need to be initialized, but booleans

not.

No, booleans should indeed be initialized aswell. If you don't do that, strange errors might occur on the one or other place which could have been avoided by initializing the booleans. I saw this happening a couple of times.

Share this post


Link to post
Share on other sites

Nah Hardrock, as long as a condition would require a boolean

to become true, it's not necessary to initialize the boolean.

It's false until it becomes true - error messie's comming up

in case of raping a boolean by using it as numeric or vice versa.

But while replying i remember that Benny starts with condition:

not A/B - in that case sure it'd be better to initialize it, as a

condition waiting for something to be false that doesn't exist

(not initialized but should be true) can be a mismatch. wink_o.gif

But however - the boolean not to initialize answer was more

meant in general and for typical use of a boolean:

condition wait for boolean - boolean come true - condition is met.

Benny Moore - your way of using the boolean from the other

side would waste resources by setting a boolean to true

before it's needed - it may sound minimal for now, but once

you're going for more complex stuff this could come in a matter. wink_o.gif

Try it the other way around and make them true after event

and let the condition wait for existence of boolean (=true).

~S~ CD

Share this post


Link to post
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
Sign in to follow this  

×