WHAT causes the UMG REINST bug?


It’s the 4th time I’m replacing widgets on my UI because this, I just added a new class to the game and when I’ve come back to the editor all my widgets variables changed to the REINST version of the class.
While I loved BPs to UI it’s becoming boring setting widgets coordinates and variable names to just get all work thrown by the window.

What can I be doing wrong?

Thank you.

Are you compiling C++ changes with the editor open? I found that sometimes it causes classes to be replaced by REINST versions in open blueprints. If so, avoid having open and unsaved blueprints/widgets when modifying C++ code.


I didn’t figured this out on getting my last error, but I’ll pay attention (with really a lot of care) to this now.
Thank you by the advice pedro.


That’s nothing related to add/remove classes (now I’ve seen, I’m not even with VS open).

The worst is that people that got the same problem and posted on Hub got a simple:

“Our BP programmers are on this, question RESOLVED.”

That’s happening since October, maybe should be a good idea get UMG back to the Experimental Tab. LOL

UMG is getting a lot of changes in 4.6 and hopefully it’ll work better, I hope
‘and that it will play nice with others’

so far, for the most part, I’m really liking UMG. you can really set up a lot of nice looking HUDs and switch them around easily

I’m happy that others are getting better results than me.

My UI now just looks like this:


Yeah, It’s been renaming/REINST widgets for awhile now. This is why i decided to write my ui in slate.

It cause because of the cycling reference issue in blueprints - it isn’t UMG by itself but it’s core issue that will be hard to fix by Epic. As far I can know they are working on it but they don’t know when it will be fixed because they need to change core of the engine. (linker I suppose)

Nick sugest to use DISPACHERS and don’t try to set some variables in other classes from UMG - this workaround fixed my reinst issues, but not others outside UMG.

By what I’ve read, dispatchers need pass by the “level BP” to work, it’s kind of weird need to condition my game UI (that should be a level free system) to work just on levels that were prepared to manage the commands.

They don’t need to pass by the level BP, if you create UMG widget you can then assign event to dispacher in class that you have created the widget.