Collecting other instances of this problem:
There is no apparent resolution. My temporary workaround will be to create a function per-variable-value I would have used (so BTT_SetMovementSpeed_Walking
and BTT_SetMovementSpeed_Sprinting
). This should not use variables in BTTs.
When trying to do that, it shows that UE5 is treating these Tasks as some sort of persistent value. This forum post describes this phenomenon: Variables in Behaviour Tree task. What I mean is that until I restart the editor, I will see the variables showing up in the Behavior Tree Details
panel, even though the variables were deleted from the BTT and the BTT was compiled + saved!
I can confirm that flattening the variable options I’d like to use into individual functions works around this bug, but that is super super annoying and won’t scale for anything beyond simple enums.