Character head falls through floor when you die?

  1. What do you want to achieve? Keep it simple and clear!

I want the character head not fall through the floor when you die. Simple as that.

This is a common issue ive had in my obbies for as long as i can remeber. EVERYTIME you die your head somehow falls through the floor​:face_with_raised_eyebrow::face_with_raised_eyebrow: or any other block youre standing on?

  1. What is the issue? Include enough details if possible!

Why exactly does this happen? this isnt such a big thing. But it does affect the gameplay of an obby a lot imo. Ive got no idea why this could be occuring. Ive got no collision groups set up at the moment or anything!? all i can think of is there must be some internal shmuck affecting the collision of the head when the character dies(This does occur on an empty baseplate also)

Quick vid showcasing the problem:


3. What solutions have you thought of so far?

Ive searched every corner of the internet it feels like haha but i cant find any posts that could guide me to fixing this. Like i already said. This isnt the BIGGEST problem but it does affect the gameplay quite a bit. Because lets be real here for a moment. It gets pretty annoying after a bit when you die lets say 10 times.

1 Like

This seems to be a roblox bug, along with some tools breaking. I am not sure there is much you can do, except using the humanoid.Died function to check when a player dies, then turning CanCollide on for the head.

1 Like

if I remember correctly isn’t the character’s head can-collide false anyways? like isn’t the HRP the one doing most of the collision?

1 Like

CanCollide is set to false by default on each character’s head meaning it will fall through the Baseplate once their character resets or dies.

1 Like

The cause of this issue is simple; character heads do not have CanCollide enabled by default.

To get around this, have a script change CanCollide to true when Humanoid.Died triggers, which will cause the character’s head to become solid upon death.

Here’s a script (place within ServerScriptService) that does this:

local Players = game:GetService("Players")

Players.PlayerAdded:Connect(function(Player)
	Player.CharacterAdded:Connect(function(Character)
		Character.Humanoid.Died:Once(function()
			if Character:FindFirstChild("Head") then
				Character.Head.CanCollide = true
			end
		end)
	end)
end)

Changing CanCollide to true as soon as the character spawns also works, but the head collisions can cause problems in some situations, like low ceilings.

2 Likes

Ah it was that easy… I feel so stupid now. I feel like i should have known this since ive been programmin since 2017 haha X3

2 Likes

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.