TNManager.SetPlayerData would be my suggestion, yes. You can then just get a list of players and sort it by the value. Unless you're sorting every frame, there isn't much point to optimize this either. And if you are sorting every frame... then I'd question your code.