I know how to make a trigger so that when someone leaves a player gets his unit. However is there a way for this trigger to dsitribute units evenly among allies?
None.
This method should be relatively even...
For each player, have a trigger that, if P12 commands at least 1 anyunit, give 1 anyunit to current player, and preserve.
None.
The simplest way to do it would be:
Force:
Allies
Condition:
Player 12 brings any unit to anywhere.
Action:
Give 1 any unit from Player 12 to Current Player.
Preserve Trigger.
Since its set for a force, it will run for anyone present in the game.
Its set to current player, so each person in the force will run it once and then it will cycle through all players until they all get one.
Then it will preserve and run again for the same players.
Example, you have 5 players, and 6 units for Player 12.
Each player will then take 1 unit, 1 at a time from Player 12.
It will cycle and then the first player to get a unit will get a second unit.
This does not check for different kinds of units however, and would give buildings and units equally.
You could make a trigger like this for each type of unit you wanted to give back to allies.
You could also then add some randomization features to help with predictability.
None.