Why do extra units appear when I try to make units appear for a player?If you create a trigger that applies to multiple players, then that trigger will fire off once for each player as long as the condition is met for each player.
Example 1 (How not to do it)
Players: 1,2,3,4
Condition: Player 1 brings 1 civilian to location foo
Action: Create 3 Zerglings for Player 1
This trigger will create 12 zerglings for player 1 since the trigger attempts to fire for each of the four listed players. Thus player one checks the trigger and indeed the condition is met and it creates 3 zerglings. Player two checks the trigger and the condition is met and it also create three zerglings....etc for players three and four. The way to make a trigger only fire once in a situation like this is to make the condition and action use the current player rather than a specific player.
Example 2 (Working example)
Players: 1,2,3,4
Condition: Current Player brings 1 civilian to location foo
Action: Create 3 Zerglings for Current Player
This would allow players 1,2,3,4 to bring a civilian to the location to create three zerglings. It will only fire once for any given player since if one player brings a civilian to the location, the condition will still be false for the other three players. If the problem is just in creating units for several players at once, use the current player tag rather than a specific player tag. Try using create 3 zerglings for current player rather than create 3 zerglings for player 1.
[right](
http://www.battle.net/scc/faq/triggers.shtml)[/right]