AC 1.62.5, Unity2017.4.2:
New to me:
Can't add component 'MonoBehaviour' to mH_BookSet1_Book1 because the game object is a generated prefab and can only be modified through an AssetPostprocessor.
UnityEngine.GameObject:AddComponent()
AC.Action:FieldToID(GameObject, Int32) (at Assets/AdventureCreator/Scripts/ActionList/Action.cs:736)
AC.ActionCharHold:ShowGUI(List`1) (at Assets/AdventureCreator/Scripts/Actions/ActionCharHold.cs:147)
AC.ActionListEditorWindow:NodeWindow(Int32) (at Assets/AdventureCreator/Scripts/ActionList/Editor/ActionListEditorWindow.cs:665)
UnityEditor.EditorWindow:BeginWindows()
AC.ActionListEditorWindow:NodesGUI(Boolean) (at Assets/AdventureCreator/Scripts/ActionList/Editor/ActionListEditorWindow.cs:876)
AC.ActionListEditorWindow:OnGUI() (at Assets/AdventureCreator/Scripts/ActionList/Editor/ActionListEditorWindow.cs:341)
UnityEngine.GUIUtility:ProcessEvent(Int32, IntPtr)
Comments
What exactly are you assigning in your Character: Hold object Action's Object to hold field? Relevant screenshots would help a lot.
Perhaps instantiation is not even allowed in this case. So does it only work with in-scene gameobjects? It does work when the book is already in the Hierarchy.
I can still give you a screenshot if more info is needed.
The error is not to do with the running of the Action, however - it's with the Action's GUI, which is trying to add a Constant ID component to the prefab (necessary for saving links between assets and scene objects).
Assigning a prefab works OK for me in the AC/Unity versions you described, but I don't know what Unity's referring to when it says "generated prefab". Is this some kind of special prefab type you've made? Does the error show when assigning a prefab from e.g. the Demo game's folder?
NullReferenceException: Object reference not set to an instance of an object
Does it prevent you assigning anything, or does it not have any effect?
It does allow me to assign stuff, it's just the frequency and length of the error message that's concerning.
Thanks for looking into it!