Custom C++ PAWN can't edit physics in editor

I have a custom Pawn whose header file is this:

UCLASS()
class ORLANDO_API AC_MyPawn : public APawn
{
	GENERATED_BODY()

public:
	UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "MyPawn")
	UStaticMeshComponent *		MyStaticMesh;

	// Sets default values for this pawn's properties
	AC_MyPawn (const FObjectInitializer &ObjectInitializer);

	// Called when the game starts or when spawned
	virtual void BeginPlay() override;
	
	// Called every frame
	virtual void Tick( float DeltaSeconds ) override;

	// Called to bind functionality to input
	virtual void SetupPlayerInputComponent(class UInputComponent* InputComponent) override;

	// override the event hit as that seems really slow in the blueprints
	virtual void NotifyHit(class UPrimitiveComponent* MyComp, AActor* Other, class UPrimitiveComponent* OtherComp, bool bSelfMoved, FVector HitLocation, FVector HitNormal, FVector NormalImpulse, const FHitResult& Hit) override;

	virtual bool CanEditSimulatePhysics()
	{
		return true;
	}
};

The .cpp is very simple:

// Sets default values
AC_MyPawn::AC_MyPawn(const FObjectInitializer &ObjectInitializer)
{
 	// Set this pawn to call Tick() every frame.  You can turn this off to improve performance if you don't need it.
	PrimaryActorTick.bCanEverTick = true;

	// Set my static mesh to the root component
	MyStaticMesh = ObjectInitializer.CreateDefaultSubobject<UStaticMeshComponent>(this, TEXT("StaticMesh"));
	RootComponent = MyStaticMesh;
}

I create a blue print from this, however when I look at it in the editor there seems to be no part to the physics. I can’t set simulate or not, overload mass etc it’s all blank. How can I create a class which I can then edit as a blueprint in the editor?

Well, APawn haven’t any physics at all. It is just a pawn.
UPrimitive or UStaticMesh has physics. If you want to make your pawn collide, walk, you need to add some UPrimitive-type component such as UCapsuleComponent. But either way you don’t need to turn on “Simulating physics”, Pawn controlling itself without actual physics. You can try use physics for fun, i don’t know what will happen.

So why if I add a Static Mesh Component to a Blueprint in the editor does it have physics?

Static meshes, primitives and something else i don’t know are able to simulate physics. Like i now created a pawn (pure blueprint), there is only “Should Update Physics Volume” parameter. I’am adding Capsule Component (i can do it from .cpp too) and set it as root. Pawn will NOT get any physics, but it’s new component will. Pawn will use this capsule to move, to act. I’am not sure why you need physics in pawn class. Pawn is only a pawn - even not character. It only recieves input, it can be possesed etc.

Sure, which is the same as the c++ sample above? I have a pawn, but add a staticmeshcomoment but still don’t see the simulate physics on that component?

StaticMesh->SetSimulatingPhysics(true) in initializator after setting it as a root.
If it is still not working, so Pawn blocking any physical movement… what is strange…

Did you ever find a solution to this issue? I have a Pawn with 3 static meshes connected via sockets. They have collision and I’ve set called AttachTo() and SetSimulatePhysics(true) on them in PostInitProperties() (the actual meshes are set in a blueprint-subclass so this cannot be done in the constructor). The pawn behaves as expected but I’d like to set mass etc from the editor.