Download

Is there a good way to modify structs that are in use by blueprints?

I am having issues where when I modify a struct, it breaks in several places. Menus that are supposed to display data about this struct do not populate and actions that are dependent on the struct do nothing. However, whenever I take a closer look, the issue resolves itself.

For example, I have an item struct with a list of properties. The first element is a string for the item name. It should show up on my menu. When I see no name appears, I add a Print String node to log to the screen what it thinks the name should be (to ensure the data exists). But when I do this, the issue magically disappears. I can remove the Print to restore it to exactly how it was and the issue remains resolved.

So it seems to me that I need to save/compile all blueprints using this struct whenever it changes. Is there an easy way to do this? Or even just re-save/compile all blueprints to fix/update everything with the struct changes?

As far as I know, you hit the nail on the head with your last sentence. It’s basically what I have to do when I also modify an already existing struct.

I guess in 4.20 they added a “CompileAllBlueprints” command (https://forums.unrealengine.com/unreal-engine/feedback-for-epic/1468588-compile-all-blueprints?p=1549587#post1549587) but it crashes in 4.22.1 and has been fixed in 4.22.2 … for whenever that comes out. Hopefully that resolves the issue