Macro need force compile?

Hi,

I am not sure if it s an issue, or I am doing something wrong. But I created a macro to get multiple actor from class at once.
Inputs are only exec, output is a list of actor reference(each output variables setup for each actor I want to find).

Then from input I do “Get all actors of Class”, get from array the number I want and from there try to plug it inside my outputs node. The problem is that it says it is not compatible. I was thinking that maybe I needed to compile, but The compile button is grey out, and it says “good to go”.

The thing is that it is not good to go. I can either setup all my “Get all actors of Class” then restart the engine and it works fine, another way is to switch the parents class, then switch it back. It force a recompile and let you connect.

To redo my steps :

  • create a new blueprint marco library
  • in inputs get a exec only
  • in output setup variables as reference to a certain actors as well as an exec.
  • from input connect get all actors from class then get from array (0 for example)
  • then try to connect this new found actor to the outputs variables. It will not be compatible.
  • go to class settings - > change the parent class to anything else, then back to actor
  • now all pins are compatible. (at least the one that had already a get all actors from class with the same class setup).

Am I doing something wrong?

It is to be noted that if you actually cast from the get array index to the correct class then it does connect without a force recompile. But the cast shouldn’t be necessary there.

Let me know if need more details.