See the trigger first. I did it in 1 minute i think, but it works (the trigger on 45 seconds in fact, then i left a nice message also).
YOU JUST NEED TO KNOW that on Jass notation ("triggers") Player Red is Player(0); Player Blue is Player(1), and so on. Each player can only see it's own multiboard that is also, conveniently indexed with it's player id (Multiboard[0] for Player(0) and so on). To access the multiboard of a player, ANY PLAYER, you need to get it's natural index, either by GUI "Player Number" (but this value has to be added -1 as i said in my post) or the JASS accesible (on GUI only with a custom script) function "GetPlayerId".
The thing is, with a player variable you already can access it's index. We all can. I can, Donald Trump can, you can. YES WE FUCKING CAN! Just make sure that if you use the GUI "Player Number" you got to substract 1 (one positive) to that value, otherwise you will get the natural index of the player PLUS one, and this value will not allow you to access the correct multiboard.
The other approach is to create a different player indexing method.
What YOU can do, that i forgot to do since i don't know the caracteristics of your map, is making a player filter ("condition"), so the actions of the loop only execute when some kind of player is found and not for every single player that could be.
Just to make things even clearer, i present you this exercise, until you don't answer it, i will not provide you with any more help:
1. Jay-Z has an integer variable called ID and is gonna use and track the event, Player(0)......Player(23) Selects a Unit.
2. Next, Jay-Z sets that variable, "ID", as "Player Number of Triggering Player".
3. Jay Z then proceeds to modify a multiboard. He uses an array variable called M (represents a multiboard), and then uses the following function:
Multiboard - Change title of M[ID] to Read the fucking thread.
4. Now you answer me this: What will happen?