overwolf.games API
Provides information about the currently running game.
All the events below: onGameInfoUpdated, onGameLaunched, etc. are "game info" events that update the running game's current state (process name, focus, command line info, and more).
These events are not related to real-time game events (kill, death, start/end match, etc.), which are handled by the overwolf.games.events API and require to update your manifest file.
Methods Reference
- overwolf.games.getRunningGameInfo()
- overwolf.games.getGameInfo()
- overwolf.games.getGameDBInfo()
- overwolf.games.getRecentlyPlayedGames()
- overwolf.games.getLastRunningGameInfo()
- overwolf.games.getRunningGameInfo2()
Events Reference
- overwolf.games.onGameInfoUpdated
- overwolf.games.onGameLaunched
- overwolf.games.onMajorFrameRateChange
- overwolf.games.onGameRendererDetected
Types Reference
- overwolf.games.GameInfo Object
- overwolf.games.GetRunningGameInfoResult Object
- overwolf.games.GetGameInfoResult Object
- overwolf.games.InstalledGameInfo Object
- overwolf.games.GetGameDBInfoResult Object
- overwolf.games.GetRecentlyPlayedResult Object
- overwolf.games.RunningGameInfo Object
- overwolf.games.OverlayInfo Object
- overwolf.games.GameInfoUpdatedEvent Object
- overwolf.games.MajorFrameRateChangeEvent Object
- overwolf.games.GameRendererDetectedEvent Object
- overwolf.games.GameInfoChangeReason Enum
- overwolf.games.KnownOverlayCoexistenceApps Enum
- overwolf.games.GameInfoType Enum
getRunningGameInfo2(callback)
Version added: 0.188
Returns an object with information about the currently running game, if no game is runing, returns the following object:
{
gameInfo: null,
success: true
}Note: In a scenario when more than one game is running, we'll display information only from the latest one that was launched.
| Parameter | Type | Description |
|---|---|---|
| callback | (Result:GetRunningGameInfoResult) => void | Returns info about the currently running game |
Usage Example
overwolf.games.getRunningGameInfo2(console.log)
getRunningGameInfo(callback)
This function is obsolete - please use getRunningGameInfo2 instead.
Version added: 0.78
Returns an object with information about the currently running game, or returns null if no game is running.
Note: In a scenario when more than one game is running, we'll display information only from the latest one that was launched.
| Parameter | Type | Description |
|---|---|---|
| callback | (Result: GetRunningGameInfoResult) => void | Returns info about the currently running game |
Usage Example
overwolf.games.getRunningGameInfo(function(){console.log(JSON.stringify(arguments))})
getGameInfo(gameClassId, callback)
Version added: 0.93
Returns information about a game with a given game ID.
Note: Game info will be returned only if the game is installed on the local machine.
| Parameter | Type | Description |
|---|---|---|
| gameClassId | int | Class ID of the game |
| callback | (Result:GetGameInfoResult) => void | Returns info about the game |
getGameDBInfo(gameClassId, callback)
Version added: 0.112
Returns information about a game with a given game ID.
This method is similar to getGameInfo() except that it can return two different results:
- If the game is detected as installed, then the
installedGameInfomember of the result will be set and thegameInfomember will be null. - If the game is NOT detected as installed, then the returned JSON status will be
success:false.
| Parameter | Type | Description |
|---|---|---|
| gameClassId | int | The class ID of the game |
| callback | (Result:GetGameDBInfoResult) => void | Returns info about the game |
getRecentlyPlayedGames(maxNumOfGames, callback)
Version added: 0.122
Returns an array of the most recently played game IDs. An empty array will be returned if none have been recorded.
| Parameter | Type | Description |
|---|---|---|
| maxNumOfGames | int | Maximum number of games to receive. Currently we support a maximum of 3 games |
| callback | (Result:GetRecentlyPlayedResult) => void | an array of the most recently played game IDs |
getLastRunningGameInfo(callback)
Version added: 0.173
Returns the last played gameinfo (when no game is currently running).
| Parameter | Type | Description |
|---|---|---|
| callback | (Result:GetGameInfoResult) => void | Returns info about the game |
onGameInfoUpdated
Fired when game info is updated, including game name, game running, game terminated, game changing focus, etc.
with the following structure: GameInfoUpdatedEvent Object.
onGameLaunched
Fired when a game is launched, with the following structure: RunningGameInfo object.
onMajorFrameRateChange
Fired when the rendering frame-rate of the currently injected game changes dramatically, with the following structure: MajorFrameRateChangeEvent object.
onGameRendererDetected
Fired when the rendering method of the game has been detected, with the following structure: GameRendererDetectedEvent object.
GameInfo object
Version added: 0.78
Contains information about a game.
| Name | Type | Description | Since |
|---|---|---|---|
| ActualDetectedRenderers | number | 0.78 | |
| ActualGameRendererAllowsVideoCapture | boolean | 0.78 | |
| AllowCCMix | boolean | 0.78 | |
| AllowCursorMix | boolean | 0.78 | |
| AllowRIMix | boolean | 0.78 | |
| Client_GameControlMode | number | 0.78 | |
| CommandLine | string | 0.78 | |
| ControlModes | number | 0.78 | |
| CursorMode | number | 0.78 | |
| DIT | number | 0.78 | |
| DetectDirKey | string | 0.78 | |
| DetectDirKeys | string[] | 0.78 | |
| DisableActionMixed | boolean | 0.78 | |
| DisableActivityInfo | boolean | 0.78 | |
| DisableAeroOnDX11 | boolean | 0.78 | |
| DisableBlockChain | boolean | 0.78 | |
| DisableD3d9Ex | boolean | 0.78 | |
| DisableDIAquire | boolean | 0.78 | |
| DisableEXHandle | boolean | 0.78 | |
| DisableEternalEnum | boolean | 0.78 | |
| DisableExclusiveModeUI | boolean | 0.78 | |
| DisableFeature_TS3 | boolean | 0.78 | |
| DisableFeature_VideoCapture | boolean | 0.78 | |
| DisableMultipleInjections | boolean | 0.78 | |
| DisableOWGestures | boolean | 0.78 | |
| DisableRenderAI | boolean | 0.78 | |
| DisableResizeRelease | boolean | 0.78 | |
| DisableSmartMixMode | boolean | 0.78 | |
| DisplayName | string | 0.78 | |
| EnableClockGesture | boolean | 0.78 | |
| EnableFocusOnAnyClick | boolean | 0.78 | |
| EnableMTCursor | boolean | 0.78 | |
| EnableRawInput | boolean | 0.78 | |
| EnableSmartDIFocus | boolean | 0.78 | |
| EnableSmartDIFocus2 | boolean | 0.78 | |
| EnableSmartFocus | boolean | 0.78 | |
| EnableTXR | boolean | 0.78 | |
| ExecutedMoreThan | boolean | 0.78 | |
| FIGVTH | boolean | 0.78 | |
| FPSIndicationThreshold | number | 0.78 | |
| FirstGameResolutionHeight | number | 0.78 | |
| FirstGameResolutionWidth | number | 0.78 | |
| FixActionFocus | boolean | 0.78 | |
| FixCC | boolean | 0.78 | |
| FixCOEx | boolean | 0.78 | |
| FixCVCursor | boolean | 0.78 | |
| FixCursorOffset | boolean | 0.78 | |
| FixDIBlock | boolean | 0.78 | |
| FixDIFocus | boolean | 0.78 | |
| FixDXThreadSafe | boolean | 0.78 | |
| FixFSTB | boolean | 0.78 | |
| FixHotkeyRI | boolean | 0.78 | |
| FixInputBlock | boolean | 0.78 | |
| FixInvisibleCursorCR | boolean | 0.78 | |
| FixMixModeCursor | boolean | 0.78 | |
| FixModifierMixMode | boolean | 0.78 | |
| FixMouseDIExclusive | boolean | 0.78 | |
| FixRCEx | boolean | 0.78 | |
| FixResolutionChange | boolean | 0.78 | |
| FixRestoreSWL | boolean | 0.78 | |
| FixSWL | boolean | 0.78 | |
| FixSWLW | boolean | 0.78 | |
| ForceCaptureChangeRehook | boolean | 0.78 | |
| ForceControlRehook | boolean | 0.78 | |
| ForceGBB | boolean | 0.78 | |
| GameGenres | string | 0.78 | |
| GameLinkURL | string | 0.78 | |
| GameNotes | string | 0.78 | |
| GameRenderers | number | 0.78 | |
| GameTitle | string | 0.78 | |
| GenericProcessName | boolean | 0.78 | |
| GroupTitle | string | 0.78 | |
| ID | number | 0.78 | |
| IconFile | string | 0.78 | |
| IgnoreMultipleDevices | boolean | 0.78 | |
| IgnoreRelease | boolean | 0.78 | |
| ImGuiRendering | boolean | 0.78 | |
| InjectionDecision | number | 0.78 | |
| Input | number | 0.78 | |
| InstallHint | string | 0.78 | |
| IsConflictingWithControlHotkey | boolean | 0.78 | |
| IsNew | boolean | 0.78 | |
| IsSteamGame | boolean | 0.78 | |
| KeepInGameOnLostFocus | boolean | 0.78 | |
| Label | string | 0.78 | |
| LastInjectionDecision | number | 0.78 | |
| LastKnownExecutionPath | string | 0.78 | |
| LaunchParams | string | 0.78 | |
| Launchable | boolean | 0.78 | |
| LauncherDirectoryRegistryKey | string | 0.78 | |
| LauncherDirectoryRegistryKeys | string[] | 0.78 | |
| LauncherGameClassId | number | 0.78 | |
| LauncherNames | string[] | 0.78 | |
| ModifierStatus | number | 0.78 | |
| NativeID | number | 0.78 | |
| PassThruBoundsOffsetPixel | number | 0.78 | |
| PressToClickThrough | number | 0.78 | |
| ProcessCommandLine | string | 0.78 | |
| ProcessID | number | 0.78 | |
| ProcessNames | string[] | 0.78 | |
| RecreateSB | boolean | 0.78 | |
| ReleaseKBInOverlayFocus | boolean | 0.78 | |
| ResizeNotifyResolution | boolean | 0.78 | |
| RestoreBB | boolean | 0.78 | |
| RestoreRT | boolean | 0.78 | |
| RunElevated | boolean | 0.78 | |
| SendHotkeyRI | boolean | 0.78 | |
| SetDIInExclusive | boolean | 0.78 | |
| ShortTitle | string | 0.78 | |
| SkipGameProc | boolean | 0.78 | |
| SmartReleaseKBInOverlayFocus | boolean | 0.78 | |
| StableFPSThreshold | number | 0.78 | |
| StuckInTrans_Margin | number | 0.78 | |
| StuckInTrans_MouseMoveGap | number | 0.78 | |
| SupportedScheme | string | 0.78 | |
| SupportedVersion | string | 0.78 | |
| TCModes | number | 0.78 | |
| TerminateOnWindowClose | boolean | v | |
| Type | number | 0.78 | |
| TypeString | string | 0.78 | |
| UnsupportedScheme | string | 0.78 | |
| UpdateCursor | boolean | 0.78 | |
| UpdateCursorMT | boolean | 0.78 | |
| UseAllSafeHook | boolean | 0.78 | |
| UseEH | string | 0.78 | |
| UseHardwareDevice | boolean | 0.78 | |
| UseLauncherIcon | boolean | 0.78 | |
| UseLongHook | boolean | 0.78 | |
| UseMCH | string | 0.78 | |
| UseMH | boolean | 0.78 | |
| UseMHScheme | string | 0.78 | |
| UseMKLL | boolean | 0.78 | |
| UseMW | boolean | 0.78 | |
| UsePR | boolean | 0.78 | |
| UseRI | boolean | 0.78 | |
| UseRIB | boolean | 0.78 | |
| UseSafeHook | boolean | 0.78 | |
| UseTSHook | boolean | 0.78 | |
| WaitRestore | boolean | 0.78 | |
| Win7Support | number | 0.78 | |
| Win8Support | number | 0.78 | |
| Win10Support | number | 0.78 | |
| XPSupport | number | 0.78 |
Example data
{
"ID":11361,
"NativeID":1136,
"Type":0,
"TypeString":"Game",
"LauncherGameClassId":0,
"GameTitle":"Guild Wars",
"ShortTitle":null,
"UseLauncherIcon":false,
"DisplayName":null,
"ProcessNames":[
"Gw.exe"
],
"LauncherNames":[
"Gw.exe"
],
"CommandLine":"Guild Wars",
"GameRenderers":2,
"ActualDetectedRenderers":0,
"FirstGameResolutionHeight":null,
"FirstGameResolutionWidth":null,
"GameGenres":"Role-Playing_Real-Time-Battle-RPG",
"InjectionDecision":1,
"SupportedScheme":null,
"UnsupportedScheme":null,
"LauncherDirectoryRegistryKey":"HKEY_CURRENT_USER\\Software\\ArenaNet\\Guild Wars\\Path",
"LauncherDirectoryRegistryKeys":null,
"LaunchParams":null,
"RunElevated":false,
"GenericProcessName":false,
"Launchable":true,
"IconFile":null,
"GameLinkURL":null,
"FixCursorOffset":false,
"FixResolutionChange":true,
"FixDIBlock":false,
"FixDIFocus":false,
"FixSWL":false,
"UseSafeHook":false,
"UseAllSafeHook":false,
"UseLongHook":true,
"FixInputBlock":false,
"IgnoreRelease":false,
"ReleaseKBInOverlayFocus":false,
"SmartReleaseKBInOverlayFocus":false,
"UseTSHook":false,
"TerminateOnWindowClose":false,
"AllowCursorMix":false,
"FixMixModeCursor":false,
"SetDIInExclusive":false,
"FixMouseDIExclusive":false,
"DisableActionMixed":false,
"DisableResizeRelease":false,
"DisableEternalEnum":false,
"ForceCaptureChangeRehook":false,
"ForceControlRehook":false,
"FixActionFocus":false,
"RestoreRT":false,
"ForceGBB":false,
"EnableSmartFocus":false,
"EnableSmartDIFocus":false,
"DisableFeature_VideoCapture":false,
"DisableFeature_TS3":false,
"FixSWLW":false,
"EnableFocusOnAnyClick":false,
"EnableMTCursor":false,
"Input":0,
"ControlModes":0,
"CursorMode":0,
"XPSupport":0,
"Win7Support":0,
"Win8Support":0,
"Win10Support":0,
"DisableVideoCapture":0,
"InstallHint":null,
"DetectDirKey":"HKEY_CURRENT_USER\\Software\\ArenaNet\\Guild Wars\\Path",
"DetectDirKeys":null,
"PressToClickThrough":0,
"StuckInTrans_MouseMoveGap":null,
"StuckInTrans_Margin":0,
"GroupTitle":null,
"GameNotes":null,
"Client_GameControlMode":2,
"SupportedVersion":null,
"DisableAeroOnDX11":false,
"FixCC":false,
"EnableRawInput":false,
"IsConflictingWithControlHotkey":false,
"EnableClockGesture":false,
"DisableOWGestures":false,
"UpdateCursor":false,
"UpdateCursorMT":false,
"DisableDIAquire":false,
"EnableSmartDIFocus2":false,
"ResizeNotifyResolution":false,
"DisableD3d9Ex":false,
"UseRI":false,
"UseRIB":false,
"AllowRIMix":false,
"RestoreBB":false,
"RecreateSB":false,
"FixFSTB":false,
"FixCOEx":false,
"FixRCEx":false,
"DisableBlockChain":false,
"UseMH":false,
"UseMHScheme":null,
"UseMCH":"6;10",
"UseEH":null,
"AllowCCMix":false,
"UseMKLL":false,
"UseNewKLL":false,
"UseNewMLLForExclusive":false,
"UseMW":false,
"UsePR":false,
"WaitRestore":false,
"KeepInGameOnLostFocus":false,
"DisableRenderAI":false,
"DisableSmartMixMode":false,
"ImGuiRendering":false,
"DIT":0,
"IgnoreMultipleDevices":false,
"TCModes":0,
"FixHotkeyRI":true,
"SendHotkeyRI":false,
"FixRestoreSWL":false,
"FIGVTH":false,
"UseHardwareDevice":false,
"FixCVCursor":false,
"EnableTXR":true,
"PassThruBoundsOffsetPixel":0,
"FixModifierMixMode":false,
"DisableEXHandle":false,
"FixDXThreadSafe":false,
"FixInvisibleCursorCR":false,
"SkipGameProc":false,
"Label":"Guild Wars",
"DisableActivityInfo":false,
"ModifierStatus":0,
"DisableExclusiveModeUI":false,
"ProcessCommandLine":"\"D:/Games/Guild Wars/Gw.exe\"",
"ProcessID":10684,
"StableFPSThreshold":10,
"FPSIndicationThreshold":3,
"DisableMultipleInjections":false,
"IsNew":true,
"ExecutedMoreThan":true,
"LastKnownExecutionPath":"D:/Games/Guild Wars/Gw.exe",
"LastInjectionDecision":1,
"IsSteamGame":false
}
RunningGameInfo Object
| Parameter | Type | Description |
|---|---|---|
| isInFocus | bool | Returns whether overlay is currently being rendered for the game |
| gameIsInFocus | bool | Returns whether the game is currently in focus |
| isRunning | bool | Returns whether the game is currently running |
| allowsVideoCapture | bool | Returns whether the game allows video to be captured |
| title | string | Returns the title of the game |
| id | int | Returns the game ID concatenated with the Instance ID of the game. Divide it by 10 and round down to get the game ID |
| classId | int | Returns the game ID |
| width | int | Returns the pixel width of the game window |
| height | int | Returns the pixel height of the game window |
| logicalWidth | int | Returns the game-reported (logical) pixel width of the game window |
| logicalHeight | int | Returns the game-reported (logical) pixel height of the game window |
| renderers | string[] | Returns an array of the rendering technology names supported by the running game |
| detectedRenderer | string | Returns the rendering technology detected by the running game |
| commandLine | string | Returns the game process commandline |
| type | int | Returns the process type as a number. See notes |
| typeAsString | string | Returns the process type as a string. See notes |
| monitorHandle | object | Returns the current monitor handle |
| windowHandle | object | Returns the current app window handle |
| processId | int | Returns the current process id of the running game |
| overlayRemotelyDisabled | bool | Whether or not the Overlay for this game has been remotely disabled |
| minimumEnabledOverwolfVersion | bool | The minimum (if any) Overwolf version required to enable Overlay for this game |
| isFullscreen | bool | Whether or not the game is currently running in Fullscreen (mostly relevant for OOPO games) |
| isOOPOFullscreenRenderingDisabled | bool | Whether or not Overlay rendering is disabled in this current game (mostly relevant for OOPO games) |
Data example
{
"success":true,
"isInFocus":false,
"gameIsInFocus": false,
"isRunning":true,
"allowsVideoCapture":true,
"title":"Guild Wars",
"displayName":"",
"shortTitle":"",
"id":11361,
"classId":1136,
"width":1920,
"height":1080,
"logicalWidth":1920,
"logicalHeight":1080,
"processId": 3840,
"renderers":[
"D3D9"
],
"detectedRenderer":"Unknown",
"executionPath":"D:/Games/Guild Wars/Gw.exe",
"sessionId":"3ced63b755724fd4ab1d3d2a210aa764",
"commandLine":"\"D:/Games/Guild Wars/Gw.exe\"",
"type":0,
"typeAsString":"Game",
"windowHandle":{
"value":0
},
"monitorHandle":{
"value":0
}
}
InfoType Note
Both of these type fields correspond to a certain GameInfoType value, which is the value defined for this process in the gamelist.
InstalledGameInfo Object
| Parameter | Type | Description |
|---|---|---|
| GameInfoClassID | number | |
| GameInfoID | number | |
| LastTimeVerified | Date | |
| LauncherCommandLineParams | string | |
| LauncherPath | string | |
| ManuallyAdded | boolean | |
| ProcessPath | string | |
| WasAutoAddedByProcessDetection | boolean | |
| GameInfo | GameInfo object |
Example data
{
"GameInfoClassID":1136,
"GameInfoID":11361,
"ProcessPath":null,
"LauncherPath":"D:/Games/Guild Wars/Gw.exe",
"LauncherCommandLineParams":null,
"LastTimeVerified":"2020-03-28T19:47:44.828Z",
"ManuallyAdded":false,
"WasAutoAddedByProcessDetection":true,
"GameInfo":{ ... }
}
GetRunningGameInfoResult Object
| Parameter | Type | Description |
|---|---|---|
| success | boolean | |
| error | string | null if success is true |
| isInFocus | bool | Returns whether the game is currently in focus |
| isRunning | bool | Returns whether the game is currently running |
| allowsVideoCapture | bool | Returns whether the game allows video to be captured |
| title | string | Returns the title of the game |
| id | int | Returns the game ID concatenated with the Instance ID of the game. Divide it by 10 and round down to get the game ID |
| classId | int | Returns the game ID |
| width | int | Returns the pixel width of the game window |
| height | int | Returns the pixel height of the game window |
| logicalWidth | int | Returns the game-reported (logical) pixel width of the game window |
| logicalHeight | int | Returns the game-reported (logical) pixel height of the game window |
| processId | int | Returns the current process id of the running game |
| renderers | string[] | Returns an array of the rendering technology names supported by the running game |
| detectedRenderer | string | Returns the rendering technology detected by the running game |
| commandLine | string | Returns the game process commandline |
| type | int | Returns the process type as a number. See notes |
| typeAsString | string | Returns the process type as a string. See notes |
| windowHandle | object | Returns the current game window handle |
| monitorHandle | object | Returns the current monitor handle |
| overlayInfo | OverlayInfo Object | Returns info about the the running out of process overlays |
Example data: Success
{
"success":true,
"isInFocus":false,
"isRunning":true,
"allowsVideoCapture":true,
"title":"Guild Wars",
"displayName":"",
"shortTitle":"",
"id":11361,
"classId":1136,
"width":1920,
"height":1080,
"logicalWidth":1920,
"logicalHeight":1080,
"processId": 3840,
"renderers":[
"D3D9"
],
"detectedRenderer":"Unknown",
"executionPath":"D:/Games/Guild Wars/Gw.exe",
"sessionId":"3ced63b755724fd4ab1d3d2a210aa764",
"commandLine":"\"D:/Games/Guild Wars/Gw.exe\"",
"type":0,
"typeAsString":"Game",
"windowHandle":{
"value":0
},
"monitorHandle":{
"value":0
}
}
InfoType Note
Both of these type fields correspond to a certain GameInfoType value, which is the value defined for this process in the gamelist.
GetGameInfoResult Object
| Parameter | Type | Description |
|---|---|---|
| success | boolean | |
| error | string | null if success is true |
| gameInfo | InstalledGameInfo object | Provides the installed game info |
Example data: Success
{
"success":true,
"gameInfo":{ //InstalledGameInfo object
"GameInfoClassID":1136,
"GameInfoID":11361,
"ProcessPath":null,
"LauncherPath":"D:/Games/Guild Wars/Gw.exe",
"LauncherCommandLineParams":null,
"LastTimeVerified":"2020-03-28T19:47:44.828Z",
"ManuallyAdded":false,
"WasAutoAddedByProcessDetection":true,
"GameInfo":{ ... } // GameInfo object
}
}
GetGameDBInfoResult Object
| Parameter | Type | Description |
|---|---|---|
| success | boolean | |
| error | string | null if success is true |
| installedGameInfo | InstalledGameInfo object | Provides the installed game info |
Example data: Success
{
"success":true,
"gameInfo":null, //null means that the game is installed on this machine
"installedGameInfo":{ //InstalledGameInfo object
"GameInfoClassID":1136,
"GameInfoID":11361,
"ProcessPath":null,
"LauncherPath":"D:/Games/Guild Wars/Gw.exe",
"LauncherCommandLineParams":null,
"LastTimeVerified":"2020-03-28T19:47:44.828Z",
"ManuallyAdded":false,
"WasAutoAddedByProcessDetection":true,
"GameInfo":{ ... } // GameInfo object
}
}
Example data: Failure
{
"success":false,
"error":"game not found",
"reason":"game not found" //for backward compatibility
}
GetRecentlyPlayedResult Object
| Parameter | Type | Description |
|---|---|---|
| success | boolean | |
| error | string | null if success is true |
| games | number[] | an array of the most recently played game IDs |
Example data: Success
{
"success":true,
"games":[
54261,
11361,
77641
]
}
MajorFrameRateChangeEvent Object
Version added: 0.78
| Name | Type | Description | Since |
|---|---|---|---|
| fps_status | string | can be “None”, “Stable”, “Drop” and “Increase” | |
| fps | number | Indicates if there was a change in resolution (i.e. the width or height properties were changed) |
Event data example:
{
"fps_status": "Increase", // can be “None”, “Stable”, “Drop” and “Increase”.
"fps": 35
}
GameRendererDetectedEvent Object
Version added: 0.78
| Name | Type | Description | Since |
|---|---|---|---|
| detectedRenderer | string |
Event data example
{
"detectedRenderer": "D3D9"
}
GameInfoUpdatedEvent Object
Version added: 0.78
An object containing the game info object in addition to a set of flags indicating the changes from the last time that data was updated.
| Name | Type | Description | Since |
|---|---|---|---|
| gameInfo | RunningGameInfo object | The new game info data | 0.78 |
| resolutionChanged | bool | Indicates if there was a change in resolution (i.e. the width or height properties were changed) | 0.78 |
| focusChanged | bool | Indicates if there was a change in the game focus status | 0.78 |
| runningChanged | bool | Indicates if there was a change in the game running status | 0.78 |
| gameChanged | bool | Indicates if the gameInfo property represents a different game than before | 0.78 |
| gameOverlayChanged | bool | Indicates if OW hooks input device changes when hooking into a game. If true, check if overlayInputHookError is true as well to identify that there is a hooking issue | 0.160 |
| overlayInputHookError | bool | Indicates that a hooking error has occurred | 0.160 |
| reason | string[] | A detailed info about the hooking error reason (one or more GameInfoChangeReason enum) | 0.173 |
Event data example
{
"gameInfo": { //RunningGameInfo object
"isInFocus": true,
"gameIsInFocus": true,
"isRunning": true,
"allowsVideoCapture": true,
"title": "Dota 2",
"id": 73143,
"width": 1920,
"height": 1080,
"logicalWidth": 1920,
"logicalHeight": 1080,
"processId": 3840,
"renderers": [
"D3D9",
"D3D11"
],
"detectedRenderer": "D3D9",
"executionPath": "D:/Steam/steamapps/common/dota2/game/bin/win64/dota2.exe",
"sessionId": "9b163a0c0ca74d2c8f01f85d4fade07f",
"commandLine": "D:/Steam/steamapps/common/dota2/game/bin/win64/dota2.exe -steam"
},
"resolutionChanged": false,
"focusChanged": true,
"runningChanged": false,
"gameChanged": false,
"gameOverlayChanged": false,
"reason": "gameFocusChanged"
}
OverlayInfo Object
Returns info about the current out of process overlays
| Parameter | Type | Description |
|---|---|---|
| coexistingApps | KnownOverlayCoexistenceApps[] | Detected coexisting apps |
| inputFailure | bool | Global input hook failure detected, machine restart is needed. |
| hadInGameRender | bool | Overwolf overlay did render in game |
| isCursorVisible | bool | Indication if the current game is working in "Exclusive Mode" without a visible cursor, like FPS games. See notes |
| exclusiveModeDisabled | bool | ExclusiveMode is disabled. See notes |
| oopOverlay | bool | is game overlay is OOPO. See notes |
| isFullScreenOptimizationDisabled | bool | Indication if game process DisableFullscreen is on. See notes |
Data example
{
"coexistingApps":["MSIAfterBurner", "MSIAfterBurner"],
"inputFailure":false,
"hadInGameRender":true,
"isCursorVisible":true,
"exclusiveModeDisabled":true,
"isFullScreenOptimizationDisabled":false,
}
Note
When the game terminates (hadInGameRender: false) and coexistingApps is not empty, you can show the users a message of a possible coexisting overlay issue.
isCursorVisible Note
Usually used for FPS games - when you are playing, you won't have a cursor - but if you Ctrl + Tab (enable exclusive mode), you will. This can give the app an indication of this (i.e., can the user click an X to close the app window, or does he have to use a hotkey). Not relevant for games like LoL, where the user has a cursor.
See also related flag, exclusiveModeDisabled.
exclusiveModeDisabled Note
Exclusive mode is for games like FPS, where you don't have a cursor while in the game - so if you ctrl + tab - we turn the background dark - like steam. This is exclusive mode - as in, the input is exclusively going to Overwolf (not the game).
See also related object property, isCursorVisible.
oopOverlay Note
OOP stands for "Out of process" Overlay - relevant for Destiny 2, CS:GO, Roblox, and warzone that requires exclusive mode to interact with the OW app's windows.
isFullScreenOptimizationDisabled Note
The OW overlay is not visible in full-screen mode for games that require an exclusive mode to interact with the OW app's windows (like Distney2, CSGO, and warzone).
This indication lets you show the user a desktop notification to switch from full screen to windowed or borderless mode or enable full-screen optimization. Note that you can't display your indication as there is no overlay. So in that case, you can show the indication when the match is over or on a second screen, if exists.
'isFullScreenOptimizationDisabled' will be on when DisableFullscreen is on, and the overlay is not visible.
GameInfoChangeReason enum
| Option | Description |
|---|---|
| game | |
| gameChanged | |
| gameFocusChanged | |
| gameLaunched | |
| gameOverlayCoexistenceDetected | |
| gameOverlayCursorVisibility | |
| gameOverlayExlusiveModeChanged | |
| gameOverlayInputHookFailure | |
| gameRendererDetected | |
| gameResolutionChanged | |
| gameTerminated | |
| gameWindowDataChanged |
GameInfoType enum
The type value for a process is determined by the gamelist entry for it.
| Option | Description |
|---|---|
| Game | This is a Game |
| Launcher | This is a launcher |
| Application | This is an app |
KnownOverlayCoexistenceApps enum
| Option | Description |
|---|---|
| Asus | |
| Discord | |
| MSIAfterBurner | |
| Nahimic | |
| Nahimic2 | |
| None | |
| ObsStudio | |
| PlaysTV | |
| RazerSynapse |