Local match sync · Manual fallback
Dota 2 Game State Integration setup
Connect DotaSense to Dota 2's local Game State Integration feed, verify the match clock, and repair the config without treating GSI as protected-memory access or an automatic decision system.
Reviewed August 29, 2026 against the current DotaSense Windows implementation. App behavior can change by release; check the current changelog before troubleshooting an older build.
The generated config sends updates to a listener on the same computer.
DotaSense installs or repairs its own file without replacing unrelated GSI configs.
You can start, pause, and resync the timer without Game State Integration.
What Dota 2 GSI does
A Game State Integration config tells Dota 2 which state groups to send and where to send them. DotaSense points that feed to a local HTTP listener and uses the updates for match clock, pause state, game phase, draft context, and selected match-aware surfaces. GSI reports state; it does not choose your next move.
If the connection is missing or you do not want to enable it, keep the timer manual. A working manual clock is better than assuming a stale connection is live.
Set up GSI in DotaSense
Open Settings → Setup
Use the desktop app. The browser timer cannot install a file or receive Dota 2 state.
Install Game State Integration
Let the app inspect common Steam locations and the libraries listed by Steam.
Restart Dota 2
Launch the game after the config exists so the client can load it.
Watch the status pills
Confirm Dota 2 detected, then GSI connected. Do not infer connection from a running app alone.
Check the clock and pause
Use a lobby or safe test to confirm the timer follows live game time and pause state.
Keep a manual recovery
Know how to resync or switch back to manual control before a real match.
The config path and localhost data flow
DotaSense writes gamestate_integration_dotatimer.cfg under game/dota/cfg/gamestate_integration in the selected Dota 2 installation. The file points to127.0.0.1 with the port chosen by the running app.
| Stage | What happens | What it does not prove |
|---|---|---|
| Config installed | The expected file exists with the current local endpoint. | Dota 2 is running or sending updates. |
| Dota detected | The Windows app sees the Dota 2 process. | The GSI config loaded successfully. |
| GSI connected | Fresh state payloads are reaching the local listener. | Every field is available in every game mode. |
| Clock synced | The app can follow reported time and pause updates. | The app understands lanes, vision, or the correct decision. |
For the timer workflow after setup, use the five-game timing drill.
Privacy and technical boundaries
Selected Dota state
The current config requests provider, map, player, hero, all-player, ability, item, event, league, and draft groups.
Loopback HTTP
The generated URI uses 127.0.0.1, which addresses the same machine instead of a public DotaSense server.
No raw GSI payloads
Aggregate setup and connection outcomes may be measured; raw payloads, Steam IDs, match IDs, and install paths are excluded.
No code injection
This workflow does not require reading protected game memory, modifying binaries, or injecting code into Dota 2.
The DotaSense privacy page is the source of truth for local GSI processing and analytics boundaries.
Fix a missing GSI connection
Dota 2 was not found
Use the folder browser and select the installation that contains game/dota/cfg. A Steam library root is not the Dota 2 folder.
Installed but still waiting
Restart Dota 2, then run Repair GSI Connection. The repair flow updates every detected valid installation and reports failures separately.
Connection drops after a match
The app marks GSI disconnected after fresh updates stop. Confirm the next lobby sends new state instead of relying on the previous status.
Clock is wrong
Use manual resync first. Then verify the game mode, live clock, pause behavior, config port, and whether another build wrote an older config.
Dota 2 Game State Integration FAQ
Do I have to edit the GSI config by hand?
No. DotaSense can install, repair, or write the config after you choose a valid Dota 2 folder.
Can several Dota 2 tools use GSI?
Separate tools can keep separate config files. DotaSense writes its own named file and does not need to replace unrelated integrations.
Why does draft or player data look incomplete?
Available fields can differ by match state, player perspective, spectator state, and current Dota behavior. Treat a missing field as unavailable rather than inventing it.
Does the browser timer use GSI?
No. The browser timer is manual and does not connect to Dota 2.