In UE 4.8, I have written some functions in function library, and some macros in macro library which inherited from UObject, and it worked well, I could get the right function from ‘right click filter menu’ no matter whether ‘context sensitive’ was checked. In UE 4.9, I can’t find the function name from ‘right click filter menu’ any more. Is that no supported?
So, I make a experiment. I move macros to another macro library which inherit from AActor, I get the right function again! I noticed that in UE 4.9, when I call functions that in function library, there’s always a WorldContextObject pin at the last parameter even for the very simple function that not refer to the WorldContextObject. But UE 4.8 do not have this problem. Is this the new restriction or feather in UE 4.9? Can’t I call function in function library from UObject inherited macro library any more?
Another problem is when I call a function that refer to a WorldContextObject, of course in AActor inherited macro library, I get an error when engine cook contents for windows, says:‘this blueprint (self) is not a ‘XXXFunctionLibrary’, therefore ‘Target’ must have a connection.’ For the function that not refer to WorldContextObject, it works well. This problem confuse me that AActor macro library should have a WorldContextObject itself, and the function I called belongs to a function library, does it need a self Target? why it always through the error?
I’m not sure I fully understand what is happening. Your function library functions are not able to be called in the editor is that correct? How are you setting up your function library and your macro library? If possible please include screenshots of your setup so that I can use them as a guideline to test this issue locally.
I was able to reproduce both issues that you’ve described. The World Context pin does not appear to affect the function being called and still compiles successfully, however it has been bugged (UE-22910). The Function Library/Macro Library issue was also bugged (UE-22946) for investigation.
As this seems to still not be fixed in 4.13, I am going to take your word that it still doesn’t affect function calls. Also, I tried looking up UE-22910 in the issue tracker and it gives me the unknown issue error.
UE-22910 is not publicly visible due to sensitive information. The bug report, which is specifically for the World Context pin appearing on nodes, has been closed as fixed in 4.11. If you are seeing the World Context pin on your blueprint nodes, please provide additional information and we will reopen the report as necessary.
I seem to be having a similar issue in 4.21 - I can’t get a function created in my function library from a macro library and my function library nodes have World Context pins all over the place (though not setting seems to make no difference)
Still a problem. Still very annoying. Still a big problem for clean structured code when library functions cannot be called in macro libraries. This leads to duplicate code.
Any solution or feedback from epic games?