Error - Cannot load the AnimationClipProvider service

Nope, now it’s happening for a plugin I’m working on

4 Likes

Same issue over here! Today I contacted Roblox via gmail and got a human quick answer: they sent me a link to learn how to start to build/script. Of course, I told them I already know those basic and granted more information about this recent issue. At the moment, I’m awaiting for a reply (I guess I’ll get one tomorrow). I’ll update you, guys!

6 Likes

This worked for me

Example:

viewmodel.Parent = game.Workspace
local v_idle = viewmodel.Animation.Animator:LoadAnimation(Idle)
viewmodel.Parent = game.ReplicatedStorage
14 Likes

Ah yes, that’s the way I’m doing it from now on. Although I’m convinced perhaps Roblox changed Loading Animations requiring the humanoid to be in workspace. Oh well, at least we found a “solution”.

3 Likes

Started happening with me too, out of nowhere too which is really weird. It only happens after I reset weirdly.

6 Likes

I’ve been contacting Roblox Team since last week and all they did was send me API reference links to learn how to script. I’m really upset right now.

In my case, the problem was caused by the simultaneous animation loading and the “solution” was set a random delay between 0 and 2 (and pray that animations would load at different time between that time lapse).

2 Likes

The issue i found was that the animator cannot load animations while the character’s parent is nil, before setting the :LoadAnimation(), make a repeat task.wait() loop until player.Character

3 Likes

All I got from Roblox Team:

3 Likes

It’s the first time I’ve come across it, too.

I just put in a problematic section of code, checking for the presence of a humanoid parent.


 if(not humanoid.Parent)then
        return;
    end
3 Likes

I recently solved this engine bug:

local character = workspace:WaitForChild(player.Name)
13 Likes

They are talking about how when you are trying to load an animation on a humanoid/animator in a viewmodel, how it errors rather than loading.

2 Likes

I was trying to look for other solutions but this is the only one that worked currently.

3 Likes

Does it only works with a viewmodel? Can’t I do this?:

local lastparent = humanoid.Parent
humanoid.Parent = game.Workspace
local v_idle = humanoid.Animator:LoadAnimation(Idle)
humanoid.Parent = lastparent

Thank you for reading!

1 Like

I found a solution! I had this issue annoyingly enough…

I was using a animation frame with a handler and a template to clone a rig to preview the animations, without having to press on them to see.

BELOW IS THE CODE I USED WITHIN A FOR LOOP OF THE ANIMATIONS

Steps to Solution:

for _,v in pairs(FetchedAnimationInfo) do
	local RigClone = nil
	if v.Rig == "R15" then
		RigClone = game:GetService("ReplicatedStorage"):WaitForChild('Animations').R15Rig:Clone()
	elseif v.Rig == "R6" then
		RigClone = game:GetService("ReplicatedStorage"):WaitForChild('Animations').R6Rig:Clone()
	end
	RigClone.Parent = workspace
	wait()
	local Track = Instance.new("Animation")
	Track.AnimationId = "http://www.roblox.com/asset/?id=" .. v.AnimationID
	local Animation = RigClone.Humanoid.Animator:LoadAnimation(Track)
	Animation.Looped = true
	Animation:Play()
	
	local Clone = Template:Clone()
	Clone.Name = v.Name
	Clone.AnimName.Text = v.Name .. " | " .. v.Rig
	if not Clone.Viewport:FindFirstChildOfClass("Camera") then
		local Camera = Instance.new("Camera")
		Camera.CFrame = CFrame.new(RigClone.HumanoidRootPart.Position + RigClone.HumanoidRootPart.CFrame.LookVector * 7, RigClone.HumanoidRootPart.Position)
		Clone.Viewport.CurrentCamera = Camera
		Camera.Parent = Clone.Viewport.WorldModel
		Clone.Viewport.WorldModel.PrimaryPart = RigClone.HumanoidRootPart
		RigClone.Parent = Clone.Viewport.WorldModel
		RigClone.Name = ""
	end
	Clone.Parent = Container
end

This seemed to work once I loaded in, and only shows across the client so there is absolutely NO server delay.

If you have any questions, feel free to ask!

2 Likes

this kind of works, you can replace your variable where you define your character with this and itll work (at least for me)

2 Likes

I was having this problem and extremely confused by it. Then I realized that a dysfunctional part of the code was accidentally giving players multiple copies of the script which plays the animations, causing the code to be trying to play animations simultaneously due to there being 2 copies of the same script, and fixing this fixed the Animation Clip Provider Service errors.

4 Likes

For anyone facing this problem, it’s typically caused by attempting to load an animation before the AnimationClipProvider service has loaded itself (it’s loaded by CoreScripts), to circumvent this issue you can add a small yield (delay) between the script’s execution starting and the animation loading, i.e;

local players = game:GetService("Players")
local player = players.LocalPlayer
local character = player.Character or player.CharacterAdded:Wait()
if not player:HasAppearanceLoaded() then player.CharacterAppearanceLoaded:Wait() end
local humanoid = character:WaitForChild("Humanoid")
local animator = humanoid:WaitForChild("Animator")
local animation = script:WaitForChild("Animation") --Animation placed inside script.
task.wait() --Yield here, increase delay if necessary.
local track = animator:LoadAnimation(animation)
repeat task.wait() until track.Length > 0
track:Play()
12 Likes

While using Studios multiple Clients and Servers Test feature It gave me the same error for every test client that joined. The error was limited to server scripts only so the animations played by test clients were working and i don’t think the issue happened because the server script executed before AnimationClipProvider service has loaded since resetting the test client character gave the same error again
unknown (10)

2 Likes

This is true, this is also caused if you try to apply animations onto things currently located in replicatedstorage or in an inanimate service ^

3 Likes

im currently having this issue, anyone else?

3 Likes