Struct ArenaMatchStateBroadcast
Server → Client broadcast to everyone in an arena instance with the match's current state.
public struct ArenaMatchStateBroadcast : IBroadcast
- Implements
-
IBroadcast
- Inherited Members
Remarks
Sent on every phase change, every score change, every second of the countdown, and once a second while live for the clock. The roster is what the client publishes to its own ArenaTeamRegistry, so predicted targeting agrees with the server about who may be hit.
No match id. A client is in at most one match, the one it is standing in, and it never sends this message back — the only correlation token the protocol needs is the one on ArenaReadyCheckBroadcast, which ArenaReadyResponseBroadcast echoes so the server can reject an answer to a match that has moved on. Nothing read the id here, and this message is the most frequent one the arena sends.
Serialized by hand: see ArenaBroadcastSerializers for what that shapes away.
Fields
ArenaTemplateID
public int ArenaTemplateID
Field Value
Format
public int Format
Field Value
Members
Every seat.
public ArenaMemberEntry[] Members
Field Value
Objectives
Every objective in the arena, for modes that have them. Empty for deathmatch.
public ArenaObjectiveEntry[] Objectives
Field Value
Phase
public ArenaMatchPhase Phase
Field Value
SecondsRemaining
Countdown seconds left while counting down; match seconds left while live; 0 otherwise.
public int SecondsRemaining
Field Value
TeamScores
Score per team.
public int[] TeamScores
Field Value
- int[]