UPDATE 5:
- I removed WorldObject class reference and ActionGeneric class reference from the struct in question. ONLY then everything works (makes sense, since at this point that struct is pretty much empty). Removing just either of those class reference members was not enough. It seems the loop goes like this: WorldObject → ObjectActions component → struct variable → class reference to WorldObject
UPDATE 6: - It seems the issue is NOT about ObjectActions component referencing WorldObject or ActionGeneric. I have created class reference variables with those values and they work fine. The issue arises specifically when a struct variable has class reference members with those values.
** UPDATE 7:** - More interesting things. It seems that thing work fine if my class reference variables reference the base blueprint class, in my case ActionGeneric. However, if that variable references a child blueprint class (for example: Action_Build is a child of ActionGeneric), editor crashes on load. Furthermore, to actually be able to SET class ref variable to the child blueprint class, I first need to open that blueprint and recompile, only then would it appear in the dropdown list for the variable. Following this logic - when editor loads and finds that class ref variable with a value set to something that it has not loaded yet (nor is going to?), things break. I have had this issue before a couple of times - specifically some var values being lost/reset because assets they were referencing are not loaded. Opening/compiling would allow to set those variables to reference those assets again, but issue would repeat on editor restart.