The way I made my RPGs before, the triggering process for map interaction went like this.
1) Make Center Location trigger for Hero (P1)
Make Center Location trigger for Hero (P2)
etc.
2) Enter Buildings for P1
Enter Buildings for P2
etc.
3) Exit Buildings for P1
Exit Buildings for P2
etc.
3) Spellcasting for P1
Spellcasting for P2
etc.
This was the logical way to build a map up quickly and logically, but as I was halfway through Majesty, I realized something.
In the old method, a separate location for each player was required just because that was the only way it can run. However, this only applied because of the trigger creation order, and thus the way triggers are executed (each player checks his own location).
However, in reality, you can actually center one single location for "Current Player" under the force for which all players belong to, and thus only have to create Enter/Exit building and Spellcasting triggers for that one single location.
This is possible due to the way SC checks the triggers, which ensures that all the triggers will be run for one player before it runs for the next. The one single location would jump quickly from one Hero to the next, and no mix ups should arise.
The resulting triggering process would be like this
1) Make Center Location trigger for "Current Player"
2) Make Enter/Exit building triggers run at Location for "Current Player"
3) Make Spellcasting effects run at Location for "Current Player"
Less triggers, less work, less size, more uberness.
Concept map can be done to illustrate this if anyone needs a better representation.