UE5.4 / Variables inherited from Parent Blueprint reset to default value in Child Blueprint.

Yes, this is a duplicate of around 5-10 other threads and questions.
This bug has been in the engine for 9 years now and it rears its ugly head every few versions.

Please, how do I go around fixing this?

I’ve spent a month trying to fix this and think I was able to reproduce the undesired behavior in UE 5.4.

  1. Make a new project with the third person kit.
  2. Make a child of the BP_ThirdPersonCharacter.
  3. Make a new actor component, add a TestVar (String) with Instance Editable enabled and make the default value “asdf”.
  4. Add this actor component to the BP_ThirdPersonCharacter parent (not child).
  5. Drop a few of the BP_ThirdPersonCharacter_Child into a level.
  6. Set the value of TestVar differently on each child actor instance’s component in the level.
  7. Now recompile the BP_ThirdPerson_Character_Child a few times and then check the TestVar on each child actor instance in the level. They have been reset to the default value of “asdf”.

What’s odd is that sometimes the values will hold to what you’ve set (for a while), other times they reset after a single recompile of the child actor blueprint.