If I am currently ingame, and change my Avatar on the Site, and then use Players:GetHumanoidDescriptionFromUserIdAsync(Player.UserId) for myself on the Server or my Character Respawns via Death, my Avatar will not reset to its on-site version.
My Avatar will only correctly change to the on-site version if I manually Reset by Resetting via the Esc-Menu.
I’ve attached both a video, and the Roblox File used to demonstrate the Bug.
ShowcasingTheBug.rbxl (63.7 KB)
Here is the exact Script used to apply it’s new Humanoid Description. You can verify this with the Roblox File above:
-- SERVICES
local Players = game:GetService("Players")
local ReplicatedStorage = game:GetService("ReplicatedStorage")
-- VARIABLES
local RemoteEvent = ReplicatedStorage.RemoteEvent
-- FUNCTIONS
RemoteEvent.OnServerEvent:Connect(function(Player: Player)
local Character = Player.Character
if not Character then
return
end
local Humanoid = Character:FindFirstChild("Humanoid") :: Humanoid
if not Humanoid then
return
end
local NewHumanoidDescription = Players:GetHumanoidDescriptionFromUserIdAsync(Player.UserId)
Humanoid:ApplyDescriptionAsync(NewHumanoidDescription)
RemoteEvent:FireClient(Player)
end)
Expected behavior
When Players:GetHumanoidDescriptionFromUserIdAsync(Player.UserId) is used, it should always fetch the new HumanoidDescription that the current User ID is wearing. The Player should not have to Manually Reset to Reset the Cache, or make it clear in the documentation that the player’s HumanoidDescription will cache until they manually reset.