Description

In UE versions 5.4 and onwards (as of CL 42589677 in Main), when an Instanced UObject property is defined in an Actor Blueprint, modifying the default value in the Blueprint does not propagate the change to instances of the actor already placed in the level, even with the currently open level.

This behavior differs from UE 5.3, where such changes correctly updated existing actor instances in the level, unless the property had been manually overridden in the instance.

This suggests a regression introduced in 5.4 affecting how instanced subobjects are diffed and updated between the Blueprint CDO and placed actors.

This behavior matches previously reported issues around archetype diffing of instanced properties, though the current regression appears more aggressive, as the change does not propagate even in the open level, contradicting earlier engine behavior.

 

Steps to Reproduce

Steps to reproduce:

  • Create an empty project in UE 5.4 or later
  • Create a C++ class derived from AActor and add a TObjectPtr<UObject> property.
  • Mark the property with EditAnywhere and Instanced.
  • In the editor, create a Blueprint class derived from the custom actor class and set a default value for the new property.
  • Place some instances of the actor in the level.
  • Modify the default value in the BP.

Expected result: The change is propagated to all instances in the level.
Actual result: The change is not propagated to any instance. Existing placed actors retain the default value they had at placement time.

A repro project has been attached in the thread.

Have Comments or More Details?

There's no existing public thread on this issue, so head over to Questions & Answers just mention UE-282655 in the post.

0
Login to Vote

Unresolved
ComponentUE - Foundation
Affects Versions5.45.55.65.7
CreatedMay 15, 2025
UpdatedMay 27, 2025
View Jira Issue