unreal 5 c++ blueprintimplementableevent not triggering event in blueprint

I am trying to trigger a Blueprint event from C++. The C++ class even shows up in the blueprint and can be overridden. When I call the function in code, the C++ side executes, but the blueprint event does not. Any suggestions on what could be blocking the blueprint?

Creating the Object and calling event:

ATranslaitCapture* Capture = NewObject<ATranslaitCapture>(ATranslaitCapture::StaticClass());

if (!Capture) {
	return true;
}
Capture->StopRecordEventASL();

TranslaitCapture class header:

#pragma once

#include <Engine.h>
#include "Capture.generated.h"



    UCLASS(Blueprintable)
        class ATranslaitCapture : public AActor {
        GENERATED_BODY()
        public:

            UFUNCTION(BlueprintCallable)
             void ReturnFromBP();

            //start record
            UFUNCTION(BlueprintImplementableEvent, BlueprintCallable)
             void StartRecordEventASL(const FString& filename);

            //stop record
            UFUNCTION(BlueprintImplementableEvent)
             void StopRecordEventASL();

    };

Blueprint set to display message to HUD for testing. I have also tried Log String.

Interesting, the blueprint works on a compiled/packaged game, but not when debugging in Visual Studio.

You don’t call NewObject to create objects that derive from AActor. You call UWorld::SpawnActor.

What dose this mean? There is no C++ side for BlueprintImplementableEvent functions. That tag exists only for Blueprint implementations. If you want both, you need to use BlueprintNativeEvent, but even there it will prefer the BP version over the C++ version.