fixup: refactor player stuff