[BP] Modified inherited components don't reflect modifications in game

Hi,

I stumbled across this weird behaviour today - I guess it’s a bug. Basically the inheritance on skeletal meshes seems to be wrong when packacking a game. It always uses the skeletal mesh reference of its parent instead of its own.

Reproduction:

  1. Create an actor blueprint with a skeletal mesh component. Select any skeletal mesh you want (even “none”).
  2. Create another blueprint which is the child of the first one and select a different skeletal mesh.
  3. Place the 2nd blueprint ingame.
  4. Everything works as planned in “Play in Editor” + “Standalone Game”. However if you now “launch” the game (cooking doesn’t change anything) you will notice that the child displays the same skeletal mesh as the parent (which leads into believing the child wasn’t spawned when the parent blueprint has selected “none”).

Cheers
Theo

Edit: I guess it could be the same issue as here: Blueprint Inheritance not support in cooked/build game - Blueprint - Unreal Engine Forums

Edit2: Also Rotation Components from parent aren’t working.

Edit3: I’m getting the feeling that it could be also a problem with the map. I changed some positions of objects but this won’t show up. It somehow loads an old “version” of the map?

can anyone provide some help? :slight_smile:

Heyo Theololz,

I am unable to reproduce this in 4.7.2 using the Content Examples project and my own blueprints. What engine version are you on and what project are you using?

I wanted to follow up since it has been a couple days and see if you had any more info. If not, would you be willing to send us your project?

Thanks,

Hey ,

thanks for answering. I am using 4.7.2 and I was able to reproduce it in the Content Examples (Third Person Example). I guess I forgot one step in my initial post so I will explain every step in detail but also provide an upload of this new test-project!

  1. Create an actor blueprint.
  2. Create a child of it and add a skeletal mesh. Leave it to “none”.
  3. Create a child of the blueprint you created in step 2) and assign it a different skeletal mesh.
  4. Place the “grandchild” (step 3.) ingame and play in editor. It will be visible. Now launch the game and it will be invisible.

Download-Link: https://dl.dropboxusercontent.com/u/52802466/BugReport.zip

Hey Theololz,

I was only able to reproduce this with a packaged game. I was unable to reproduce when launching the project in game mode (opening with -game cmd argument or right clicking on the .uproject and choosing Launch Game). It was my understanding that you were seeing this behavior in both game mode and a packaged game. Is that correct?

Just want to get that straight before I go ahead and enter this bug.

Thanks,

Hey ,

yes it’s correct that I’m experiencing this behaviour in packaged game as well as in the game mode. I launched it via the button which is next to the “play in editor” button and confirmed this by right clicking the .uproject and choosing Launch Game. Same behaviour in both ways.
Thank you for your time and effort!

Cheers
Theo

Theo,

I tested some other inherited components and it doesn’t appear to be isolated to skeletal meshes. Thanks for reporting this! Good catch!

Entered as UE-11458

Thanks,

This bug has been super annoying for me. Is there a way that I can be notified when this gets fixed?

Hey Kayar,

Why certainly! I’ll post an update here when it is fixed and verified. :slight_smile:

EDIT: If you ever see a post on here that is also effecting you, we really appreciate these kind of replies. It can help bump the priority of bugs when we have multiple users affected.

Hey Kayar,

I was so frustrated by this bug that I forgot the easiest workaround. You just add a new variable, which is a skeletal mesh and in the parent construction script you say “set skeletalmesh (yourComponentSkeletalMesh)” and just drag and drop in the new variable and plug it in. This is actually done in many tutorials and I can’t think of any reason I havn’t tried it in this case. haha.
However using it this way it works also in a launched game.

Have a nice day!
~Theo

This bug has been a hassle for me too. I’m glad it’s scheduled for a fix some time.

Hey,

We’ve been banging our head against a wall for the past couple of days wondering why this wasn’t working.
We just added some inherited blueprints in 4.7.3, but we had also done a relocate of the project files around the same time and suspected that it might have been some kind of redirection issue.

However this seems exactly the same problem as we’re running into - blueprints work in Play in Editor and Standalone, but doesn’t work when cooked. This makes it very difficult for us to test on multiple machines!

It’d be good to know if there is any progress on this, since it seems fairly critical to plenty of projects actually working correctly - an ETA would be nice?

Cheers,

Hi there

I’m experiencing the same issue with variables and structs from a child blueprint being reset to their parent default values ONLY when cooked (works perfect on PlayInEditor or Standalone)

Unfortunately Theo’s solution doesn’t work with variables and structs.

I’ve subscribed to this thread… looking forwards to the fix!

Cheers
Raf

Hey [SD]MoP,

We don’t give ETA’s on bug fixes for a host of reasons, but I can tell you that it has been marked as Priority 2 (Major) and has a status of “To Do” (which is good…means that it isn’t backlogged). I get notified of any updates that happen to this bug report and will tell you all of any changes.

Hi

Any luck in getting this fixed in 4.7.4?

Cheers
R

Hi R,

Unfortunately, there is no fix for this yet.

If you’re curious about the bugs that are fixed for any given hotfix, you can see that in our Hotfix Release post on the forums.

I’m having the same problem :frowning:

Hi

Apologies for coming back to this but, has UE-11458 been fixed in the 4.8 preview?

As someone mentioned on the official release thread there are no details on the blueprint related improvements and fixes.

Thanks in advance
Raf

It wasn’t fixed directly, but appears to have been fixed by another change as I can no longer reproduce the issue in 4.8 preview.

Hi

Yesss… I’ve been testing it this morning and I can confirm the inheritance is working now on cooked games on 4.8 Preview.

I’ve tested it with all sort of variables, structs and components and so far it has worked.

Worth mentioning I’ve been testing always on 4.8 fresh projects as I’m waiting for full 4.8 release before converting our current project.

Cheers

  • R

I’m marking this as an answer, but go ahead and re-open upon release if you have trouble when converting your project.