pub struct GameState {
pub auth: Auth,
pub provider: Provider,
pub map: Option<Map>,
pub round: Option<Round>,
pub player: Option<Player>,
pub allplayers: BTreeMap<String, Player>,
pub phase_countdowns: Option<PhaseCountdowns>,
pub bomb: Option<Bomb>,
pub grenades: BTreeMap<String, Grenade>,
pub tournament_draft: Option<TournamentDraft>,
pub previously: Option<Value>,
pub added: Option<Value>,
}Expand description
Root GSI document received from CS2.
Fields§
§auth: AuthAuthentication block declared in the cfg file. CS2 itself never adds a token, but tokens you wrote into the cfg appear here.
provider: ProviderProducer of the payload (the CS2 client itself).
map: Option<Map>Series / map state. Absent when the player is not in a match.
round: Option<Round>Per-round state. Absent outside of an active round.
player: Option<Player>Player snapshot from the local client’s point-of-view (the player or the spectated entity). Absent on the main menu.
allplayers: BTreeMap<String, Player>All known players keyed by SteamID. Only populated when the cfg file
requests allplayers_* sections AND the local client is permitted to
see them (e.g. spectator / replay / GOTV).
phase_countdowns: Option<PhaseCountdowns>Countdown for the current map / round phase.
bomb: Option<Bomb>Detailed bomb info.
grenades: BTreeMap<String, Grenade>All in-flight / active grenades, keyed by entity index.
tournament_draft: Option<TournamentDraft>Tournament-mode draft state.
previously: Option<Value>CS2 may include a previously block listing the values of fields
that just changed. cs2-gsi performs its own diff and does not rely on
this — it is exposed here as raw JSON for advanced consumers.
added: Option<Value>CS2 may include an added block listing fields that appeared for the
first time. Exposed as raw JSON for advanced consumers.
Implementations§
Source§impl GameState
impl GameState
Sourcepub fn from_slice(bytes: &[u8]) -> Result<Self, Error>
pub fn from_slice(bytes: &[u8]) -> Result<Self, Error>
Parse a GSI payload from raw bytes.
Sourcepub fn from_str(s: &str) -> Result<Self, Error>
pub fn from_str(s: &str) -> Result<Self, Error>
Parse a GSI payload from a string. Provided as an inherent method for
discoverability — the conflicting std::str::FromStr impl has the
same semantics.
Sourcepub fn local_is_dead(&self) -> bool
pub fn local_is_dead(&self) -> bool
Convenience: returns true when the local player is dead (HP == 0
AND in the playing activity). Returns false when no player block
is present.