add player functions