What I have found is that for some reason, when testing with CPU. That the first cpu I add is always players 6, and the next 2 are always player 7 and 8.
How can I make it so the first cpu I add(player) is player 3, 5, 7. Which would spread the players nicely for a 1v1v1v1?
That trigger is just one of 17 periodic timer triggers. One for each spawn rate. I don't use loops or waits in the trigger so there's no chance of the performance degradation of loop within a loop.
It is just what is shown above. Every 5.7 seconds this trigger completes the actions. It creates x number of units at the spawn point of the "picked player", then it saves those units into a unit group which is then used to rally units and then the unitgroup is cleared.
So these behaviours would be applied to say the command centre(this is the main structure for each player). Then the units would spawn at the command centre? Would they also move to the command centre's rally point?
Lastly, I could just use triggers to add and remove as many of these behaviours as i would like?
Quote from SouLCarveRR:
You could switch your unit spawning to be handled completely by DATA.... then to adjust the spawn rates you could use "upgrades" or "set catalog field value" to change the rates....
This would probably dramatically increase proformance.
I have found that periodic triggers tend to lag in bnet. If they do alot of stuff anyways..
----
Sorry, I should have specified that I am esing the periodict
<<quote 255253>>
I'm skeptical of any difference between a periodic event and a loop with a wait. Also, if you were experiencing lag because of how this timer was implemented, wouldn't you experience it from the start of the game, and not only in the end game?
Since the problem only appears in late game as you said, I'm guessing the cause is slightly different. I'm no expert on this, but I heard that in wc3 when a unit dies it is not removed from the game. Maps that dealt with lots of units spawning and dying specifically had to run triggers to remove the unit from the game, not just kill the unit.
If you're only running this after playing a long game, even when there are few units alive, then i'm more likely to believe this is the issue rather than how you wrote your loops.
<</quote>>
Hi, sorry I wasn't specific enough.
I use a system of switching the triggers on and off when they are required so I have as few running as possible. Late game they are nearly all running as the units have been bought by players.
I'm interested to know how I can remove dead units from the game after they have been killed. Maybe this is also a problem because late game there is anything between 4000-16000 units that have been killed.
This is how a trigger looks for a unit spawn - Please note that the unitgroup is cleared in another trigger, so it is not causing leaks as far as I know
Events
Timer - Every 5.7 seconds of Real Time
Local Variables
Conditions
Actions
Player Group - Pick each player in (Active Players) and do (Actions)
Actions
General - If (Conditions) then do (Actions) else do (Actions)
If
(Picked player) <= 8
(Picked player) >= 1
Player defeated check[(Picked player)] == false
Unit Count[(Picked player)] < Unit Limit
Zealot[(Picked player)] > 0
Then
Unit - Create Zealot[(Picked player)] Zealot for player (Picked player) at Spawn Area Array[(Picked player)] using default facing (No Options)
Variable - Modify Unit Count[(Picked player)]: + Zealot[(Picked player)]
Unit Group - Pick each unit in (Last created units) and do (Actions)
Actions
Unit Group - Add (Picked unit) to Last Created Unit Group
Else
My map Bungle Squats is experiencing lag in late game.
It is a simple map and I believe the reason to be periodic timers.
I have experience with auto spawning maps and I found it is best to keep the spawning of all units in one trigger and one periodic timer. However this map deals with multiple units spawning at their own specific spawn rate.
For example, Marines spawn at 3.6 real time seconds, Zealots spawn at 5.7 real time seconds.
Up to now the only solutions i've found are to only switch timers on when needed and to combine timers. However I can't seem to eliminate the lag.
A suggestion as been made to me to use loops within the triggres and use the wait function rather than the periodic timer function.
0
What I have found is that for some reason, when testing with CPU. That the first cpu I add is always players 6, and the next 2 are always player 7 and 8.
How can I make it so the first cpu I add(player) is player 3, 5, 7. Which would spread the players nicely for a 1v1v1v1?
0
Also, I think if players join as a party of 2 it messes the game up.
What is the correct way to add teams to a map to ensure that the positions in the lobby are the same as in game even if people swap and change?
0
I have a map called Bungle Squats which is mainly a 2v2v2v2 map similar to Marine Arena.
I would like to make it possible for players to moves teams and make a 1v1v1v1 game.
Each player starts with a command centre as their main building. This is a building already on the map.
Now, if I allow players to move in the lobby to the first slot for each team they spawn in strange places and the whole map is messed up.
Can anyone help?
0
That trigger is just one of 17 periodic timer triggers. One for each spawn rate. I don't use loops or waits in the trigger so there's no chance of the performance degradation of loop within a loop.
It is just what is shown above. Every 5.7 seconds this trigger completes the actions. It creates x number of units at the spawn point of the "picked player", then it saves those units into a unit group which is then used to rally units and then the unitgroup is cleared.
0
So these behaviours would be applied to say the command centre(this is the main structure for each player). Then the units would spawn at the command centre? Would they also move to the command centre's rally point?
Lastly, I could just use triggers to add and remove as many of these behaviours as i would like?
0
Quote from SouLCarveRR:
You could switch your unit spawning to be handled completely by DATA.... then to adjust the spawn rates you could use "upgrades" or "set catalog field value" to change the rates....
This would probably dramatically increase proformance.
I have found that periodic triggers tend to lag in bnet. If they do alot of stuff anyways..
----
I've no idea how this is done.
Are there any guides?
0
Sorry, I should have specified that I am esing the periodict
<<quote 255253>>
I'm skeptical of any difference between a periodic event and a loop with a wait. Also, if you were experiencing lag because of how this timer was implemented, wouldn't you experience it from the start of the game, and not only in the end game?
Since the problem only appears in late game as you said, I'm guessing the cause is slightly different. I'm no expert on this, but I heard that in wc3 when a unit dies it is not removed from the game. Maps that dealt with lots of units spawning and dying specifically had to run triggers to remove the unit from the game, not just kill the unit.
If you're only running this after playing a long game, even when there are few units alive, then i'm more likely to believe this is the issue rather than how you wrote your loops.
<</quote>>
Hi, sorry I wasn't specific enough.
I use a system of switching the triggers on and off when they are required so I have as few running as possible. Late game they are nearly all running as the units have been bought by players.
I'm interested to know how I can remove dead units from the game after they have been killed. Maybe this is also a problem because late game there is anything between 4000-16000 units that have been killed.
This is how a trigger looks for a unit spawn - Please note that the unitgroup is cleared in another trigger, so it is not causing leaks as far as I know
Events
Timer - Every 5.7 seconds of Real Time
Local Variables
Conditions
Actions
Player Group - Pick each player in (Active Players) and do (Actions)
Actions
General - If (Conditions) then do (Actions) else do (Actions)
If
(Picked player) <= 8
(Picked player) >= 1
Player defeated check[(Picked player)] == false
Unit Count[(Picked player)] < Unit Limit
Zealot[(Picked player)] > 0
Then
Unit - Create Zealot[(Picked player)] Zealot for player (Picked player) at Spawn Area Array[(Picked player)] using default facing (No Options)
Variable - Modify Unit Count[(Picked player)]: + Zealot[(Picked player)]
Unit Group - Pick each unit in (Last created units) and do (Actions)
Actions
Unit Group - Add (Picked unit) to Last Created Unit Group
Else
0
My map Bungle Squats is experiencing lag in late game.
It is a simple map and I believe the reason to be periodic timers.
I have experience with auto spawning maps and I found it is best to keep the spawning of all units in one trigger and one periodic timer. However this map deals with multiple units spawning at their own specific spawn rate.
For example, Marines spawn at 3.6 real time seconds, Zealots spawn at 5.7 real time seconds.
Up to now the only solutions i've found are to only switch timers on when needed and to combine timers. However I can't seem to eliminate the lag.
A suggestion as been made to me to use loops within the triggres and use the wait function rather than the periodic timer function.
Would this make a difference?
0
I want to be able to compare player names.
For example, picked player = mattavich
Is there any way at all to return player names?
0
Jordan and Peter Andre are still fighting each other over custody of Harvey - eventually one of them will lose and have to keep him.
I have a theory about the reason Jordan married a cage fighter - she needed a man strong enough to stop Harvey from fucking her...
0
I think i'll have to jump in on the data editor and make a building with every upgrade then.
Still, it would be a nice dialog to be able to simply buy upgrades from it.
Maybe someone can take hold of this and make a project out of it.
0
What is this for?
0
I want to make all the standard upgrades for each race available to players on my map (Bungle Squats)
However at the moment i'm simply stacking every building next to each other. It is very cluttered and confusing.
I heard that there are dialogs which hold every upgrade and wondered if anyone created a library for this?
0
Bungle squats is now online and available to play in the SC2 list.
0
Is there a no trigger solution for this yet?