Skip to content

Spectating

Levi edited this page Aug 24, 2024 · 4 revisions

Start Spectating

When the player clicks on the "Start Spectating" button on a player's user-card, a StartSpectating packet will get sent to the server. The server then proceeds to add the spectator to the player's #spectator chat (See Chat), as well as notifying the player and other spectators with the SpectatorJoined and FellowSpectatorJoined packets respectively.

If a client is being spectated, it automatically starts sending out SendFrames packets to the server, which it then proceeds to broadcast to all other spectators, using the SpectateFrames packet.

Stop Spectating

The process is very similar to the procedure above. The client sends out a StopSpectating packet, the server removes the client from the #spectator chat and also notifies the player and other spectators, using the SpectatorLeft and FellowSpectatorLeft packets.

Can't Spectate

If a spectator doesn't have the beatmap, that the player is currently playing on, the client will send out a CantSpectate (21) packet. The server will then redirect that to the player, as well as all of the fellow spectators, with the CantSpectate (22) packet.

Clone this wiki locally