Hot reload for components is a mess with the "HOTRELOAD" name bug at the moment.

Bug report is here:

Steps to repro:

  • Start new project
  • Place empty actor in the level
  • Save the level and add a BP to this actor
  • Do File | Add new c++ class
  • Create new “ActorComponent” class with whatever name
  • In either XCode or Visual add a new function “void TestFunction(float value)” + it’s implementation in the cpp
  • Build
  • Go back to the editor and observe the hot reload
  • Click on actor in scene
  • Add newly created c++ component onto this actor
  • Edit the actor’s BP
  • Add a call to the components test function
  • Observe that the call function node has the correct “value” pin present
  • Go back to XCode or Visual
  • Change function and implementation to be “void TestFunction(float value, float value2)”
  • Build
  • Go back to editor and wait for hot reload
  • Notice after the hot reload that the call function node still only has one parameter pin (value)
  • Expect to see “value2” pin appear
  • Click compile on BP
  • Note the compile error about the missing pin
  • Pin still does not appear
  • Delete the call function node
  • Add it back
  • Note the “value2” pin is now present

.