Variables in blueprint have invalid type

I am trying to port over some blueprints for level generation from one UE4 project to another. I copied the content files with the blueprints and everything over to content folder of the new Project. However, when I go to open the blueprint that starts the level generation, I get the error:


The following member variables in blueprint ‘Blueprint /Game/Abhorrent/Map/BP_Level_Generator:BP_Level_Generator’ have invalid type. Would oyu like to remove them?

Connected Rooms


I have a STRUCT blueprint that the Generator uses called Connected Rooms. I believe this is what is causing the issue somehow. If I click cancel, the STRUCT inside the blueprint is all red and says invalid or unknown. I will post pictures of this as well. I also have another Blueprint that the Level generator references called BP_Level_Room and I believe that’s giving it problems too. Could it be that the generator BP can’t see the STRUCT or the Level_Room blueprints and needs to be repointed to them due to the fact that I transferred them from one project to another? Any advice would be much appreciated.

Thanks,

-Kuzzy

Hello! It can be the case of package redirects, take a look at this Core Redirects | Unreal Engine Documentation

Hey Kehel18,

I really appreciate you responding! I went and looked at the documentation you suggested and it all seems to be C++ specific. Is there any way to do Core redirects in BP? I’m willing to learn the C++ I need to in able to fix this issue but if I can get away with a work around I will lol.

Also, I’m a little confused on the wording in the documentation… Is a core redirect cross-project? I took the files from another project and just copied them over to this one. When I click the level generation BP that was brought over, it gives me the error listed above. Does Core redirect route the information regarding that BP back to the other project? And I have to specify that? Is there a better way like just fully recreating the BP level generator in this new project? Sorry for all the questions, I’m clearly new lol. Thanks again for your help so far my friend.

-Kuzzy

No, it is not C++ specific! All you need to know - redirect rules should be added to config files in both BP and C++ projects. Just C++ redirects are starting with ‘Script’. After you add some redirect rule to config, when Engine will try to resolve some class name it will apply all suitable redirect rules and that’s all.

As for cross project things - in many cases it is the same as cross package copy.

PS. But why dont you just migrate all BPs you need to another project if you only want to have them there?

Oh I think I might be understanding! I just don’t know how to use redirects at all… I’ll do some research I suppose. There aren’t any YouTube videos on it from what I saw unfortunately. How does one “migrate”? I am only taking a few blueprints and meshes from another project you are correct. Migration is the better option? Instead of just copy pasting the project files using windows file explorer? Thanks again so much for you help.

-Kuzzy