Value From Blueprint Details Not Used in C++ Constructor

In my actor I have:

UPROPERTY(EditAnywhere, BlueprintReadOnly, meta = (AllowPrivateAccess = true))
float TheSpecialValue = 5.0f;

In the editor I change the value and PostEditChangeProperty is called with the new value.

When I press play the constructor is called but it still has the default value.

Any Ideas? Thanks

This value is set at declaration in your header file. This need to have UPROPERTY