An Unreal OnValidate Equivalent?

Haven’t found an easily accessible and comparable feature to Unity’s OnValidate function that meets our needs. Not one that achieves the desired results without needing to go to extreme lengths.

So far I’ve looked at:

  • Blueprint Construction.
    • Cannot set property values of Blueprint Assets in the Blueprint Editor during editor mode.
    • Executed at runtime invalidating entire process.
  • PreSave, PreEditChange or PostEditChange overrides.
    • Only work in C++, executing BlueprintNativeEvents causes the same issues as Blueprint Constructors.
  • Batch edit in the property matrix.
    • Not automated.
    • Only works when assets share exacting properties.
      • Differing child components and numbers of child components do not appear in matrix.
  • Data Validation & Editor Blueprint Utilities.
    • Cannot cast Asset Objects to Blueprint types to modify properties on themselves or their child components.
    • Editor Blueprint Utilities are not automated.

Unless I’m missing something exceedingly esoteric, you can’t modify an Actor Blueprint Asset’s properties or that of its components. I’ve been trying to find any example of an Editor Unity of any kind modifying a Blueprint Asset’s components and have come up short. It seems you need to have your BP’s inherit from C++ or use a Python Script to get anything close to a validator, both of which will alienate artists and designers. Well I guess that keeps engineers employed.