You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Replace the reflection based API with a plugin system.
Support for another mod should be done by making a separate assembly that has Kerbalism and the mod as references. That assembly should be renamed with something like *.kerbalismplugin, and loaded conditionally by Kerbalism when the target mod is detected.
This will allow full access to the Kerbalism codebase from other mods without us requiring to implement anything specific.
In some cases, this can be unpractical. Since the target mod can't reference the plugin, the plugin must take care of extending/replacing the base mod behavior, which will likely require a bit of refactoring in the main mod assembly.
For that to work, we should likely provide a few callbacks for the main Kerbalism functions and update cycle, so people can make plugins without having to define a KSPAddon.
The text was updated successfully, but these errors were encountered:
Replace the reflection based API with a plugin system.
Support for another mod should be done by making a separate assembly that has Kerbalism and the mod as references. That assembly should be renamed with something like *.kerbalismplugin, and loaded conditionally by Kerbalism when the target mod is detected.
This will allow full access to the Kerbalism codebase from other mods without us requiring to implement anything specific.
In some cases, this can be unpractical. Since the target mod can't reference the plugin, the plugin must take care of extending/replacing the base mod behavior, which will likely require a bit of refactoring in the main mod assembly.
For that to work, we should likely provide a few callbacks for the main Kerbalism functions and update cycle, so people can make plugins without having to define a KSPAddon.
The text was updated successfully, but these errors were encountered: