Debugging
Investigate layer by layer: manifest, handshake, lifecycle, coordinates, performance and package layout.
SDK states
| State | Meaning |
|---|---|
| Connecting | loading manifest and opening loopback WebSocket |
| Authenticating | client.hello sent, waiting for server acceptance |
| Connected | Launcher accepted the game |
| Ready | game reported complete loading |
| Failed | inspect LastError and Error |
Diagnostic hooks
sdk.ConnectionStateChanged += s => Debug.Log("Connection: " + s);
sdk.SessionStateChanged += s => Debug.Log("Session: " + s);
sdk.MessageIgnored += (msg, why) => Debug.LogWarning($"{msg}: {why}");
sdk.Error += Debug.LogError;Checks
python3 tools/validate_launch_manifest.py mock-launch.jsonpython3 tools/mock_launcher.py --scenario device-faultpython3 tools/validate_game_package.py ./release --write-checksumsUseful bug report
- game, SDK and Launcher versions;
- reproduction time and steps;
- sanitized logs without session token;
- projection screenshot and expected coordinate;
- Mock Launcher scenario if hardware is not required.