You can write your topic however you want, but you need to answer these questions:
What do you want to achieve? Keep it simple and clear!
to get the player’s appearance
What is the issue? Include screenshots / videos if possible!
A non existant model is returned instead
local players = game:GetService('Players')
local player = players:GetPlayerFromCharacter(script.Parent)
local playerApperance = players:GetCharacterAppearanceAsync(player.UserId)
print(playerApperance)
Not sure what you’re looking for.
You only printed the Model itself, not its contents.
Did a few tests…
--ClientScript
local players = game:GetService('Players')
local player = players.LocalPlayer --for test
local playerApperance = players:GetCharacterAppearanceAsync(player.UserId)
for _, obj in ipairs(playerApperance:GetChildren()) do
print(obj.Name, obj.ClassName)
end
--ClientScript
local players = game:GetService('Players')
local player = players.LocalPlayer --for test
local info = players:GetCharacterAppearanceInfoAsync(player.UserId)
for key, value in pairs(info) do
print(key, value)
end
--SeverScript
local players = game:GetService("Players")
local insertService = game:GetService("InsertService")
players.PlayerAdded:Connect(function(player)
player.CharacterAdded:Connect(function()
local info = players:GetCharacterAppearanceInfoAsync(player.UserId)
for _, asset in ipairs(info.assets) do
local model = insertService:LoadAsset(asset.id)
for _, obj in ipairs(model:GetChildren()) do
print(obj.Name, obj.ClassName)
obj.Parent = workspace
end
end
end)
end)
GetCharacterAppearanceAsync(userId) needs to Allow HTTP Requests. (deprecated)
GetCharacterAppearanceInfoAsync and LoadAsset don’t require HTTP Requests.