Crashing when setting variable - Multiplayer Access Violation reading location 0x00000000000003A0

I’ve been studying the multiplayer documentation available and been trying to apply it to my game. I’m very early into the whole process I may have misunderstood something.

My game crashes immediately when I launch it in two editor windows (client + server) netmode. One window stays black so I would I be right in thinking this means one player not possessing a pawn at begin play and thus not having anything to set?
On crash VS tells me the crash happens when I set my movement component variable in this code.

void AWRPlayerController::BeginPlay()
{
	Super::BeginPlay();

	
		//Reference casts

		CameraPawnRef = Cast<AWRPlayer>(GetPawn());
		PawnMovementRef = CameraPawnRef->PawnMovement;
	
		//show mouse
		bShowMouseCursor = true;
}

Could someone explain to me what I am misunderstanding here?

Thank you.

Just a little more context, I’ve set bReplicates to true, in addition to adding the pawnmovementref to DOREPLIFETIME.

Why not break in the code and step through those lines. Step into GetPawn and check if it returns valid value.