Child actor component data loss

Hey ,

Can you describe your setup process? Are you setting the child actor component in code or through the editor? What exactly is Holder? Is it a code class or a blueprint asset? What is the parent of Holder? If you add a new child actor component through the editor and set that to Holder, do you have the same behavior as with the code based component? Additionally, are you looking at the blueprint of your class or an instance of your blueprint from the viewport?

You can attach a zip of the asset files here to help us test the behavior or, if the assets contain sensitive information, you can instead upload them and send me a PM on the forums with a download link for privacy ) .

Good afternoon everyone,

I have a blueprint actor (our main character class) that has child actor components. I have template data set for the child actors to override the child actor defaults. However recently, we have run into a very frustrating issue.

This was our component before:

This is our child actor component now:

When I change the Child Actor Class to None, and then back to Holder, I can see the template defaults , but then I have to set the values again . As well, when I save and restart the editor, the problem is back, and I have no default options in the pane anymore.

I did a bit of digging to at least figure out when this issue occurred and I found the revision in which this was introduced so I performed a blueprint diff:

What is interesting about this diff are that the values of the properties have not actually changed. However, it is clear to me that this diff has occurred because of the following code change in its native parent class:

Its not even the same child actor component (this one is in c++) but my concern is that all the child actor template data is clumped in the binary asset. Can anyone clarify if this is the case? Is it just a coincidence that I removed that line from the constructor and now I’m having problems? Now it seems my blueprint asset is corrupt and I cannot modify the default values in my child actor component. Has anyone run into this?

Update:

When examining the property matrix, the child actor template variable is set to none. When resetting the class to Holder, I can get it to be set properly, however when saving and restarting the editor, it will be set back to none. Interestingly enough, if I choose any other class and then save/restart editor, the child actor template will be set correctly.

Hi ,

I’m uncertain as to exactly HOW it has happened.
The child actor component that was broken (with Holder as its actor) was set purely in blueprints. Holder itself is a blueprint child class of Actor. If I add a new child actor component set to class Holder it does indeed work fine. This happened on the class itself and not an instance of the class.

I was about to actually post an answer to this question because I’ve somewhat got around the issue by removing the child actor component in question completely, recompiling, closing the editor and restarting. I then re-added the child actor component under the same name and it seemed to solve it.

If it helps anyone on your side with the issue, I can send over both uassets (before and after the corruption).

Hey -

We have not heard back from you in a few days, so we are marking this post as Resolved for tracking purposes. If you are still experiencing the issue you reported, please respond to this message with additional information and we will follow up.

Cheer

Hi

I have the same issue as in the version 4.17.

I’m creating a blueprint that contains another blueprint as child actor. When assigning it, I can see the properties and modify the values. After saving, closing the editor and opening it again, when I check the blueprint the Child Actor Template is no longer available and the configuration has been missing.

Thank you.

Hey David-

How are you setting up your blueprints? Are either based on a custom code class or is all the work happening inside the editor? With two blueprints (Parent and Child), when I add Child as a ChildActorComponent to Parent then save/close/restart the project, the template and settings are still available for edit. Let me know if you have sample project that reproduces the issue.

I just saw this. I think it’s the same issue I just reported here bug report

Hopefully this will help narrow it down.

From what I can tell, if there’s a function that uses the child actor component’s actor this will happen. Even if the function isn’t used anywhere. In my example I just made the function, there are no calls to it

I have this post as well as 3DVice’s one. This is one of problems that interrupt the packaging of my project (ChildActor placeholder problem). ChildActors randomly loose their Template tabs, and refreshing them (to reset params) affect the package win/fail. All the work take place in editor. Project runs in editor successfully all the way. Sometimes refreshing the ChildActor causes Editor crash.

P.S. I start with UE 4.7 and all the time had ambivalent feeling… It’s just like Dark Souls for developers.

i’ve managed to duplicate this.

It happens when copying and pasting an existing child actor component, the pasted copy loses its template section.