Staredit Network

Staredit Network -> UMS Assistance -> Wait issues in multiplayer
Report, edit, etc...Posted by greenreaper on 2005-09-16 at 23:23:10
In multiplayer, waits are NOT ignored, correct? ALSO, in multiplayer triggers execute from TOP to BOTTOM, correct? If so, then why does this map display 2 texts at the same time even though in the trigger there is a wait?
Report, edit, etc...Posted by Kumano on 2005-09-16 at 23:24:45
The wait is specifically for that trigger, the wait won't stop every other trigger from happening.
Report, edit, etc...Posted by PCFredZ on 2005-09-17 at 09:30:50
QUOTE(greenreaper @ Sep 16 2005, 11:22 PM)
ALSO, in multiplayer triggers execute from TOP to BOTTOM, correct?
[right][snapback]315651[/snapback][/right]

I read Blizzard's FAQ, and it was supposed to be that way. However, Bolt told me otherwise, and I tested it out. Turns out the triggers execute in the order they're created.
Report, edit, etc...Posted by Oo.Turin.oO on 2005-09-17 at 10:39:59
QUOTE(PCFredZ @ Sep 17 2005, 05:30 AM)
I read Blizzard's FAQ, and it was supposed to be that way. However, Bolt told me otherwise, and I tested it out. Turns out the triggers execute in the order they're created.
[right][snapback]315708[/snapback][/right]

Well then the move up/move down buttons are pretty pointless unless you just wanna make it more organized...
Report, edit, etc...Posted by PCFredZ on 2005-09-17 at 12:11:40
QUOTE(Veritaserum @ Sep 17 2005, 10:39 AM)
Well then the move up/move down buttons are pretty pointless unless you just wanna make it more organized...
[right][snapback]315737[/snapback][/right]

Copying a trigger is like creating a new one, so it's still possible to change the order of trigger execution from StarEdit itself. Of course, Uberation and other programs can change trigger orders as well.
Report, edit, etc...Posted by FatalException on 2005-09-17 at 12:19:02
Well, the answer has already been said, but I'll say it again. A wait action only afects the next action in THAT trigger, so it won't do anything to the next trigger.
Report, edit, etc...Posted by PCFredZ on 2005-09-17 at 14:24:59
QUOTE(FatalException @ Sep 17 2005, 12:18 PM)
Well, the answer has already been said, but I'll say it again. A wait action only afects the next action in THAT trigger, so it won't do anything to the next trigger.
[right][snapback]315802[/snapback][/right]

By your definition, Hyper Triggers wouldn't be anything more than wastes of space.
Report, edit, etc...Posted by (U)Bolt_Head on 2005-09-17 at 14:28:28
QUOTE(PCFredZ @ Sep 17 2005, 08:30 AM)
I read Blizzard's FAQ, and it was supposed to be that way. However, Bolt told me otherwise, and I tested it out. Turns out the triggers execute in the order they're created.
[right][snapback]315708[/snapback][/right]

QUOTE(Veritaserum @ Sep 17 2005, 09:39 AM)
Well then the move up/move down buttons are pretty pointless unless you just wanna make it more organized...
[right][snapback]315737[/snapback][/right]


This only refers to group triggers PCFredz. and the specific order that the allplayers triggers fire with player 1 is dependant on when you create the trigger. However this can be changed.

Take this example:
1. Create a trigger for player 1. (add 2 minerals)
2. Then create a trigger for All Players (subtract 1 mineral for current player)
3. Last create a trigger for player 1 again (set minerals to 4)

If you create those in that order then they will also fire in that order. So you will end up with 4 minerals. In the editor you will see under player 1. Trigger 1 followed by Trigger 3. Trigger 2 will be under all players. Its order is defined but not exactly by the order you it appears in. Trigger 2 will have an imaginary placehold within player 1s triggers. If you don't know what order the triggers were created you can edit the players to uncheck all players and check player 1. You will clearly see the trigger in the middle. Of the other 2.

Now when you have all 3 triggers under player 1 move Trigger 2 down one so it is under trigger 3. Then move the trigger back to all players. When you run trigger 2 will now fire after trigger 3. Leaving you with 3 minerals. (so the triggers no longer fire in the same order they were created)



Some background information:
If you look at my unprotected TimeUp bound you will see a trigger under All players or one of the forces (i forget witch) titled "book mark" or something similer.

When i was creating this map it was necissary for me to put all my obstical triggers before the triggers that exicuted the explotions below them. So if i was to add a new obstical i would first create the trigger under all players. When i move the trigger above the 'book mark' then it jumps up the entire list under the player and puts it above where the bookmark is in the player list. (effectivly moving the trigger up over 200 slots with one click)

So to compair this to our example...
Say you just created your triggers. (you havn't moved any yet)
1. Create a trigger for player 1. (add 2 minerals)
2. Then create a trigger for All Players (subtract 1 mineral for current player)
3. Last create a trigger for player 1 again (set minerals to 4)


Then create a 4th trigger for all players (set minerals to 8)

In the all players trigger screen you will see trigger 2 followed by trigger 4. If you use the move trigger to move trigger 4 above trigger 2 it will also jump over trigger 3 in the player 1 section. Making the order (1, 4, 2, 3). However if you take trigger 2 and more it below trigger 4 it will look the exact same but you will have changed the trigger order differantly. You will instead moved trigger 2 after 4 jumping it behind trigger 3 making the order (1, 3, 4, 2)

I refer to this whole mess as the Truth about trigger order. Because mapmakers will have been making maps for years and consider themselfs experts but not actually know the order triggers fire in. Maybe i should make a tutorial called "the truth about trigger order" cause i have tried to inform people of this for a long time without much success.

QUOTE(FatalException @ Sep 17 2005, 11:18 AM)
Well, the answer has already been said, but I'll say it again. A wait action only afects the next action in THAT trigger, so it won't do anything to the next trigger.
[right][snapback]315802[/snapback][/right]

If there is a wait in the following trigger owned by the same player that wait cannot fire until the first one is compleated. So if the second triggers conditions is found to be true right after the first one is is then its wait will be effected by the first. This is refered to as the Wait Block and this is why people have trouble looping music.

Example...

Conditions:
-Always
Acitons:
-Play Wav "30second song"
-Wait 30000

Conditions:
-Always
Actions:
-Display text welcome to...
-wait 500
-Display text "My awsome map!!!


In this example the music trigger (the first one) will start running its wait before the second trigger starts. Considering both of these triggers are owned by the same player this will happen.
When the second trigger fires first it will display "welcome to..."
Next the wait 500 needs to fire but it can't because there can only be one active wait per player at any given time and the first triggers wait is still going. Because of this it will not start until the 30000milli from the music trigger is done then it will wait 500milii making a total of 30500 milli seconds before "My Awsome Map!!!" is displayed.

This is a prime example of how a wait can effect the actions in the next trigger.
Report, edit, etc...Posted by greenreaper on 2005-09-17 at 14:40:44
Oh, I think I get it now. The funny thing is I never knew that triggers executed like that...I just thought they executed from top to bottom for each player/force/allplayers etc.
Report, edit, etc...Posted by PCFredZ on 2005-09-17 at 21:49:56
QUOTE((U)Bolt_Head @ Sep 17 2005, 02:28 PM)
So to compair this to our example...
Say you just created your triggers. (you havn't moved any yet)
1. Create a trigger for player 1.  (add 2 minerals)
2. Then create a trigger for All Players (subtract 1 mineral for current player)
3. Last create a trigger for player 1 again (set minerals to 4)


Then create a 4th trigger for all players (set minerals to 8)

In the all players trigger screen you will see trigger 2 followed by trigger 4.  If you use the move trigger to move trigger 4 above trigger 2 it will also jump over trigger 3 in the player 1 section.  Making the order (1, 4, 2, 3).  However if you take trigger 2 and more it below trigger 4 it will look the exact same but you will have changed the trigger order differantly.  You will instead moved trigger 2 after 4 jumping it behind trigger 3 making the order (1, 3, 4, 2)
[right][snapback]315918[/snapback][/right]

You mean 1, 4, 2, 3 will be the order of execution?
Report, edit, etc...Posted by (U)Bolt_Head on 2005-09-18 at 02:11:57
No i said it correctly, if you move it the other way the trigger being 'jumped over' is differant. After being created trigger 3 is between 2 and 4.

Player 1: Trigger 1
All Players: Trigger 2
Player 1: Trigger 3
All Players: Trigger 4.

when you veiw All players triggers you just see

Trigger 2
Trigger 4

But you can't see that trigger 3 is between them. If you move trigger 4 up one then it will now be put above trigger 2. It will also jump over trigger 3.

Player 1: Trigger 1
All Players: Trigger 4
All Players: Trigger 2
Player 1: Trigger 3

If you instead do the oposit of that and move trigger 2 down then it will jump over trigger 3. Leaving you with this

Player 1: Trigger 1
Player 1: Trigger 3
All Players: Trigger 4.
All Players: Trigger 2

The triggers will appear to be in the same order in the editor but they will actually be in two differant trigger orders. Move all the triggers ot the same player to see this.

Now just point it out, the same effect happens when moving triggers owned by player 1. The triggers always have an invisable actual location that you can only reveal by moving the triggers to the same player/group.
Report, edit, etc...Posted by Toothfariy on 2005-09-18 at 14:43:45
yeah you got to put the text into the same trig as the first with the wait. it's not like mission breifings.
Report, edit, etc...Posted by Mp)3 on 2005-09-18 at 22:13:15
Well, like Bolt explained, you can check to see what order the triggers will fire if you change the trigger ownership all to the same player. When many map makers encounter a bug when they have hyper triggers in the their map, they become unaware of the order triggers will fire (the bug usually involves triggers firing in a very slowed range of time, etc. etc.). The simple remedy for this is copying all of those hyper triggers and deleting the old ones. This rearranges the hyper triggers to the very bottom of the firing list.

Triggers will fire in order from top to bottom, whether that is the action area OR the actual trigger list.

However, there is a loophole around the wait interjections. Transmission times do not affect the time waits issue to fire. Instead of inserting an extended wait command in a trigger that will interupt a sequence, or instead of creating more triggers by using a death counter complex, you can use an "empty" Transmission set time. Use a muted sound and have no text in your transmission, and it will act as a bypassed wait command. However, be aware that Transmission waits act like a second set of wait actions. Transmissions will fire in order of other Tranmission times. The only down-side of this method is that you will have the little minimap ping and a talking portrait -- but hey.
Report, edit, etc...Posted by (U)Bolt_Head on 2005-09-19 at 13:00:25
So you use transmissions just for the wait in them? thats a interesting but good idea.
Next Page (1)