Private not respected in Blueprint Classes

Steps to reproduce:

  1. Create a blueprint class
  2. Add a new variable to it
  3. Set the variable to private
  4. Create a child blueprint class
  5. Open child class, and open the Class Defaults
  6. Observe that it is still possible to edit the default value of the variable

Expectation: When creating a variable inside a blueprint, it’s default value is editable in child classes. However, when enabling Private on the variable, it should no longer be accessible.

Result: The default value is still editable

What you are describing seems closer to protected in c++.

The tooltip says that it prevents the modification by child blueprints, and in a previous version it was hiding it from children.

Which version are you using?
5.1 seems to have the correct implementation
Parent class

Child class (derived)

I am using 5.1, and it still is visible and editable in Class Defaults

Seems to be a blueprint quirk :(.
Your last resort is to make a c++ base class with private variables. They aren’t even exposed in the child default values. Did a test and they are truly hidden.

Though UFunctions even if private seem to be able to be called by the child.

I’ll try that. I believe that it worked properly on 5.0, so this is probably a 5.1 bug.