Looking at the code a bit more, I can see that all it does is assign the very first player to the value first["player"] without any conditions at all. So, pretty pointless really. What he needs to do is set a condition for who the first player is (possibly by setting a numerical value for first["exp"]) and attenuate the players on that basis.

What I would do is compare every player's XP, and attenuate the players on that basis. Pretty much like 1st, 2nd, and 3rd are attenuated placements based on scores in other well known end-of-game scripts.