Skip to main content

Overwolf Electron FAQ

General

Q: What is Overwolf Electron?

A: Overwolf Electron is a fork of the Electron.js project, complete with built-in integration with several of Overwolf’s services.

Q: Why Electron.js?

A: Electron.js is an incredibly popular and powerful framework, used by many large gaming desktop apps. It has cross-platform support as well as being part of the Node.js ecosystem. This gives app creators even more flexibility with their development and is a natural choice for Overwolf apps.

Q: Why not use the Overwolf native platform?

A: The Overwolf native platform and the Electron.js framework are vastly different from each other. The Overwolf Electron framework is designed to bridge the gap between Overwolf’s services and apps that already utilize Electron.js.

Q: What are the main differences between Overwolf Electron and Overwolf Native platforms?

A: The main differences between the frameworks is how you develop your apps. Using Overwolf Electron, you develop your app as you would any kind of Electron.js app. Using the Overwolf native platform, you develop your app using the Chromium Embedded Framework (CEF) project. For a detailed comparison, see Frameworks overview > Detailed comparison.

Q: Will Overwolf Electron framework support Linux or Mac?

A: Currently only ad services are supported for Mac and Linux. Overwolf services such as overlay, game events, and recording are currently in development.

Q: Can I have both Electron.js and Overwolf Electron running at the same time?

A: As a fork of Electron.js we ensure upstream compatibility for specific versions of Electron.js. This makes it possible to use both Overwolf Electron and Electron.js side by side in the same project. In addition, you can use the electron-is-overwolf package to differentiate between the two.

Q: Why a fork and not a module of Electron.js?

A: Overwolf’s services utilize much of the underlying Electron.js framework, the underlying Chromium APIs, and even some OS-level code. By using a forked version of Electron.js, we can ensure that every build’s services will be stable, optimized, reliable, and seamless to integrate.

Q: Why is it closed source?

A: Overwolf Electron utilizes several of our in-house, proprietary services and therefore its not possible to make them open source. This means that most of Overwolf Electron's changes will remain closed source; however, when possible, we plan to publish related/supplementary services as open source.

Q: Is there a difference in revenue generated between an Overwolf Electron app and an Overwolf Native app?

A: No there is no difference in the way the platforms generate revenue. However, there are differences in the monetization polices for each of the platforms. For more information on monetizing your app, see Overwolf native > monetize your app or Overwolf electron > monetize your app.

Game events

Q: How do I use the Overwolf API with Electron to set the required features for my app?

A: You can follow the example on our Building your fist app page.

Q: How can I access and use the full game data from Overwolf to get JSON data and set up event listeners?

A: You can follow the examples on our Live game data (GEP) page.

Q: Why are specific game events/info updates down, and how can I handle this in my Overwolf app?

A: Typically this happens when there a game has issued an update. Overwolf tries to correct gme events/info updates errors as soon as they are discovered. Use the API to retrieve the status of specific game events/info updates and if they are down, then you will need to temporarily unsubscribe from their feature.

Q: How do I register for games injection and Overlay?

A: Using the Overwolf Electron Overlay API, you can call the registerGames() method, which accepts gameIds: number[].

Q: Is Overwolf Live game data (GEP) support fully compatible with Electron and which games are supported?

A: Yes, Live game data (GEP) are supported in Overwolf Electron. For a list of supported games, see Supported games.

Developer and apps

Q: What is the typical timeline for the Overwolf app review process, and what should I do if it takes longer than expected?

A: The app review process is mainly QA for your app and the time it takes to review can vary on a number of different factors. To ensure a swift and efficient review, make sure that you have prepared your app for submission and that the app follows the recommended Best practices. For more information about the process, contact us.

A: Yes, it is highly recommended that you add analytics to your app. Analytics provides insights about usage and engagement data, crash and error measurements, and other useful metrics to help you better understand the performance of your app. For more information, see Using analytics in your app.

Q: Where can I access the Overwolf developer's console?

A: For more information on the Overwolf developers console, see The developer's console

Q: How can I set up and use webhooks with my Overwolf app, particularly obtaining a webhook token for Tebex?

A: You can create a Tebex store and use the webhook to sync. For more information, see Creating an Overwolf App Tebex Store.

Q: How can I test my Overwolf app locally, and what are the best practices for local testing?

A: You can use the Overwolf Developers client to test your app. If you see anything that is not functioning correctly or is broken, contact us. For more information on testing your app, see Best practices > Testing.

Q: Can I share/host my Electron version with anyone and on any site/server?

A: Yes, you are able to share your app with anyone you like as well as host the app in any location you prefer.

Q: Does the app have a manifest.json like Overwolf Native apps?

A: No, Electron app’s configurations are handled in the package.json file.

Q: Do you need to configure window names and params for them like in ow-native apps?

A: No, window creation and configuration happen in your .js / .ts files. There is no need to configure them in the package.json file.

Q: How are packages updated?

A: Every few hours your app will check for a new version of the packages. If a package is found to be outdated, then the latest one will be downloaded. Installation of the package occurs when the app is started. For more information on how to implement package updates, see `package.hasPendingUpdates.

Q: What happens when a package gets updated?

A: When a new package is installed, the previous version of the same package is deleted. Overwolf will always try and maintain stable packages for your app.

Q: Do I need to restart my app when a package gets updated?

A: Yes, you app will need to restart in order for the package to update.

Q: Will my Electron app will be another app within the Overwolf dev console?

A: Yes, your Electron app will be a new instance in the dev console. For more information, see The developer's console