Skip to main content
All guides

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.

Endpoint127.0.0.1

The generated config sends updates to a listener on the same computer.

ConfigOne local .cfg file

DotaSense installs or repairs its own file without replacing unrelated GSI configs.

FallbackManual timing remains

You can start, pause, and resync the timer without Game State Integration.

The narrow answer

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.

GSI is optional.

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.

Five checks

Set up GSI in DotaSense

1

Open Settings → Setup

Use the desktop app. The browser timer cannot install a file or receive Dota 2 state.

2

Install Game State Integration

Let the app inspect common Steam locations and the libraries listed by Steam.

3

Restart Dota 2

Launch the game after the config exists so the client can load it.

4

Watch the status pills

Confirm Dota 2 detected, then GSI connected. Do not infer connection from a running app alone.

5

Check the clock and pause

Use a lobby or safe test to confirm the timer follows live game time and pause state.

6

Keep a manual recovery

Know how to resync or switch back to manual control before a real match.

Know what was changed

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.

StageWhat happensWhat it does not prove
Config installedThe expected file exists with the current local endpoint.Dota 2 is running or sending updates.
Dota detectedThe Windows app sees the Dota 2 process.The GSI config loaded successfully.
GSI connectedFresh state payloads are reaching the local listener.Every field is available in every game mode.
Clock syncedThe app can follow reported time and pause updates.The app understands lanes, vision, or the correct decision.
Local by design

Privacy and technical boundaries

Requested groups

Selected Dota state

The current config requests provider, map, player, hero, all-player, ability, item, event, league, and draft groups.

Transport

Loopback HTTP

The generated URI uses 127.0.0.1, which addresses the same machine instead of a public DotaSense server.

Product analytics

No raw GSI payloads

Aggregate setup and connection outcomes may be measured; raw payloads, Steam IDs, match IDs, and install paths are excluded.

Game boundary

No code injection

This workflow does not require reading protected game memory, modifying binaries, or injecting code into Dota 2.

Read the exact policy.

The DotaSense privacy page is the source of truth for local GSI processing and analytics boundaries.

Diagnose the state

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.

Quick answers

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.

GSI supplies state. The player still owns the decision.

Last reviewed: August 29, 2026