BlueprintNativeEvent in interface automatically overridden

I’ve created a native interface to expose the generic team system to blueprint. It basically wraps the generic team interface in some stuff that I need in my BP functions. Here is my interface class.

UINTERFACE()
class UTeamBPInterface : public UInterface
{
	GENERATED_UINTERFACE_BODY()
};

class ITeamBPInterface
{
	GENERATED_IINTERFACE_BODY()

	/** Assigns Team Agent to given TeamID */
	UFUNCTION(BlueprintCallable, BlueprintNativeEvent, Category = "Teams")
	void SetSameTeam(const AActor* const Other);

	/** Determines if these two are on the same team */
	UFUNCTION(BlueprintCallable, BlueprintNativeEvent, Category = "Teams")
	bool GetSameTeamAs(const AActor* const Other);
};

I also have implementations for both these functions which basically wrap the generic team ID stuff.

The problem is when I add the above interface to a BP, the GetSameTeamAs function is automatically overridden in the BP, but the SetSameTeam function is not. I don’t want either function to be overridden in the BP, I want them to use the native implementation. Am I doing something wrong, or is this a bug?

I’m curious about this too

This isn’t a pretty way to fix the issue, but if that function returns a value, then SetSameTeam will show up in the BP. I’m not 100% on exactly why that is…I think it treats functions as “Events” if they don’t return a value.

In UE 4.21.2, I’m hitting this problem, at least with the GetSameTeamAs (function) version: If I add the interface to a Blueprint, there is immediately an override generated for the BlueprintNativeEvent, with nothing attached to the return value, hiding the _Implementation default behaviour which I have customised. This seems like a bug. >_<

I am curious if the SetSameTeam (event) is getting its _Implementation hidden in the same way or not, as that would point towards whether the issue is specific to functions, or affects events too.

I am also having this issue. I was not having any issues before updating to 4.22, but now I’ve been trying everything I can and I can not get the default implementation to run…