When the default value of an Instanced variable defined in C++ is changed, it is not reflected in the default value of an Actor placed on a Level.

In the reproduction procedure, when the default value of the Instanced variable is changed from Blueprint while LevelB is open, the change is not reflected in the default value of the Actor on LevelA.

On the other hand, if the default values are changed from Blueprint while LevelA is open, they are reflected immediately. This may cause problems when changing the default values.

Steps to Reproduce
  1. Open the attached project.
  2. Open DetaulfMap level.
  3. Confirm that ContextObjects[0]=MyContextObjectA for MyActor on level.
  4. Open Blank level.
  5. Open MyActor Blueprint and change the default value of the variable to ContextObjects[0]=MyContextObjectB.
  6. Open DetaulfMap level.
  7. Checking the variable for MyActor on the level, ContextObjects[0]=MyContextObjectA.**


ContextObjects[0]=MyContextObjectA in Step 7


ContextObjects[0]=MyContextObjectB (Blueprint's default value) is changed.


Have Comments or More Details?

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

Login to Vote

ComponentUE - Gameplay
Affects Versions5.0
Target Fix5.5
CreatedSep 20, 2022
UpdatedFeb 13, 2024
View Jira Issue