NetMulicast not running on clients

I’m calling a netmulticast function from a server function

    /////////////////////////////////////////////// InstancedItemContainer.h
    
    UFUNCTION(Server, Reliable, WithValidation)
    		void SetupInstances();
    	bool SetupInstances_Validate() { return true; };
    	void SetupInstances_Implementation();
    
    	UFUNCTION(NetMulticast, Reliable, WithValidation)
    		virtual void AddInstance(const FTransform& WorldTransform, int32 InstanceNumber);
    	virtual bool AddInstance_Validate(const FTransform& WorldTransform, int32 InstanceNumber) { return true; };
    	virtual void AddInstance_Implementation(const FTransform& WorldTransform, int32 InstanceNumber);
    
    /////////////////////////////////////////////// InstancedItemContainer.cpp
    
    void AInstancedItemContainer::SetupInstances_Implementation()
    {

// blah blah blah                        
			AddInstance(ActorItr->Mesh->GetComponentTransform(), ActorItr->InstanceNumber);
    }
    
    void AInstancedItemContainer::AddInstance_Implementation(const FTransform& WorldTransform, int32 InstanceNumber)
    {
    	InstanceNumber = InstancedMesh->AddInstanceWorldSpace(WorldTransform);
    
    	if (Role == ROLE_Authority)
    	{
    		GEngine->AddOnScreenDebugMessage(-1, 5.f, FColor::Red, TEXT("Server!"));
    	}
    	else
    	{
    		GEngine->AddOnScreenDebugMessage(-1, 5.f, FColor::Red, TEXT("Client!"));
    	}
    }

and for some reason it only gets called on the server

49116-untitled.png

is there something im missing? the actor is replicated

figured it out. i spawned the actor only on the server because i thought that was the proper way to spawn replicated actors but that was what was messing it up

this is being called from begin play, the original code is commented:

//if (Role == ROLE_Authority)
	//{
		UWorld* const World = GetWorld();
		for (auto Iter = InstancedItemContainerClasses.CreateIterator(); Iter; Iter++)
		{
			FActorSpawnParameters SpawnParams;
			SpawnParams.Owner = this;
			SpawnParams.Instigator = Instigator;
			AInstancedItemContainer* const NewContainer = World->SpawnActor<AInstancedItemContainer>(*Iter, FVector(0, 0, 0), FRotator(0, 0, 0), SpawnParams);

			InstancedItemContainers.Add(NewContainer);

			NewContainer->SetupInstances();
		}
	//}