External Behavior instances on the Scene returning to defaults if BD panel open

Xanto Nemot

New member
Hi Justin,

unfortunately I have to report that I'm facing trouble with the new upgrade, the type of trouble that prevents me from being able to work on the project (unless I roll back to the older version).

The problem occurs as follows:

1. I have a BT script on an object on the Scene (it doesn't matter if it's a prefab or not, happens with both), and such BT script is driven by an External Behavior.
2. I change the settings of that BT, as I don't want it to have the same settings as the default External Behavior (it's supposed to be an instance)
3. I open the BD panel, having that object on focus.
4. I play the Scene. Variables are still what they should be.
5. I stop the Scene. Immediately, the BT goes to a state of 'There are no variables to display'. To fix this, I either have to press open on the BD Panel again or unfocus the object and focus it again.
6. After I recover the variables, unfortunately I observe that they are now in the default values of the External Behavior.

Further observations:

- This also occurs if instead of steps 4 and 5, I turn off Unity and turn it on again on the same Scene. Variables are back to defaults :S
- I have checked slightly for serialization problems with the upgrade. I noticed that the .asset (External Behavior) was stuck on the 1.6.3 version, so I basically reexported the External Behavior and reassigned the new one to the prefab I'm using.
- I have rolled back to the commit before making the upgrade and this problem did not exist.
- The problem does not present itself on BT scripts that are not External Behavior based, or if I play and stop the Scene while not having the BD Panel open.
- Version control indeed tells me that after the issue (variables restarting to default EB) occurs and I save the Scene, there are changes on the component, relative to when all the values were correct.

I link a video for clarity. The first two times I press Play is demonstrating the problem (first with prefab, then with no prefab), the third one demonstrates that if I close the BD Panel it doesn't occur (which is not comfortable to do, as I'd have to close it and open every time I play the Scene):


I'm open to giving further details for diagnosis purposes, and trying things out if it could be an isolated issue with my project.

I'd like to know if it looks like the kind of thing that could be fixed soon or if I should plan on rolling back and working on the old version for a while.

Thank you!

Xanto
 
Thanks for letting me know! Because this could affect I lot of people I just fixed it and submitted the update to the store. The version number is the same so I don't have to go through the whole new release cycle so when you see the update notification on the store go ahead and update.
 
Thanks Justin!

I tested it, and unfortunately a similar problem with the same final result occurs for me.

There is no 'There are no variables to display' part now, but in the end it is still going back to ET defaults after Play mode.

To give more certainty, note on the video that it also happens with a disabled BT, so it's not that my Behaviors are internally doing operations that change those values. (EDIT: Also, I just tried with a new ET made from scratch with one variable and no nodes (script disabled). Same problem).

Link to video of current bug flow (fullscreen to see the Play button):

 
Top