Guides / Commands & Data

플레이어 머리: 사용자 이름으로 얻는 머리 작동 방식과 머리가 비어 보이는 이유

머리는 실시간 링크가 아닌 스킨 스냅샷을 저장합니다. 프로필 구성 요소, 오래된 머리가 잘못된 스킨을 표시하는 이유, 그리고 UUID 조회가 어떻게 작동하는지 알아보세요.

플레이어의 머리를 주는 것은 인수가 하나만 있으면 될 것 같지만, 실제로 저장되는 것은 사람들이 예상하는 것과 다릅니다. 이것이 머리와 관련된 대부분의 이상한 현상을 설명합니다.

명령어

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

profile 구성 요소는 이전의 SkullOwner NBT를 대체했습니다. {SkullOwner:"Notch"}를 사용하는 스니펫은 1.20.5 이전 버전이며 현재는 작동하지 않습니다.

실제로 저장되는 것

머리는 사용자 이름을 저장하고 나중에 스킨을 가져오는 방식이 아닙니다. 머리가 생성될 때 서버는 이름을 UUID와 텍스처 스냅샷으로 확인하고 이를 아이템에 구워 넣습니다.

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

두 가지 결과:

  • 1년 전에 만들어진 머리는 그 해의 스킨을 보여줍니다. 플레이어가 스킨을 변경해도 이미 월드에 있는 머리는 업데이트되지 않습니다. 이것은 버그가 아니며 새로 고침 기능도 없습니다.
  • 머리는 오프라인에서 작동합니다. 일단 구워지면 렌더링을 위해 Mojang API 호출이 필요하지 않습니다. 이것이 /give ... profile="Name"가 오프라인 모드 서버에서 확인되지 않는 동안에도 머리가 작동하는 이유입니다.

머리가 비어 있거나 스티브를 표시하는 이유

가능성이 높은 순서대로:

  1. 이름이 확인되지 않았습니다. 오프라인 모드 서버이거나 명령이 실행될 때 API에 연결할 수 없었습니다. 구울 것이 없으므로 기본값이 표시됩니다.
  2. 이름이 존재하지 않습니다. Mojang은 삭제되거나 등록되지 않은 계정에 대해 아무것도 반환하지 않습니다.
  3. 청크가 다시 로드되지 않았습니다. 머리는 비동기적으로 확인됩니다. 가끔은 다른 곳을 보고 다시 봐야 할 수도 있습니다.

기다리는 것은 거의 도움이 되지 않습니다. 생성 시 프로필이 구워지지 않았다면 계속 비어 있습니다. 머리를 다시 주세요.

사용자 지정 머리는 이름이 아닌 텍스처를 사용합니다.

장식용 머리(가구, 음식, 카탈로그의 몹 머리)는 소유자가 없습니다. 이들은 텍스처 URL을 가리키는 base64 블롭과 함께 properties 텍스처 값만 가지고 있습니다. 이것이 단일 긴 give 명령으로 공유할 수 있고 플레이어가 이름을 변경해도 손상되지 않는 이유입니다.

base64는 textures.minecraft.nettextures.SKIN.url를 포함하는 작은 JSON으로 디코딩됩니다. 렌더링에 중요한 다른 것은 없습니다.

UUID 형식

두 가지 형식이 존재하며 모든 컨텍스트에서 상호 교환할 수 있는 것은 아닙니다.

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

명령어와 NBT는 일반적으로 대시가 있는 형식이나 정수 배열을 원합니다. 웹 API는 일반적으로 잘린 형식을 반환합니다. 이들 간의 변환은 기계적입니다. 8, 12, 16, 20자 뒤에 대시를 삽입하면 됩니다.

플레이어 머리 및 사용자 이름 도구에서 사용자 이름으로 플레이어 머리를 얻거나, 장식용 머리 카탈로그를 찾아보거나, UUID 형식 간에 변환할 수 있습니다.

플레이어 머리 & 닉네임 도구 →

More guides

Browse all →

다른 마인크래프트 도구도 찾고 계신가요?

브라우저에서 바로 쓰는 생성기·뷰어·변환기 모음입니다. 전부 무료입니다.