Disabling Player Choice breaks custom animations

I’m trying to add custom animations to my game. The custom animations have been added via edited animation ids of the default “Animate” LocalScript found in a player’s character. I then disabled Player Choice to remove the option for players to have animations equipped through the catalogue…

However, this breaks the custom animations. Instead of a custom run animation, it plays the default run animation instead.

I’ve searched the DevForum and found no solutions. The closest I came to finding one was this topic here, but I don’t understand what the solution is exactly.

Any help is appreciated as always!

2 Likes

Just a question, did you try it with the player choice still on? If you didn’t then you should because logicaly if you remplace the base animation with the custom one then even if the player choice is still on the custom one would override the player one.

I have tried it with player choice still on, but the catalog animation overrided the custom one.

I’ve done some testing and i think i have a solution!
Create an server script which detect when a player character spawn(Join game or respawn…) then just change remplace the animation with your own.

I think I found a solution as well, though not a perfect one… Here it is:

local Character = game:GetService("Players").LocalPlayer.Character
local Animate = Character:WaitForChild("Animate")

Animate.fall.FallAnim.AnimationId = "rbxassetid://8228655177"

Animate.idle.Animation1.AnimationId = "rbxassetid://8229117416"
Animate.idle.Animation1.Weight.Value = 10
Animate.idle.Animation2.AnimationId = "rbxassetid://8229117416"
Animate.idle.Animation2.Weight.Value = 0

Animate.jump.JumpAnim.AnimationId = "rbxassetid://8228655177"

Animate.run.RunAnim.AnimationId = "rbxassetid://8228652505"

Animate.walk.WalkAnim.AnimationId = "rbxassetid://8228652505"

It doesn’t immediately play the idle animation when you first load in, past that though, it works flawlessly.

To make it play immediatly, you could do Humanoid:ChangeState(Enum.HumanoidStateType.Idle) after changing the animation to your own.

I am confused but I will assume I believe I am right about what you want. Just do the following

  1. Switch out the Players Animation ID.
  • or
  1. Swap out the Players Animation itself by changing it’s parent.

Assuming this is a local script in a button.

I’ve tried switching out the player’s animation ID already. And, I’m not really sure what you mean by swapping the player’s animation by changing its parent.

And it’s a local script in StarterCharacterScripts, not a button.

Just set the animation priority of your custom animations to something higher.