Crash when calling Function on client

Hey everyone. So I’ve been trying to set up a proper demo of my game in multiplayer mode. but I’ve run into this issue where whenever I call certain functions on the client, my editor crashes. Could someone help me out and give me some suggestions as to what could be causing the crash. Here’s my code in case you need it…

BaseCharacter.cpp

void ABaseCharacter::GrabArrow()
{
	AMyProjectGameMode* gamemode = (AMyProjectGameMode*)GetWorld()->GetAuthGameMode();
	AArrow* arrow_actor = gamemode->Arrow;
	ArrowStorage = arrow_actor;
	ArrowStorage->SetActorHiddenInGame(true);
	GetWorld()->GetTimerManager().SetTimer(HoldTimerHandle, this, &ABaseCharacter::FireArrow, HoldTime, false);

	bool overlap = GrabHitbox->IsOverlappingActor(arrow_actor);

	// If the hitbox is overlapping the arrow and the player hasn't already grabbed the arrow
	if (overlap && arrow_actor->PreviousHolder != this)
	{
		// DEBUG
		GEngine->AddOnScreenDebugMessage(-1, 5.f, FColor::Yellow, TEXT("Good"));
		ArrowStorage = arrow_actor;
		ArrowStorage->SetActorHiddenInGame(true);
		GetWorld()->GetTimerManager().SetTimer(HoldTimerHandle, this, &ABaseCharacter::FireArrow, HoldTime, false);
	}

}

BaseCharacter.h

// Fill out your copyright notice in the Description page of Project Settings.

#pragma once

#include "Arrow.h"

#include "GameFramework/Character.h"
#include "BaseCharacter.generated.h"

UCLASS()
class MYPROJECT_API ABaseCharacter : public ACharacter
{
	GENERATED_BODY()


public:
	// Sets default values for this character's properties
	ABaseCharacter();

	UFUNCTION()
		void MoveForward(float Value);

	UFUNCTION()
		void MoveRight(float Value);

	UFUNCTION()
		void Jump();

	UFUNCTION()
		void StopJumping();

	UFUNCTION()
		void LookUp(float Value);

	UFUNCTION()
		void LookRight(float Value);

	UFUNCTION()
		void DoubleJump();

	UFUNCTION()
		void Sprint();
//...

	UFUNCTION()
		void DummyFunc();

	UFUNCTION()
		void GrabArrow();

//...

	
	
};