You are correct as far as the definition of a circular dependency.
I just resolved this bug in our 5.6 project. If this helps anyone:
I was storing an OwningBot variable in BPC_BotSense that was of type BP_BaseBot.
To resolve this, I moved OwningBot to the C++ side of the component that BPC_BotSense is derived from. It was just a hunch though, I had to store the base class BaseBot instead of the blueprint derived class.
I still cast BaseBot down to the same BP_BaseBot blueprint in the end, so I still have a circular dependency. But the issue seems more to do with having properties that are circular ![]()
