Modifying C++ Base Class Resets Derived Blueprint's Variables to Default after Editor Compile
I'm experiencing an issue in 4.18.1 which causes blueprint variables to reset to default values in the editor when the base C++ class's header file is changed with by adding a comment. The following steps always reproduce the issue:
If the above steps do not reset the value then follow the next steps:
I've tried these step in 4.16.3, and the issue does not exist in that older version. The variables always retain their blueprint value regardless of the number of comments and new variables I add the to base class's header file. Is 4.18.1 exhibiting the intended behavior or is this a bug? If this is intended, is there a way to retain the 4.16.3 behavior? 4.18.1 is not usable for me due to this issue.
asked Nov 19 '17 at 11:11 PM in Bug Reports
This is a known issue that has been reported here: https://issues.unrealengine.com/issue/UE-52220 . 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.
answered Nov 20 '17 at 02:09 PM
resetting the parameters each time is caused lose time to someones who have a huge project like me. i hope this issue will be resolved as soon as possible.
answered Mar 14 '18 at 03:59 PM
For anyone who this is still annoying, after waiting for 3 versions of unreal, I decided to try and track it down myself :)
Fairly new to unreal, and quite busy so not sure what the right procedure is for getting the fix in - hopefully they monitor those?
Anyway, hopefully that helps people
answered May 11 '18 at 11:42 AM
FYI, the fix will make it into the 4.20 release, but the community staffer (Steve Robb) posted Epic's software fix for us to implement in his answer to resolve the issue on the current version.
Here is his answer:
answered May 15 '18 at 03:57 PM
Still present in 4.21, from what I can tell. I voted for the issue (it is still marked unresolved) although at this point I'm not sure if that will get the job done.
Wouldn't this be one of the most important things to fix? In essence you can't develop with C++ in a productive manner. Wasn't the point of UE4 for everyone to develop in C++ so as to increase productivity? It seems to me hot-reload was developed specifically for this purpose.
I'm also experiencing another issue that might or might not be related. When hot-reloading components created in C++, has anyone experienced every instance of the component class becoming "linked" into one and the same? It would seem they all are the same instance, and some kind of archetypical instance at that. The yellow "revert" arrows disappear and changing one component's properties changes that property on all components of the same class, as well as the base value of that property on components of that class that are newly created or that have been created after the most recent hot-reload. Saving appears to actually persist this "linkage" across editor sessions.
answered Nov 24 '18 at 12:46 AM
Follow this question
Once you sign in you will be able to subscribe for any updates here