[4.12.3] On editor open, a Child Actor Component class gets reset to a PLACEHOLDER class

The project is a C++ project built from release source at 4.12.3.

We have a main blueprint for the menu system in our game instead of using UMG. We have a main class called Button_BP, and child classes for sliders, toggles, etc. When the engine is opened, references to the slider cast become broken and the slider class becomes a PLACEHOLDER-CLASS. For example, the Spawn Actor node for the slider cast resets to having no class, and so the subsequent inputs for all of the exposed spawn variables break their links. Also, casts to that class become “Bad Cast” nodes.

We noticed that this was also an issue in 4.7 but seems to have not been resolved (https://answers.unrealengine.com/questions/178689/child-actor-components-class-clears-on-editor-rest.html). Please let us know if we can provide any more information to help debug this issue.

Hello,

I have few questions in order to ensure I am following the correct steps to reproduce this issue:

  • Could you provide a bit more detail on your setup? What is your Button_BP based on?
  • Have you been able to reproduce this in a clean project with a simplified setup?
  • If so, can you provide repro steps that we can follow on our end?

Hello,

I am marking this topic as resolved for tracking purposes, as we have not heard from you in a few days. If this issue persists, feel free to respond to this thread. For any new issues, please create a new Answerhub topic.

Have a great day

this is happening to me as well. I have a parent class that includes a child actor component. because class inheritance is an issue with BP’s, i’ve been going into the constructor and manually setting the child actor component classes with an array so i can just use an iterator to force the correct inheritance overrides with an array for the sake of time. however, after doing this, the child classes now have a ‘placeholder class’ assigned to the child actor component. i realize this probably sounds confusing, so let me know what additional information i can provide to help with this.

[edit] ok, found some more info, which is probably already known internally, but i’ll add a note to this…
the issue basically has to do with altering parent classes or structs when they’ve already been implemented. the changes in the root class don’t propagate through the project, and thus break or corrupt a lot of things. so this issue is probably just a by-product of several bugs already in the database that have to do with class alteration propagation during development. when replacing old children with new children that are descendants from parent classes that are no longer being modified, inheritance works as intended.

Hey paradoc,

Thanks for providing the additional information. What would be helpful as far as reproducing this issue is if you can answer the questions I posted in my earlier comment. This issue seems like it may be related to a complex setup, and I have not been able to see it occurring on my end based on the tests I have performed thus far.

Hello,

I am marking this topic as resolved for tracking purposes, as we have not heard from you in a few days. If this issue persists, feel free to respond to this thread. For any new issues, please create a new Answerhub topic.

Have a great day