Tool Animations Overshoot

I’m currently trying to animate a sword.

For some reason my animations in Moon Animator and the default roblox animation editor are fine, but when I play my game they overshoot and look different.

How it should look:

How it actually looks:

A code snippet if anyone needs it:

local function loadAnimation(animId, humanoid)
	local animation = Instance.new("Animation")
	animation.AnimationId = animId
	return humanoid.Animator:LoadAnimation(animation)
end

local function swordActivated(sword:Tool, character, lastAttack:number)
	if sword.Enabled and checkIfAlive(character) then 
		local humanoid = character:FindFirstChild("Humanoid")

		if humanoid then
			if (tick() - lastAttack) <= 0.2 then
				-- Lunge
			else
                -- Slash
				local slashAnim = loadAnimation(Animations.Slash, humanoid)
				slashAnim:Play()
			end

			lastAttack = tick()
		end
	end
end

I already looked for answers but none of them worked for me.
I’m replacing RightGrip with a Motor6D and the character is R6.

Help is greatly appreciated!

There may be an issue with the animation priority of both the idle and the swing, if the swing is the same priority or below the idle then the 2 animations will be weighted together and that may result in whats happening here.

1 Like