Non-Humanoid animal animation

I am not experienced in rigging non-humanoids, and I need help fixing a spider.

I made a spider, and rigged it. for some reason It keeps sliding off and dying.
Here is what it looks like

I looked on developer hub, I looked on the Roblox Developer Forum, I looked on Google, and I deleted all the scripts in the game, but the spider kept sliding off, I have no idea what is really happening

Something that might be important is I named the humanoid “Arachnoid”
I am not really sure if this is going to help, but here is the animation script

Animation Script
local pose = "none"
local Anims = {
idle = script.idle.Animation1,
run = script.run.RunAnim,
jump = script.jump.JumpAnim,
climb = script.climb.ClimbAnim,
gettingup = script.jump.JumpAnim,
walk = script.walk.WalkAnim,
fall = script.fall.FallAnim,
seated = script.sit.SitAnim,
swim = script.swim.SwimAnim
}
local function stopallanims()
local animas = Humanoid:GetPlayingAnimationTracks()
for i, playinganim in next, animas do
playinganim:Stop()
end
end
local function playanim(anim)
stopallanims()
local realanim = Anims[anim]
local animtrac = Humanoid:LoadAnimation(realanim) 
animtrac:Play()
animtrac.Stopped:Connect(function()
pose = "none"
end)
end
local function onIdle()
if pose ~= "idle" then
pose = "idle"
playanim("idle")
end
end
local function onDied()
stopallanims()
end
local function onRunning(speed)
if speed <= 0 then
onIdle()
elseif speed > 0 and speed < 7 then
if pose ~= "walking" then
pose = "walking"
playanim("walk")
end
elseif speed >= 8 then
if pose ~= "running" then
pose = "running"
playanim("run")
end
end
end

local function onJumping()
if pose ~= "jumping" then
pose = "jumping"
playanim("jump")
end
end
local function onClimbing()
if pose ~= "climbing" then
pose = "climbing"
playanim("climb")
end
end
local function onGettingUp()
if pose ~= "gettingup" then
pose = "gettingup"
playanim("jump")
end
end
local function onFreeFall()
if pose ~= "falling" then
pose = "falling"
playanim("fall")
end
end
local function onFallingDown()
if pose ~= "falling" then
pose = "falling"
playanim("fall")
end
end
local function onSeated()

end
local function onPlatformStanding()

end
local function onSwimming(speed)
if pose ~= "swimming" then
pose = "swimming"
playanim("swim")
end
end
onIdle()
-- Connect events
Humanoid.Died:connect(onDied)
Humanoid.Running:connect(onRunning)
Humanoid.Jumping:connect(onJumping)
Humanoid.Climbing:connect(onClimbing)
Humanoid.GettingUp:connect(onGettingUp)
Humanoid.FreeFalling:connect(onFreeFall)
Humanoid.FallingDown:connect(onFallingDown)
Humanoid.Seated:connect(onSeated)
Humanoid.PlatformStanding:connect(onPlatformStanding)
Humanoid.Swimming:connect(onSwimming)

any help would be appreciated, thanks.

1 Like

Welcome to dealing with Humanoids. I don’t blame you there’s a lot of bugs with humanoids sadly…and it’s hard to find documentation for it unless you search really hard.

However, I believe your problem is with the Humanoid hip height which is the force that causes the humanoid root part to levitate off the ground. If mismatched this might happen…

Yeah they slide.

Edit: Yeah don’t let the humanoid touch the ground or else weird physics will occur.

6 Likes

It worked, I set the humanoid(Arachnoid)'s hip height to 2, thanks for the help

1 Like