24w09a是Java版1.20.5的第10个快照,发布于2024年2月28日,加入了狼铠和沼骸的新特性,弃用了物品的NBT标签,优化了物品堆叠,并修复了一些漏洞。
新内容
常规
- 标签
- 加入了伤害类型标签
bypasses_wolf_armor
:#bypasses_invulnerability
、cramming
、drown
、dry_out
、freeze
、in_wall
、indirect_magic
、magic
、outside_border
、starve
、thorns
和wither
。
- 战利品表
- 战利品表条目
loot_table
(从提供的嵌套战利品表返回所有物品)现在有以下语法:value
可以是:- 一个命名空间ID,指对另一个战利品表的引用。
- 完整的战利品表,格式与独立文件的战利品表相同。
- 加入了函数
set_components
,用于在输入物品上添加或替换给定组件。conditions
,条件列表,默认为[]
。- 在应用函数之前要检查的条件。
components
,组件ID到组件值的映射,格式因ID而异。- 带有“!”前缀的组件将导致该组件被删除。
- 加入了函数
copy_components
,用于将组件从指定源复制到物品上。- 现在在原版数据包中使用它来代替
copy_name
和copy_nbt
函数。 conditions
,条件列表,默认为[]
。- 在应用函数之前要检查的条件。
source
,被提取组件的资源类型,当前必须为block_entity
。components
,被复制的组件ID列表。
- 现在在原版数据包中使用它来代替
- 选项
- 在“辅助功能设置”屏幕中加入了“菜单背景模糊程度”滚动条。
- 物品堆叠组件
此段落的内容需要改进。
这些内容因翻译质量较低而违反或未达到条目标准。
你可以帮助我们来改进此段落。
- 用于替代物品的 tagNBT标签。
- 该数据在加载物品时进行解析和验证。
- 这将提高某些经常比较、请求或解析物品数据的场景(例如装甲装饰渲染)的性能。
minecraft:custom_data
组件还可以存储物品的自定义数据。
- 物品类型在单个物品堆叠可以覆盖的物品上包含一组默认组件。
- 为了保持一致性且支持组件,序列化和数据包中的物品格式和命令中的物品语法已更新。
- 物品的默认组件值现在列于报告目录下的
items.json
文件中。 - 方块定义现在被添加到
blocks.json
报告中。(尚未使用,仅供参考) - 加入了以下组件(均省略命名空间
minecraft:
):-
custom_data
- 可用于物品的自定义数据存储。
- 可以在命令中使用预先存在的标记语法
{…}
访问。 - 在谓词中,将与当前部分匹配。
- 升级世界时,物品标签中的任何非游戏数据都会移动到这里。
- 格式如:
custom_data={some:'data'}
。
damage
- 替代标签
Damage
,表示物品失去的耐久度的值。 - 移除此组件的物品不受损。
- 值为非负整数。可受损物品拥有隐性默认值
0
。- 如:
damage=12
。
- 如:
repair_cost
- 替代标签
RepairCost
,表示用铁砧修改物品所需的额外经验。 - 值为非负整数。未设置该组件的物品拥有隐性默认值
0
。- 如:
repair_cost=12
。
- 如:
unbreakable
- 替代布尔型标签
Unbreakable
。 - 如果设置该组件,则使用物品不消耗耐久度。
- 格式为带字段的对象。
show_in_tooltip
为布尔型,默认为true
。用于替代标签HideFlags
的第3个字节。- 如果为
true
,则在物品提示框中显示“无法破坏”文本。
- 如果为
- 如:
unbreakable={}
和unbreakable={show_in_tooltip:false}
。
enchantments
- 替代标签
Enchantments
,储存物品上的魔咒及其等级的列表。 - 未设置该组件的物品拥有隐性默认值
{levels:{}}
。 - 格式为带字段的对象。
levels
,魔咒(对象为字符串ID)的等级(整数,值域为[0,255])。show_in_tooltip
为布尔型,默认为true
。用于替代标签HideFlags
的第1个字节。- 如果为
false
,则在物品提示框中不显示魔咒。
- 如果为
- 如:
enchantments={levels:{'minecraft:protection':2},show_in_tooltip:false}
。
stored_enchantments
- 替代附魔书标签
StoredEnchantments
,储存附魔书上的魔咒及其等级的列表。 - 附魔书拥有隐性默认值
{levels:{}}
。 - 此组件不会使魔咒效果生效。
- 格式为带字段的对象。
levels
,魔咒(对象为字符串ID)的等级(整数,值域为[0,255])。show_in_tooltip
为布尔型,默认为true
。用于替代标签HideFlags
的第6个字节。- 如果为
false
,则在物品提示框中不显示魔咒。
- 如果为
custom_name
- 替代标签
display.Name
,表示覆盖物品的自定义名称。 - 格式为JSON聊天组件字符串。
- 如:
custom_name='{"text": "此物品被重命名过了!", "color": "red"}'
- 如:
lore
- 替代标签
display.Lore
,表示物品提示框中的额外文本。 - 格式为JSON聊天组件字符串列表,最大64个条目。
- 如:
lore=['{"text": "蛋糕是个谎言!"}']
。 - 未设置该组件的物品拥有隐性默认值
[]
。
- 如:
can_break
- 替代标签
CanDestroy
,控制冒险模式玩家可以用此物品破坏哪些方块。 - 格式为带字段的对象,现在使用方块谓词格式而非扁平字符串。
predicates
,方块谓词的列表。blocks
,可以为单个方块、方块列表或哈希前缀方块标签。nbt
,用于匹配的方块实体NBT。state
,为状态属性键到用于匹配的值的映射。- 如:
can_break={predicates:{blocks:'minecraft:furnace',state:{facing:'north'}}
。
show_in_tooltip
为布尔型,默认为true
。用于替代标签HideFlags
的第4个字节。- 也可以使用单个方块谓词,如
can_break={blocks:'minecraft:stone'}
。
can_place_on
- 替代标签
CanPlaceOn
,控制冒险模式玩家可以把此物品放在哪些方块上。 - 格式为带字段的对象,与
can_break
相同。predicates
,方块谓词的列表。blocks
,可以为单个方块、方块列表或哈希前缀方块标签。nbt
,用于匹配的方块实体NBT。state
,为状态属性键到用于匹配的值的映射。- 如:
can_place_on={predicates:{blocks:'minecraft:furnace',state:{facing:'north'}}
。
show_in_tooltip
为布尔型,默认为true
。用于替代标签HideFlags
的第5个字节。- 也可以使用单个方块谓词,如
can_place_on={blocks:'minecraft:stone'}
。
dyed_color
- 替代标签
display.color
,表示应用于可染色物品(物品标签#dyeable
)的颜色。 - 格式为带字段的对象。
rgb
,整数RGB值。- 如:
dyed_color={rgb:16711680}
。
- 如:
show_in_tooltip
为布尔型,默认为true
。用于替代标签HideFlags
的第7个字节。
attribute_modifiers
- 替代标签
AttributeModifiers
,控制在物品上应用的属性修饰符。 - 如果未设置,则有基于物品种类默认属性的隐性默认值。
- 格式为带字段的对象,默认为
{modifiers:[]}
。modifiers
,属性修饰符列表。type
,属性修饰符ID,代替AttributeName
。slot
,代替Slot
,只有当装备在指定的槽位时,修饰符才会生效。为以下参数之一:any
,默认。hand
,(新增)无论主手或副手。armor
,(新增)任意盔甲槽。mainhand
offhand
head
chest
legs
feet
uuid
,代替UUID
,同一个id只能存在一个修饰符。name
,可读字符串,代替Name
。amount
,双浮点,修改此属性的单元数(由操作控制),代替Amount
。operation
,代替整型ID的Operation
,为以下参数之一:add_value
(曾为0
),对属性加amount
。add_multiplied_base
(曾为1
),对属性加amount
与基值的乘积。add_multiplied_total
(曾为2
),对属性加amount
与总值的乘积。
show_in_tooltip
为布尔型,默认为true
。用于替代标签HideFlags
的第2个字节。
- 如:
attribute_modifiers={modifiers:[type:'minecraft:generic.scale',uuid:[1,2,3,4],name:'大!',amount:1.0,operation:'add_multiplied_base']}
。
charged_projectiles
- 替代标签
Charged
和ChargedProjectiles
,包含所有装入弩中的弹射物。 - 如果不存在,则弩未蓄力。
- 格式为物品堆叠列表,不再限制为
3
个条目。- 如:
charged_projectiles=[{id:'minecraft:arrow'}]
。
- 如:
intangible_projectile
- 用于标记发射时不显示在弓弩的弹射物物品,它们也将只能被创造模式玩家捡起。
- 仅物品在弩的组件
charged_projectiles
中时配置。 - 格式为空对象,如
intangible_projectile={}
。
bundle_contents
- 替代标签
Items
,控制储存于收纳袋中的物品。如果被移除,则收纳袋不能放入物品。 - 格式为物品堆叠列表。收纳袋有隐性默认值
[]
。
map_color
- 替代标签
display.MapColor
,表示地图物品上装饰物的色调。 - 格式为整型RGB值,如
map_color=16711680
。- 地图有隐性默认值
4603950
。
- 地图有隐性默认值
map_decorations
- 替代标签
Decorations
,包含地图上的图标列表,用于探险家地图。 - 格式为唯一装饰ID到装饰物的映射。
type
,不再是数字化字节ID,为以下参数之一:player
(曾为0
)frame
(曾为1
)red_marker
(曾为2
)blue_marker
(曾为3
)target_x
(曾为4
)target_point
(曾为5
)player_off_map
(曾为6
)player_off_limits
(曾为7
)mansion
(曾为8
)monument
(曾为9
)banner_white
(曾为10
)banner_orange
(曾为11
)banner_magenta
(曾为12
)banner_light_blue
(曾为13
)banner_yellow
(曾为14
)banner_lime
(曾为15
)banner_pink
(曾为16
)banner_gray
(曾为17
)banner_light_gray
(曾为18
)banner_cyan
(曾为19
)banner_purple
(曾为20
)banner_blue
(曾为21
)banner_brown
(曾为22
)banner_green
(曾为23
)banner_red
(曾为24
)banner_black
(曾为25
)red_x
(曾为26
)village_desert
(曾为27
)village_plains
(曾为28
)village_savanna
(曾为29
)village_snowy
(曾为30
)village_taiga
(曾为31
)jungle_temple
(曾为32
)swamp_hut
(曾为33
)
x
,双浮点,世界坐标。z
,双浮点,世界坐标。rotation
,浮点数,以度为单位从北方顺时针旋转。代替先前的双浮点型rot
。- 如
map_decorations={'Some marker':{type:'target_x',x:123.0,z:-45.0,rotation:0.0f}}
。
- 地图拥有隐性默认值
{}
。
map_id
- 替代标签
map
,用于引用持有地图内容和地图标记的共享映射状态。 - 格式为整型ID,如
map_id=1
。
custom_model_data
- 替代标签
CustomModelData
,可以通过选择custom_model_data
属性来替换物品模型。 - 格式为整型值,如
custom_model_data=43
。
potion_contents
- 替代标签
Potion
、CustomPotionColor
和custom_potion_effects
,控制药水、喷溅药水和滞留药水的效果以及附着于物品上的药水效果。 - 格式为带字段的对象。对于药水和药箭物品,有隐性默认值
{}
。potion
,(可选)药水ID。也指物品中的药水类型,该物品会继承此药水的所有效果。custom_color
,(可选)整型RGB值。覆盖药水的视觉颜色。custom_effects
,效果实例列表,默认为[]
。这是额外应对物品附加的自定义效果列表,可能不会以现有药水表示。- 如:
potion_contents={potion:'minecraft:invisibility',custom_color:16711680}
writable_book_contents
- 替代标签
pages
和filtered_pages
,储存书与笔的内容。- 页面使用
{text:'...'}
包装以直接列出映射。
- 页面使用
- 格式为带字段的对象,书与笔有隐性默认值
{pages:[]}
。pages
,为下列列表之一:- 带字段的对象:
text
,字符串,页面纯文本内容。filtered
,(可选)字符串,过滤页面内容。- 如果指定,启用聊天过滤器的玩家将看到此页面而不是原文本。
- 页面纯文本内容的字符串。
- 带字段的对象:
- 如:
writable_book_contents={pages:[{text:'你好,世界!'}]}
written_book_contents
- 替代标签
pages
、filtered_pages
、title
、filtered_title
、author
、generation
和resolved
,储存成书的内容和元数据。 - 格式为带字段的对象,如:
written_book_contents={pages:[{text:'Hello world!'}],title:{text:'一次愉快的阅读'},author:'Herobrine',generation:1,resolved:true}
。pages
,与writable_book_contents
相同的列表,除了使用可以格式化的JSON聊天组件字符串。title
,过滤后的字符串(和pages
的格式一致)。author
,字符串玩家名。generation
,成书被复制的次数。整数,值域为[0,2],0
为原本。resolved
,布尔值。- 如果本书中的聊天组件已经被解析(目标选择器和计分板分数被替换),则为
true
。 - 如果为
false
,打开这本书后它将被解析。
- 如果本书中的聊天组件已经被解析(目标选择器和计分板分数被替换),则为
trim
- 替代相同格式的标签
Trim
,控制物品纹饰。- 此组件的存在不再受
#trimmable_armor
标签的限制,但配方仍受其影响。
- 此组件的存在不再受
- 格式为带字段的对象,如:
trim={pattern:'minecraft:silence',material:'minecraft:redstone'}
。pattern
,图案ID或内联的图案。material
,材料ID或内联的材料。show_in_tooltip
为布尔型,默认为true
。用于替代标签HideFlags
的第8个字节。
suspicious_stew
- 替代相同格式的标签
effects
,控制食用谜之炖菜获得的状态效果。 - 格式为状态效果(对象与字段)的列表。谜之炖菜有隐性默认值
[]
。id
,状态效果ID。duration
,整型持续刻数,默认为160
。- 如:
suspicious_stew=[{id:'minecraft:poison'}]
。
hide_additional_tooltip
- 替代标签
HideFlags
的第6个字节。 - 如果存在,则禁用来自其物品类型的“附加”提示框部分。
- 格式为空对象,如:
hide_additional_tooltip={}
。
debug_stick_state
- 替代标签
DebugProperty
,储存调试棒使用的选定方块状态资产。 - 格式为方块ID到方块资产名称的映射。调试棒拥有隐性默认值
{}
。- 如:
debug_stick_state={'minecraft:turtle_egg':'eggs','minecraft:furnace':'facing'}
。
- 如:
entity_data
- 替代标签
EntityTag
,储存非结构化的NBT数据以便在使用生成实体的物品时应用于实体,如刷怪蛋或盔甲架。 - 格式为带字段的对象,如:
entity_data={id:'minecraft:pig',Health:1.0f}
- 必须含有一个实体类型
id
字段。 - 任意其他字段都会在生成实体时合并进去。
- 必须含有一个实体类型
bucket_entity_data
- 替代标签
NoAI
、Silent
、NoGravity
、Glowing
、Invulnerable
、Health
、Age
、Variant
、HuntingCooldown
和BucketVariantTag
,储存非结构化的NBT数据以便在将实体从桶中放出时应用于实体。 - 格式为带字段的对象,桶装生物物品拥有隐性默认值
{}
。- 可以包含上面列出的任何字段,这些字段将在放置时应用于实体。
- 如:
bucket_entity_data={NoAI:1,Age:43}
。
instrument
- 替代相同格式的标签
instrument
,山羊角使用的乐器。 - 格式为乐器ID,如:
instrument='minecraft:ponder_goat_horn
。
recipes
- 替代相同格式的标签
Recipes
,控制使用知识之书后应获得的配方列表。 - 格式为配方ID列表,知识之书有隐性默认值
[]
。- 如:
recipes=['minecraft:acacia_boat','minecraft:anvil']
。
- 如:
lodestone_target
- 替代标签
LodestonePos
、LodestoneDimension
和LodestoneTracked
。 - 如果存在,则指南针会指向指定的目标磁石。
- 格式为带字段的对象,如:
lodestone_target={pos:[13,64,-43],dimension:'minecraft:the_nether'}
。pos
,整数阵列['x','y','z']
。dimension
,维度ID。tracked
,布尔值,默认为true
。- 如果为
true
,该组件会随目标位置的磁石被破坏而移除。
- 如果为
firework_explosion
- 替代标签
Explosion.Type
、Explosion.Colors
、Explosion.FadeColors
、Explosion.Trail
和Explosion.Flicker
,储存烟火之星的爆炸数据。 - 格式为带字段的对象,如:
firework_explosion={shape:'large_ball',colors:[16711680],has_trail:true}
。shape
,替代数字IDType
,为以下值之一:small_ball
(曾为0
)large_ball
(曾为1
)star
(曾为2
)creeper
(曾为3
)burst
(曾为4
)
color
,初始粒子颜色列表,实际颜色从中随机选择。为整型RGB值数组,默认为[]
。fade_colors
,淡化的粒子颜色列表,实际颜色从中随机选择。为整型RGB值数组,默认为[]
。has_trail
是否具有踪迹效果。布尔值,默认为false
。has_twinkle
是个否具有闪烁效果。布尔值,默认为false
。替代标签Flicker
。
fireworks
- 替代标签
Fireworks.Explosions
和Fireworks.Flight
,储存烟花火箭的所有爆炸效果和飞行时间。 - 格式为带字段的对象,如:
{explosions:[],flight_duration:1}
。explosions
,爆炸的列表,与组件firework_explosion
的格式一样。flight_duration
,单字节,为该烟花火箭中火药的数量。
profile
- 替代标签
SkullOwner
,控制玩家的头显示的皮肤,此数据在放下物品后复制到“玩家的头”方块中。 - 如果仅指定了
name
,会解析为相应的玩家ID和皮肤数据。 - 格式为带字段的对象,如:
profile={name:'MHF_Sheep'}
name
,字符串,玩家资料名称。id
,(可选)uuid,玩家资料ID。properties
,(可选)资产列表。name
,字符串,资产名。value
,字符串,Base64加密纹理数据。signature
,(可选)字符串。
note_block_sound
- 替代标签
BlockEntityTag.note_block_sound
,控制玩家的头放置在音符盒上时音符盒播放的音效,此数据在放下物品后复制到“玩家的头”方块中。 - 格式为音效事件ID,如:
note_block_sound='minecraft:ambient.cave'
。
base_color
- 替代标签
BlockEntityTag.Base
,储存旗帜和盾的基础颜色。 - 值为下列之一:
white
(曾为0
)orange
(曾为1
)magenta
(曾为2
)light_blue
(曾为3
)yellow
(曾为4
)lime
(曾为5
)pink
(曾为6
)gray
(曾为7
)light_gray
(曾为8
)cyan
(曾为9
)purple
(曾为10
)blue
(曾为11
)brown
(曾为12
)green
(曾为13
)cyan
(曾为14
)red
(曾为15
)black
(曾为16
)
banner_patterns
- 替代标签
BlockEntityTag.Patterns
,储存对旗帜和盾生效的图案,放置时数据复制到旗帜方块中。 - 格式为旗帜图案列表,旗帜和盾存在隐性默认值
[]
。pattern
,旗帜图案注册ID,替代了Patterns[].Pattern
中的短旗帜图案代码。color
,染色名称替代了Patterns[].Color
中的整型染色ID。- 如:
banner_patterns=[{pattern:'minecraft:stripe_top',color:'red'}]
。
pot_decorations
- 储存饰纹陶罐每侧的陶片,放置时复制到方块数据中。
- 替代了相同格式的标签
BlockEntityTag.sherds
。 - 格式为陶片物品ID列表,如:
['arms_up_pottery_sherd','angler_pottery_sherd','danger_pottery_sherd','shelter_pottery_sherd']
。- 饰纹陶罐拥有隐性默认值
['minecraft:brick','minecraft:brick','minecraft:brick','minecraft:brick']
。
- 饰纹陶罐拥有隐性默认值
container
- 包含潜影盒内容的物品形式,放置时数据复制到潜影盒方块中。
- 替代了标签
BlockEntityTag.Items
。 - 格式为槽位列表,潜影盒拥有隐性默认值为
[]
。slot
,整数,值域为[0,255],表示容器中的槽位。item
,物品堆叠。- 如:
container=[{slot:7,item:{id:'diamond_pickaxe',components:{'minecraft:unbreakable':{}}}}]
。
bees
- 包含蜂巢或蜂箱中的蜜蜂,放置时数据复制到蜂巢或蜂箱方块中。
- 替代了标签
BlockEntityTag.Bees
。 - 格式为蜜蜂列表,蜂巢和蜂箱拥有隐性默认值为
[]
。entity_data
,字符串到字符串的映射。id
,实体ID。- 其余的标签在生成蜜蜂时合并到其数据中。
ticks_in_hive
,整型。min_ticks_in_hive
,整型。- 如:
bees=[{entity_data:{id='minecraft:bee'},ticks_in_hive:3,min_ticks_in_hive:10}]
。
lock
- 控制类容器方块的锁定状态,放置时复制到方块数据中。
- 必须使用与此值相同的自定义名称的物品才能打开容器。
- 替代了标签
BlockEntityTag.Lock
。 - 格式为字符串值,如:
lock='hunter2'
。
container_loot
- 控制类容器方块未解析的战利品表和种子,放置时复制到方块数据中。
- 替代了标签
BlockEntityTag.LootTable
和BlockEntityTag.LootTableSeed
。 - 格式为带字段的对象,如:
container_loot={loot_table:'minecraft:chests/buried_treasure',seed:123}
。loot_table
,战利品表ID。seed
,(可选)长整数,用于解析战利品表的伪随机种子。如果不指定或为0
,在估测战利品表时种子会随机选取。
block_entity_data
- 储存具有方块实体的方块的非结构化NBT数据。
- 任何移动到专用物品组件中的方块实体数据都会从这个标签中删除。
- 如果玩家是管理员,则此标签仅对命令方块、讲台、告示牌和刷怪笼生效。
- 替代了先前具有相同行为的标签
BlockEntityTag
。 - 格式为带字段的对象,如:
block_entity_data={id:'minecraft:chest',Items:[{Slot:1,item:'minecraft:diamond'}]}
。- 必须包含方块实体类型的
id
字段。 - 任意额外字段都会在方块被放置时合并到方块数据中。
- 必须包含方块实体类型的
block_state
- 控制放置方块后继承的方块属性。
- 替代了标签
BlockStateTag
。 - 格式为属性键对属性值的映射,如:
block_state={eggs:'10'}
。
enchantment_glint_override
- 覆盖物品上的附魔光效,可以用与之前无效的
Enchantments
标签相同的方式来添加光效。 - 格式为布尔值。
- 如果为
true
,没有附魔光效的物品将获得光效并开始闪烁。 - 如果为
false
,有附魔光效的物品将不显示光效也不闪烁。
- 如果为
-
更改
物品
- 狼铠
- 将物品纹理提高2像素,添加了色层纹理和用于开裂的半透明纹理。
- 现在具有64最大耐久度,会根据剩余耐久度的不同出现开裂纹理。
- 现在可以和皮革盔甲一样染色。
生物
- 幼年犰狳
- 不再在被刷扫时掉落犰狳鳞甲。
- 狼
- 更改了纹理。
- 现在在装备狼铠时,受到的伤害的伤害类型不具有伤害类型标签
bypasses_wolf_armor
时不减少生命值,改为使其装备的狼铠减少等于向上取整的伤害值的剩余耐久度。 - 现在狼的主人可以对狼使用犰狳鳞甲修复其装备的狼铠。
非生物实体
- 箭
- 现在不再储存附着的状态效果,而是从其物品形式拥有的
item
中获取。 - 现在药箭的状态效果在其生效期过后消失。
- 区域效果云
- 现在使用
potion_contents
字段中的minecraft:potion_contents
组件存储格式相同的药水效果。
游戏内容
- 创造模式
- 现在使用ctrl和选取方块键选取一个命名过的方块(如箱子)后,也会得到一个命名过的对应物品。
- 魔咒
- 魔咒现在存储为键值对而不再是复合元素列表,因此不再能存储魔咒的顺序(通常是魔咒被添加到物品上的顺序)。
- 物品被重新加载后,其魔咒会被按照魔咒ID重新排序。
- 力量、冲击、火矢、无限现在会在弩上产生效果。
- 穿透、多重射击现在会在弓上产生效果。
- 交易
- 村民交易的
ignoreTags
字段被移除,取而代之的是基于损伤值的组件谓词。- 现在只有指定
'minecraft:damage': 0
时村民才会收购无耐久损耗的物品。 - 现在在默认不指定组件的情况下,村民可以收购任意物品。
- 现在只有指定
命令格式
/attribute
- 重命名以下修饰符
operation
值:add
->add_value
multiply_base
->add_multiplied_base
multiply
->add_multiplied_total
/playsound
- 现在可以不指定玩家(如
@s
)和声音分类(如netural
)。
/give
、/item
、/loot
和/clear
- 更新了语法。
- 现在可以在物品ID后使用方括号指定组件。
- 组件之间用逗号分隔。
- 如
netherite_hoe[damage=5,repair_cost=2]
。
- 如
- 组件之间用逗号分隔。
- 组件类型会自动补全。
- 值不会自动补全,但会被验证。如果指定的组件不正确,命令将无法解析。
- 如
give @s wooden_pickaxe[damage=-34]
是无效的。
- 如
- 旧NBT语法
{…}
现在用于设置或匹配minecraft:custom_data
组件。- 如
give @s stick{foo:'bar'}
等价于give @s stick[custom_data={foo:'bar'}]
。 - 如果
[…]
和{…}
均被指定,则[…]
必须在{…}
之前。
- 如
- 使用
{…}
自定义数据语法将使用先存的NBT部分匹配行为。- 这要求谓词中指定的所有标签都出现在目标项上,但可以忽略其他标签。
- 目标的列表必须包含谓词中指定的所有物品,但目标列表也可包含其他物品,这些物品的顺序不影响匹配。
- 现在可以在物品ID后使用方括号指定组件。
/clear
中的物品谓词参数在匹配组件和自定义数据方面具有新的语义。- 每个指定的组件都必须出现在目标物品上,并且具有完全相等的解析值。
- 如果没有指定,视为目标物品包含默认组件。
常规
- 背景图
- 移除了泥土背景。
- 在游戏外的菜单和设置显示暗化和模糊化的全景图背景。
- 在游戏内的菜单和设置显示暗化和模糊化的玩家镜头。
- 命令方块、结构方块、拼图方块的GUI显示暗化和模糊化的玩家镜头。
- 跨维度传送时不再显示泥土背景,而是全程显示玩家镜头。
- 首次进入返回传送门后显示的终末之诗和鸣谢名单现在使用末地传送门和末地折跃门的动画作为背景。
- 原本直接显示在泥土背景上的文字现在使用黑色背景框。
- 游戏的暂停菜单、设置、命令方块、结构方块、拼图方块的暗化程度降低;物品栏、容器和书等GUI不受这些变化的影响。
- 玩家可以在“辅助功能设置”内调节使用模糊效果的背景的模糊强度。
- 界面
- 标题和按钮等屏幕元素在不同屏幕上的位置现在更加一致。
- 更新了Realms中的玩家和世界备份界面。
- 列表的顶部和底部现在有更清晰的边界。
- 在可用磁盘空间少于64 MB时,加入单人游戏世界前会出现警告界面。
- 在单人游戏中,加载或保存区块出错时会在弹窗中呈现警告。
- 数据包
- 将数据包版本号更改为
33
。 - 附加于物品堆叠标签字段的非结构化NBT数据现在被结构化“组件”取代。
- 资源包
- 将资源包版本号更改为
28
。 - 移除了
options_background
和light_dirt_background
纹理。 - 更新了
footer_separator
和header_separator
纹理,它们分别被应用于列表的底部和顶部。 - 加入了
menu_background
和menu_list_background
纹理,分别被应用于屏幕的背景和列表的背景。 - 更新了精灵图:
widget\tab
、widget\tab_highlighted
、widget\tab_selected
和widget\tab_selected_highlighted
。
- 加入了精灵图:
widget\scroller_background
。
- 移除了Realms的纹理:
changes
、changes_highlighted
、restore
、restore_highlighted
、make_operator_highlighted
、remove_operator_highlighted
和remove_player_highlighted
。
- 战利品表
set_nbt
和copy_nbt
函数已分别重命名为set_custom_data
和copy_custom_data
。- 这些现在适用于目标物品的
custom_data
组件。
- 这些现在适用于目标物品的
- 更新了
set_attributes
函数。- 修饰符
slot
现在支持any
、hand
和armor
值。 - 修饰符
operation
的值现在被重命名:addition
->add_value
multiply_base
->add_multiplied_base
multiply_total
->add_multiplied_total
- 修饰符
- 物品堆叠格式
- 使用F3 + H显示高级提示框时,标签数变为组件数。
- 先前所有的
id
(字符串)和Count
(单字节)字段都被id
(命名空间字符串)和count
(整型)取代。 count
字段现在是可选的,默认为1
,且为默认值时不会储存该字段。- 现在堆叠尺寸受该物品的最大堆叠尺寸限制。
- 移除了
tag
字段,世界升级后任何剩余内容终将移至custom_data
组件中。 - 加入了
components
字段储存物品中的所有组件。- 等于其默认值的组件将不会被存储。
- 物品堆叠格式不再呈现空堆叠(空气或0数量物品);相反,在支持该字段的地方应该省略该字段。
- 谓词格式
- 更新了物品谓词格式:
- 移除了
tag
字段。 items
字段现在支持单一的条目、哈希前缀物品标签或物品列表。potion
被重命名为potions
,且现在支持单一的条目、哈希前缀药水效果标签或药水效果列表。nbt
谓词被重命名为custom_data
,现在其与组件minecraft:custom_data
相匹配。- 加入了用于精确匹配组件的新可选字段
components
。- 被指定的所有组件必须与目标物品上存在的对应组件完全相等,但额外组件会被忽略。
- 如果未指定组件,其默认值将假定存在于目标物品上。
- 因组件ID而异,格式为组件ID到组件值的映射。
- 移除了
- 更新了方块谓词格式:
- 移除了
tag
字段。 blocks
字段现在支持单一的条目、哈希前缀方块标签或方块列表。
- 移除了
- 更新了流体谓词格式:
- 移除了
tag
字段。 - 现在由
fluid
字段重命名为fluids
,且支持单一的条目、哈希前缀流体标签或流体列表。
- 移除了
- 更新了实体谓词格式:
type
字段现在支持单一的条目、哈希前缀实体类型标签或实体类型列表。
- 更新了定位谓词格式:
- 现在由
biome
字段重命名为biomes
,且支持单一的条目、哈希前缀生物群系标签或生物群系列表。 - 现在由
structure
字段重命名为structures
,且支持单一的条目、哈希前缀结构标签或结构列表。
- 现在由
更改(实验性)
方块
- 宝库
- 进一步更改了纹理以与试炼刷怪笼区分。
- 如果宝库不存在
key_item
字段,则不能被开启。
生物
- 沼骸
- 更新了模型和纹理。
- 现在可以使用剪刀剪下2个蘑菇(红色和棕色蘑菇均有可能)。
非生物实体
- 风弹
- 现在会在60秒后消失。
- 现在会正确计算摔落伤害。
- 降低了旋风人风弹和风弹物品风弹爆炸范围的随机性。
修复
- 修复了20个漏洞
- 1.20前正式版的漏洞
- MC-19893 — 击败末影龙后,鸣谢名单内
options_background.png
异常颠倒。 - MC-100016 — 单人世界选择屏幕在
light_dirt_background.png
或options_background.png
透明时显示异常。 - MC-118890 — 插在地上的药箭永不失效。
- MC-195572 — 与基岩版相比,当抗火状态生效时,从熔岩中冒出的雾更密集。
- MC-226775 — 熄灭蜡烛时显示不准确的字幕。
- MC-251042 — 多人游戏第三方警告按钮在非英文语言中的位置不合适。
- MC-257119 — 磁石指针在玩家丢弃且破坏其绑定的磁石后不可被堆叠。
- MC-259284 — 有大量数据的储存空间存在严重性能问题。
- 1.20.4的漏洞
- MC-267451 — 在1.20.4中用铁砧命名的物品不与在更早版本命名的物品堆叠。
- MC-267500 — UUID的前两个或后两个整数为0时,物品上的属性修饰符无效。
- MC-267975 — Realms中渲染的玩家列表比它的可见尺寸大。
- MC-267976 — Realms玩家列表中的滚动条不再能被鼠标指针拖动。
- MC-268011 — 漏斗会泄漏上个被其吸取过物品实体的世界。
- MC-268022 — “实验性内容需求”菜单内的列表元素不可被鼠标指针选中。
- MC-268236 — 社交屏幕的搜索栏不被默认选中。
- 1.20.5开发版本的漏洞
- MC-267956 — 手持钻石锄或下界合金锄时,攻击指示器不显示。
- MC-268350 — 风弹永不消失。
- 上个开发版本的漏洞
- MC-268580 — 雕纹书架模型在数据生成中不稳定。
- MC-268710 — 风弹的摔落伤害减免不生效。
- MC-268778 — 幼年犰狳被刷扫时不应掉落犰狳鳞甲。
来源:minecraft Wiki