ModTool makes it easy to add mod support to your game. It enables modders to use the Unity Editor to create scenes, prefabs and code and export them as mods for your game.
To make sure the modder's scripts or Assemblies will be compatible with the game, ModTool has a simple but powerful code validator, that lets you configure any number of requirements.
ModTool creates a custom unitypackage for each project, which includes everything to create and export mods.
Let modders use the Unity editor to create scenes, prefabs and code for your game
Scripts and assemblies are fully supported
Supports Windows, OS X, Linux and Android.
Mod conflict detection
Automatic Mod discovery
Asynchronous discovery and loading of mods.
ModTool relies heavily on AssetBundles, which means mods can only be created with the same version of Unity that was used for building the game. The exporter will check if the correct version is used and inform the user if that's not the case.
Unity can't deserialize fields of serializable types that have been loaded at runtime. This means that a Mod can't use its own serializable Types in the inspector. Serializable types that aren't loaded at runtime and are part of the game do work.
Mods have to rely on the game's project settings. E.g. Mods can not define their own new tags, layers and input axes. The created Mod exporter will include the game's project settings.