Modifying a struct involved in another struct breaks all functionnalites surrounding it

When I want to add/modify variables to a struct composed of other structs (or included in another struct), all the links referencing the structs break and I cannot link them back.

The only “working” method I found is to modify/add ONE variable, saving/compiling and then closing the engine.
If I add/modify multiple variables or if I don’t restart the engine, I have the issues described above.

However it only works for a short period of time and the links end up breaking.

Hey Kaiagan-

How are you using the structs together? I’ve created a project with two structs, where one has members of the other, however I’m not sure what you mean about reference links breaking. Can you provide further detail about the issue you’re having and possible include a screenshot if it will help explain the behavior you’re seeing?

Hi ,

Kaiagan is a user of my CCG Toolkit and I just thought I would also jump in on this and give some more details about the issue we are seeing.

That is correct. When a struct is nested inside of another struct, and changes are made to that nested struct after it has been added to its parent, the linkage somehow breaks which disconnects many different elements throughout the project.

An example of this occurring:

Before making any changes to the nested structs.

Within one of the nested structs, I simply changed an already existing variable type to an array and the parent struct then fails to compile, as seen with the icon on the top left. The nested struct itself compiles fine.

At this point, the engine has also broken and unlinked references to any variable type which used this. that results in being unable to play the game, and gives what you see below.

As the project is heavily based around the data passed around in these structures, this is essentially breaking the any blueprint which has a reference and the user most of the time has no clue what has gone wrong. If you remove the nested-struct and re-add it, then a lot of the time this can fix the parent struct compile issue, however If you have already added a lot of functionality tied around the nested struct then you will need to recreate / relink any references which have spawned off the parent.

From there, the user will also be required to go through all the blueprints with unresolved compiler issues and relink any references which were disconnected in the first place.

On top of this, at times fixing these errors in the current editor session will get the user back to their previous state, but then after closing and reopening the issue re-occur and the process starts again, as mentioned by Kaiagan above.

Startup Log: [link text][4]

As you would be able to see, this could take several hours, or even several days for an in-experienced user to fix or find out where the issue lies if at all.


I have gone ahead and started a new Top Down Blueprint project which I have put together a really basic example of this and the breakage that occurs.

What I did:

  1. Created new project
  2. Added 3 new structs.
  3. Added two structs to a parent structure (No nested struct changes)
  4. Saved everything
  5. Went into the first nested struct file and added several variables of different types. Made 1 or two of them arrays.
  6. Saved, and went back to the parent struct which now appears broken and fails to compile on the nested struct.

You can find this project here: Dropbox - StructProj.zip - Simplify your life

If you delete the first broken nested struct and re-add it, then everything will compile fine. This example project does not include any references in any other blueprints but as you can see the issue can evolve into throwing a rock in a glass museum! haha

Note: This only appears to occur on nested structs. I was not able to get this to occur when all variables were held in a single structure.

If you have access to the CCG Toolkit (Marketplace) on your end, feel free to grab that and follow similar steps above to see the issue in its entiry.

Hope this helps in terms of information. I have seen a number of bugs already raised which are related to this but I feel not in its entirety. Let me know If you would like any further details.

Hey Prototype6143-

I was not able to reproduce the behavior in a new project myself, however I have used the sample project you provided to enter a report for this issue here: Unreal Engine Issues and Bug Tracker (UE-40050) . You can track the report’s status as the issue is reviewed by our development staff. Please be aware that this issue may not be prioritized or fixed soon.

Cheers

I’m also having the same issue when using structs within structs. This has caused me a ton of rework throughout the project, having to continuously go back and fix everything that was disconnected or removed. It’s been very disappointing, as I was hoping to use structs as a way to organize data more easily.

For now I’m going to have to stick with flooding a single struct with tons of variables, until this is fixed.

I am also experiencing this issue and have been following the progress of a potential fix, I noticed that the issue tracker has been changed to ‘Not fix’. I would really love to know workaround if this will never be fixed as our game is unpackagable with this error.

Thanks.

I have the same problem, as described above, in 4.18.2
I only use Blueprints, I do not use the CCG toolkit.
I’ve had no success at all recovering the project by deleting & restoring the involve structs and rewiring all references to them: the project files are just pooched. I found it way easier to go back to my last backup copy and treat nested structs as unalterable once compiled.
I see the issue tracker labels the bug as “Not Fix”, but also as “Resolved” and apparently scheduled for release in 4.19. I find that quite confusing.
If it’s not going to be fixed, Epic should at least revise their documentation.
If it is to be fixed and Epic wants, I can provide my Blueprints

Hey guys,

There appears to be a number of struct related fixes which have gone in with UE4.19. I played around with some repro’s and I did not encounter this issue, although i have likely not covered all cases. My assumption would be that this have been closed along with other related/duplicate bugs raised, so “wont fix” is really “fixed with a bunch of other stuff”.

Anyway, hope this helps.

This bug is still existent in 4.25.4, I’ve upgraded my project from 4.21 to 4.25.4, and I can no longer package with nativization inclusive set to my project.
It builds alright with Nativization disabled.

I had a similar error. Fixed it like this: Filled in all default fields for all structures

As a bonus, my project crashed when adding a field to a struct and now gets stuck at 93% on the “verifying”… I can’t open it at all. Tried deleting the saved and intermediate folders. Nothing…

delete the offending struct which sucks because it will break your data tables etc but i’ve found no other way.

structs are still horrible in blueprint

1 Like