Reply To: [Bug] Version 2.7.0 silently breaks BT written in Version 2.6.4

Forums 💬 NodeCanvas ⚙️ Support [Bug] Version 2.7.0 silently breaks BT written in Version 2.6.4 Reply To: [Bug] Version 2.7.0 silently breaks BT written in Version 2.6.4

#17593
timv
Participant

    Hi,

    Thanks for your message. I have tried your package and it does solve this issue. However, there is another issue with the same ActionTask. Try running the attached scene in NodeCanvas version 2.7.0. The BT only tries to set property sharedMaterial on the CircleCollider2D. However, version 2.7.0 encounters problems when passing the argument to the set property method.

    Version 2.6.4 shows this info on the node:
    owner.set_sharedMaterial = NULL
    and this when viewing the details of the action task:
    Set Type PhysicsMaterial2D

    Version 2.7.0 shows this info instead:
    owner.set_sharedMaterial = System.Object
    and this when viewing the details of the action task:
    Set Type Object

    When running the scene I get the following exception:
    ArgumentException: failed to convert parameters
    System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) (at /Users/builduser/buildslave/mono/build/mcs/class/corlib/System.Reflection/MonoMethod.cs:192)
    System.Reflection.MethodBase.Invoke (System.Object obj, System.Object[] parameters) (at /Users/builduser/buildslave/mono/build/mcs/class/corlib/System.Reflection/MethodBase.cs:115)
    NodeCanvas.Tasks.Actions.SetProperty_Multiplatform.OnExecute () (at Assets/ParadoxNotion/NodeCanvas/Tasks/Actions/ScriptControl/Multiplatform/SetProperty_Multiplatform.cs:63)
    NodeCanvas.Framework.ActionTask.ExecuteAction (UnityEngine.Component agent, IBlackboard blackboard) (at Assets/ParadoxNotion/FlowCanvas/Framework/Runtime/Tasks/ActionTask.cs:119)
    NodeCanvas.BehaviourTrees.ActionNode.OnExecute (UnityEngine.Component agent, IBlackboard blackboard) (at Assets/ParadoxNotion/NodeCanvas/Modules/BehaviourTrees/Nodes/Leafs/ActionNode.cs:38)
    NodeCanvas.Framework.Node.Execute (UnityEngine.Component agent, IBlackboard blackboard) (at Assets/ParadoxNotion/FlowCanvas/Framework/Runtime/Graphs/Node.cs:282)
    NodeCanvas.BehaviourTrees.BehaviourTree.Tick (UnityEngine.Component agent, IBlackboard blackboard) (at Assets/ParadoxNotion/NodeCanvas/Modules/BehaviourTrees/BehaviourTree.cs:98)
    NodeCanvas.BehaviourTrees.BehaviourTree.OnGraphUpdate () (at Assets/ParadoxNotion/NodeCanvas/Modules/BehaviourTrees/BehaviourTree.cs:81)
    NodeCanvas.Framework.Graph.UpdateGraph () (at Assets/ParadoxNotion/FlowCanvas/Framework/Runtime/Graphs/Graph.cs:658)
    NodeCanvas.Framework.Graph.StartGraph (UnityEngine.Component agent, IBlackboard blackboard, Boolean autoUpdate, System.Action`1 callback) (at Assets/ParadoxNotion/FlowCanvas/Framework/Runtime/Graphs/Graph.cs:604)
    NodeCanvas.Framework.GraphOwner.StartBehaviour () (at Assets/ParadoxNotion/FlowCanvas/Framework/Runtime/Graphs/GraphOwner.cs:99)
    NodeCanvas.Framework.GraphOwner.Start () (at Assets/ParadoxNotion/FlowCanvas/Framework/Runtime/Graphs/GraphOwner.cs:196)