Startup and connection
Startup and connection is the common prerequisite for every IGP SDK feature. It identifies the game, connects to the local IGP desktop client, and tells the game which platform capabilities are available in the current session.
Responsibilities
Section titled “Responsibilities”- Identify the game with the platform-issued
appId. - Initialize the SDK explicitly from the game’s startup flow.
- Establish and maintain a Desktop Session.
- Expose connection, authorization, error, and capability state.
- Return an actionable result when the desktop client is temporarily unavailable.
Achievements, game authorization, and compliance use the Desktop Session. Rooms, realtime messaging, and network transport use a Hosted Session; a connected Desktop Session does not mean the game has joined the multiplayer lobby.
Support
Section titled “Support”| Engine | Status | Main entry point | Detailed steps |
|---|---|---|---|
| Unity | Preview | Runtime manager in the main package | Unity installation · Unity Quick Start |
| GameMaker | Preview | Windows runtime | GameMaker installation · GameMaker Quick Start |
| Godot | Preview | IGP Autoload registered by Core | Godot installation · Godot Quick Start |
Integration flow
Section titled “Integration flow”- Download the main package matching the engine version. Godot requires an exact-version variant.
- Import it into the project and enable the runtime entry point as described by the engine guide.
- Set a positive
appId. A regular integration does not need a runtime directory, executable path, or local pipe setting. - Subscribe to connection, authorization, and error events before initializing from the game’s own startup flow.
- Wait for an explicit initialization result and confirm that the Desktop Session is attached.
- Check the capabilities published by the current session before calling a feature.
Using connection state
Section titled “Using connection state”- Connecting: keep the startup UI responsive and do not issue duplicate initialization calls.
- Attached but not ready: wait for game authorization before entering protected game flows.
- Ready: use only the achievements, user, compliance, and other capabilities advertised by the session.
- Failed or detached: show an actionable message and retry through the engine’s supported entry point without a tight reconnect loop.
Minimum verification
Section titled “Minimum verification”- A valid
appIdproduces a successful initialization and an attached Desktop Session. - An invalid
appIdor unavailable desktop client produces a clear failure instead of waiting forever. - Authorization and capability state recover to current values after reconnecting.
- A non-multiplayer integration does not wait for a room or realtime state.
Continue with Game authorization, Real-name verification and anti-addiction, or Achievements. See Testing for troubleshooting.