connect/disconnect player + handles weird cases somehow