한국어 Minecraft 위키가 Weird Gloop으로 이사를 완료했습니다!!

자세한 사항은 위키 이동 공지를 참조해 주세요!


새로 오신 분들은 길라잡이위키 규칙을 꼭 읽어주세요.

문서 작성번역을 도와주시면 이 위키에 큰 힘이 됩니다.

데이터 팩

Minecraft Wiki
둘러보기로 이동 검색으로 이동
이 문서는 데이터 팩 시스템에 관한 것입니다. 명령어에 대해서는 명령어 § datapack 문서를 참조하십시오. 리소스 팩 시스템에 대해서는 리소스 팩 문서를 참조하십시오.
이 기능은 Java Edition 전용입니다. 

데이터 팩(Data pack)은 Minecraft의 다양한 기능을 구성하는 데 사용되는 데이터 모음이다. 데이터 팩은 pack.mcmeta 파일을 포함하는 폴더 또는 .zip 파일 형태이다. 데이터 팩은 발전 과제, 차원, 마법 부여, 노획물 목록, 제작법, 구조물, 생물 군계 등을 정의하는 데 사용된다 (전체 목록은 § 내용 참조). 바닐라 기능에 대한 정의는 내장된 데이터 팩을 사용하여 수행된다. 별도의 번들 데이터 팩을 세계에 추가하면 실험이 활성화된다. 마찬가지로, 사용자 정의 데이터 팩을 세계에 추가하여 기능을 추가 또는 수정하고 함수를 정의할 수 있다.

사용[편집 | 원본 편집]

데이터 팩은 새로운 세계 만들기 화면의 기타 탭에서 데이터 팩 버튼을 클릭하여 세계를 만드는 중에 추가할 수 있다. 이 메뉴는 파일 탐색기를 열어 데이터 팩을 바로 끌어서 놓을 수 있게 해준다. 또는 데이터 팩을 .minecraft/saves/<세계>/datapacks 폴더에 수동으로 추가하여 기존 월드에 적용할 수 있다.

세계가 열려 있는 동안 데이터 팩을 추가하는 경우, 레지스트리 태그, 노획물 목록, 제작법, 발전 과제, 아이템 수정자, 술어, 함수, 구조물 템플릿/reload 명령을 사용하여 볼러올 수 있다. 나머지 기능은 활성화하거나 변경 사항을 적용하려면 세계를 닫고 다시 불러와야 (또는 서버를 다시 시작해야) 하며, 이는 "실험적"으로 간주된다.

데이터 팩은 순서에 따라 데이터를 불러온다. 이 순서는 세계를 만드는 중에 데이터 팩 화면에서 확인하고 변경할 수 있으며, /datapack 명령어를 사용하여 변경할 수도 있다. 데이터 팩을 불러오는 순서는 level.dat 파일에 저장된다. 만약 파일이 여러 데이터 팩에 있는 경우 마지막 데이터 팩에 있는 파일만 사용된다.

내용[편집 | 원본 편집]

데이터 팩은 폴더 구조를 통해 데이터를 가지며, 최상위 폴더에 데이터 팩의 메타 데이터가 포함된 pack.mcmeta 파일이 있어야 한다. 데이터는 다른 팩의 파일이 의도치 않게 서로 간섭하는 것을 방지하기 위해 이름공간으로 구성된다. 파일은 다음과 같이 불러와진다:

  • data/<이름공간>/<레지스트리 이름>/<경로>.json 파일은 ID <이름공간>:<경로>를 사용하여 <레지스트리 이름> 레지스트리로 불러온다. <레지스트리 이름><경로>는 둘 다 슬래시(/)를 통해 추가 하위 폴더를 사용할 수 있다.
  • 태그data/<이름공간>/tags/<레지스트리 이름>/<경로>.json 파일에서 불러오며, #<이름공간>:<경로>라는 이름의 <레지스트리 이름> 태그가 만들어진다.

폴더 구조[편집 | 원본 편집]

pack.mcmeta[편집 | 원본 편집]

이 부분의 본문은 pack.mcmeta입니다.

Minecraft는 데이터 팩의 루트 디렉토리에 JSON 형식의 데이터가 포함된 pack.mcmeta 파일이 있는지에 따라 데이터 팩을 식별한다.

1.21.4의 "vanilla" 데이터 팩에서 사용되는 pack.mcmeta클라이언트공식 서버 jar에서 찾을 수 있다:

틀:Filename

{
    "pack": {
        "description": "The default data for Minecraft",
        "pack_format": 61
    }
}

팩 형식[편집 | 원본 편집]

모든 버전의 팩 형식 목록에 대해서는, 팩 형식 § 데이터 팩 형식을 참조하십시오.
릴리스 [숨기기]주요 변경 사항
4 1.131.14.4 최초의 팩 형식 버전 4를 추가하였다.
5 1.151.16.1 술어를 추가하였다.
6 1.16.21.16.5 사용자 지정 세계 생성을 위한 실험적 지원을 추가하였다.
7 1.171.17.1 /replaceitem 명령어가 /item으로 대체되었다. set_damage 노획물 함수에는 이제 유효한  type 필드가 필요하다.
8 1.181.18.1 이제 노획물 목록 함수 set_contentsset_loot_table type 필드가 필요하다. 스코어보드, 점수 보유자 및 팀 이름의 길이 제한이 제거되었다.
9 1.18.2 /locate 명령어는 이제 구조물 유형이 아닌 구성된 구조물을 첫 번째 매개변수로 사용하므로 많은 그룹화된 구조물에 구조물 유형 태그가 필요하다. 예를 들어 /locate village는 이제 /locate #village이다.
10 1.191.19.3 데이터 팩은 이제 pack.mcmeta에서  filter 섹션을 가질 수 있다. /locatebiome/locate와 병합해 구문을 변경하였다.
12 1.19.4 피해 유형을 추가하였다. 피해 술어에서 모든 부울 플래그를 제거하였으며, 대신 피해 유형 태그를 테스트할 수 있다. 생물 군계 필드  precipitation has_precipitation으로 변경되었다.
15 1.201.20.1 표지판의 NBT가 변경되었다. 예를 들어 Text1은 이제 front_text.messages[0]이다. placed_block, item_used_on_block, allay_drop_item_on_block 발전 과제의 트리거가 단일 위치 필드로 축소되었다. alternative 술어의 이름을 any_of로 변경하였다.
18 1.20.2 매크로 함수를 추가하였다. 이제 NBT에서 효과는 숫자 값 대신 이름공간 ID를 사용한다. 예를 들어 1은 이제 minecraft:speed이다.
26 1.20.31.20.4 텍스트 구성 요소 구문이 더 엄격하게 분석된다. grass 블록과 아이템의 이름을 short_grass로 변경하였다. 스코어보드의 표시 이름과 숫자 형식을 추가하였다.
41 1.20.51.20.6 sweeping 마법 부여의 이름을 sweeping_edge로 변경하였다. item_used_on_block 발전 과제 트리거의 동작을 변경하였다. 127을 초과하는 증폭기의 일부 동작을 속성으로 대체하였다. 아이템 스택에 첨부된 구조화되지 않은 NBT 데이터가 구조화된 구성 요소로 대체되었다. 아이템 술어에서 durability, potions, nbt, enchantments 필드를 제거하였다. 이제 제작법 출력에 구성 요소를 지정할 수 있다. worldgen 정의에 사용된 정수 및 부동 소수점 제공자는 더 이상 type 옆의 추가 value 필드에 래핑되지 않는다. 새로운 아이템 하위 술어와 노획물 함수가 추가되었다.
48 1.211.21.1 데이터 기반 마법 부여가 추가되었다. 데이터 기반 그림이 추가되었다. 아이템 하위 술어에서 enchantment 필드의 이름을 enchantments로 변경하였다. loot_tables, tags/items와 같은 레거시 폴더의 이름을 loot_table, tags/item으로 변경하였다.  power 화염구 태그를 제거하고  acceleration_power 태그로 대체하였다. 이제 속성에는 nameuuid 대신 단일 리소스 위치 id 필드를 사용한다.
57 1.21.21.21.3 generic.과 같은 속성 ID 접두사를 제거하였다. 데이터 구성 요소, 노획물 목록 및 술어의 형식을 변경하였다. 새로운 데이터 구성 요소, 노획물 목록 및 아이템 태그를 추가하였다. 키 입력 술어를 추가하였다. crafting_transmute 제작법 유형을 추가하였다. 마법 부여 효과 damage_item의 이름을 change_item_damage로 변경하였다.
61 1.21.4 TNT가 실린 광산 수레의 TNTFuse 이름을 fuse로 변경하였다. 화로 블록 개체의 필드 이름을 변경하였다. 잔상 효과 입자에 필수 필드 duration을 추가하였다. custom_model_data 구성 요소와 노획물 함수의 형식이 변경되었다.
67 1.21.5 텍스트 구성 요소는 이제 JSON을 포함하는 문자열이 아닌 NBT 객체로 저장되고 /tellraw와 같은 많은 명령어는 이제 JSON이 아닌 SNBT를 사용한다. 게임 테스트 시스템은 이제 데이터 팩과 모드를 통해 접근할 수 있다. 많은 새로운 구성 요소를 추가하였다. 개체 변형 구성 요소를 추가하였다. /setblock과 같이 블록을 배치하는 명령은 이제 strict 인수를 갖는다. 돼지, 개구리, 닭 및 소의 변종은 이제 데이터 기반이다.  ArmorItems,  HandItems,  body_armor_item,  SaddleItem,  Saddle NBT 태그가 제거되고  equipment 필드로 병합되었다. 두 개의 필드만 있는 아이템 구성 요소(그 중 하나는  show_in_tooltip)는 이제 다른 필드가 최상위 수준에 인라인된다. 모든 구성 요소에서 hide_tooltiphide_additional_tooltip 구성 요소와  show_in_tooltip 필드를 제거하고 새로운 tooltip_display 구성 요소를 도입하였다. 개체 및 블록 개체의 NBT 데이터에 많은 변경 사항이 적용되었다.

역사[편집 | 원본 편집]

팩 형식 역사에 대해서는,  § 팩 형식을 참조하십시오.
[숨기기]Java Edition
1.1317w43a데이터 팩이 추가됨.
17w46a불러온 데이터 팩을 제어하는 명령어인 /datapack이 추가됨.
17w48a이제 데이터 팩에서 사용자 지정 제작법을 불러올 수 있음.
최초의 팩 형식 버전 4를 추가함.
17w49a이제 데이터 팩을 사용하여 태그를 만들 수 있음.
17w49b이제 함수에 대한 태그를 만들 수 있음.
minecraft:tick 태그가 붙은 함수는 이제 매 틱마다 실행됨.
18w01aminecraft:load 태그가 붙은 함수는 이제 (다시) 불러온 후에 한 번 실행됨.
이제 충돌 보고서에 활성화된 데이터 팩이 나열됨.
1.1418w43a개체 유형에 대한 태그를 만들 수 있음.
1.1519w38a술어를 추가함.
1.1620w22a사용자 지정 데이터 팩이 충돌하는 것을 방지하기 위해 데이터 팩이 불러와지는 방식을 약간 변경함.
데이터 팩을 새로 고침하는 데 실패하면 변경 사항이 적용되지 않으며 게임은 이전 데이터를 사용하여 계속 진행됨.
데이터 팩 목록의 변경 사항은 새로 고침이 성공적으로 완료된 후에만 저장됨.
기존 데이터 팩 때문에 세계를 불러올 수 없는 경우 게임은 안전 모드에서 세계를 불러올 수 있으며, 바닐라 데이터 팩만 불러옴.
바닐라 데이터 팩만 불러올 수 있는 --safeMode 옵션이 서버에 추가됨.
이제 게임에서는 필수 태그가 누락되는 등 중요한 데이터 팩 문제를 감지하여 세계가 불러와지지 않도록 방지함.
Pre-release 1이제 세계를 만들기 전에 데이터 팩을 불러올 수 있음.
이제 데이터 팩에서 차원 및 차원 유형을 추가하고 변경할 수 있음.
1.16.220w27a이제 데이터 팩은 루트 폴더에 pack.png를 가질 수 있으며, 데이터 팩 메뉴에 표시됨.
20w28a사용자 지정 세계는 이제 사용자 지정 생물 군계를 지원하며 사용자 지정 차원 생성기에서 사용할 수 있음.
이제 데이터 팩의 worldgen 폴더에서 세계 생성을 사용자 지정할 수 있음.
1.1720w45aversion.json의 팩 형식이 데이터 버전과 리소스 버전으로 분리되었음.
20w46a아이템 수정자가 추가되었음.
1.18.2Pre-release 1실험적 데이터 팩에 사용자 지정 구조물을 추가할 수 있다: 이제 게임은 데이터 기반의 구성된 구조를 만들고 저장함.
이제 동굴 생성의 상당 부분은 데이터 팩을 통해 구성할 수 있음.
1.1922w11a이제 데이터 팩을 사용하여 현재 팩보다 우선으로 적용된 팩의 파일을 차단하는 필터를 적용할 수 있음.
1.19.322w42a대화 유형이 추가됨.
datapacks라는 하위 섹션을 추가함.
이제 바닐라 월드 생성 데이터 팩을 게임의 jar 안에서 볼 수 있음.
1.19.423w06a피해 유형이 추가됨.
1.20.223w31a이제 데이터 팩은 여러 팩 형식을 지원할 수 있다.
이제 데이터 팩에는 팩의 "일반" 콘텐츠 위에 적용되는 overlays가 포함될 수 있음.
1.20.524w10a데이터 팩을 통해 정의할 수 있는 늑대 변종이 추가되었음.
이제 데이터 팩에서 현수막 무늬를 사용자 정의할 수 있음.
1.2124w18a이제 데이터 팩에서 그림 변형을 사용자 정의할 수 있음.
이제 마법 부여는 데이터 기반이며 데이터 팩을 통해 정의할 수 있음.
데이터 팩은 추가적으로 마법 부여 제공자를 정의할 수 있음.
24w19a여러 디렉토리의 이름이 변경되었음:
  • tags/items -> tags/item
  • tags/blocks -> tags/block
  • tags/entity_types -> tags/entity_type
  • tags/fluids -> tags/fluid
  • tags/game_events -> tags/game_event
24w21a여러 디렉토리의 이름이 변경되었음:
  • structures -> structure
  • advancements -> advancement
  • recipes -> recipe
  • loot_tables -> loot_table
  • predicates -> predicate
  • item_modifiers ->item_modifier
  • functions -> function
  • tags/functions -> tags/function
이제 데이터 팩에서 주크박스 음악을 사용자 정의할 수 있음.
1.21.224w33a이제 데이터 팩에서 염소 뿔 악기를 사용자 정의할 수 있음.

문제[편집 | 원본 편집]

"데이터 팩"의 문제점은 버그 트래커에서 관리된다. 문제점들은 그 곳에서 신고 및 확인되어야 한다.

참고[편집 | 원본 편집]

틀:Data Packs