BP Struct pins disconnect when changing default values

I have a blueprint struct that simply contains 2 vectors. Every time I change the default values of the vectors in the blueprint, it disconnects every single one of my pins that use the struct… I split the struct into 6 float values before using it in some parts of the blueprints. Is this a known issue, or is there a workaround? I only saw some people expierencing the problem on starting their project.

update: Now when I split my struct node output pins, the variable names are all screwed up with some address or id after both the names.

update 2: see comment below for minimal project to reproduce

Restarting the editor also broke my pins again :frowning:

BuggyStruct reproduction project

I’ve attached a minimal project with a new pawn, new game mode, new struct and new level that can reproduce the bug:

  1. open the MyPawn blueprint and BuggyStruct blueprint. In the MyPawn Blueprint, note the connected pins from the BuggyStruct3 obtained from NewGameMode to the Make Vector Node.
  2. Change the default x value of Vector A on BuggyStruct blueprint.
  3. The pins from the split BuggyStruct3 to MakeVector are now disconnected.
  4. If you resplit the BuggyStruct3 in the MyPawn blueprint, the pin variable names have been screwed up. I don’t know what this means.

Hello,

I have been able to reproduce your issue, and have entered a bug report (UE-27652). Thank you for your report and for providing a test project. I will provide updates on this issue as they become available.

Have a great day

(using 4.11.2)
I believe im experiencing the same problem. I just changed the default value of a struct, ( by opening its asset file in the editor), when I changed the default value, the editor resaved every file that referenced the struct and broke its name and all connected pins, building the project now also fails due to unknown struct error, resulting in unknown cook failiure.

LogProperty:Error: UStructProperty::Serialize Loading: Property 'StructProperty /Game/GUI/MM_Options.MM_Options_C:ExecuteUbergraph_MM_Options.K2Node_MakeStruct_customization_struct'. Unknown structure.

LogInit:Display: LogClass:Warning: Property custom_struct of MM_Options_C has a struct type mismatch (tag STRUCT_REINST_customization_struct_0 != prop FallbackStruct) in package:  ../../../../Unreal Projects/Project/Content/GUI/MM_Options.uasset. If that struct got renamed, add an entry to ActiveStructRedirects.

LogInit:Display: LogClass:Warning: Property custom_struct of MM_Options_C has a struct type mismatch (tag FallbackStruct != prop customization_struct) in package:  FObjectReader. If that struct got renamed, add an entry to ActiveStructRedirects.

Any progress on this? This issue is very damanging to any existing scripts in a project!

Hey MADHOUSE,

This issue appears to have been fixed in 4.12: Unreal Engine Issues and Bug Tracker (UE-27652)

Are you experiencing the issue in a version past 4.12?

Thanks for the update!
Thats great to hear. I am still on 4.11 but should be updating to 4.13 in a couple of weeks.

Best Regards

Sorry to be a buzzkill, it’s not fixed on my side.

Could it be because I migrated from 4.10 to 4.14 and the struct didn’t get properly converted somehow ?

see my post : https://answers.unrealengine.com/questions/544765/414-adding-an-entry-in-a-custom-struct-breaks-link.html

Sometimes with fixes such as this, assets that were created in previous versions will still have issues after the changes were made.

Try recreating the asset, or a similar asset, to see if you get the same issue in a clean 4.14 project.

Let me know how that works

I tried with a new Struct, and it still breaks whenever I add a new variable and restart the editor…

LogProperty:Error:
UStructProperty::Serialize Loading:
Property ‘StructProperty
/Game/Blueprints/Game_BP/BP_GameInstance_LAZ.BP_GameInstance_LAZ_C:StructTEST.StructTEST’.
Unknown structure.

Sorry to hear that you’re still experiencing the issue. Could you give it a shot in a clean 4.14 project and if you are still able to reproduce it let me know what the repro steps are?

I haven’t seen this behavior on my end after performing a couple of tests.

Hey Sean,

It’s actually easy to repro on 4.14.2. And I believe the mistake on the description was to forget to mention the struct doesn’t break inside the blueprint where the variable is, but it breaks in others BP referencing it.

  1. Create New Project (no starter pack)
  2. Create a Blueprint GameInstance
  3. Create a Blueprint GameMode
  4. Create a Struct
  5. Add one or more items in the Struct
  6. Restart editor (not sure if mandatory to repro the issue)
  7. In the GameInstance BP, add a new variable using our newly created Struct
  8. In the GameMode BP, add a Get GameInstance, plug it to a Cast to GameInstance (the one we created) and using its output, get the Struct Variable from it.
  9. Connect it to a Break Struct and to a Print text on one of the item
  10. Restart editor
  11. Edit the Struct, add it a new Item.
  12. Restart editor and you should now get the error

LogProperty:Error: UStructProperty::Serialize Loading: Property ‘StructProperty /Game/BP_GI.BP_GI_C:GI:Struct’. Unknown structure.
LogClass:Warning: Property GI:Struct of GI:Struct has a struct type mismatch (tag STRUCT_REINST_Struct_Test_0 != prop FallbackStruct) in package: C:/Users/JohnGenova/Documents/Unreal Projects/A_DBG_Struct/Content/BP_GI.uasset. If that struct got renamed, add an entry to ActiveStructRedirects.
LogClass:Warning: Property GI:Struct of GI:Struct has a struct type mismatch (tag FallbackStruct != prop Struct_Test) in package: FObjectReader. If that struct got renamed, add an entry to ActiveStructRedirects.

Sorry for the delay.

I’ve run through your repro steps but I’m not seeing the same results on my end after following them.

When exactly are you getting that error? Is it appearing in your ouput log after restarting or does it appear when you’re compiling a blueprint?

When the editor restart, i have the error in the logs.

If you are not seeing the same results, then either you missed something during the repro or there is something special with my machine/UE. But I’ve got 4.14 for a few days, it is fresh.

Let me attach the project, try to open it and see if at least you get the error when opening it.link text

Thanks for providing the project. I’ve noticed the error in your particular project, but after creating the exact same setup on my end I’m not getting the error in the logs. I noticed you were using the Victory plugin though, which could potentially be causing issues. Have you reproduced this in project that wasn’t using that plugin?

Hey Sean,

I disabled the plugin, removed it from the engine folder and downloaded 4.14.3.

I then redid my steps as i wrote them here, and the issue occurred again.

Thanks for the information.

Since I haven’t been able to reproduce the issue and it appears that you have done so successfully a few times, would you mind creating a video running through the process so I can see exactly what it is that you’re doing? I’ve tried your steps as well as recreating the setup in the test project you sent me, which had a few additional changes from the original repro, and I was still unable to get the error to occur, unfortunately, so a video would be fantastic!

Thanks

Hello Sean,

I created a new project and recorded it all.
Please find the video here : https://www.youtube.com/watch?v=C8s3wTtN52A&feature=youtu.be

Hope that will help you repro the issue.

Thanks a lot for the video. Unfortunately, none of the support staff that I’ve recruited to test this issue have experienced the same results, even after following the video exactly and after multiple attempts.

At this time, I will mark this topic as resolved, as we are unable to reproduce the issue locally in a clean project. If you happen to discover another repro that you’d like us to try, we’d be more than happy to do so. Feel free to leave it in a comment to reopen the thread.

Have a great day