Construction script on child actor doesn't execute when child actor component is moved

I have a blueprint of a grab points for a VR game. I place these as child actors on various props, and when the player grabs the prop, the hand aligns with the grab point.

However, I just noticed that when I move the grab point, the selected animinstance for it resets to the default, as it is set in the construction script (so that I can set different grip poses for each individual child actor), and the construction script doesn’t re-execute when the child actor component moves. It only updates if I compile the grab point blueprint. It also seems to rapidly switch between the versions where the construction script has executed and the one where it has not if I rotate the child actor, but whatever version it ends up as when I release the rotation widget is left up to chance. Also, when the prop blueprint is compiled, the grab point child actors use the non-executed versions, so the only way to leave them executed is to compile the grab point after editing a prop. This makes aligning these become a real hassle.

If this is not getting fixed, is there any good way to go around this issue?

Thanks.

218089-issue.gif

Hello,

After doing some digging I found that this is working by design. However, I have a workaround that may be viable depending on your needs. You could setup a custom event (within the child actor) that is callable in the editor. You can then call this custom event in the construction script of the parent actor. I hope that this information helps.

Make it a great day

Thank you, yes that might be a good solution. I could set that up in a common actor that I extend all props from so that I don’t have to do it for each one individually.

It seems a bit buggy though, that it rapidly flipflops between executing and not executing the construction script in a child actor when the child actor is rotated (and I noticed it happens when the parent actor is moved in the world too). It should either do it or not do it at all.