The Best Resource for Minecraft
The Best Resource for Minecraft

Spelershoofden op gebruikersnaam: hoe de profile-component werkt en waarom hoofden leeg worden

Spelershoofden op gebruikersnaam: hoe de profile-component werkt en waarom hoofden leeg worden

Een hoofd slaat een skin-momentopname op, geen live link. Hier is de profile-component, waarom een oud hoofd de verkeerde skin toont en hoe UUID-opzoeking werkt.

Een spelershoofd geven klinkt alsof het één argument zou moeten zijn. Dat is het ook, maar wat er wordt opgeslagen is niet wat mensen verwachten, en dat verklaart de meeste eigenaardigheden rondom hoofden.

Het commando

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

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

Wat er daadwerkelijk wordt opgeslagen

Een hoofd slaat niet een gebruikersnaam op om de skin later op te halen. Wanneer het hoofd wordt gemaakt, zet de server de naam om naar een UUID en een textuur-momentopname, en bakt dat in het voorwerp:

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

Twee gevolgen:

  • Een hoofd dat een jaar geleden is gemaakt, toont de skin van dat jaar. Als de speler diens skin verandert, werkt dit

hoofden die al in de wereld zijn geplaatst niet bij. Dit is geen bug en er is geen vernieuwing.

  • Hoofden werken offline. Eenmaal ingebakken is er geen Mojang API-aanroep nodig om er een te renderen, wat

verklaart waarom hoofden blijven werken op servers in offline-modus terwijl /give ... profile="Name" does not resolve there.

Waarom een hoofd leeg is of Steve toont

Op volgorde van waarschijnlijkheid:

  1. De naam kon niet worden omgezet. Server in offline-modus, of de API was onbereikbaar toen het

commando werd uitgevoerd. Niets om in te bakken, dus je krijgt een standaardversie.

  1. De naam bestaat niet. Mojang retourneert niets voor verwijderde of nooit geregistreerde

accounts.

  1. Chunk niet herladen. Het hoofd wordt asynchroon geladen; af en toe moet je even wegkijken

en weer terugkijken.

Wachten helpt zelden — als het profiel bij aanmaak niet is ingebakken, blijft het leeg. Geef het hoofd opnieuw.

Aangepaste hoofden gebruiken de textuur, niet een naam

Decoratieve hoofden — meubels, eten, mob-hoofden uit catalogi — hebben geen eigenaar. Ze bevatten alleen de 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.

De base64 decodeert naar een kleine JSON met een textures.SKIN.url on textures.minecraft.net. Nothing else in it matters for rendering.

UUID-formaten

Er bestaan twee vormen en ze zijn niet in elke context uitwisselbaar:

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

Commando's en NBT vereisen over het algemeen de vorm met koppeltekens of een integer-array. Web-API's retourneren meestal de verkorte vorm. Converteren daartussen is mechanisch — voeg koppeltekens in na 8, 12, 16 en 20 tekens.

Geef een hoofd op basis van een gebruikersnaam, blader door catalogi met decoratieve hoofden of converteer tussen UUID-formaten in de Spelershoofd- & gebruikersnaamtools.

Probeer de tool: Player Head & Username Tools →