Description

If a child actor component has a local offset from the parent, any of the child's variables that are set in the parent's construction script are not registered.

Workaround:
Setting child variables in parent's BeginPlay event are set as expected.

Regression:
No, behavior repro's in 4.12.5

Behavior also repro's in Main CL 3110878

Steps to Reproduce

Sample:

  1. Download Attached project
  2. PIE

Result:
Instance w/o offset shows "TRUE" while instance w/ offset shows "FALSE"

Expected: Both instances show TRUE regardless of child component offset

Setup:

  1. Open UE4 Editor (any project)
  2. Add two blueprints based on actor (ParentBP and ChildBP)
  3. Add boolean variable to ChildBP
  4. Add Branch node (checking new boolean) (TestBool)
  5. Wire Event Tick into branch
  6. Wire True exec pin to a Print String node.
  7. Add ChildActorComponent to ParentBP and set to ChildBP
  8. Drag reference to Child Actor component into construction script
  9. Drag a wire from output pin and add "Get Child Actor" node
  10. Add Cast To ChildBP node and set Object to Child Actor
  11. Wire Construction Script node into Cast node
  12. From cast node, set TestBool to true
  13. Add instance of ParentBP into level
  14. with ParentBP instance selected, set location of ChildActor component to (1.0, 0.0 , 0.0)
  15. PIE

Result:
No print string is shown in game.

Expected:
Print string from step 6 appears each tick

Have Comments or More Details?

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

1
Login to Vote

Fixed
ComponentUE - Gameplay - Blueprint
Affects Versions4.13
Target Fix4.25
Fix Commit12165466
Main Commit12165486
Release Commit12165466
CreatedSep 6, 2016
ResolvedMar 13, 2020
UpdatedJul 30, 2020