So I’ve been using UE4 since 4.0 and like hot-reload a lot. However, when it comes to components, there is one bug, that just totally sucks the value out of it. Basically, whenever you hot reload changes to a component, the component name gets mangled into something like “HOTRELOADED_<YourComponentName>_X”, where X is the number of times you have hot reloaded. If you have any references to this component in a BP, these automatically get changed to be this new component type. Unfortunately, the nodes they are connected to, still expect the old name. Your BP will now fail to compile because it is seeing as a different type by the BP compiler. This was reported as far back as the start of Feb or earlier, but still isn’t fixed.
Not stressing too much about this, but it is an annoying issue. Especially for something of a tent-pole feature of the engine and workflow of the editor. To get around this, you have to basically quit the editor and force a rebuild of the code.
PS: Directly related bugs:
This also stops affected BPs from being able to be saved. As the BPs will reference an “private external reference”.