마인크래프트 JE 26.1 기술적 업데이트 정리

2026. 3. 29. 15:15·마인크래프트 강좌/업데이트 정리
반응형

마인크래프트 자바에디션 26.1 "Tiny Takeover" - 기술적 업데이트  정리

마인크래프트가 2026년 3월 24일, 새로운 연도 기반 버전 관리 시스템이 적용된 26.1 "Tiny Takeover" (타이니 테이크오버) 업데이트를 정식 출시했습니다.

이 글의 작성에는 AI가 사용되었습니다.


1. 코어 시스템 및 엔진 업데이트

마인크래프트의 기반이 되는 실행 환경과 내부 렌더링 엔진이 대대적으로 개편되었습니다.

1.1 Java 런타임 및 메모리

  • Java 25 요구: 이제 게임 실행을 위해 Java 25가 필수적입니다.
  • 메모리 할당량 및 GC: 런처 기본 RAM 할당량이 4GB로 상향되었으며, 호환 기기에서 Generational ZGC를 기본 가비지 컬렉터로 채택하였습니다.

1.2 공식 난독화 해제

  • 배포되는 마인크래프트의 jar 파일이 난독화되지 않은 상태로 제공됩니다. 기존의 난독화 해제 과정이 제거되어 접근성이 향상되었습니다.

1.3 시스템 상태 알림

  • 디스크 용량 경고: 월드 저장 중 디스크 용량이 부족할 경우 우측 상단에 알림이 표시됩니다.

1.4 입력기(IME) 후보창 인게임 렌더링

  • 한국어 등 조합형 문자를 위한 IME 후보창이 게임 UI 내부에서 직접 렌더링됩니다. 창 모드나 전체 화면 모두에서 깔끔한 입력 환경을 제공합니다.

2. 월드 저장 구조 및 NBT 개편

월드 파일이 루트 폴더에 무분별하게 혼재되던 방식을 탈피하여, 네임스페이스(Namespace) 기반의 폴더 구조로 완전히 재조정되었습니다.

2.1 파일 및 폴더 경로 변경 상세

경로 변경 내역 전체 보기
데이터 유형 기존 경로 신규 경로 비고
오버월드 청크 region/ dimensions/minecraft/overworld/region/ 루트에서 차원 폴더 내부로 이동
네더 차원 DIM-1/ dimensions/minecraft/the_nether/ 차원 전체 데이터 이동
엔드 차원 DIM1/ dimensions/minecraft/the_end/  
플레이어 데이터 playerdata/ players/data/ players/ 하위로 통합 관리
발전과제/통계 advancements/, stats/ players/advancements/, players/stats/  
지도 데이터 data/map_*.dat data/minecraft/maps/*.dat 파일명에서 map_ 접두사 제거 (예: 1.dat)
ID 카운트 idcounts.dat last_id.dat 명칭 직관성 강화
청크 티켓 chunks.dat chunk_tickets.dat 파일명 변경
구조물 데이터 generated/namespace/structures/ generated/namespace/structure/ 단수형으로 통일

2.2 level.dat NBT 구조 개편 및 데이터 분리

  • 전방위적 데이터 파일 분리: 기존에 level.dat 하나에 담겨있던 방대한 데이터들이 관리 편의를 위해 별도 파일로 분리되었습니다.
    • 엔드 드래곤 전투: dimensions/minecraft/the_end/data/minecraft/ender_dragon_fight.dat
    • 떠돌이 상인 데이터: data/minecraft/wandering_trader.dat
    • 날씨 데이터: data/minecraft/weather.dat
    • 게임 규칙 (Gamerules): data/minecraft/game_rules.dat
    • 월드 시계: data/minecraft/world_clocks.dat
  • singleplayer_uuid (String): 기존의 Player 컴파운드 태그가 삭제되고, 단일 플레이어의 UUID를 저장하는 문자열 태그로 대체되었습니다.
  • 난이도 (Difficulty): 정수형(0~3)에서 문자열("peaceful", "easy", "normal", "hard")로 변경되었습니다.
  • difficulty_settings (Compound): 난이도 잠금(locked) 상태 등이 이 컴파운드 내부에 저장됩니다.

3. 데이터 팩 개편 (Data Packs - v101.1)

데이터 팩 포맷 버전이 101.1로 업데이트되었습니다.

3.1 주민 거래 시스템 (Data-Driven Villager Trades)

주민(Villager)과 떠돌이 상인(Wandering Trader)의 거래가 완전히 데이터 팩으로 분리되었습니다.

villager_trade (개별 거래) JSON 사양 및 예시

거래의 기본 단위를 정의하며 data/<namespace>/villager_trade/ 경로에 저장됩니다.

  • wants (필수): 플레이어가 지불해야 할 첫 번째 아이템. (아이템 정보 id, count, components 포함 가능)
  • additional_wants (선택): 플레이어가 지불해야 할 두 번째 아이템.
  • gives (필수): 플레이어가 받을 아이템.
  • given_item_modifiers (선택): 결과 아이템에 적용할 전리품 함수 (Loot Functions) 배열. (예: 인챈트 적용, 이름 변경 등)
  • max_uses (필수): 거래 비활성화 전까지 가능한 최대 횟수.
  • experience (필수): 거래 성사 시 주민이 얻는 경험치.
  • price_multiplier (필수): 수요에 따른 가격 변동 계수 (Float).
  • demand (선택): 초기 수요 값.
  • merchant_predicate (선택): 이 거래를 제안할 수 있는 주민의 특정 조건(타입, 생물군계 등).

[예시] 30레벨 인챈트 책을 파는 커스텀 사서 거래

{
  "wants": { "id": "minecraft:emerald", "count": 64 },
  "additional_wants": { "id": "minecraft:book", "count": 1 },
  "gives": { "id": "minecraft:enchanted_book", "count": 1 },
  "given_item_modifiers": [
    {
      "function": "minecraft:enchant_with_levels",
      "levels": 30,
      "treasure": true
    }
  ],
  "max_uses": 3,
  "experience": 20,
  "price_multiplier": 0.2
}
trade_set (거래 풀 구성) JSON 사양 및 예시

주민이 특정 레벨 도달 시 제안할 거래들의 목록(Pool)을 정의합니다. data/<namespace>/trade_set/ 경로에 저장됩니다.

  • amount: 세트 내에서 무작위로 선택할 거래의 개수 (Number Provider 지원).
  • trades: 선택 후보가 될 거래 ID 리스트, 단일 ID, 혹은 태그(# 접두사).
  • allow_duplicates (Boolean): 동일한 거래가 중복 등장할 수 있는지 여부.
  • random_sequence: 시드 기반의 결정론적 난수 생성을 위한 식별자 ID.
  • replace (Boolean): 기존 세트를 덮어쓸지 여부.

[예시] 초보 사서의 거래 세트 묶음

{
  "amount": 2,
  "trades": "#minecraft:librarian/level_1",
  "allow_duplicates": false,
  "random_sequence": "minecraft:trade_set/librarian/level_1",
  "replace": false
}

3.2 시간 시스템 (World Clock & Timeline)

월드 내 시간의 흐름을 차원별로 독립적으로 관리하고, 특정 틱(Tick)마다 이벤트를 유도할 수 있는 새로운 시스템입니다.

world_clock 및 timeline JSON 사양
  • world_clock 레지스트리 (data/<namespace>/world_clock/)
    • 시간을 추적하는 독립된 객체를 생성합니다. JSON 파일은 {}처럼 비어있어도 무방합니다.
    • 이후 dimension_type JSON에서 clock 필드로 참조하여 해당 차원의 시계를 지정합니다.
  • timeline 레지스트리 (data/<namespace>/timeline/)
    • clock: 연동할 world_clock 식별자.
    • time_markers: 시간 마커 정의. 명령어에서 /time set <마커> 형태로 쓰입니다.
      • ticks: 마커가 위치한 정확한 틱 수 (예: 6000).
      • show_in_commands (Boolean): 자동완성 UI에 노출할지 여부.

[예시] 커스텀 타임라인 마커 정의

{
  "clock": "minecraft:overworld",
  "time_markers": {
    "my_mod:witching_hour": {
      "ticks": 18000,
      "show_in_commands": true
    }
  }
}

3.3 환경 속성 시스템 (Environment Attributes)

게임 내 물리적, 시각적 상태를 데이터 팩의 전리품(Loot) 조건이나 발전과제에서 체크할 수 있게 되었습니다.

  • 신규 술어 (Predicate): minecraft:environment_attribute_check
    • attribute: 확인할 환경 속성.
    • value: 일치해야 하는 정확한 값.
  • 주요 환경 속성 ID:
    • minecraft:gameplay/is_day (Boolean)
    • minecraft:gameplay/is_raining (Boolean)
    • minecraft:gameplay/is_thundering (Boolean)
    • minecraft:gameplay/sky_light_level (Integer, 0~15)
    • minecraft:gameplay/block_light_level (Integer, 0~15)
    • minecraft:visual/sky_color, fog_color (RGB Array)
환경 속성 활용 예시 보기

비가 올 때만 특정 행동이 가능하도록 제한하는 전리품 테이블 조건:

{
  "condition": "minecraft:environment_attribute_check",
  "attribute": "minecraft:gameplay/is_raining",
  "value": true
}

숫자 범위를 확인할 때는 value_check와 숫자 공급자(number_provider)를 조합합니다:

{
  "condition": "minecraft:value_check",
  "value": {
    "type": "minecraft:environment_attribute",
    "attribute": "minecraft:gameplay/block_light_level"
  },
  "range": { "min": 8, "max": 15 }
}

3.4 데이터 기반 동물 변종 (Mob Sound Variants)

성체 동물의 울음소리와 행동 패턴이 고정되지 않고, 소리 변종을 통해 개체마다 달라집니다.

  • 신규 레지스트리 경로:
    • data/<namespace>/cat_sound_variant/
    • data/<namespace>/pig_sound_variant/
    • data/<namespace>/cow_sound_variant/
    • data/<namespace>/chicken_sound_variant/
  • JSON 구조: sounds 객체 내에 ambient, hurt, death 등의 상황에 맞는 커스텀 사운드 이벤트를 맵핑합니다.

3.5 데이터 기반 특수 조합법 (Data-Driven Special Recipes)

기존에 하드코딩되어 수정이 불가능했던 특수 조합 로직들이 데이터 팩으로 개방되었습니다. 이제 재료와 결과 아이템을 자유롭게 커스텀할 수 있습니다.

  • minecraft:crafting_dye: 가죽 갑옷이나 도구의 색상을 혼합하여 염색하는 로직.
  • minecraft:crafting_imbue: 잔류형 물약을 사용해 팁 화살(Tipped Arrow)을 만드는 로직.
  • minecraft:crafting_special_bannerduplicate: 현수막 패턴을 복사하는 로직.
  • minecraft:crafting_special_bookcloning: 서명된 책을 복사하는 로직 (복사본의 세대 제어 가능).
  • minecraft:crafting_decorated_pot: 도자기 파편으로 장식된 도자기를 만드는 로직.
  • 기타: 폭죽 로켓, 폭죽 별, 지도 확장 및 복사 조합법 등이 모두 데이터화되었습니다.

3.6 추가 데이터 팩 변경 사항

  • 발전과제 조건 확장: player 서브 술어에 food 필드가 추가되어 배고픔 수치(level)와 포만감(saturation)을 체크할 수 있습니다.
  • 전리품 함수: minecraft:set_random_dyes (랜덤 염색 적용), minecraft:set_random_potion (랜덤 물약 효과 적용) 함수가 추가되었습니다.

4. 리소스 팩 및 시각 효과 (Resource Packs - v84)

리소스 팩 형식이 84로 업데이트되었으며, 모델링과 렌더링에 큰 변화가 생겼습니다.

4.1 조명 엔진 개편에 따른 셰이더(Shader) 변경

  • lightmap.fsh 수정:
    • 더 이상 AmbientLightFactor 유니폼을 사용하지 않고 제거되었습니다.
    • BlockLightTint (vec3): 블록 광원의 틴트 색상을 전역적으로 제어하는 유니폼이 추가되었습니다.
    • NightVisionColor (float): 야간 투시 효과의 강도 및 색상 맵핑을 보정하는 유니폼이 추가되었습니다.

4.2 아기 몹 (Baby Mobs) 모델 오버홀

단순히 성인 모델의 크기(Scale)를 줄이던 방식에서 벗어나, 고유한 뼈대(Bone)와 UV 맵을 가집니다.

  • 고유 모델링: 머리 비율이 크고 다리가 짧은 아기 전용 모델(baby_cow.json, baby_wolf.json 등)이 리소스 팩 모델 디렉토리에 대거 추가되었습니다.
  • 렌더링 예외: 아기 늑대, 아기 돼지, 아기 낙타 등 특정 아기 몹은 갑옷(Armor)이나 안장(Saddle) 텍스처를 렌더링하지 않습니다.
  • 고유 사운드: 고음의 전용 아기 사운드가 추가되었습니다.

4.3 아이템 모델 변환 (Transformation) 지원

아이템 모델 JSON(minecraft:model, minecraft:special 등)에 transformation 필드가 추가되었습니다. (디스플레이의 transformation과 동일) 16개의 숫자로 이루어진 매트릭스(Matrix) 배열이나 평행 이동, 크기 조절, 회전 값을 직접 정의할 수 있습니다.


5. 데이터 구성 요소 변경 (Data Components)

NBT를 대체하는 아이템 데이터 구성 요소(Components)의 기능이 확장되었습니다.

  • minecraft:object: 텍스트 컴포넌트 내에 머리(Head) 등 오브젝트를 렌더링할 때, 서버 환경이나 클라이언트 한계로 렌더링이 실패할 경우 표시할 fallback (String) 필드가 추가되었습니다.
  • minecraft:provides_banner_patterns: 기존에는 태그만 허용했으나, 이제 단일 패턴 ID 혹은 패턴 ID의 리스트 형식도 허용합니다.
  • minecraft:blocks_attacks / minecraft:damage_resistant: 피해 유형을 지정하는 bypassed_by와 types 필드에서 태그 외에도 ID 리스트(Array)를 지원하여 정의가 직관적여졌습니다.
  • minecraft:dyed_color 연동: 아이템이 #minecraft:dyeable 태그를 가지고 있을 경우, 신규 전리품 함수인 minecraft:set_dyed_color를 사용해 가죽 갑옷처럼 누적 방식으로 염료 색상을 추가할 수 있습니다.
  • minecraft:additional_trade_cost (Integer): 주민 거래 시 특정 아이템의 요구 수량을 일시적으로 조작하는 컴포넌트입니다. 거래 생성 시에만 사용되고 이후 삭제됩니다.
  • minecraft:dye (Enum): 아이템에 염료 색상 정보(16색)를 직접 부여합니다.

6. 명령어 및 게임플레이 로직 (Commands & Gameplay)

6.1 명령어 업데이트

  • /time [of <clock>] rate <rate>: 시각적인 낮과 밤의 흐름만 조절합니다. (0.0~1000.0)
  • /time 반환값 변경: /time set 또는 add 명령어 성공 시, 기존에는 하루 중 시간(0~24000)을 반환했으나 이제 해당 클럭의 총 경과 틱(Total Elapsed Ticks)을 반환합니다.
  • 신규 명령어 /fetchprofile entity <대상>: 엔티티(플레이어, 마네킹 등)의 프로필 정보를 출력합니다.
  • 신규 명령어 /swing <대상> [hand]: 엔티티의 휘두르기 애니메이션을 강제 실행합니다.

6.2 게임플레이/아이템 변경점

  • 황금 민들레 (Golden Dandelion): 민들레 1개 + 금 조각 8개로 조합.
    • 성장 제어: 아기 몹에게 우클릭 시 AgeLocked (NBT 속성)가 1로 설정되어 성장이 영구적으로 정지하며, 다시 클릭 시 0으로 초기화되어 성장이 재개됩니다. (단, 아기 주민과 언데드 계열에게는 사용 불가)
    • 피글린 상호작용: 피글린은 황금 민들레에 매우 큰 관심을 보입니다. 바닥에 떨어져 있으면 주워서 수 초간 관찰하며, 이때 피글린은 공격성을 보이지 않습니다.
    • 양봉 환경 개선: 황금 민들레 주변 2블록 이내에서 나무가 자랄 경우, 해당 나무에 벌집(Bee Nest)이 생성될 확률이 5% 추가됩니다.
  • 이름표 (Name Tag) 조합: 종이 1개 + 금속 조각(철/금) 1개로 크래프팅이 가능해졌습니다. 이에 따라 고대 도시, 삼림 대저택 전리품에서 제거되었습니다.
  • 석재 절단기 (Stonecutter) 확장: 이제 심층암류 블록을 직접 가공할 수 있습니다. 돌을 바로 조약돌로 바꿀 수 있습니다.
  • 번들 (Bundle) 용량 개선: bundle_contents 컴포넌트의 무게 한계가 정수 최대치까지 확장되었습니다.
  • 트럼펫 소리 (Trumpet): 소리 블록을 구리 블록 위에 배치하면 트럼펫 소리가 납니다. 구리의 산화도뿐만 아니라 깎인 구리(Cut Copper) 등 블록의 가공 형태에 따라서도 미세한 음색(Timbre) 차이가 발생합니다.

7. 신규 태그 (Tags) 목록

7.1 블록 및 아이템 태그

  • #minecraft:prevents_nearby_leaf_decay (Block): 이 태그를 가진 블록 주변의 나뭇잎은 나무가 없어도 자연 소멸(Decay)하지 않습니다. 건축용 인공 기둥 등에 사용됩니다.
  • #minecraft:baby_mob_interactable (Block): 아기 몹만 통과하거나 상호작용할 수 있는 전용 블록 태그입니다.
  • #minecraft:baby_food (Item): 아기 몹의 성장을 촉진시키거나, 황금 민들레처럼 상태를 제어할 수 있는 아이템 그룹입니다.
  • #minecraft:dyeable (Item): dyed_color 컴포넌트를 통해 색을 입힐 수 있는 모든 장비 및 아이템 목록입니다.

7.2 엔티티 및 파티클 태그

  • #minecraft:baby_mobs (Entity): 전용 모델링과 로직을 적용받는 모든 아기 개체 목록.
  • #minecraft:immune_to_aging (Entity): 황금 민들레의 효과를 받지 않는 몹들. (예: 아기 주민, 아기 좀비 계열 등)
  • minecraft:pause_mob_growth (Particle): 성장이 멈출 때 아래로 떨어지는 파티클.
  • minecraft:reset_mob_growth (Particle): 성장이 재개될 때 위로 솟아오르는 파티클.

작성 참고 자료:

  • Minecraft Wiki - Java Edition 26.1 (Tiny Takeover) Release Notes
  • Snapshot Data structures & Official Datapack references.
반응형
저작자표시 (새창열림)

'마인크래프트 강좌 > 업데이트 정리' 카테고리의 다른 글

마인크래프트 JE 1.21.11 기술적 업데이트 정리  (0) 2025.12.18
마인크래프트 JE 1.21.9 기술적 업데이트 정리  (0) 2025.10.04
마인크래프트 JE 1.21.6 기술적 업데이트 정리  (1) 2025.06.04
마인크래프트 1.21.5 기술적 업데이트 정리  (0) 2025.03.25
마인크래프트 자바에디션 1.21.5 - Text 구성요소 업데이트 정리  (0) 2025.03.25
'마인크래프트 강좌/업데이트 정리' 카테고리의 다른 글
  • 마인크래프트 JE 1.21.11 기술적 업데이트 정리
  • 마인크래프트 JE 1.21.9 기술적 업데이트 정리
  • 마인크래프트 JE 1.21.6 기술적 업데이트 정리
  • 마인크래프트 1.21.5 기술적 업데이트 정리
Potan
Potan
안녕하세요 Potan입니다. 다양한 주제를 다루고 싶으나 마인크래프트를 주로 하고있습니다. 프사 : 카미쵸(kyamicho)
    반응형
  • Potan
    Potan의 게임블로그
    Potan
  • 전체
    오늘
    어제
    • 분류 전체보기 (259)
      • Minecraft Display Engine (1)
      • 마인크래프트 강좌 (51)
        • 명령어 강좌 (7)
        • 데이터팩 강좌 (18)
        • 리소스팩 강좌 (0)
        • 업데이트 정리 (23)
        • 블록벤치 강좌 (3)
      • 마인크래프트 (10)
        • 마크관련 잡담 (10)
        • 마인크래프트 맵 (1)
      • 유튜브 관련 (0)
      • 마인크래프트 모드강좌 (18)
        • Extra Utilities 2 (9)
        • 간단한 모드강좌 (0)
        • Refined Storage (4)
        • Thermal Expansion (5)
      • 마인크래프트 생존기 (156)
        • Sky Factory 3[완] (68)
        • Direwolf20[완] (10)
        • FTB Beyond[완] (78)
      • 잡담 (7)
        • 뻘글 (1)
      • 스팀게임 (4)
        • Clone Drone in the danger z.. (3)
      • itch.io (1)
      • 개발일지 (0)
  • 블로그 메뉴

    • 홈
    • 태그
    • 미디어로그
    • 위치로그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    스카이 팩토리
    마인크래프트 데이터팩
    마인크래프트
    datapack
    모드
    1.10.2
    1.13
    FTB Beyond
    명령어
    minecraft
    Sky Factory3
    야생
    Beyond
    Sfy Factory 3
    모드팩
    스카이 블럭
    강좌
    데이터팩
    생존기
    FTB
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
Potan
마인크래프트 JE 26.1 기술적 업데이트 정리
상단으로

티스토리툴바