Reproduction Steps
Anchored Humanoid.Died Bug.rbxl (31.7 KB)
In this place file I have 3 LuaSourceContainers that requires your attention
The first one inside ServerScriptService handles PlayerAdded, CharacterAdded and changes the Humanoid’s properties.
The second and third creates a button that Kills the Humanoid on the Client or on the Server.
You can press either one of them and you will see that Humanoid player has Died will NEVER fire on the Server
Code
ServerScript:
local RunService = game:GetService("RunService")
game.Players.PlayerAdded:Connect(function(addedPlayer)
local player = addedPlayer
player.CharacterAdded:Connect(function(addedCharacter)
local character = addedCharacter
local humanoid: Humanoid = character:WaitForChild("Humanoid")
local rootpart: BasePart = character:WaitForChild("HumanoidRootPart")
rootpart.RootPriority = 127
end)
player.CharacterAppearanceLoaded:Connect(function(addedCharacter: Model)
RunService.Heartbeat:Wait()
local character = addedCharacter
local humanoid: Humanoid = character:WaitForChild("Humanoid")
humanoid.BreakJointsOnDeath = false
humanoid.AutomaticScalingEnabled = false
end)
end)
Expected Behavior
I expect the Humanoid to die when this is executed
humanoid.Health = 0
humanoid:ChangeState(Enum.HumanoidStateType.Dead)
Actual Behavior
The Humanoid doesn’t die and causes Humanoid.Died to NEVER fire
Issue Area: Engine
Issue Type: Humanoid State
Impact: Critical
Frequency: Constantly
Date First Experienced: 2021-07-10 00:07:00 (+07:00)
Date Last Experienced: 2021-07-31 00:07:00 (+07:00)
This started happening when this was implemented
Second revision of change switching Humanoid state replication to a property from an assembly property in physics replication.
and this FFlag
since they happen in the same time period they might correlate
Related: Humanoid.Died won't fire when Humanoid.BreakJointsOnDeath is disabled?