The arm is sticking out

yall know how to fix this problem with the arm?

https://gyazo.com/ae5f17da87243b09e78dd6766bd95bf5

the arm is supposed to look like that
he is still holding it as if it was a tool or something
which it is
but I have a animation on the arm

https://gyazo.com/7ff9283f282ca75159fc30b304bb1554

I was thinking of adding a cframe type script to the upper arm to adjust the position of it but I feel like it will effect the animation. Do any of yall have a fix?

1 Like

Easy solution, set the animation priority of the animation you made to “Action” via animation editor

Set the animation priority to action so that it will override the default walk animation that’s messing it up.

Edit: stratiz beat me to it

2 Likes

It is set as an action and its still happening this is my code:

local M6 = Instance.new("Motor6D") or game.Players.LocalPlayer.Character["RightHand"]:FindFirstChild("HandleMotor6D")
local OldIdle = game.Players.LocalPlayer.Character.Animate.idle:WaitForChild("Animation1").AnimationId
local Oldrun = game.Players.LocalPlayer.Character.Animate.run:WaitForChild("RunAnim").AnimationId
local Oldwalk = game.Players.LocalPlayer.Character.Animate.walk:WaitForChild("WalkAnim").AnimationId
local plr = game:GetService('Players').LocalPlayer
local Enabled = false
    
    local track
    tool.Equipped:Connect(function()
         
if not Enabled then
	        Enabled = true
	        plr.Character.Humanoid.WalkSpeed = 5
	    else
	        Enabled = false
	        plr.Character.Humanoid.WalkSpeed = 16
	    end
	
		game.Players.LocalPlayer.Character.Animate.idle:WaitForChild("Animation1").AnimationId = 'rbxassetid://2990338307'
        local M6 = Instance.new("Motor6D") or game.Players.LocalPlayer.Character["RightHand"]:FindFirstChild("HandleMotor6D")
            M6.Name = "HandleMotor6D"
    M6.Part0 = game.Players.LocalPlayer.Character["RightHand"]
    M6.Part1 = tool.Handle
    M6.C0 = CFrame.new(0, 0, 1.5)
    M6.Parent = game.Players.LocalPlayer.Character["RightHand"]    
    
            game.Players.LocalPlayer.Character.Animate.run:WaitForChild("RunAnim").AnimationId = 'rbxassetid://3002872786'
        local M6 = Instance.new("Motor6D") or game.Players.LocalPlayer.Character["RightHand"]:FindFirstChild("HandleMotor6D")
            
            
            M6.Name = "HandleMotor6D"
    M6.Part0 = game.Players.LocalPlayer.Character["RightHand"]
    M6.Part1 = tool.Handle
    M6.C0 = CFrame.new(0, 0, 1.5)
    M6.Parent = game.Players.LocalPlayer.Character["RightHand"] 
    
     game.Players.LocalPlayer.Character.Animate.walk:WaitForChild("WalkAnim").AnimationId = 'rbxassetid://3002872786'
        local M6 = Instance.new("Motor6D") or game.Players.LocalPlayer.Character["RightHand"]:FindFirstChild("HandleMotor6D")
            
            
            M6.Name = "HandleMotor6D"
    M6.Part0 = game.Players.LocalPlayer.Character["RightHand"]
    M6.Part1 = tool.Handle
    M6.C0 = CFrame.new(0, 0, 0.9)
    M6.C0 = CFrame.fromEulerAnglesXYZ(0,2,0)
	M6.Parent = game.Players.LocalPlayer.Character["RightHand"] 
    
    
    
    end)
  

tool.Unequipped:Connect(function()
       game.Players.LocalPlayer.Character.Animate.idle:WaitForChild("Animation1").AnimationId = OldIdle
     game.Players.LocalPlayer.Character.Animate.walk:WaitForChild("WalkAnim").AnimationId = Oldwalk
 game.Players.LocalPlayer.Character.Animate.run:WaitForChild("RunAnim").AnimationId = Oldrun
end) ```

Perhaps increasing the animation weight would fix it.

Otherwise exporting the animation with ‘movement’ or ‘action’ set would fix it.

Make sure that your custom walk and idle animations are set to a lower priority such as “Movement” or “Idle.”

Maybe try rotating the hammer a bit, sometimes works, happened to me for a few things.

By the looks of it you’re setting the animationId of animations already loaded in the character. A better idea would be to make a seperate animation instance thats not dependant on the characters default animations and play it over the defaults when the tool is equipped.

Hey. I’ve got a very strong feeling that the animation you’re using is out of date.

Try turning on “ReloadAssets” in your settings and restart studio:

image

Is this an entirely custom tool? Or is it a modified free model.

I really can’t think of any other explanation other than the fact that animation priorities are conflicting. There’s nothing else to it. It’s definitely not an event error and it certainly doesn’t have to do with the code. The default hold animation is being played over top of the animations.

You can resolve this by:

  • Changing the animation priority
  • Nullifying the default hold animation via stopping it (several methods to do this; one of them involves GetPlayingAnimationTracks)

I’m almost certain there’s no other explanation for this behaviour.


@LocksOfDispair

You can tell that it’s the use of a Tool instance:

  • The animation that plays when the tool is equipped
  • The events being used in the code
  • The fact that there’s a Tool existing in the backpack

Irrelevant.

2 Likes

I am having a Similar issue…

Any luck with this?

I did however notice with my animations they are different between server and the local screen…

Update, it was the toolnone animation. Not the best fix but… i pasted my idle animation in the toolnone and the animation is correct now. maybe this will help you.

you can set the animationId to “rbxassetid://0” which would stop the animation from playing at all. I usually do this because it’s the fastest way to get rid of that hideous animation.

let’s say you had custom idle animation for example a gun, it stops playing idle when you unequip it but when the animation transitions you still see a bit of toolnone animation which is annoying so that’s why I set it to 0

cc @artfvl

If the toolnone animation is bothering you or getting in the way of your animations, despite setting everything up correctly, you can:

  • Nullify the animation by replacing it (setting ids to 0)
  • Stopping the animation when it’s played
  • Forking the animate script and removing it1

1 In terms of forking the Animate script, there is a two step process to get rid of tool animations completely. I will be using a version of the animate script from the CoreScripts repository (CloneTrooper1019’s, as Roblox’s is outdated) to show:

  1. Remove toolnone, toolslash and toollunge. These tables can be found typically at the top of your script where default animations are defined.

  2. Remove the following (lines of code may vary depending on your fork or version):

And you’re set after that.

1 Like

You can use stock animate script since you can change AnimationIds by accessing children of Animate script.

Edit: I meant you didn’t clarify how to achieve those non-forking methods.

Humanoid.AnimationPlayed:Connect(function(AnimationTrack)
if AnimationTrack.Animation.Name == "ToolNoneAnim" then
AnimationTrack:Stop()
end
end)

Hello, yes.

Those are the first two things I mentioned, which are non-forking methods. The third involves forking and ridding of the code responsible for playing tool animations at all.

So, using the current animate, I did this as a “short term” fix? I currently only have two animations “multiple others ready for use” one is in the tools I’m using and the other is this idle. I can walk with animation and still play my attack animation.

Thank you for all of the responses!!!