Definitely impossible for me to fix without seeing the current code. My guess is that you forgot to delete a duplicate trigger or something when you were testing. My mini-timer-map did no such thing. Look around a bit before you rush back to the forums. I saw your earlier edit and kind of didn't even bother answering that... :-p
Really? I tried doing the save order thingy, both the entire queue and only the current order. Didn't work for some reason. Guess I messed up somewhere.
No, the active player group will only return only the number of players in the game (might count computer players too, not 100% sure.. but thats easily tested).
Starting lag exists on many maps, it's not very consistent either. Melee maps, the campaign, custom maps. They don't even have to be big, sometimes it lags. Power computer, or not. Maybe you could distract the players with something at the beginning if it's really bad.
Now, any time you spawn units, multiply it with "Active Players". (You could insert the function "Number of players in (Active Players)" any time you spawn units, but it's way easier to just refer to a variable.)
Ok, I've been playing around with timers a bit. Apparently you shouldn't start a new timer. Make a global variable (timer). Start that timer. No need to assign it to a variable after, in fact, that seems to be what's breaking it. Anyway, this works:
I'm in a bit of a rush now and haven't used this myself yet, but it should work. Store the order of the unit before you change ownership and then re-issue the order afterwards. I'm not sure, but I guess the index refers to the units order queue. So if you want all queued orders to transfer, store them all and re-order them one at a time. Again, not sure since i never used it, but the function "Unit - Unit Order Count" probably returns the number of orders queued up on a unit.
Edit:
This would probably be a useful thing to do in a custom function with two parameters, the unit you want ownership to change for, and the player number to change to. I could try to set one up for you later if you need.
I'm actually a bit surprised this isn't an event already: Change ownership and retain orders. (workers being given to the player in the campaign could really have used this as they often started mining during a cut-scene and then stopped after being given to the player).
...or if the variable you want associated with the unit happens to be a "Real", you can use the custom value. An array is more flexible, but then you would have to keep track of all, sometimes an unknown number of, created units. Would be great if you could assign any type of variable to a unit like this, but as far as I can see, we can't.
You could try to send some chat text in the timer expires trigger, see if it fires at all, or just the mineral add don't work. I assume you checked the variable you are adding income with so it's not 0 or something. You could also test making the timer one shot only, see if it adds income once at least. Basically, narrow it down as much as you can. Hard to guess here when I'm not seeing everything in front of me in the editor.
There are two kinds of variables. Global and Local.
Local variables are the ones you put inside your triggers. These can only be used from within that trigger and are unique to each run of that trigger.
Global variables can be used from anywhere. They are placed in the left area of the window (dunno what to call it).
0
Since you're checking for unit type, I assume you are using the pick all units in region option.
If can be found under Action - General - If Then Else.
Unit type == can be found under Condition - Comparison - (function) Unit Type of Unit.
When done, it should look something like this:
0
Yeah, that's what I did, or thought I did at least. Didn't save the test-map. Whatever, if it works, great. :-)
0
Wrong.
If the P.F. is placed by a trigger or built by a player, you would store it in a variable and use that as reference.
...or if the P.F. is a generic, just any P.F. acceptable, do it like Anthius said.
0
Actually, the if then else isn't even needed. Just add your condition to the trigger directly. Something like this:
0
Definitely impossible for me to fix without seeing the current code. My guess is that you forgot to delete a duplicate trigger or something when you were testing. My mini-timer-map did no such thing. Look around a bit before you rush back to the forums. I saw your earlier edit and kind of didn't even bother answering that... :-p
Edit: haha, called it!
0
Really? I tried doing the save order thingy, both the entire queue and only the current order. Didn't work for some reason. Guess I messed up somewhere.
0
No, the active player group will only return only the number of players in the game (might count computer players too, not 100% sure.. but thats easily tested).
0
Triggers don't impact much, if any, at all.
Starting lag exists on many maps, it's not very consistent either. Melee maps, the campaign, custom maps. They don't even have to be big, sometimes it lags. Power computer, or not. Maybe you could distract the players with something at the beginning if it's really bad.
0
You'll want a variable that you keep updated with the number of active playes:
Active Players = 0 <Integer>
Now, any time you spawn units, multiply it with "Active Players". (You could insert the function "Number of players in (Active Players)" any time you spawn units, but it's way easier to just refer to a variable.)
If you need to spawn the units at different places, just add a condition instead before you spawn any units:
0
Ok, I've been playing around with timers a bit. Apparently you shouldn't start a new timer. Make a global variable (timer). Start that timer. No need to assign it to a variable after, in fact, that seems to be what's breaking it. Anyway, this works:
0
So.. I'm confused, it's working now.. but only for testing purposes? Something you want to change, but then it doesn't work?
0
I'm in a bit of a rush now and haven't used this myself yet, but it should work. Store the order of the unit before you change ownership and then re-issue the order afterwards. I'm not sure, but I guess the index refers to the units order queue. So if you want all queued orders to transfer, store them all and re-order them one at a time. Again, not sure since i never used it, but the function "Unit - Unit Order Count" probably returns the number of orders queued up on a unit.
Edit:
This would probably be a useful thing to do in a custom function with two parameters, the unit you want ownership to change for, and the player number to change to. I could try to set one up for you later if you need.
I'm actually a bit surprised this isn't an event already: Change ownership and retain orders. (workers being given to the player in the campaign could really have used this as they often started mining during a cut-scene and then stopped after being given to the player).
0
...or if the variable you want associated with the unit happens to be a "Real", you can use the custom value. An array is more flexible, but then you would have to keep track of all, sometimes an unknown number of, created units. Would be great if you could assign any type of variable to a unit like this, but as far as I can see, we can't.
0
You could try to send some chat text in the timer expires trigger, see if it fires at all, or just the mineral add don't work. I assume you checked the variable you are adding income with so it's not 0 or something. You could also test making the timer one shot only, see if it adds income once at least. Basically, narrow it down as much as you can. Hard to guess here when I'm not seeing everything in front of me in the editor.
0
There are two kinds of variables. Global and Local.
Local variables are the ones you put inside your triggers. These can only be used from within that trigger and are unique to each run of that trigger.
Global variables can be used from anywhere. They are placed in the left area of the window (dunno what to call it).