The Best Resource for Minecraft
The Best Resource for Minecraft

Teste dei giocatori per nome utente: come funziona il componente profile e perché le teste diventano vuote

Teste dei giocatori per nome utente: come funziona il componente profile e perché le teste diventano vuote

Una testa memorizza un'istantanea della skin, non un link dinamico. Ecco il componente profile, perché una vecchia testa mostra la skin errata e come si inserisce la ricerca dell'UUID.

Dare la testa di un giocatore sembra richiedere un solo argomento. È così, ma ciò che viene salvato non è quello che ci si aspetta, e questo spiega la maggior parte delle anomalie legate alle teste.

Il comando

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

Il profile component replaced the old SkullOwner NBT. Snippets using {SkullOwner:"Notch"} are pre-1.20.5 and do nothing now.

Cosa viene effettivamente salvato

Una testa non non memorizza un nome utente per poi recuperare la skin in seguito. Quando la testa viene creata, il server risolve il nome in un UUID e un'istantanea della texture, integrandola nell'oggetto:

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

Due conseguenze:

  • Una testa creata un anno fa mostra la skin di quell'anno. Il cambio di skin del giocatore

non aggiorna le teste già presenti nel mondo. Non è un bug e non esiste alcun aggiornamento.

  • Le teste funzionano offline. Una volta incorporata, non è necessaria alcuna chiamata alle API di Mojang per renderizzarla, il che

è il motivo per cui le teste rimangono visibili sui server in modalità offline, mentre /give ... profile="Name" does not resolve there.

Perché una testa è vuota o mostra Steve

In ordine di probabilità:

  1. Il nome non è stato risolto. Server in modalità offline o API non raggiungibili al momento dell'esecuzione

del comando. Niente da incorporare, quindi ottieni quella predefinita.

  1. Il nome non esiste. Mojang non restituisce nulla per account eliminati o

mai registrati.

  1. Chunk non ricaricato. La testa viene risolta in modo asincrono; a volte è necessario distogliere lo sguardo

e guardare di nuovo.

Aspettare serve a poco: se il profilo non è stato incorporato alla creazione, rimane vuoto. Riassegna la testa.

Le teste personalizzate usano la texture, non un nome

Le teste decorative (arredamento, cibo, teste di mob dai cataloghi) non hanno un proprietario. Contengono solo la properties texture value with a base64 blob pointing at a texture URL. That is why they are shareable as a single long give command and why they never break when a player renames.

La stringa base64 si decodifica in un piccolo JSON contenente un textures.SKIN.url on textures.minecraft.net. Nothing else in it matters for rendering.

Formati UUID

Esistono due forme e non sono intercambiabili in tutti i contesti:

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

I comandi e l'NBT richiedono generalmente la forma con trattini o un array di interi. Le API Web di solito restituiscono quella senza trattini. La conversione tra le due è meccanica: inserisci i trattini dopo 8, 12, 16 e 20 caratteri.

Ottieni una testa da un nome utente, sfoglia i cataloghi di teste decorative o converti i formati UUID in Strumenti per teste dei giocatori e nomi utente.

Prova lo strumento: Player Head & Username Tools →