Animations Replicate Inconsistently

Describe the bug. Describe what is happening when the bug occurs.

When loading and playing animations from the client, animations don’t always replicate to the server. In this repo, I load and play 18 animations, but when I call :GetPlayingAnimationTracks() on the humanoid from the server, only 10 animation tracks are shown to play. So while the animations play fine for the client, they don’t replicate to the server, and other players aren’t able to see them.

Describe what you would normally expect to occur.

I would normally expect for all animations to replicate.

How often does the bug happen (Everytime/sometimes/rarely)? What are the steps that reproduce the bug? Please list them in very high detail. Provide simple example places that exhibit the bug and provide description of what you believe should be the behavior.

I play the animations in a localscript named “Animate” in StarterCharacterScripts.

animation replication bug repo.rbxl (16.5 KB)

This bug happens with a 100% consistency. Turn on “Show Active Animation Asset” under Network Settings for an easier display of the bug.

Start a test server with 1 player.

The number of active animations will always be 18 on the client and 10 on the server, so 8 animations are not replicated to the server.

Where does the bug happen (www, gametest, etc) Is it level-specific? Is it game specific? Please post a link to the place that exhibits the issue.

Would a screenshot or video help describe it to someone? If so, post one.


When did the bug start happening? If we can tie it to a specific release that helps us figure out what we broke.

I am not sure when this bug started occurring.

11 Likes

We’ve also been experiencing issues with the animator breaking and not replicating animations to other clients. I’m hoping this is the same issue if your repro is 100%, since we weren’t able to get anything consistent!

1 Like

I believe the issue being presented here is similar to the one I wrote in my post back in July, the answer I received from a Roblox Staff member was as follows:

Blockquote
You’ll want to make sure the sum of weights for all playing animations within the same priority add up to exactly 1. If the sum of weights is < 1 it blends with the result of the next lower priority. If the sum of weights is > 1 the Animator will process playing AnimationTracks until the total of weights >= 1 and then stop, ignoring any remaining playing tracks. Usually this will ignore the most recently loaded clips, but order isn’t guaranteed. I know any rational person would expect us to just normalize the weights when the total is > 1. We plan to fix this soon, but I don’t have an ETA.

I’ll link my post below in case you want to try and find more info, a solution to it hasn’t been found as far as I know, but my knowledge of the issue is very scarce.

1 Like

I was looking into this issue this afternoon and there seems like there maybe some issue with the replication of animations. I was able to reproduce the issue with the test case provided by the original poster. I will continue looking into it tomorrow and when I figure out what’s going on, I’ll update this thread.

7 Likes

I’ve found the cause of the issue with the original bit of code.

Currently, there is a limiter that prevents more than 10 unique animation from being played on the same controller (Humanoid or AnimationController) in 10 seconds.

Hopefully we’ll be able to expand this limit and perhaps give better messaging when the limit is reached.

5 Likes

Is there an ETA of when this limit may be increased that you know of (if at all)?

1 Like

No ETA at the moment since we’re still trying to understand what potential side effects increasing the limit might have.

4 Likes

Any updates around this issue? It is still impacting World // Zero and other games :frowning:

11 Likes

I was having this issue with my game, the only way I was able to fix this FULLY was limiting the amount of animations I use to 10. Hopefully they expand it soon so my TPS isn’t so BORING.

2 Likes

This issue is still affecting many of us and an ETA would be much appreciated.

3 Likes

I really need this limit to be expanded (perhaps doubled or tripled). I have numerous animations in use for different creature abilities in my game and a lot of my creatures tend to hit this limit and T-pose, which is horrendous for UX and makes my game look broken to my players.

Many of my creatures have animations for idle, walk, jump, fall, attack1, attack2, sometimes 4x neck look directions (since I have many different characters, a transform-driven solution is not sufficient), and animations for whatever special abilities they may have, e.g. hover, flap, glide, dive, swim, swim idle, and others. I plan to allow for sprinting animations, emotes, and I want multiple variants of some animations as well. This is a lot more than 10 animations, and players will absolutely be hitting the limit all the time, most particularly when transitioning between walking and flying.

This limit is way too restrictive and I frequently bump into players in my game who are hitting it while fighting, flying, or just doing a lot very quickly. At this rate I’m going to have to write a client-side animation state machine and hope that the replication speed of humanoid state / my own custom states will be fast enough to keep up with the humanoid.

If I want varied and engaging animations, once again I have to resort to rebuilding functionality Roblox should provide for me. Can this please be looked at this year?

2 Likes

We are currently looking into many improvements for the animation system this year, including working on animation replication. Hopefully we will have a solution for this, as games are increasingly wanting to use more animations for a character.

10 Likes

Can this be looked over already?

I would love for this to be looked at / fixed sometime, a limit of 10 seems unreasonably little for some games and it could dramatically improve some of the more advanced animation scripting which has been able to be done as of current.

1 Like

This is still an issue that occurs with games that have complex animations, can this be fixed please?

1 Like

Thanks for your feedback!
As you are aware, there was a “10 new animations per 10 seconds” to protect players from DDOS attacks.
We have activated two features that reduce the negative consequences of this:

  1. Successfully loaded animations no longer count against the cap.
  2. We have relaxed the cap by roughly a factor of 2.
1 Like