reworked: "player" -> "client" now supports spectators etc.