Minecraft Java 스냅숏
이번 주 스냅숏에는 오래 기다리신 쓰러진 나무를 자바 에디션에 추가해 Bedrock Edition과 통일했습니다. 추가적으로, 반딧불이 덤불이 이제 맹그로브 늪과 희귀하게 악지에서 생성될 수 있습니다.
기술적인 측면에서는, 명령어의 SNBT 문법이 확장되고 향상되었고, SNBT 텍스트 구성 요소가 확장열이 작동하지 못하게 하는 것과 관련된 버그도 해결했습니다.
신기능
Bedrock Edition과의 통일성을 위해 쓰러진 나무를 추가했습니다.
쓰러진 나무
쓰러진 나무는 새로운 장식적 나무 종류입니다.
쓰러진 나무는 네 가지의 서로 다른 유형으로 나타납니다:
참나무
자작나무
정글 나무
가문비나무
쓰러진 자작나무는 짧은 종류나 긴 종류로 나타날 수 있습니다.
일부 쓰러진 나무는 버섯이나 덩굴로 장식될 수 있습니다.
쓰러진 나무는 서 있는 종류가 자라는 모든 생물 군계에서 찾을 수 있으나, 다음은 예외입니다:
목초지
대나무 정글
강
산림
꽃 숲에 쓰러진 자작나무는 있으나, 쓰러진 참나무는 없습니다.
변경 사항
낙엽
낙엽이 다른 블록에 의해 대체 가능합니다.
반딧불이 덤불
반딧불이 덤불이 이제 물이 존재하는 다른 생물 군계와 유사하게, 맹그로브 늪 및 (아주 희귀하게) 악지에서 물 주변에 생성될 수 있습니다.
기술적 변경 사항
데이터 팩 버전이 이제 69입니다.
클라리언트 측에서 신규 명령줄 인수 --renderDebugLabels를 사용할 수 있습니다.
연관된 OpenGL 객체에 디버그 레이블을 추가해여, 개발자들에게 렌더를 디버그하는 것을 더 쉽게 만들었습니다.
데이터 팩 버전 69
명령어에서 NBT, 텍스트 구성 요소와 인라인 술어에 사용되는 객체 표기법 (일명 SNBT)이 확장되었습니다.
명렁어
/data가 이제 이기종 목록을 투명하게 생성하고 변경할 수 있습니다.
개체 데이터
FallFlying 필드가 이제 제거될 때 보존되지 않습니다.
이제 Health 및 Air 필드가 명시되지 않은 경우, 각각의 최댓값을 기본값으로 가집니다.
AREA_EFFECT_CLOUD
Duration 필드가 이제 명시되지 않은 경우, -1을 기본값으로 가집니다.
Duration 필드가 -1이면, 광역 효과 구름이 소멸되지 않습니다.
이는 지속 시간이 명시되지 않은 채로 소환된 광역 효과 구름이 더 이상 즉시 사라지지 않음을 의미합니다.
CREEPER
Fuse 필드가 이제 명시되지 않은 경우 30을 기본값으로 가집니다.
ExplosionRadius 필드가 이제 명시되지 않은 경우 3을 기본값으로 가집니다.
DOLPHIN
Moistness 필드가 이제 명시되지 않은 경우 2400을 기본값으로 가집니다.
ENDER_DRAGON
DragonDeathTime 필드가 이제 명시되지 않은 경우 0을 기본값으로 가집니다.
FALLING_BLOCK
HurtEntities 필드가 이제 명시되지 않은 경우 false (혹은 BlockState이 anvil인 경우 true)를 기본값으로 가집니다.
FallHurtAmount 필드가 이제 명시되지 않은 경우 0을 기본값으로 가집니다.
FallHurtMax 필드가 이제 명시되지 않은 경우 40을 기본값으로 가집니다.
DropItem 필드가 이제 명시되지 않은 경우 true를 기본값으로 가집니다.
TileEntityData 필드가 이제 제거될 때 보존되지 않습니다.
FIREWORK_ROCKET
ShotAtAngle 필드가 이제 명시되지 않은 경우 false를 기본값으로 가집니다.
FOX
Trusted 필드가 이제 공백을 기본값으로 가집니다. (또한, /data에 의해 변경될 때 이전 상태와 병합되지 않습니다.)
GHAST
ExplosionPower 필드가 이제 명시되지 않은 경우 1을 기본값으로 가집니다.
GOAT
HasLeftHorn 및 HasRightHorn 필드가 이제 명시되지 않은 경우 true를 기본값으로 가집니다.
INTERACTION
width 및 height 필드가 이제 명시되지 않은 경우 1을 기본값으로 가집니다.
ITEM
Health 필드가 이제 명시되지 않은 경우 5를 기본값으로 가집니다.
PickupDelay 필드가 이제 명시되지 않은 경우 0을 기본값으로 가집니다.
Age 필드가 이제 명시되지 않은 경우 0을 기본값으로 가집니다.
Owner 및 Thrower 필드가 이제 제거될 때 보존되지 않습니다.
ITEM FRAME 및 GLOW_ITEM_FRAME
ItemDropChance 필드가 이제 명시되지 않은 경우 1.0을 기본값으로 가집니다.
PRIMED_TNT
fuse 필드가 이제 명시되지 않은 경우 80을 기본값으로 가집니다.
explosion_power 필드가 이제 명시되지 않은 경우 4를 기본값으로 가집니다.
SHULKER
Color 필드가 이제 명시되지 않은 경우 16 (색 없음)을 기본값으로 가집니다.
SKELETON
StrayConversionTime 필드가 이제 제거될 때 보존되지 않습니다.
SPECTRAL_ARROW
Duration 필드가 이제 명시되지 않은 경우 200을 기본값으로 가집니다.
SNOW_GOLEM
Pumpkin 필드가 이제 명시되지 않은 경우 true를 기본값으로 가집니다.
TNT_MINECART
fuse 필드가 이제 명시되지 않은 경우 80을 기본값으로 가집니다.
explosion_power 필드가 이제 명시되지 않은 경우 4를 기본값으로 가집니다.
explosion_speed_factor 필드가 이제 명시되지 않은 경우 1을 기본값으로 가집니다.
TRADER_LLAMA
DespawnDelay 필드가 이제 명시되지 않은 경우 47999를 기본값으로 가집니다.
VILLAGER
FoodLevel 및 Xp 필드가 이제 명시되지 않은 경우 0을 기본값으로 가집니다.
ConversionTime 필드가 이제 제거될 때 보존되지 않습니다.
WANDERING_TRADER
DespawnDelay 필드가 이제 명시되지 않은 경우 0을 기본값으로 가집니다.
ZOMBIE
DrownedConversionTime 필드가 이제 제거될 때 보존되지 않습니다.
ZOMBIE_VILLAGER
Xp 필드가 이제 명시되지 않은 경우 0을 기본값으로 가집니다.
ConversionTime 필드가 이제 제거될 때 보존되지 않습니다.
ARROW, SPECTRAL_ARROW 및 TRIDENT
damage 필드가 이제 명시되지 않은 경우 2를 기본값으로 가집니다.
DRAGON_FIREBALL, WIND_CHARGE, BREEZE_WIND_CHARGE, WITHER_SKULL, SMALL_FIREBALL 및 LARGE_FIREBALL
acceleration_power 필드가 이제 명시되지 않은 경우 0.1을 기본값으로 가집니다.
SMALL_FIREBALL 및 LARGE_FIREBALL
ExplosionPower 필드가 이제 명시되지 않은 경우 1을 기본값으로 가집니다.
BLOCK_DISPLAY, ITEM_DISPLAY 및 TEXT_DISPLAY
interpolation_duration, teleport_duration 및 start_interpolation 필드가 이제 명시되지 않은 경우 0을 기본값으로 가집니다.
view_range 필드가 이제 명시되지 않은 경우 1을 기본값으로 가집니다.
shadow_radius 필드가 이제 명시되지 않은 경우 0을 기본값으로 가집니다.
shadow_strength 필드가 이제 명시되지 않은 경우 1을 기본값으로 가집니다.
width 및 height 필드가 이제 명시되지 않은 경우 0을 기본값으로 가집니다.
블록 개체 데이터
CAMPFIRE
CookingTimes 및 CookingTotalTimes 필드가 이제 제거될 때 보존되지 않습니다.
CHISELED_BOOKSHELF
last_interacted_slot 필드가 이제 명시되지 않은 경우 -1을 기본값으로 가집니다.
HOPPER
TransferCooldown 필드가 이제 명시되지 않은 경우 -1을 기본값으로 가집니다
JIGSAW
name, target 및 pool 필드가 이제 명시되지 않은 경우 minecraft:empty를 기본값으로 가집니다.
final_state 필드가 이제 명시되지 않은 경우 minecraft:air를 기본값으로 가집니다.
SCULK_SHRIEKER
warning_level 필드가 이제 명시되지 않은 경우 0을 기본값으로 가집니다.
STRUCTURE_BLOCK
ignoreEntities 및 showboundingbox 필드가 이제 명시되지 않은 경우 true를 기본값으로 가집니다.
posY 필드가 이제 명시되지 않은 경우 1을 기본값으로 가집니다.
NBT 변경 사항
게임 내의 NBT 데이터를 가진 모든 인터페이스 (SNBT 형식, /data)가 이제 이기종 목록, 즉, 원소가 서로 같은 자료형이 아닌 목록을 지원합니다.
/data로 다른 자료형의 목록에 삽입하거나 교체하는 것이 더 이상 오류를 발생시키지 않습니다.
배열 자료형 (예: [I;1,2,3])에 삽입하는 것은 여전히 자료형이 제한되어있습니다.
이는 기존에 이기종 목록을 나타내는 데에 사용되던 '래퍼' 객체가 게임 내의 수단으로 관측 가능하지 않음을 의미합니다.
/data가 더 이상 빈 키를 가진 경로를 탐색할 수 없습니다. (예: /data get ... foo.''.bar)
NBT 파일 형식은 변경되지 않았습니다:
이기종 목록은 NBT의 제약을 우회하기 위해 저장되기 전에 변환됩니다.
예시 변환: ['a', {'b':3}]이 [{'':'a'},{'b':3}]로 저장됩니다.
기존에 존재하던 외부 틀은 여전히 NBT 파일을 읽을 수 있으나, 이기종 목록이 변환된 형태로 표시됩니다.
게임에 의해 생성되는 데이터는 변경되지 않았습니다: 텍스트 구성 요소와 같은 객체는 이미 이러한 형식의 이기종 목록 생성하고 있었습니다.
참고: 이 래퍼 객체는 게임 내에서 관측할 수 없을 것이며, NBT 파일 또는 네트워크 형식에 직접적으로 작업하는 개발자에게만 중요합니다.
SNBT 변경 사항
명령어에서 객체와 비슷한 데이터를 설명하는 텍스트 형식 (NBT, 텍스트 구성 요소, 술어 등)이 확장되었습니다.
숫자 형식
float형 숫자의 정수 혹은 소수부분이 생략 가능합니다.
예: .1 및 1.이 이제 유효합니다.
float형 숫자가 이제 E 표기법을 사용합니다.
예: 1.2e3, 1.2E3, 1.2E+3 및 12000e-1이 이제 모두 1200.0을 나타내는 유효한 방법입니다.
정수가 이제 0x를 접두어로 가지면 16진수 숫자를, 0b를 접두어로 가지면 2진수 숫자를 나타냅니다.
예: 0xbad (2989와 동일), 0xCAFE (51966과 동일), 0b101 (5와 동일)
정수가 이제 0으로 시작할 수 없습니다.
일반적으로 이는 해당 숫자가 8진법임을 의미하나, 의도하지 않은 사용을 피하기 위해 제한하고 있습니다.
숫자가 이제 자릿수의 나열 사이에 _ 문자를 가질 수 있습니다. (단, 열의 처음이나 마지막에는 불가능합나다.)
예: 0b10_01, 0xAB_CD, 1_2.3_4__5f, 1_2e3_4
NaN, Inf 및 16진수 float 표기법은 지원되지 않습니다.
자료형 접미어가 확장되었습니다:
정수형 접미어 (b 또는 B - byte, s 또는 S - short, i 또는 I - integer, l 또는 L)에 이제 s (부호 있음) 또는 u (부호 없음) 접두어를 사용할 수 있습니다.
신규 접미어는 해석할 때 유효한 범위에만 영향을 미칩니다 - 값은 여전히 부호가 있는 채로 저장됩니다.
예시: 240ub는 -16sb와 동일하며, 240sb는 해석되지 않습니다.
접미어가 u나 s 없이 사용되면, 10진수는 부호 있음을, 2진수 및 16진수는 부호 없음을 기본값으로 가집니다.
참고: b가 유효한 16진수 숫자이기도 하므로, 바이트 크기의 16진수 숫자는 0x11ub나 0x11sb와 같이 부호 접미어와 같이 사용되어야 합니다.
문자열
따옴표 내의 문자열에 이제 ', " 및 \보다 많은 확장열을 사용할 수 있습니다.
유니코드 확장열:
\x - 두 자리 확장, 예: \x42
\u - 네 자리 확장, 예: \u2603
\U - 여덟 자리 확장, 예: \U00002603
\N{<name>} - 이름이 붙은 유니코드 문자, 예: \N{Snowman}
내장된 확장열:
\b - 백스페이스, 유니코드 \x08
\s - 스페이스, 유니코드 \x20
\t - 가로 탭, 유니코드 \x09
\n - 라인 피드, 유니코드 \u0a
\f - 폼 피드, 유니코드 \u0c
\r - 캐리지 리턴, 유니코드 \u0d
숫자와의 의도되지 않은 충돌을 방지하기 위해 따옴표가 없는 문자열은 이제 0-9, ., +나 -로 시작할 수 없습니다.
숫자 배열
배열 ([B;], [I;], [L;]) 안의 접미사가 없는 값은 이제 배열의 자료형과 일치하는 접미사를 가지는 것으로 가정합니다.
예: [B;1,2]는 [B; 1b, 2b]와 동일합니다.
이제 배열에서 배열의 자료형보다 작은 자료형도 사용할 수 있습니다.
예: [I;1b,2s,3]은 유효하며 [I;1i,2i,3i]와 동일합니다.
목록
이제 목록에 후행 쉼표를 사용할 수 있습니다.
예: [1,2,]는 유효하며 [1,2]와 동일합니다.
후행 쉼표는 하나만 허용되며, 유효한 원소에 후행해야 합니다 - [,]와 [1,,]는 둘 다 유효하지 않습니다.
복합체
이제 복합체 (맵)에 후행 쉼표를 사용할 수 있습니다.
예시: {a:b,}
후행 쉼표는 하나만 허용되며, 유효한 키-값 쌍에 후행해야 합니다 - {,}와 {a:b,,}는 둘 다 유효하지 않습니다.
25W09A에 수정된 버그
MC-168262 - 마른 덤불을 경작지 위에 설치할 수 없음
MC-236100 - 엔드 수정 빛줄기가 검은색으로 나타남
MC-276861 - 플레이어가 아주 빨리 움직일 때 때때로 막혀 있는 엔드 차원문을 통해 순간이동할 수 있음
MC-279229 - SNBT 텍스트 구성 요소가 \n과 \t가 작동하지 못하게 함
MC-279236 - 겉날개를 이용해 물 속으로 비행하면 플레이어가 올바르지 않은 상태에 놓임
MC-279250 - SNBT 텍스트 구성 요소가 유니코드 확장열이 작동하지 못하게 함
MC-279252 - 일부 경우에 /data로 표지판의 한 줄을 변경하는 것이 더 이상 가능하지 않음
MC-279278 - 앞으로 걷는 도중 옆으로 빠르게 두 번 이동하면 플레이어가 달림
MC-279928 - 충분히 멀면 신호기 빛줄기가 신호기 블록과 겹침
MC-279932 - 신호기 빛줄기에 다가갈 때 사라지고 다시 나타남
MC-279942 - 렌더 거리 밖에 있는 신호기 빛줄기가 안개 앞에 렌더될 수 있음
MC-279947 - 신규 소 모델의 주둥이가 세로로 0.1 픽셀만큼 오프셋되어 있음
MC-280022 - 플레이어가 용암 옆의 고체 블록 위에 걸을 때 용암에 의해 불붙을 수 있음
MC-280033 - 신호기 빛줄기가 클라이언트 렌더 거리를 넘어서 렌더됨
MC-280121 - 낙엽을 담장과 울타리 위에 설치할 수 있음
MC-280123 - 키 작은 마른 잔디와 키 큰 마른 잔디가 유사한 블록과 달리 무작위로 오프셋되어 있지 않음
MC-280155 - 무작위 틱이 게으른 청크에 개체가 쌓이게 할 수 있음
MC-280170 - 게임 규칙 mobGriefing이 false로 설정되어 있지 않으면 염소가 더 이상 갑옷 거치대를 들이받지 않음
MC-280211 - glDebugVerbosity가 3으로 설정되어 있을 때 엔드 수정 빛줄기가 OpenGL 오류를 발생시킴
스냅숏을 플레이하세요
스냅숏은 Minecraft: Java Edition에서 플레이 가능합니다. 스냅숏을 설치하려면, Minecraft 런처를 열어서 "설치 설정" 탭에서 스냅숏을 활성화하십시오.
테스트 중인 버전은 월드를 망가뜨릴 수 있으므로, 주요 월드와 다른 폴더에서 백업하고 실행하십시오.
크로스-플랫폼 서버 jar:
여기서 버그를 신고해주세요:
피드백을 제공하고 싶으신가요?
피드백과 제안은 피드백 사이트에서 해주세요. 대화를 하고 싶다면, 공식 Minecraft 디스코드에 들어오세요.