It's entirely possible for you to create new plug-ins for your needs, just follow these basic rules:
1. Implement the Overwolf interface
- It should be an empty constructor or a constructor that accepts an int variable (specifically, the Win32 window handle for the app window hosting your plugin).
- Your class library can contain multiple classes – however you will need a new “extra-object” entry for each class with a unique name.
2. Make your public functions accessible
public event Action<object, object> onMyEvent (where you can pass any number of object parameters).
- Your app will crash if it will try to load a plugin that declares a public event of a different form or which doesn’t pass objects.
3. Implement asynchronous functions
Our best practice is to implement asynchronous-only functions that accept a callback function triggered by completion:
public void add(int x, int y, Action<object> callback)
- Overwolf version 116.2 and all later versions will only support 64 bit CPUs, and therefore you’ll be required to compile your .DLL to target the x64 platform.
- It is recommended that plugin DLLs be compiled with the .NET 4.8 framework (using a higher/lower framework version might lead to unexpected behaviors)