It is possible to name variables on your base class such that the construct from class, and get class defaults nodes will not work properly. As seen below, I have a variable named ‘class’ which collides with the name of input pins on theses nodes and as a result will not work.
On the get class defaults node, attempting to drag from this pin results in the INPUT pin (class) being disconnected and dragged instead.
When I add the node I am able to select which class (Actor, character, pawn, etc.). After setting the class I can drag from any of the listed output pins shown. What class do you have going into the Get Class Defaults node from the left? Is it a custom class you’ve added to the project and if so, what class did you use as the parent?
In this case I’m using a custom class defined in blueprint, derived from the “Object” class.
I think the repro for this bug is as follows:
Make a class
Add a variable and name it "Class"
Try to drag off the pin in the get class defaults node
Admittedly, this is quite an edge case but I figured I’d bring it up so you are at least aware of it. Seems like either the editor improperly allows me to use a reserved word for my variable name, or the Get Class Defaults node can be put in a state where it cannot uniquely identify an input/output pin due to a name collision(?)
I was able to repro the issue and found that though the wire appears to be coming from the input pin, it is in fact reading from the ouput pin and can be used as expected. I have entered a bug report (UE-29446) about the incorrect visual.