Hi. This is my first post, and I consider myself a fairly decent mapper. It's those darned Triggers though, they're out to get me. Moving onto my point though.
I have a map, in which every time an Observer is brought to a location while two switches aren't set, then they will cause an arbiter to cast Recall on another location. This part is fine. However, when the two switches activate, those observers aren't supposed to cause the recall anymore, but they do.
I'm sorry if I've explained this poorly. If you need it, I'll post my triggers to aid resolution to this problem.
We need more details. There could plenty of things you're doing wrong.
-Not Setting the Switch
-Using the wrong Switch
-Forgot Switches in conditions
-Another trigger clearing the Switches
Hmmmm, are you sure that the right switches set, or that the switches even set at all?
Okie dokie. By all accounts, the trigger should work. The switches are in the conditions, the switches are set at the right times, and the correct switches are beign used. I'm thinking it might be my use of the Preserve Trigger function in the first trigger. Since I can't find a working Trigger to Text compiler, I can't show you them immediately. I'll work on that.
Do you have SCMDraft 2 or StarForge, they can show it correctly within the Strings and such.
Problem may lie in the fact that, from the beginning of a map all Switches are instantly CLEARED, therefore if you've done it that way, and you Clear it when the Observer is there, it will still work without it, either swap them around, or else make an Always Trigger that sets the switches at the beginning.
Otherwise your triggers are messed up...
Yeah, you should almost always be using set as an activator, not cleared. Copy+Paste your triggers and we can help you in a lot more detailed way.
If you've got preserve trigger and you don't move the observers from that location the trigger will continue to fire. THat could be the problem.
Just use a switch.
When you want the trigger to run enable the switch.
When you want the trigger to stop disable the switch.
YOu will need 3 different triggers(2 for the switch enable/disable and the other one is the actuall trigger with the actions)
Mmmkay, I got a copy of my triggers. Since the problem lies in a Cutscene mission, I've cut out all the Order and Transmission commands, just to save space in my post. Also, I only got the triggers in which a trigger was the subject of discussion.
Player - Fleet of the Executor
CONDITIONS:
- 'Knock Yourself Out' is set.
ACTIONS:
- Lots of stuff you don't need to know
- Set 'First Sacrifice'.
CONDITIONS:
- 'First Sacrifice' is set.
ACTIONS:
- More stuff that doesn't affect anything
- Set 'Second Sacrifice'.
Player - Cutscene Crew
CONDITIONS:
- Player 3 brings at least 1 Power Current to 'Lower Capacitor'.
- 'First Sacrifice' is Set.
ACTIONS:
- Move all Power Current for Player 3 at 'Lower Capacitor' to 'Observers Chillin''.
- Preserve Trigger.
CONDITIONS:
- 'First Sacrifice' is set.
ACTIONS:
- (A bunch of Move Unit and Order commands)
Set 'Maximum Power Flow Achieved (L).
CONDITIONS:
- 'Second Sacrifice' is set.
ACTIONS:
- (A bunch of Move Unit and Order commands)
- Set 'Maximum Power Flow Achieved ®.
CONDITIONS:
- Player 3 brings at least 1 Power Current to 'Activate Nexus Effect'.
- 'Maximum Power Flow Achieved (L)' is cleared.
- 'Maximum Power Flow Achieved ®' is cleared.
ACTIONS:
- Execute AI script 'Cast Recall' at 'Xel Naga Nexus'
- Preserve Trigger.
CONDITIONS:
- 'Maximum Power Flow Achieved (L)' is set.
- 'Maximum Power Flow Achieved ®' is set.
- 'Power Surge' is cleared.
ACTIONS:
- Execute AI script 'Cast Recall' at 'Xel Naga Nexus'.
- Wait for 1000 milliseconds.
- Execute AI script 'Cast Recall' at 'Xel Naga Nexus'.
- Wait for 1000 milliseconds.
- Preserve trigger.
The goal of this triger was to change the Recall casting from sporadic (When the Observers/Power Current reach the Lower Capacitor), to constant. So there's the facts.
QUOTE
QUOTE
CONDITIONS:
- 'First Sacrifice' is set.
ACTIONS:
- More stuff that doesn't affect anything
- Set 'Second Sacrifice'.
QUOTE
CONDITIONS:
- 'Second Sacrifice' is set.
ACTIONS:
- (A bunch of Move Unit and Order commands)
- Set 'Maximum Power Flow Achieved ®.
Your first trigger there could just include the actions of the second trigger, it's pointless to make two triggers. This shouldn't really cause any problems but it's something to think about.
There aren't any triggers clearing the Maximum Power Flow achieved switches, so that trig will keep firing.
I'm kinda guessing that there were too many actions in the first trigger and the 2nd switch is used to time stuff.
CONDITIONS:
- Player 3 brings at least 1 Power Current to 'Activate Nexus Effect'.
- 'Maximum Power Flow Achieved (L)' is cleared.
- 'Maximum Power Flow Achieved ®' is cleared.
ACTIONS:
- Execute AI script 'Cast Recall' at 'Xel Naga Nexus'
- Preserve Trigger.
This trigger will repeat while the "power current" is there before all the other triggers fire and set the 2 switches. If the "power current" leaves and comes back it will fire again.
CONDITIONS:
- 'Maximum Power Flow Achieved (L)' is set.
- 'Maximum Power Flow Achieved ®' is set.
- 'Power Surge' is cleared.
ACTIONS:
- Execute AI script 'Cast Recall' at 'Xel Naga Nexus'.
- Wait for 1000 milliseconds.
- Execute AI script 'Cast Recall' at 'Xel Naga Nexus'.
- Wait for 1000 milliseconds.
- Preserve trigger.
This trigger will repeat basically the opposite of the previous, after all the other triggers fire and the 2 switches are set. They never unset so it never stops.
Are you sure the Arbiters have enough energy to keep casting the recall?
Are you sure the switches are both set?
Is "Power Surge" cleared?
Switches begin life Cleared, so Power Surge is indeed cleared. In fact, Power Surge, when set, will stop the Arbiters from Recalling all together. Any unit that enters the Lower Capacitor location (which is surrounded by the Activate NExus Effect location) is automatically moved to the Observer (Power Current) chillin' area. I THINK that the trick might be to add another switch somewhere. I just can't think where. Probably the Power Current to Activate Nexus Effect trigger. I'll experiment.
EDIT: Experimentation OVER! I have located the problem. The triggers were actually working fine, but due to the two second delay on the triggers firing, it just LOOKED like it wasn't. So, somebody has to explain the Hyper-Triggers to me, so I know how to fix it up. Please?
Players: All
Conditions: Meh
Actions: Preserve Trigger
Comment (optional)
Wait 0ms
(copy to end)
All triggers with waits must come BEFORE hyper trioggers.
QUOTE
All triggers with waits must come BEFORE hyper trioggers
Do you mean BEFORE as in "Their order in the list" or "Their order of execution"? And Hyper Triggers DO remove that two seconds Starcraft takes to check its triggers, right?
I think they have to be created last, preferably for a player with no other "wait" triggers.
Hyper triggers speed up the time it takes but don't completely remove it, it goes 12 times faster, though.
So I could, for instance, create an entirely new player, and have him mind the Hyper Triggers and nothing else?