Server-sided script unable to detect Humanoid

I have a LocalScript that fires the following:

game.ReplicatedStorage:WaitForChild("IFE_Values_Folder").IFE_Avatar_Function:FireServer(script.IDValue.Value, script.Parent.WorldModel.AvatarModel:FindFirstChild("Humanoid"))

And a Script which is written as follows:

game.ReplicatedStorage:WaitForChild("IFE_Values_Folder").IFE_Avatar_Function.OnServerEvent:Connect(function(player,PlayerRequest,RigModel)
	if PlayerRequest ~= nil or PlayerRequest ~= 0 then
		local desc = game.Players:GetHumanoidDescriptionFromUserId(PlayerRequest)
		RigModel:ApplyDescription(desc)
	end
end)

I am getting an error whereby the RigModel, which is a Humanoid, is seen as the Script as nil despite the fact that it exists. This interaction works perfectly fine when done from another LocalScript, just one specific one and I am unsure as to why. Any suggestions?

When is this being fired at the beginning of the game when a player joins or like in game mechanic?

It is an in-game mechanic. The parent of the LocalScript, which is a Frame, is cloned, however this has no effect since I tried putting it in another script that isn’t a cloned and got the same result.

wait so your passing through the player and the plays character?

I believe the issue is something to do with the server-side not having a client-replicated Humanoid. I will see if this is the case and mark as solution if this is the case.

instead of passing the player’s humanoid from the localscript, why don’t you just get the player’s character and humanoid server-side?

	local character = player.Character or player.CharacterAdded:Wait()
	local humanoid = character:WaitForChild("Humanoid")

(this goes into the server script)