Access Kismet Library in UObject based blueprint

I was able to fix this problem by copying this method from BTNode

UWorld* UMyCustomType::GetWorld() const
{
	if (GetOuter() == nullptr)
	{
		return nullptr;
	}

	// Special case for behavior tree nodes in the editor
	if (Cast<UPackage>(GetOuter()) != nullptr)
	{
		// GetOuter should return a UPackage and its Outer is a UWorld
		return Cast<UWorld>(GetOuter()->GetOuter());
	}

	// In all other cases...
	return GetOuter()->GetWorld();
}

Basically override GetWorld like this and graph editor will magically show kismet functions for you!

3 Likes