Blueprint recompile invalidates references in native component

Thanks so much for the information! Starting out with a new engine, you tend to think any strange behavior is caused not by the engine but by your own clumsy fingers. It’s super-useful to know that reinstancing isn’t stable. I am currently adding the components natively and did notice the problem went away, but was worried that there was still something wrong with my setup.

And yes, you are entirely correct about Instanced. I was pretty confused about the concept until I found out about DefaultToInstanced. Looking at simple actor-component setups it looks like the default is to instance subobjects per owner instance. Until you find out about DefaultToInstanced.

I really like the whole UObject ecosystem so I’m hoping I’m not taking it too far. You get so much for free. E.g., the program mentioned above is a simple sequence of various actions, where each action’s arguments are defined by an UObject, so an NPC instance might carry quite a few of these. I was hoping there was no massive downside to this, since the upside is that I can easily define, create, edit (inline with other Slate stuff, thank you IDetailsView) and serialize actions with a minimal amount of work.

As a sidenote, this turns out to be the second time you’ve helped me out. I went through your Kantan Charts plugin a few weeks ago to brush up on graph drawing, so thanks for that too! Good stuff!