"Expose on Spawn" variables in Actor Components are overridden by the value set in their Details Panel when called in another Blueprint.

This issue was reported and tested in 4.20.1 (CL-4233996). This was reproduced in 4.19.2 (CL-4033788) and Main 4.21 (CL-4247867)

Steps to Reproduce
  1. Open the UE4 Editor
  2. Create an Actor Component
  3. In the Actor Component create an Integer variable, make it Instance Editable and Exposed on Spawn.
  4. On Event BeginPlay add a Print String node and print the value of the Integer variable
  5. Create an Actor Blueprint
  6. On Event BeginPlay add the created Actor Component
  7. Select the Actor Component node, in the Details Panel set the int value to 1
  8. On the Actor Component node change the int value to 2
  9. Add the Actor Blueprint to the level and press Play

Results: The value of the details panel value will be printed.

Expected: The value of the node input should be printed.

Have Comments or More Details?

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

Login to Vote

ComponentUE - Gameplay
Affects Versions4.
Target Fix4.26
Fix Commit12342674
Main Commit13686746
CreatedAug 2, 2018
ResolvedMar 20, 2020
UpdatedJan 10, 2023