This sure seems like a bug to me at least… If I am inside a BP that is a subclass of another, any of the default “self” arguments in a node won’t compile. I have to add a new self node and connect this up to the self input. This seems like it should have worked without the extra step.
I’ve attached an image showing the issue. I’m attempting to set a variable defined in the parent class. The left side should have compiled fine without any errors to me. But I have to wire it up like on the right side to make it work.
It works fine in the parent so far. It just doesn’t make sense, self should be self, no matter if it’s the default value or passed in. There seems to be a magic cast going on in one case and not the other.
In many cases, nodes like these cannot have a value passed in automatically and must have a variable hard set for them (as you see on the right). Are you seeing this same behavior inside of the parent blueprint for the same node?
I was able to reproduce this and have entered a bug report, UE-7302, to be assessed by the development staff. For now the appropriate workaround is to pass a value into these nodes instead of using the autofill.
Does this occur in a clean, blank project with no additional content or is it limited to a specific project? Was this project converted from a previous version or made in 4.8?