It's got something to do with packet loss and routing I think. When packets are lost, your client will have different information on the game than the server and the other clients, like sw33t explained.
So is there anything i can do there when it happens in game?
This function is dangerous and useful. Use it with care for it can desyncronize a multiplayer game very easily. The map triggers runs on every machine in the game. GetLocalPlayer() refers to a different player for each machine, namely the player playing at that machine. For example, it might return Player 1 on Joe's computer and Player 2 on Jimmy's computer. Code: [Select]if (GetLocalPlayer() == Player(0)) then // Select triggering unit, but only for player 1 call SelectUnit(GetTriggerUnit(), true)endifOn Joe's computer (Player 1) the if-statement will evaluate to true and the unit will be selected. On Jimmy's computer (Player 2) it will become false and nothing happens. If I had created something, like a unit, the game would desyncronize because Player 1 thinks that he has a unit, and Player 2 doesn't know that it is there.
if (GetLocalPlayer() == Player(0)) then // Select triggering unit, but only for player 1 call SelectUnit(GetTriggerUnit(), true)endif
i hacked maps like vampirsim and other but lot of players got desync except me