I need some help on this issue, it's driving me crazy. My intention is to write a victory condition (maximum of 8 players in max. 4 teams).
First I set up my TeamGroup variables (Lobby issue) @ Map Initialization like this:
The following one is the trigger which checks if a certain team has already won.
HQ is the main building for a player in my map. If both HQs of a team get destroyed, the team is out of game.
If all HQs from all other teams are destroyed, the team with at least one remaining HQ wins the game.
The int TeamHQs is the HQ counter.
When all HQs are destroyed from at least 3 teams, the remaining team wins after 4 seconds:
(this is repeating for each case)
Simultaneously a win function is triggered for the specific team:
(same for team Team2Win, Team3Win and Team4Win functions)
UpdateWins stores the wins in the bank system, depending on the variable GameStatus (checks if its really a victory or not).
1 = Victory, 0 (default) = Loss
--------
The variable TeamHQs is always correct (checked it ingame while destroying HQs randomly)
The game ends always when a certain team is the last one remaining (= nice)
But the wins don't get stored in the bank, that means the function TeamXWin isn't triggered (= not so nice)
Now the fact that leaves me completely clueless:
When I play 2v2 or something it ends correctly and it stores wins correctly
When I play 1v1 against an AI it ends correctly and it stores wins correctly
When I play 1v1 against a user it ends correctly but it doesn't store wins anymore
Why... I mean I don't see a connection between the controller type and this trigger?!
Well, in trigger where any unit dies there should be condition OR and players on team. And you could replace those numbers with Killing Player or Owner Of Triggering Unit.
Some your Conditions with And worthless there. if you put simply all conditions those all would work as one big AND condition. And condition function is only needed if you use OR and want to combine two conditions and compare to other condition.
And where Timer Expires trigger runs Victroy trigger there mistaken with players i think. Dont really know but where you choose Player 1 or 2 in Teams so it works like those players 1 or 2 are taken again and again and other 6 arent?.
It kinda hard me to undestand it all of yours. I would start all over again making win lose conditions.
I need some help on this issue, it's driving me crazy. My intention is to write a victory condition (maximum of 8 players in max. 4 teams).
First I set up my TeamGroup variables (Lobby issue) @ Map Initialization like this:
The following one is the trigger which checks if a certain team has already won. HQ is the main building for a player in my map. If both HQs of a team get destroyed, the team is out of game. If all HQs from all other teams are destroyed, the team with at least one remaining HQ wins the game. The int TeamHQs is the HQ counter.
When all HQs are destroyed from at least 3 teams, the remaining team wins after 4 seconds:
(this is repeating for each case)
Simultaneously a win function is triggered for the specific team:
(same for team Team2Win, Team3Win and Team4Win functions)
UpdateWins stores the wins in the bank system, depending on the variable GameStatus (checks if its really a victory or not). 1 = Victory, 0 (default) = Loss
--------Now the fact that leaves me completely clueless:
Why... I mean I don't see a connection between the controller type and this trigger?!
I really appreciate any help!
Bump. Doesn't anybody know to solve this problem or what it is about?
<<reply 273896="">>
I think it may help to attach the map, because the screenies are good, but we can't test it ourself to see exactly what goes wrong.
its more problem because of preplaced in conditions and else arrays and not using pick each player in group and so on.
@TwoDie: Go
Assuming this is the problem, how am I to change my triggers now exactly? Where should I use "pick each player in group"?
@Ranuglin: Go
Well, in trigger where any unit dies there should be condition OR and players on team. And you could replace those numbers with Killing Player or Owner Of Triggering Unit.
Some your Conditions with And worthless there. if you put simply all conditions those all would work as one big AND condition. And condition function is only needed if you use OR and want to combine two conditions and compare to other condition.
And where Timer Expires trigger runs Victroy trigger there mistaken with players i think. Dont really know but where you choose Player 1 or 2 in Teams so it works like those players 1 or 2 are taken again and again and other 6 arent?.
It kinda hard me to undestand it all of yours. I would start all over again making win lose conditions.
Heres a Hint for starting over
after the HQ buildings die for a specific team set this index to be false
after doing all your unit dying logic... run another function to see if there is only one TeamStillAlive index that returns true.....
you really dont wanna do "pick each player from (active players) "
you want to do this