NodeCanvas FSM method calls sometimes loose their values, sometimes it replaces component names with other names. These things might happen when I rename components or add fields to existing, but seem to be irregular. These irregularities need to be fixed by revisiting of even recreating each affected method call in every state and every FSM. The problem is that sometimes these issues are reported in the Debug.Log in run-time and there might not be a good way of detecting this other then to run all flows. Since I use this extensively now in life critical-to-be software, this is very worrisome. Do you recognize any of this and is there a way of knowing which changes in the code or component name will break the NodeCanvas calls?
Hello and very sorry for late reply due to summer vacation!
Hmm.. Are you referring to reflection (Script Control) related Tasks like Execute Function, Check Function, Set Property etc?
If so, can you please specify which one specifically as an example?
Are you using the Script Control tasks in the Multiplatform or the Standalone category?
What version of NodeCanvas and Unity are you using?
What Unity Scripting Runtime Version (.NET 3.5 or .Net 4.6) and what API Compatibility Level are you working with?
Please note, that in the case of Reflection based tasks (Script Control), it is normal that if you rename the class name, or the method/property/field name, then the reference to that method/property/field will be lost, but adding new fields for example should in no way create a problem.
Please let me know so that I can try and reproduce the issues you are facing.
Multiplatform (by the way, what is the difference with Standalone?)
NodeCanvas v2.92
Unity 2018.4.0f1
Scripting runtime version: .net 4.x
Api Compatibility level: .net standard 2.0
Yes I known that name changes, except for gameobject names, will break the relation. The issues I saw where not like that, sometimes component names are changed by others.
If I encounter this again I will let you know and hope to have some way to reproduce (but think this will be difficult). Mainly wanted to ask whether something like this was known to you.
Thank you for the information. I will try to see what could be wrong based on that info, but it is honestly not something I am aware of, or been reported before. Maybe you would want to try upgrading NodeCanvas to latest v2.94 as well (although I don’t think it’s relevant to that issue).
If you manage to reproduce this in any way at all (or have any clue that may lead to it), please let me know!
By the way, “Multiplatform” category tasks, work on all platforms and they are mostly there if you target AOT platforms (like iOS).
“Standalone” on the other hand, work only in JIT platforms like desktop or android. They are performance faster and a bit more robust, but they don’t work in AOT platforms.