GetPlayerId() gets the jass id of the player where Player one's id is 0
to get it work as the GUI version just use this
GetConvertedPlayerId(p)
that will get the gui player id where Player one's id is 1
GUI just makes it simpler by adding the extra one.
In GUI: Players are 1-12
in Jass: Players are 0-11
(with the exception of neutrals etc)
If you convert the default GUI code you will see that the interface automatically adds the 1 to make it more user-friendly.
Basically its always 0-11, in the cases of Player Numbers and Arrays; as mentioned above.
If you are going to continue working in Jass, just try and remember to almost always use 0-11.
I do know this - xenforo dropped the ball by not keeping the vbulletin reputation comments as a feature. The loss of the Reputation comments data when we switched to Xenforo really was the death knell for the site when it came to all the users that left. I know I missed it so much and I got way less interested in the site when that feature was gone and I run the site.
I'm on a page about incorrect corrections, and spent the better part of like two hours trying to get someone to understand that -5^2 = -25, not 25, and then that post had comments get reposted because that group is self sustaining, and that person was in turn trying to explain what I just explained to them. And I'm taking that as a victory