Search Issue Tracker
Fixed
Fixed in 1.0.8
Votes
1
Found in [Package]
1.0.7
Issue ID
BEHAVB-165
Regression
No
Setting a shared blackboard variable during runtime keeps the value when exiting play mode
Steps to reproduce:
- Download and open the attached project "Behavior Shared Variable Issue.zip"
- Open "scene"
- Enter play mode
- Observe the console (it should log the number 0)
- Exit play mode
- Enter play mode again
- Observe the console
Actual results: The console logs 1 indicating variables set during runtime
Expected results: The console logs 0 as variables set during runtime should reset to their default values when exiting play mode
Reproducible with versions:
1.0.7
1.0.3
Can’t test with versions
1.0.2 (blackboard asset doesn't have the Share toggle option)
Tested on (OS): MacOS (M1) 15.1.1
Notes
- Discovered on Discussions forum post
Comments (1)
Add comment
All about bugs
View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.
Latest issues
- var VisionOSEDRHeadromm has a comma instead of a dot when building with Metal Rendering App Mode and local OS localization is set to German
- IAP Catalog remove product “x” and add product “+” buttons are not consistent with other remove and add buttons in the Editor
- Performance issues in Play Mode when quickly hovering the mouse cursor over Hierarchy GameObjects
- Frame Debugger displays incorrect output when FidelityFX Super Resolution or Spatial-Temporal Upscaler is used with Temporal Anti-aliasing or Subpixel Morphological Anti-aliasing
- Crash with “Fatal Error! The file ‘MemoryStream’ is corrupted!” when adding a large number in Font Character Rects Size field
IRFM_VR
Apr 24, 2025 09:14
Hi, I'm facing the same issue, while working on version 1.0.9 and trying to assign a Monobehaviour class to the blackboard shared variable from a Class that sets the Blackboard variables (let's call it BlackboardVariableSetter).
Note that I am editing a RuntimeBlackboardAsset at runtime from a Monobehaviour class (called BlackboardVariableSetter) by running the following code in the Awake() function (simplified for brievety sake, in the snippet below):
AMonobehaviourClass newObjectValue = getNewObject();
Unity.Behavior.BlackboardVariable bbv = processRunnersBlackboard.Blackboard.Variables[0];
bbv.ObjectValue = newObjectValue; // for the sake of brievety, I'm neither checking name, nore type here
The value gets set properly the first time I enter play mode. But when I quit, the values in the blackboard asset remain set. This causes an error the next time I enter play mode and try to access the blackboard shared variables.
To make it work again, I need to manually delete all the Values of the Variables of my RuntimeBlackboardAsset in edit mode from the inspector, before entering play mode again.