OMG I found an issue for you. Infinite yield possible means it is stuck on finding that specific instance that was stated in the script. Use FindFirstChild, because if it returns nil, it returns nil instead of erroring!
I have my suspicions, but nothing concrete yet. Animation replication happens if the model is on the server, so I suspect you are animating an instance.
Putting the Humanoid in the backpack feels like an error. Is that where the motor6Ds are? I only put humanoids in the model that is moving (the character, the npc, the random object on the ground…). The backpack most likely creates an instance for the player. That Humanoid would only exist on the client(?)
Try animating from the character. It’s not concrete, but it’s a place to start.
in fact I was trying to animate the character along with a tool, it’s just that the tool animations are not replicated correctly and the scripts are inside the tool.
One sec. Something has changed. Earlier I saw reference to a second Humanoid, but that is not there anymore. I may have accidentally switched threads mid post. Going back over this code.
Oh, I see. I must be going cross-eyed today. Player is broken too! I recommend this solution here:
This will also give you the backpack, so you need one more Parent in there. Maybe it’s better at this point to eliminate Player from your script completely and fix your Character line with the extra Parent.
I tried and I no longer get the FindFirstChild error but now I get another error telling me that it cannot load the animation and it refers to the AnimationTrack variable:
OK, AnimClipProvider is a service I never use. By the look of it, you never use it either. I only see one thing wrong with that line: “AnimationTrack” is a specific object, and is a reserved name(?) Try calling it “AnimTrack”?