"From 3.0 you can use monobehaviours from dlls. The dll need to be added to any folder named Plugins inside the Assets folder.
Once there you can use the Project window at the Unity Editor to explore the DLL contents and drag and drop the monobehavior into any game object.
It works just fine!"
Well, not exactly fine... I have a lot of prefabs with various scripts as components attached to them, and none of them switch to finding the MonoBehaviour scripts that I moved to a DLL even though I can see the scripts in the assets browser (with a different icon than the ones with source code available). I was looking to set someone up for level editing without giving them everything including the script code, and this seemed like it might've worked. But it's a lot of work to go through every prefab and correctly update the monobehaviours to point to the new location in the dll. Can this be fixed in the future? Is there a workaround to programatically get the prefabs finding the scripts when they're moved to DLLs?