- Create a UPROPERTY in c++ with the tag EditAnywhere.
- Go to the Blueprint editor and modify the property to any value except the default.
- Remove the EditAnywhere tag from the UPROPERTY.
- The property will not show as “modified” anywhere at all, but will silently override any c++ defaults.
Incredibly annoying to debug. Is there a way to reset the blueprint classes so that they don’t override properties which are no longer exposed to the editor?
1 Like
It’s still a UPROPERTY() which means it’s still being serialized, it doesn’t matter if it’s not editable anymore or shown in details panels. This is by design, so not a bug.
If you want it to be a UPROPERTY but don’t want it to be saved/serialized for whatever reason, mark it as Transient.
There is no way to reset them en-masse automatically. You must remove the UPROPERTY() entirely (or mark as Transient) - then resave all the assets and instances to remove that data from the serialized bulk data.
1 Like