Console getting spammed with warnings I don't understand: "Using deprecated KeyframeSequenceProvider to load the CurveAnimation"

The following warning is getting spammed in my developer console in-game and in-Studio:
Using deprecated KeyframeSequenceProvider to load the CurveAnimation <animation name>

Here are some examples:

  Using deprecated KeyframeSequenceProvider to load the CurveAnimation "Splatana_StartCharge[CURVES]". Automatically converting it to a KeyframeSequence, but this will be slow.
  Using deprecated KeyframeSequenceProvider to load the CurveAnimation "Splatana_Fire[CURVES]". Automatically converting it to a KeyframeSequence, but this will be slow.
  Using deprecated KeyframeSequenceProvider to load the CurveAnimation "Splatana_Fire_Uncharged[CURVES]". Automatically converting it to a KeyframeSequence, but this will be slow.

My setup:
I have a tool with a rigged mesh in it and an AnimationController which I will call :LoadAnimation() on. That’s it. I never make any use of any sort of “KeyframeSequenceProvider” and never even heard of it until now.
This is happening with a tool that doesn’t have anything special about it. It’s a tool with a couple of meshparts in it that plays animations on the character holding it with Humanoid:LoadAnimation():Play(). That’s it.
I use ContentProvider:PreloadAsync to preload the animations. See update below.

My game is having performance issues, so being told that something is “being slow” isn’t helping me right now, so here’s my question: What the heck does this even want me to do? I would like to comply - I really would - but I have no idea what it wants from me!


I’ll come back and update this post if I figure anything out.

Update:
I’ve narrowed down the issue. It has nothing to do with playing the animation. Using ContentProvider:PreloadAsync() to preload the animations causes the warnings. The odd thing is if I copy the exact same animation objects to a new, empty place and have a localscript call PreloadAsync on them there I don’t get the same warning for some reason.

I’ve worked around the issue by commenting out the line that calls PreloadAsync and now the console is nice and quiet. It’s not a very good workaround though because it makes my game objectively worse and users will experience animation pop in if I’m unable to preload them.

2 Likes

Humanoid:LoadAnimation is deprecated, try using Animator:LoadAnimation and see if that fixes it

local Animator = Humanoid:WaitForChild(“Animator”)
local AnimationTrack = Animator:LoadAnimation(PATH_TO_ANIMATION)

I could 100% be wrong, but doesn’t Animator:LoadAnimation() take an instance as its argument and not a string?

1 Like

Ah, didn’t catch that! I’ve updated the code example.

1 Like

I’ve narrowed down the issue. It has nothing to do with playing the animation. Using ContentProvider:PreloadAsync() to preload the animations causes the warnings. The odd thing is if I copy the exact same animation objects to a new, empty place and have a localscript call PreloadAsync on them there I don’t get the same warning for some reason.

I’ve worked around the issue by commenting out the line that calls PreloadAsync and now the console is nice and quiet. It’s not a very good workaround though because it makes my game objectively worse and users will experience animation pop in if I’m unable to preload them.