Releases: collin-b1/cppgsi
Releases · collin-b1/cppgsi
Release list
v1.0.0
v1.0.0 — Initial Release
Initial release of cppgsi, a C++23 library for consuming CS2 Game State Integration (GSI) payloads.
Features
Event-driven dispatcher
GSIDispatcherwith typed callbacks for every top-level GSI component- Per-field subscriptions via
dispatcher.player().on(&cs2gsi::Player::health, ...)— fires only when that specific field changes - Grenade lifecycle events:
on_grenade_thrown/on_grenade_detonated
Typed models
Player— state, match stats, weapons, position/facing (spectator), crosshair codeMap— phase, game mode, team scores, round win historyRound— phase and bomb stateBomb— state, position, countdownGrenade— type, owner, lifetime, position, velocity, inferno flamesWeapon— type, state, ammoPhaseCountdowns,Provider
Enums for all string-valued fields (PlayerTeam, BombState, GrenadeType, GameMode, MapPhase, RoundWinReason, WeaponType, etc.)
HTTP server (GSIServer) built on cpp-httplib; binds to 127.0.0.1:3000 by default
Config generator (generate_gsi_config) — writes a gamestate_integration_<name>.cfg to the CS2 cfg directory
Integration
- CMake
FetchContent, git submodule, and installed package (find_package) all supported - Bundled dependencies: cpp-httplib, nlohmann/json
Examples covering quickstart, round events, and grenade tracking