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
installedGameInfo
member of the result will be set and thegameInfo
member 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 |