AutoCreateRefTerm meta specifier resets arguments to 0

I am using 4.25.4.

  1. Create a blank new c++ project

  2. Add a new c++ class inheriting from pawn

  3. Add a new c++ class inheriting from pawn

  4. Create a new function with specifiers BlueprintCallable and meta = (AutoCreateRefTerm = “Arg1, Arg2…”) and add some default values for arguments for this function

    UFUNCTION(BlueprintCallable, meta = (AutoCreateRefTerm = "Arg1, Arg2"))

void Test(const int32& Arg1, const int32& Arg2 = 1);

  1. Add something to print those values

void AMyPawn::Test(const int32& Arg1, const int32& Arg2)


GEngine->AddOnScreenDebugMessage(-1, 5.f, FColor::Cyan, FString::Printf(TEXT("Arg1: %i, Arg2: %i"), Arg1, Arg2));


  1. Create blueprint class inheriting from pawn that you’ve created
  2. Call the function you created without changing the values of the arguments
  3. The arguments passed will always be 0


We’ve made a switch to a new bug reporting method using a more structured form. Please visit the link below for more details and report the issue using the new Bug Submission Form. Feel free to continue to use this thread for community discussion around the issue.