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 (2)
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
- Texture2D hash changes inside of an AssetBundle when rebuilding a SpriteAtlas bundle with an empty AssetPostprocessor Script enabled
- Aniso Level still applies when Generate MipMap is disabled in Texture Import Settings
- Mipmap Limit Groups long names are not truncated when creating a new Mipmap Limit Group with a long name
- “ArgumentException: Invalid double parameter.” error is thrown when Infinity is typed into the Fixed Timestep field
- GameObject becomes gray when using HDRP and STP together on macOS
Mariusch
Dec 09, 2025 21:23
Still happens in version 1.0.13
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.