The Humanoid.Died event does not fire in the PlatformStanding state

Hi!
The Humanoid’s Died event does not fire when the character dies the first time. This specific issue occurs when the character’s BreakJointsOnDeath is set to false and PlatformStand is set to true. The event only fires after the player reaches 0 health a second time.

Repro file:
Repro.rbxl (58.7 KB)

4 Likes

+1, our ragdoll system was doing this and I was going crazy on why the Died event wasn’t firing.

3 Likes

This is a weird “issue” that’s always happened. And I don’t think it’s fixable on server-sided scripts.

However: I did some testing in your file, and if you check for Humanoid.Died() on a LocalScript, it does work correctly, even with PlatformStand set to true.

You could make this “server-sided” by making a RemoteEvent that fires whenever the Humanoid dies (on a LocalScript), and then, fire it to the other clients.

2 Likes

unrelated but instead of Humanoid.Dead i’d use Humanoid: GetPropertyChangedSignal("Health"):Connect(function....), just heard that its more performant anyways

3 Likes

The problem is that this method doesn’t necessarily tell you if the humanoid died. It enters the dead state on the next cycle if its health is <= 0.

I’m currently trying to implement a revive mechanic that uses this mechanic, but I’ve ran into the same issue the author of the post mentioned. Not sure if this is an engine bug or if PlatformStand is simply that old that developers should avoid using it at all.