I’ve recently been fizzling around with HumanoidDescriptions and so far I haven’t seen any post mentioning the following bug that I’ve been experiencing with them.
When setting any BodyColors on the HumanoidDescription and applying it on a loaded character using Humanoid:ApplyDescription(), the server Part’s color are as defined in the HumanoidDescription, however it seems like the client BodyColors are set to the nearest BrickColor.
The bug always happens in both Website-Play mode and Solo mode, and can be seen every time by switching from the server to the client view and vice-versa. This bug has been happening for as long as I’ve been using HumanoidDescription, which dates back to 3 weeks ago.
To illustrate, I’ve set-up a Script in the ServerStorage which contains the following code:
local TESTCOLOR = Color3.fromRGB(106, 129, 81) game.Players.PlayerAdded:Connect(function(newPlayer) newPlayer.CharacterAdded:Connect(function(newChar) while newChar.Parent == nil do wait() end local newHD = Instance.new("HumanoidDescription") newHD.HeadColor = TESTCOLOR newHD.LeftArmColor = TESTCOLOR newHD.RightArmColor = TESTCOLOR newHD.TorsoColor = TESTCOLOR newHD.RightLegColor = TESTCOLOR newHD.LeftLegColor = TESTCOLOR newChar.Humanoid:ApplyDescription(newHD) local headColor = newChar.Head.Color print("Original Test Color", TESTCOLOR.r * 255, TESTCOLOR.g * 255, TESTCOLOR.b * 255) print("Character Color", headColor.r * 255, headColor.g * 255, headColor.b * 255) end) end)
The chosen color perfectly shows the difference between the Client & the Server:
The first print shows the TESTCOLOR values
The second print also shows the TESTCOLOR values which testify that the server color is correct
On the server the color is the expected color:
On the client the color is apparently set to the nearest BrickColor:
When tested with multiple players on the studio, HumanoidDescriptions works as expected:
Finally, when tested from joining the game by the website, the problem arises again:
HumanoidDescriptionReplication.rbxl (21.3 KB)