Guides / Commands & Data

Cabeças de Jogador por nome de usuário: como o componente de perfil funciona e por que as cabeças ficam em branco

Uma cabeça armazena um instantâneo da skin, não um link ativo. Aqui está o componente de perfil, por que uma cabeça antiga mostra a skin errada e como a busca por UUID se encaixa.

Dar a cabeça de um jogador parece que deveria ser um único argumento. É, mas o que é armazenado não é o que as pessoas esperam, e isso explica a maioria das esquisitices relacionadas a cabeças.

O comando

/give @p player_head[profile="Notch"]

O componente profile substituiu o antigo NBT SkullOwner. Trechos usando {SkullOwner:"Notch"} são pré-1.20.5 e não fazem nada agora.

O que realmente é armazenado

Uma cabeça não armazena um nome de usuário e busca a skin mais tarde. Quando a cabeça é criada, o servidor resolve o nome para um UUID e um instantâneo da textura, e o incorpora ao item:

"profile": {
  "name": "Notch",
  "id": [I; …],
  "properties": [{ "name": "textures", "value": "<base64>" }]
}

Duas consequências:

  • Uma cabeça feita há um ano mostra a skin daquele ano. O jogador mudar sua skin não atualiza as cabeças já existentes no mundo. Isso não é um bug e não há atualização.
  • As cabeças funcionam offline. Uma vez incorporadas, nenhuma chamada à API da Mojang é necessária para renderizá-las, razão pela qual as cabeças sobrevivem em servidores no modo offline, enquanto /give ... profile="Name" não resolve lá.

Por que uma cabeça está em branco ou mostra o Steve

Em ordem de probabilidade:

  1. O nome não foi resolvido. Servidor no modo offline, ou a API estava inacessível quando o comando foi executado. Nada para incorporar, então você obtém um padrão.
  2. O nome não existe. A Mojang não retorna nada para contas excluídas ou nunca registradas.
  3. Chunk não recarregado. A cabeça é resolvida assincronamente; ocasionalmente você precisa desviar o olhar e olhar de volta.

Esperar raramente ajuda — se o perfil não foi incorporado na criação, ele permanece vazio. Dê a cabeça novamente.

Cabeças personalizadas usam a textura, não um nome

Cabeças decorativas — móveis, comida, cabeças de mobs de catálogos — não têm proprietário. Elas carregam apenas o valor da textura properties com um blob base64 apontando para uma URL de textura. É por isso que são compartilháveis como um único comando give longo e por que nunca quebram quando um jogador muda de nome.

O base64 decodifica para um pequeno JSON contendo um textures.SKIN.url em textures.minecraft.net. Nada mais nele importa para a renderização.

Formatos de UUID

Existem duas formas e elas não são intercambiáveis em todos os contextos:

trimmed   069a79f444e94726a5befca90e38aaf5
dashed    069a79f4-44e9-4726-a5be-fca90e38aaf5

Comandos e NBT geralmente querem a forma com traços ou um array de inteiros. As APIs da web geralmente retornam a forma sem traços. Converter entre elas é mecânico — insira traços após 8, 12, 16 e 20 caracteres.

Dê uma cabeça a partir de um nome de usuário, navegue por catálogos de cabeças decorativas ou converta entre formatos de UUID nas Ferramentas de Cabeça de Jogador e Nome de Usuário.

Cabeças e nomes de jogador →

More guides

Browse all →

Procurando mais ferramentas de Minecraft?

Um conjunto de geradores, visualizadores e conversores que rodam no navegador — tudo grátis.