에쓰디드림의 블로그

에쓰디드림이 운영하는 티스토리 블로그!!

마인크래프트/마인크래프트 업데이트 내역

마인크래프트 26.1 스냅샷 1 출시!!

에쓰디드림 2025. 12. 17. 15:51
반응형
마인크래프트 26.1 스냅샷 1 출시!!


목차
1. 인사말
2. 변경 사항
3. 기술 변경 사항
4. 데이터 팩 버전 95
5. 리소스 팩 버전 76
6. 26.1 스냅샷 1의 버그 수정
7. 마무리

1. 인사말

안녕하세요 에쓰디드림입니다. 한국 시간 기준 2025년 12월 16일 밤에 26.1 스냅샷 1 버전이 출시되었습니다.

 

버전 체계가 바뀌고 첫 스냅샷입니다. 이제 26.1 업데이트를 향한 첫 발걸음이 시작되었습니다.

 

버전체계 변경에 대해선 저번에도 한 번 다뤘었습니다.

https://sddream.tistory.com/472

 

마인크래프트의 새로운 버전 번호 체계

마인크래프트의 새로운 버전 번호 체계명확성을 위한 작은 변경목차1. 본문2. 마무리1. 본문처음에는 버전 1.0이 있었습니다. 그다음 1.1, 1.2, 1.3, 1.4가 나왔죠. 어디로 흘러가는지 아시겠죠? 마인

sddream.tistory.com

 

 

추가로 이 스냅샷은 기존에 있던 것들이 바뀌는 것 위주의 업데이트이며, 새로운 몹이나 블록같은 건 추가된 것이 없습니다.

 

26.1의 컨셉자체를 알 수가 없다는 것입니다. 사실상 이건 버전체계 변경에 대한 맛보기에 불과하고 진정한 26.1 스냅샷은 2026년 1월에 시작이 될 것으로 추측이 됩니다.

 

모장측에 따르면 26.1 스냅샷 1이 2025년의 마지막 업데이트가 될 것이라고 합니다. 따라서 26.1 스냅샷 2는 아무리 빨라야 한국시간(KST) 기준 2026년 1월 6~7일 정도에 나올 것으로 예측됩니다.

 

또한 이제부터 자바21이 아닌 자바 25를 사용하게 되고 난독화가 풀린 첫 업데이트 되겠습니다.

 

난독화 관련해서는 제가 전에도 글 올린 적 있었죠.

https://sddream.tistory.com/464

 

[마인크래프트] 자바 에디션에서 난독화 제거

[마인크래프트] 자바 에디션에서 난독화 제거이것이 우리 모딩 커뮤니티에 의미하는 바목차1. 본문2. 마무리1. 본문자바를 수정하거나, 빌드를 손보거나, 마인크래프트 코드를 심층적으로 분석

sddream.tistory.com

반응형

2. 변경 사항
  • 주민 직업으로 해금되는 거래는 이제 전리품 획득 및 물물교환 전리품과 마찬가지로 결정론적 난수 시퀀스를 통해 결정됩니다.
  • 블록 및 하늘의 밝기 수준을 화면상의 사물 밝기로 매핑하는 알고리즘이 완전히 재작성되었습니다
  • 새로운 라이트맵 디버그 렌더러가 도입되었으며,  F3 + 4  키 지정을 사용하여 활성화할 수 있습니다.

라이트맵 알고리즘 변경 사항

  • 새로운 알고리즘은 전반적으로 기존과 동일한 결과를 제공하지만 다음과 같은 특징이 있습니다:
    • 더 단순하고 직관적이며, 아래 '수정된 버그' 섹션에 나열된 이전 버전의 여러 문제를 해결했습니다
    • 위더 전투의 어둠 효과와 세계 어둡게 하는 효과가 이제 모든 차원에서 동일하게 작동합니다
    • 야간 시야 효과는 이제 결과 색상을 조정하는 대신 단순히 주변광을 추가합니다
      • 이는 완전히 어두운 영역이 블록이나 하늘빛으로 비춰진 영역보다 더 밝게 보이지 않음을 의미합니다
    • 블록 빛 색조, 주변광 색상, 야간 시야 색상 등 알고리즘의 더 많은 측면이 아래 데이터 팩 섹션에 설명된 대로 환경 속성을 통해 데이터 기반으로 제어됩니다

라이트맵 디버그 렌더러

  • 라이트맵용 새 디버그 렌더러가 추가되었으며,  F3 + 4  키 지정으로 활성화할 수 있습니다.
  • FPS/TPS 및 네트워킹 차트와 상호 배타적입니다
  • 화면 오른쪽 하단 모서리에 라이트맵 텍스처를 실시간으로 표시합니다.
  • 텍스처의 수직 축은 하늘 빛 수준을 나타냅니다(아래에서 위쪽으로 0-15).
  • 텍스처의 가로축은 블록의 밝기 수준을 나타냅니다(왼쪽에서 오른쪽으로 0-15).
  • 각 픽셀의 색상은 해당 블록 및 하늘 빛 수준으로 조명된 블록과 엔티티에 적용될 결과 색상을 나타냅니다.

UI

디버그 스크린

  •  looking_at_blocklooking_at_fluid 디버그 항목에 더 이상 태그가 표시되지 않습니다.
  • 새로운 디버그 항목이 추가되었습니다:
    • looking_at_block_tags
    • looking_at_fluid_tags
    • looking_at_entity_tags
  • 이름이 변경된 디버그 항목:
    • looking_at_block  looking_at_block_state
    • looking_at_fluid looking_at_fluid_state

3. 기술 변경 사항
  • 데이터 팩 버전은 이제 95입니다.
  • 서버의 디스크 공간이 부족할 경우, 서버 운영자에게 알림이 표시됩니다.
  • 이제 이 게임은 Java 25가 필요합니다.
  • 포함된 자바 배포판은 이제 마이크로소프트에서 빌드한 OpenJDK 25입니다.

4. 데이터 팩 버전 95
  • 데이터 기반 주민 거래 레지스트리 추가
  • 피글린 인벤토리 슬롯은 이제  piglin.* 을 사용하여 접근할 수 있습니다. 이는 주민 인벤토리를  villager.*를 사용하여 접근하는 방식과 유사합니다.

데이터 기반 주민 거래

주민과 떠돌이 상인이 제공하는 거래는 이제 데이터 기반으로 운영되며, 데이터팩 개발자가 맞춤 설정할 수 있습니다.

주민 거래

  • villager_trade 폴더에 존재하며, 주민과 떠돌이 상인이 실제 거래를 생성하는 데 사용하는 거래 청사진을 나타냅니다.
  • 입력 형식:
    • wants, 거래에 필요한 아이템 유형과 수량을 나타내는 객체
      • id, 아이템의 ID
      • count, 거래에 필요한 아이템 수량을 나타내는 선택적 숫자 제공자
        • 기본값은 상수 1입니다.
      • components, 아이템에 예상되는 데이터 구성 요소를 나타내는 선택적 구성 요소 맵
        • 기본적으로 빈 지도가 표시됩니다.
    • additional_wants, 상인이 요구하는 추가 아이템을 나타내는 선택적 객체는 다음과 동일한 형식을 가집니다:  wants
    • gives, 거래 시 상인이 제공하는 결과 아이템을 나타내는 아이템 스택
      • 아이템 스택에 기존 형식을 사용합니다.
    • given_item_modifiers, 아이템에 적용할 수정자를 나타내는 선택적 수정자 목록으로, 마법 부여나 물약과 같은 요소를 포함하며, 특정 값을 하드코딩하기보다는 거래에 역동성을 gives하는 데 사용됩니다.
      • 아이템 수정자(전리품 수정자, 아이템 기능, 전리품 기능 등으로도 알려짐)에 대한 기존 형식을 사용합니다.
      • 이 중 하나라도 빈 항목을 반환하면 전체 거래가 폐기됩니다
      • 아이템 수정자 참조는 아직 지원되지 않습니다
      • 최종 아이템에 stored_enchantment 구성 요소가 포함되어 있고, 해당 구성 요소에  #double_trade_price 태그가 붙은 마법 부여가 있다면,  wants의 카운트가 두 배로 증가합니다.
    • max_uses, 선택적 숫자 제공자로, 거래가 사용될 수 있는 최대 횟수를 나타냅니다.
      • 숫자 공급자가 더 낮은 값을 반환하면 1로 설정됩니다.
      • 기본값은 4
    • reputation_discount, 수요, 할인 또는 벌금과 같은 요소가  wants로 표시된 비용에 얼마나 영향을 미치는지를 나타내는 수치 제공자
      • 숫자 공급자가 더 낮은 값을 반환하는 경우  0.0으로 설정됩니다.
      • 기본값은 0.0입니다.
    • xp, 거래가 완료될 때 상인이 얻는 경험치(XP)의 양을 나타내는 선택적 숫자 제공자
      • 숫자 공급자가 더 낮은 값을 반환하면 0으로 설정됩니다.
      • 기본값은 1
    • merchant_predicate, 거래가 제안되기 위해 충족되어야 하는 판매자에 대한 조건을 나타내는 술어
      • 기존의 술어(전리 조건으로도 알려짐) 형식을 사용합니다.
      • 술어 참조는 아직 지원되지 않습니다.
    • double_trade_price_enchantments, 선택적 인챈트 ID, 네임스페이스로 구분된 인챈트 ID 목록 또는 해시 접두사가 붙은 인챈트 태그로, minecraft:enchant_randomlyminecraft:enchant_with_levels의 추가 비용을 두 배로 증가시키는 마법 부여를 나타내는 선택적 마법 부여 ID, 네임스페이스로 구분된 마법 부여 ID 목록 또는 해시 접두사가 붙은 마법 부여 태그. 해당 아이템이 include_additional_cost_componenttrue 그리고 아이템이 minecraft:stored_enchantments 구성 요소에 제공된 값 중 하나를 가지고 있는 경우

사막 주민들만이 제공하는 마법이 부여된 책을 얻기 위해 에메랄드와 책을 거래하는 예시

{
  "additional_wants": {
    "id": "minecraft:book"
  },
  "double_trade_price_enchantments": "#minecraft:double_trade_price",
  "given_item_modifiers": [
    {
      "function": "minecraft:enchant_randomly",
      "include_additional_cost_component": true,
      "only_compatible": false,
      "options": "#minecraft:trades/desert_common"
    },
    {
      "function": "minecraft:filtered",
      "item_filter": {
        "items": "minecraft:enchanted_book",
        "predicates": {
          "minecraft:stored_enchantments": [
            {}
          ]
        }
      },
      "on_fail": {
        "function": "minecraft:discard"
      }
    }
  ],
  "gives": {
    "count": 1,
    "id": "minecraft:enchanted_book"
  },
  "max_uses": 12.0,
  "merchant_predicate": {
    "condition": "minecraft:entity_properties",
    "entity": "this",
    "predicate": {
      "predicates": {
        "minecraft:villager/variant": "minecraft:desert"
      }
    }
  },
  "reputation_discount": 0.2,
  "wants": {
    "id": "minecraft:emerald"
  }
}



거래 세트

  • trade_set 폴더에 존재하는 이들은 주민과 떠돌이 상인이 제공하는 거래의 그룹입니다.
  • 현재 주민용으로는  <profession>/level_<level>에 하드코딩된 것들만 있으며, 또한 wandering_trader/buying, wandering_trader/special, wandering_trader/common 가용합니다.
  • 입력 형식:
    • trades, 주민 거래 ID, 네임스페이스로 구분된 주민 거래 ID 목록, 또는 이 거래 세트의 일부인 거래를 나타내는 해시 접두사가 붙은 주민 거래 태그
    • amount, 이 세트가 사용될 때 생성될 거래량을 나타내는 수치 제공자
      • 생성된 숫자가 사용 가능한 trades 수보다 크면, 모든 trades가 한 번씩 사용될 때까지 생성됩니다. 단, allow_duplicatestrue로 설정된 경우는 예외입니다.
    • allow_duplicates, 거래 세트가 동일한 주민 거래를 여러 번 사용하여 거래를 생성할 수 있는지 여부를 나타내는 부울 값
      • 기본값은 false입니다.
    • random_sequence, 선택적 명명된 난수 시퀀스로, 생성될 거래를 결정합니다.
      • 기본값은 비결정적 난수 시퀀스입니다.

 #minecraft:armorer/level_1  태그에서 중복을 허용하는 2개의 거래를 제공하는 예시 거래 세트

{
  "amount": 2.0,
  "trades": "#minecraft:armorer/level_1",
  "random_sequence": "minecraft:trade_set/armorer/level_1",
  "allow_duplicates": true
}



 

명령어

swing 추가

  • 엔티티의 팔을 흔들 수 있게 하는 새 명령어
  • 모든 엔티티가 스윙 애니메이션을 지원하는 것은 아닙니다. swing은 해당 엔티티에 대해 성공적으로 수행되지만, 클라이언트는 가능한 경우에만 이를 표시합니다.
  • 예를 들어, 이로 인해 마네킹 팔을 흔들 수 있게 됩니다.
  • 스윙이 전송된 엔티티의 수를 반환합니다

구문: /swing <entity selector> <mainhand|offhand>

환경 속성

minecraft:visual/block_light_tint

블록 빛의 색조. 블록 빛 색상은 낮은 밝기 수준에서는 짙은 회색으로 시작하여 중간 수준에서는 이 속성에 의해 색조가 적용되고 높은 수준에서는 흰색으로 변합니다. 기본적으로 횃불의 노란빛 색조를 제공합니다. 이 속성에는 최소한 하나의 색상 성분이 완전히 밝은 상태인 밝은 색상이 가장 효과적입니다. 색조는 화면에 보이는 모든 광원에 전역적으로 적용됩니다. 개별 조명은 서로 다른 색조로 설정할 수 없습니다.

  • 값 유형: RGB 색상
  • 기본값: #FFD88C
  • 수정자: RGB 색상 수정자
  • 보간됨: 예
  • 카메라 위치에서 해결됨

minecraft:visual/ambient_light_color

주변광의 색조와 밝기를 모두 정의합니다. 이 빛은 0 레벨의 빛으로 세계에 적용됩니다. 블록 빛과 하늘 빛이 여기에 추가됩니다.

  • 값 유형: RGB 색상
  • 기본값: #0A0A0A 오버월드용, #302821 네더용,  #3f473f 엔드용
  • 수정자: RGB 색상 수정자
  • 보간됨: 예
  • 카메라 위치에서 해결됨

minecraft:visual/night_vision_color

이 색상은 주변 조명 색상과 유사하게 사용됩니다. 야간 투시 효과가 활성화되면, minecraft:visual/night_vision_color 및 minecraft:visual/ambient_light_color의 구성 요소별 최대값이 주변 색상으로 사용됩니다. 야간 투시는 기본적으로 색조가 적용되지 않습니다.

  • 값 유형: RGB 색상
  • 기본값: #999999
  • 수정자: RGB 색상 수정자
  • 보간됨: 예
  • 카메라 위치에서 해결됨

데이터 구성 요소

minecraft:additional_trade_cost 추가

  • 주민 거래 시 필요한 gives 아이템의 필요 count를 수정하는 데 사용되는 일시적 구성 요소는 거래가 생성된 후 제거됩니다.
  • 형식: 정수

전리품 기능

  • 추가된 minecraft:villager_trade 전리품 테이블 유형은 다음 매개변수를 받습니다:
    • this, 해당 거래를 제공하는 주체
    • origin, 엔티티 발밑에 있는 블록 위치

minecraft:set_random_dyes 추가

  • 아이템이  #dyeable 태그에 속할 경우, 해당 아이템의 minecraft:dyed_color 데이터 구성 요소에 염료를 가산적으로 추가합니다.
  • conditions - 함수가 적용되기 위한 조건
  • number_of_dyes - 아이템에 적용할 16가지 무작위 염료 중 선택된 염료의 수를 나타내는 숫자 제공자
    • 동일한 염료가 반복적으로 선택될 수 있습니다.

minecraft:set_random_potion 추가

  • 아이템에 minecraft:potion_contents 데이터 구성 요소를 무작위로 설정합니다. 필드:
  • conditions - 함수가 적용되기 위한 조건
  • options - 선택 가능한 물약 ID, 네임스페이스가 지정된 물약 ID 목록 또는 해시 접두사가 붙은 물약 태그로, 선택 가능한 물약을 나타냅니다.
    • 기본값은 potions 레지스트리의 모든 물약입니다.

minecraft:enchant_with_levels 변경

이제 다음 필드도 포함합니다:

  • 추가 비용 구성 요소 포함 - 선택적 부울 값으로, 해당 아이템에 마법 부여 비용을 기반으로  minecraft:additional_cost_component를 추가할지 여부를 나타냅니다.
    • 기본값은 false입니다.
    • 가치는 levels 수치 제공자에 의해 결정되며, 마법 부여 시 적용되는 마법 부여 레벨을 결정하는 데 사용되는 것과 동일합니다.

minecraft:enchant_randomly 변경

이제 다음 필드도 포함합니다:

  • include_additional_cost_component - 선택적 부울 값으로, minecraft:additional_cost_component가 추가되어야 하는지 여부를 나타내는 선택적 부울 값입니다.
    • 기본값은 false입니다.
    • 값은 다음 공식에 따라 선택된 값으로 결정됩니다: levels 또는 다음 공식을 사용한 기본값: 2 + random(0, 5 + level * 10) + 3 * level

술어

엔티티 술어

player 하위 술어

  • 새로운 선택적 필드: food - 음식 술어
  • 형식: 필드가 있는 객체:
    • level - 필수 식품 레벨을 지정하는 선택적 정수 최소/최대 범위
    • saturation - 필수 포만감 수준을 지정하는 선택적 부동 소수점 최소/최대 범위

minecraft:sum 추가

  • 숫자 공급자 목록의 합계를 반환합니다
  • 필드:
    • summands, 숫자 공급자 목록

마법 부여

  •  post_piercing_attack 구성 요소는 더 이상 플레이어가 특정 음식 레벨을 보유한 경우에만 작동하지 않습니다.

태그

  • 주민과 떠돌이 상인이 거래 풀을 파생시키는 주민 직업군을 나타내는 여러 태그를 추가했습니다
    • 주민은 각 직업과 거래 레벨을 나타내는 다음 태그를 다음과 같은 형식으로 가집니다:  #<profession>/level_<level>, 최대 레벨 5까지
      • 대장장이의 경우 #common_smith/level_<level> 갑옷 제조인, 무기 대장장이, 도구 대장장이 간에 흔히 볼 수 있는 거래를 나타내는 태그로, 최대 레벨 5까지
    • 떠돌이 상인은 다음과 같은 태그를 가집니다: #wandering_trader/buying#wandering_trader/special#wandering_trader/common

마법 부여 태그

  • 다음 태그를 제거했습니다:
    • trades/desert_special
    • trades/jungle_special
    • trades/plains_special
    • trades/savanna_special
    • trades/snow_special
    • trades/swamp_special
    • trades/taiga_special

물약 태그

  • #tradeable 추가 - 주민 거래에 나타날 수 있는 모든 물약 효과

5. 리소스 팩 버전 76

라이트맵 쉐이더 변경

  •  lightmap.fsh 쉐이더가 크게 수정되었습니다.
    • 이제 LightmapInfo 유니폼에는 이제 두 개의 새로운 필드가 있습니다:
      • BlockLightTint
      • NightVisionColor
    •   AmbientLightFactor 필드는 제거되었으며, 해당 값은 이제 AmbientColor에 미리 곱해져 있습니다.
    •   DarkenWorldFactorBossOverlayWorldDarkeningFactor로 이름이 변경되었습니다.
  • UI에 렌더링되는 텍스트와 아이템은 이제 별도의 1x1 흰색 라이트맵 텍스처를 사용하므로, 라이트맵 쉐이더가 항상 15x15 픽셀 크기의 순수 흰색 영역을 유지할 필요가 없습니다.

6. 26.1 스냅샷 1의 버그 수정
  • MC-64087 - 크리에이티브 모드에서 복수심에 불타는 좀비 / 좀비 증원군이 당신을 공격하려 할 것입니다.
  • MC-179949 - '/item replace' 명령어를 사용하여 피글린의 인벤토리를 편집할 수 없습니다.
  • MC-197497 - 레벨 1에서 0으로의 부드러운 조명 전환이 매끄럽지 않음
  • MC-199589 - 크리에이티브 모드에서 몬스터를 공격한 후 서바이벌 모드로 전환하면 해당 몬스터가 플레이어를 공격 대상으로 삼습니다.
  • MC-219981 - 리더 좀비형 몹이 최대 체력이 증가했음에도 불구하고 20의 체력으로 생성됩니다.
  • MC-300465 - 최대 마커 수를 가진 지도는 아이템 액자에 배치할 수 없습니다
  • MC-302186 - 네더의 주변 조명이 이전 버전과 비교해 색상이 변색되어 보입니다
  • MC-302408 - 전달체의 힘 효과가 적용된 상태에서 수중 조명 불일치
  • MC-302528 - 낮은 하늘 & 블록 빛 효과가 동일한 영역에 적용될 때 완전히 깨져 보임
  • MC-303119 - 서바이벌 모드에서 선택된 아이템 슬롯에 아이템이 하나만 있을 때 고양이나 늑대에게 먹이를 주면 체력이 제대로 회복되지 않습니다.
  • MC-303125 - 플레이어가 죽은 후에도 크리퍼가 폭발할 수 있음
  • MC-303389 - 엔더 드래곤이 앉아 있을 때 공격을 받으면 속도가 영향을 받을 수 있음
  • MC-303692 - 개선된 투명도 기능이 비활성화된 경우 디버그 오버레이 텍스트에 들여쓰기가 발생합니다
  • MC-304023 - 중복 레벨 데이터 수정 파일이 월드의 "data" 폴더에 저장됩니다
  • MC-304217 - 돌진의 배고픔 요구 조건은 사용자 정의 마법 부여의 관통 공격 후 효과에도 적용됩니다.
  • MC-304599 - 돌고래가 앵무조개를 타고 있는 플레이어를 따라다니지 않음 (베드락 에디션과 다름)
  • MC-304631 - 이방성 필터링을 8배로 설정하면 홀수 크기의 블록 텍스처가 있을 때 멀리서 불투명한 반투명 텍스처가 투명해집니다.
  • MC-304725 - 기본 생성 알로 소환된 좀비 주민은 항상 평원 변종으로 생성됩니다
  • MC-304991 - 관전 모드에서 생성되지 않은 전리품 상자를 클릭하면 "block.chest.locked" 사운드 효과가 재생됩니다.
  • MC-305012 - "Universal anger" 게임 규칙 설명에 여전히 "Forgive dead players" 게임 규칙의 구 ID가 사용되고 있습니다.

7. 마무리

오늘 이렇게 26.1 스냅샷 1 버전 살펴보고 리뷰해보는 시간 가져봤습니다.

 

26.1 버전의 스냅샷은 2026년 1월 초에 시작될 거라고 생각했는데 예상 외로 지금 나왔습니다.

 

26.1 버전의 주제는 과연 뭐가 될지 궁금해지네요.

 

아무튼 버전 넘버링 체계가 바뀐 이후의 첫 스냅샷이었습니다.

 

그리고 이번 버전부터 자바 25를 사용하게 되는데요.

 

아시는 분들은 아시겠지만 c2me 모드가 GPU 가속을 실험중에 있고, 해당 빌드는 자바 25를 요구합니다.

 

때문에 c2me 모드의 GPU 가속 기능이 본격적으로 탑재가 되는 시기는 26.1 정식 릴리즈가 되지 않을까 싶습니다. 왜냐하면 자바 25라는 조건을 공식에서 충족 시켜 줬기 때문이죠.

 

그럼 전 에쓰디드림이었고, 다음 시간에 찾아뵙도록 하겠습니다.

 


 

반응형