마인크래프트 자바에디션 1.21.9 – 기술적 업데이트 정리
해당 글은 마인크래프트 위키(Minecraft Wiki)의 내용을 바탕으로 작성되었습니다.
이 글의 작성에는 AI가 사용되었습니다.
일반
- 데이터 팩 버전이 88.0으로 업데이트되었습니다.
- 리소스팩 버전이 69.0으로 업데이트 되었습니다.
- pack.mcmeta 의 작성 방식이 변경되었으니 하단의 pack.mcmeta를 확인해주시기 바랍니다.
- 이제 세계의 경계는 차원별로 다르게 설정됩니다.
- 구성요소의 플레이어 프로필은 이제 자동으로 변경되었는지 확인하지 않습니다.
- 사슬의 id가 변경되었습니다. (chain -> iron_chain)
파티클
- 새로운 파티클 copper_fire_flame이 추가되었습니다.
- dragon_breath
- 새로운 선택사항 항목 power (기본값 1.0)
- 랜덤 생성 이후 속도에 곱해집니다.
- 새로운 선택사항 항목 power (기본값 1.0)
- instant_effect, effect
- 새로운 선택사항 항목 power (기본값 1.0), color (기본값 0xFFFFFF)이 추가되었습니다.
- flash
- 이제 color 항목을 요구합니다.
명령어 (Commands)
/fetchprofile (신규)
마인크래프트 서버에서 플레이어 프로필 정보를 가져오는 새로운 명령어입니다. 이 명령어는 비동기 방식으로 작동하여, 실행 중에도 게임이 멈추지 않고 완료 시점에 결과가 출력됩니다.
- 성공 시 출력 내용:
- minecraft:profile 구성 요소를 복사할 수 있는 메시지.
- 해당 구성 요소가 적용된 플레이어 머리를 얻는 /give 명령어 실행하기
- 해당 프로필이 적용된 마네킹을 소환하기
- 해당 머리를 출력할 수 있는 텍스트 구성요소 복사하기
- 문법:
- /fetchprofile name <플레이어 이름>:
- 플레이어 이름으로 프로필을 찾습니다 (대소문자 무관).
- /fetchprofile id <UUID>:
- 플레이어의 UUID로 프로필을 찾습니다.
- /fetchprofile name <플레이어 이름>:
예시: /fetchprofile name Potan7

기타 명령어 변경 사항
- /setworldspawn, /spawnpoint:
- 기존의 angle 입력이 삭제되었습니다.
- 대신 yaw와 pitch를 입력받는 rotation 입력이 추가되었습니다.

- /setworldspawn은 이제 오버월드로 한정되지 않고 다른 차원도 설정 가능합니다. (지옥에 정박이 없이 리스폰하기 등)
- 서버 명령어: 이제 서버 명령어는 항상 오버월드에서 실행되는 대신, 리스폰 차원에서 실행되는 것을 기본으로 합니다.
- /summon: 난이도가 '평화로움'일 때 몬스터를 소환하려고 하면 이제 실패합니다.
엔티티 (Entities)
플레이어 (minecraft:player)
플레이어의 리스폰 관련 데이터 구조가 변경되었습니다.
- respawn 객체 내부의 필드 변경점:
- angle 필드의 이름이 yaw로 변경되었으며, 이제 필수 항목입니다.
- pitch 필드가 새롭게 추가되었으며, 이 또한 필수 항목입니다.
- dimension 필드가 필수 항목으로 변경되었습니다.
마네킹 (minecraft:mannequin)
summon 명령어로만 소환할 수 있는 새로운 기술적 엔티티 '마네킹'이 추가되었습니다.
마네킹은 연결된 플레이어가 없는 플레이어 아바타로, 평범한 엔티티처럼 기능합니다.
장비를 착용하고, 속성 및 효과를 가지며, 피해를 입을 수 있습니다.
- 전용 NBT 데이터:
- profile (기본값: 알렉스):
- 엔티티에 표시할 플레이어 프로필입니다. minecraft:profile 구성 요소와 동일한 형식을 사용합니다.
- hidden_layers (선택사항):
- 숨길 외부 스킨 레이어 목록입니다
- cape, jacket, left_sleeve, right_sleeve, left_pants_leg, right_pants_leg, hat 등을 넣을 수 있습니다.
- 숨길 외부 스킨 레이어 목록입니다
- pose: (기본값: standing)
- 마네킹의 자세를 설정합니다
- standing, crouching, swimming, fall_flying, sleeping가 가능합니다.
- main_hand (기본값: right)
- 마네킹이 주로 사용할 손을 선택합니다.
- right, left 가 가능합니다.
- immovable (기본값: false)
- true로 설정 시 마네킹은 그 자리에 고정되서 움직이지 않습니다.
- description (기본값: "NPC"):
- 스코어보드 below_score시 플레이어의 점수가 표시되는 위치에 생성되는 텍스트 컴포넌트입니다.
- 생략 시 기본 텍스트 (entity.minecraft.mannequin.label -> "NPC") 가 설정됩니다.
- hide_description (기본값: false)
- false로 설정 시 description이 표시됩니다.
- 단, CustomNameVisible 설정이 true여야 표시됩니다.
- profile (기본값: 알렉스):

게임 규칙 (Game Rules)
서버 설정 파일(server.properties)에 있던 일부 옵션이 게임 규칙으로 이전되어, 이제 서버 실행 중에도 변경할 수 있게 되었습니다.
- allowEnteringNetherUsingPortals: 네더 포탈을 통한 네더 입장을 제어합니다 (기본값: true).
- commandBlocksEnabled: 명령어 블록의 활성화 여부를 제어합니다 (기본값: true).
- pvp: 플레이어 간의 피해를 허용할지 제어합니다 (기본값: true).
- spawnMonsters: 몬스터의 자연 스폰 여부를 제어합니다 (기본값: true).
- spawnerBlocksEnabled: 스포너 블록의 활성화 여부를 제어합니다 (기본값: true).
- spawnChunkRadius 규칙이 삭제되었습니다.
아이템 구성요소, 블록 엔티티 데이터
minecraft:profile
이전에는 스킨이 변경되면 이를 반영해 프로필 정보가 영구적으로 변경되었습니다 예상하지 못한 문제를 방지하기 위해 이제 두 가지 동작 방식으로 나뉩니다.
- 정적(Static) 프로필: properties 필드가 있을 때 또는 name과 id가 모두 있거나 모두 없을 때 적용됩니다.
- 이 상태의 프로필은 항상 주어진 정보 그대로 렌더링되며, 스킨은 컴포넌트가 생성된 시점에 고정됩니다. 장식용으로 사용하는 데 적합합니다.
- 동적(Dynamic) 프로필: name 또는 id 중 하나만 있을 때 적용됩니다.
- 이 아이템이 렌더링될 때마다 프로필이 최신 값으로 업데이트됩니다. 즉, 대상 플레이어의 현재 스킨을 항상 표시합니다.
- 스킨 변경 사항을 보려면 클라이언트를 재시작해야 할 수 있습니다.
동일한 스킨 파일을 참조하는 프로필이여도 동적 프로필과 정적 프로필 아이템은 서로 합쳐지지 않습니다.
이전 버전의 플레이어 머리들은 일반적으로 동적 프로필로 변환됩니다.
스킨 재정의
이제 프로필 구성요소에는 기존 스킨 값을 대체하는 추가 필드를 넣을 수 있습니다.
- 새로운 재정의 필드:
- texture
- 적용할 스킨의 네임스페이스 ID입니다.
- textures 폴더에 .png 접미사를 붙여 설정합니다.
- 만약 올바르지 않을 경우 기본 스킨이 아닌 미싱 텍스쳐가 설정됩니다.
- cape (선택사항)
- 적용할 망토 텍스쳐의 네임스페이스 ID입니다.
- texture 항목과 동일한 형식을 사용하며 올바르지 않을 경우 미싱 텍스쳐가 설정됩니다.
- 설정되지 않을 경우 망토는 표시되지 않습니다.
- elytra (선택사항)
- 적용할 겉날개 텍스쳐의 네임스페이스 ID입니다.
- texture 항목과 동일한 형식을 사용하며 올바르지 않을 경우 미싱 텍스쳐가 설정됩니다.
- 설정되지 않을 경우 망토 텍스쳐를 쓰거나 기본 겉날개 텍스쳐를 사용합니다.
- model (기본값 "slim")
- wide, slime 중 하나로 스킨의 클래식, 슬림 설정과 같습니다.
- texture
minecraft:block_attacks 구성요소
만약 감소되는 데미지가 0일 경우 공격으로 인해 비활성 되지 않으며 차단으로 인한 넉백을 발생시키지 않습니다.
예시: 각도 제한 밖에서 들어오는 도끼 공격에 의해 방패가 비활성화되지 않음
해골 (minecraft:skull)
- profile 필드가 아이템의 minecraft:profile 구성 요소와 동일한 형식으로 변경되었습니다.
- 이에 따라 이제 profile 필드는 변경 불가능하며, 필요한 경우에만 정보가 해석됩니다
텍스트 구성 요소 (Text Component)
object 구성 요소
- object라는 새로운 유형의 텍스트 구성 요소가 추가되었습니다. 이 구성 요소를 사용하면 스프라이트 아틀라스에 있는 단일 스프라이트를 텍스트의 일부처럼 표시할 수 있습니다. 이제 문자 외의 다른 객체도 텍스트의 일부로 표시할 수 있도록 업데이트되었습니다.
- 형식
- type: "object" : 해당 구성요소가 object임을 설정합니다. nbt 구성요소처럼 생략이 가능하나 적는 것을 추천합니다.
- <표시할 오브젝트>
- 아틀라스
- 스프라이트 아틀라스에 있는 단일 스프라이트를 표시합니다.
- 리소스팩의 assets/minecraft/atlases에 아틀라스가 있습니다.
- 형식
- atlas (기본값: minecraft:blocks)
- 스프라이트 아틀라스의 네임스페이스 ID입니다.
- sprite
- 아틀라스 속 스프라이트의 네임스페이스 ID입니다.
- atlas (기본값: minecraft:blocks)

- 플레이어
- 플레이어 머리를 표시합니다.
- 일부 프로필 항목만 제공될 경우 플레이어 머리의 profile 구성요소와 동일하게 처리합니다.
- 형식
- player
- name (선택사항)
- 플레이어의 닉네임입니다.
- id (선택사항)
- 플레이어의 uuid 입니다.
- properties (선택사항)
- 프로필 속성 오브젝트입니다.
- name (선택사항)
- hat (기본값: true)
- 모자 레이어를 표시할 지 여부입니다.
- player

run_command 클릭 이벤트:
- 이전에는 서명이 필요한 명령어가 발동하면 조용히 무시되었지만 (/say, /me, /msg, /tell, /w, /teammsg, /tm 등)
- 이제는 해당 명령어를 채팅창에 입력하거나 클립보드에 복사할 수 있는 확인 화면을 표시합니다
pack.mcmeta
- 팩 버전에 마이너 버전이 추가되었습니다.(.x)
- 마이너 버전이 달라도 메이저 버전이 같으면 호환됩니다.
- pack.mcmeta 형식이 변경되었습니다:
- supported_formats 필드가 제거되었습니다.
- pack_format 필드는 이제 선택 사항입니다.
- 단, 데이터팩 82 버전 미만, 리소스팩 65버전 미만의 버전을 지원하는 팩에는 필수입니다.
- min_format (필수):
- 지원하는 최소 팩 버전을 지정합니다.
- 두개의 정수 목록 (메이저, 마이너)으로 이루어집니다. (예: [74, 1]).
- 하나의 정수나 단일 정수 목록으로 입력 시 마이너는 0으로 처리됩니다. (예: 74 = [74] = [74, 0])
- max_format (필수): 지원하는 최대 팩 버전을 지정합니다.
- 지원하는 최대 팩 버전을 지정합니다.
- 두개의 정수 목록 (메이저, 마이너)으로 이루어집니다. (예: 74, 5])
- 하나의 정수나 단일 정수 목록으로 입력 시 마이너는 int 최대치로 처리됩니다. (예: 74 = [74] = [74, 0x7fffffff)
- overlays
- formats 항목이 삭제되고 min_format, max_format 항목이 새로 추가되었습니다.
- formats 항목은 pack_format 처럼 구 팩을 지원시 추가되어야 합니다.
- min_format, max_format은 위의 항목과 동일한 형식을 사용합니다.
- formats 항목이 삭제되고 min_format, max_format 항목이 새로 추가되었습니다.
/datapack create 명령어를 사용해서 제작한 데이터팩의 pack.mcmeta

전리품 테이블 (Loot Tables)
신규 전리품 테이블 유형
상호작용에 따른 전리품을 설정할 수 있는 새로운 유형들이 추가되었습니다.
- minecraft:entity_interact: 엔티티와 상호작용 시 작동하는 새로운 전리품 테이블 유형입니다.
- target_entity: 상호작용의 대상이 되는 엔티티.
- interacting_entity: target entity와 상호작용하는 엔티티 (선택 사항).
- tool: 상호작용에 사용된 도구.
- minecraft:block_interact: 블록과 상호작용 시 작동하는 새로운 전리품 테이블 유형입니다.
- block_state: 상호작용 대상 블록의 상태.
- block_entity: 상호작용 대상 블록의 블록 엔티티 (선택 사항).
- interacting_entity: block entity와 상호작용하는 엔티티 (선택 사항).
- tool: 상호작용에 사용된 도구 (선택 사항).
- entity_properties.entity와 같이 대상을 지정하는 필드에서 target_entity와 interacting_entity를 사용할 수 있습니다.
신규 전리품 테이블 목록
- 충전된 크리퍼에게 죽은 몹들이 드랍하는 아이템을 결정하는 charged_creeper/root 전리품 테이블이 추가되었습니다.
- 이 전리품 테이블은 충전된 크리퍼에게 몹이 죽을 때 해당하는 전리품 테이블에 전달됩니다.
- charged_creeper/piglin, charged_creeper/creeper, charged_creeper/skeleton, charged_creeper/wither_skeleton, charged_creeper/zombie
- 만약 이 전리품 테이블을 통해 아이템이 드랍했을 경우 동일한 크리퍼에게 죽은 다른 몹들은 이 전리품 테이블을 통해 아이템을 드랍하지 않습니다.
- 이 전리품 테이블은 충전된 크리퍼에게 몹이 죽을 때 해당하는 전리품 테이블에 전달됩니다.
- brush/armadillo: 아르마딜로를 솔질했을 때의 드롭을 결정합니다.
- gameplay/turtle_grow: 아기 거북이 성체로 자랄 때의 드롭을 결정합니다.
- harvest/beehive: 벌집이나 벌통에서 가위로 수확했을 때의 드롭을 결정합니다.
- harvest/cave_vine: 발광 열매가 달린 동굴 덩굴과 상호작용하여 수확했을 때의 드롭을 결정합니다.
- harvest/sweet_berry_bush: 달콤한 열매가 달린 덤불과 상호작용하여 수확했을 때의 드롭을 결정합니다.
- carve/pumpkin: 호박을 가위로 조각했을 때의 드롭을 결정합니다.
전리품 함수 및 조건자 (Loot Functions & Predicates)
- 전리품 함수 (Loot Functions)
- minecraft:fill_player_head:
- entity 필드가 새로운 엔티티 값을 받습니다.
- target_entity, interacting_entity
- entity 필드가 새로운 엔티티 값을 받습니다.
- minecraft:set_lore:
- entity 필드가 새로운 엔티티 값을 받습니다.
- target_entity ,interacting_entity
- entity 필드가 새로운 엔티티 값을 받습니다.
- minecraft:copy_custom_data:
- source필드가 새로운 엔티티 값을 받습니다.
- target_entity, interacting_entity
- source필드가 새로운 엔티티 값을 받습니다.
- minecraft:copy_name:
- source 필드가 새로운 엔티티 값을 받습니다.
- direct_attacker, target_entity, interacting_entity
- source 필드가 새로운 엔티티 값을 받습니다.
- minecraft:copy_components:
- source 필드가 새로운 엔티티 값을 받습니다.
- this, attacker, direct_attacker, attacking_player, target_entity, interacting_entity, tool
- source 필드가 새로운 엔티티 값을 받습니다.
- minecraft:fill_player_head:
- 조건자 (Predicates)
- minecraft:entity_scores:
- entity 필드가 새로운 엔티티 값을 받습니다.
- target_entity, interacting_entity
- entity 필드가 새로운 엔티티 값을 받습니다.
- minecraft:entity_properties:
- entity 필드가 새로운 엔티티 값을 받습니다.
- target_entity, interacting_entity
- entity 필드가 새로운 엔티티 값을 받습니다.
- minecraft:entity_scores:
인챈트 (Enchantments)
폭발 (explode) 효과
- block_particles 라는 새로운 필드가 추가되어, 폭발 시 블록별로 생성될 파티클을 지정할 수 있습니다.
- 형식: 항목들의 리스트
- weight: (음이 아닌 정수)
- 해당 파티클이 선택될 무작위 가중치
- particle:
- 생성할 파티클.
- scaling: (기본값 1.0)
- 폭발 중심과 블록 위치 사이에 적용될 크기 배율
- speed: (기본값 1.0)
- 파티클 속도에 적용될 배율
- weight: (음이 아닌 정수)
태그 (Tags)
블록 태그
- #copper_chests: 모든 구리 상자 블록을 포함합니다.
- #copper: 모든 구리 블록을 포함합니다.
- #incorrect_for_copper_tool: 구리 도구로 채광 시 아이템이 드롭되지 않는 모든 블록을 포함합니다.
- #copper_golem_statues: 모든 구리 골렘 조각상 블록을 포함합니다.
- #chains: 모든 사슬 블록을 포함합니다.
- #lanterns: 모든 랜턴 블록을 포함합니다.
- #bars: 모든 막대 블록을 포함합니다.
아이템 태그
- #copper_chests: 모든 구리 상자 블록 아이템을 포함합니다.
- #copper: 모든 구리 블록 아이템을 포함합니다.
- #copper_tool_materials: 모든 구리 도구 재료를 포함합니다.
- #repairs_copper_armor: 구리 갑옷을 수리하는 모든 아이템을 포함합니다.
- #copper_golem_statues: 모든 구리 골렘 조각상 블록 아이템을 포함합니다.
- #chains: 모든 사슬 블록 아이템을 포함합니다.
- #lanterns: 모든 랜턴 블록 아이템을 포함합니다.
- #bars: 모든 막대 블록 아이템을 포함합니다.
- #shearable_from_copper_golem: 가위로 구리 골렘의 안장 슬롯에서 제거할 수 있는 모든 아이템을 포함합니다.
엔티티 유형 태그
- #cannot_be_pushed_onto_boats: 보트로 밀어 넣을 수 없는 몹들을 포함합니다. Creaking, 플레이어, 그리고 양서류가 아닌 모든 수중 몹이 여기에 해당합니다.
- #accepts_iron_golem_gift: 철 골렘이 주는 아이템을 받고 수락하는 몹들을 포함합니다.
- #candidate_for_iron_golem_gift: 철 골렘이 아이템을 주려고 시도하지만, 반드시 수락하지는 않을 수 있는 몹들을 포함합니다 (#accepts_iron_golem_gift 태그도 확인해보세요).
'마인크래프트 강좌 > 업데이트 정리' 카테고리의 다른 글
| 마인크래프트 JE 1.21.11 기술적 업데이트 정리 (0) | 2025.12.18 |
|---|---|
| 마인크래프트 JE 1.21.6 기술적 업데이트 정리 (1) | 2025.06.04 |
| 마인크래프트 1.21.5 기술적 업데이트 정리 (0) | 2025.03.25 |
| 마인크래프트 자바에디션 1.21.5 - Text 구성요소 업데이트 정리 (0) | 2025.03.25 |
| 마인크래프트 1.21.4 기술적 업데이트 정리 (2) | 2024.12.06 |