Custom UBlueprintFunctionLibrary functions not available with Plugin.


So basically, I’m shifting code from the core project into a plugin for practicality reasons. For some reason, my custom UBlueprintFunctionLibrary when used inside a Plugin just isn’t acknowledged by the engine (specifically UMG), yet it is if it’s in the core project. I’ve searched endlessly on here for a solution - I’m using a cloned 4.16 engine version compiled by me. Here’s a bunch of things I’ve tried.

Rebuilt project from scratch.
Deleted plugin intermediate/binaries folders and let the engine compile again.
Checked the .Build.cs to make sure it’s configured correctly.
Deleted the plugin and made it again.
Deleted the main projects Intermediate folder
Restarted the editor multiple times.

This should be easily recreated if somebody wants to look into seeing if this is a bug.

Would appreciate any help with this, it’s incredibly frustrating.

I use the same setup as you describe without issues, so it’s not inherently broken (I’m on vanilla 4.15.3 though). Is it just UMG blueprints that can’t see the library functions?

You’re amazing. Turns out it was I needed to change my modules type to Runtime. Much appreciated!

In your plugin file make sure “Type”: “Runtime” (under Modules) is set. In you Build.cs make sure you add Slate, SlateCore and UMG as dependencys. And make sure you use YOURMODULE_API right after class.

Here a working example of a Library (lots in it but you should be able to differentiate ;P)

found a solution: add a “static” specfier