Skip to content

破坏性技术更新日志

又名“升级你的数据包后什么东西会坏掉”

⚠️本文部分正文内容翻译自misode的“技术性更新日志”页面: https://misode.github.io/changelog

前言

本条目列出所有原版Minecraft各版本更新时所有的破坏性改动,也就是那些如果不加处理会导致数据包或资源包在升级版本后无法正常运行的更新。

请注意大部分条目经过简化,目的仅为提醒读者这项变更的存在。请查阅Wiki以获取详细说明。

改动日志以正式版本为分类条目,降序排列。

迁移指南

我的世界 JE1.21 数据包文件夹名称改变

正文

1.21.11

数据包:

  • 命令
    • /worldborder的时间参数现在默认使用游戏刻作为单位。
    • 现在世界边界由游戏刻而不是现实时间控制。
    • 所有的游戏规则现在使用命名空间ID。所有的原ID被重命名为snake_case。部分游戏规则的含义发生反转。部分游戏规则的值域现在有额外限制。请查阅Wiki
  • NBT
    • 移除了AngerTime,以anger_end_time取代,表示生物从哪刻起不再愤怒。
    • AngryAT重命名为angry_at
  • 数据组件
    • consumable组件的animation字段中,原有的spear动画重命名为trident。加入了新的spear动画。
    • intangible_projectile组件现在有工具栏提示。
  • 标签
    • 重命名物品标签#enchantable/sword#enchantable/sweeping
    • 以下生物群系标签被新的环境属性取代,故移除:
      • #snow_golem_melts#increased_fire_burnout#plays_underwater_music#has_closer_water_fog
  • 物品修饰器
    • filter修饰器中,将modifier替换为on_passon_fail两个字段,分别在测试成功和失败时执行。
  • 世界生成
    • 维度类型和生物群系中的以下字段被移动到新的环境属性选项中:
      • ultrawarmbed_worksrespawn_anchor_workscloud_heightpiglin_safehas_raidsnaturalfog_colorwater_fog_colorsky_colorparticleambient_soundmusicmusic_volume
    • 维度类型的effects被移除,由skyboxcardinal_light取代。
    • 维度类型的fixed_time被重置为has_fixed_time,新字段为布尔值,默认为false。基于时间的效果现在由环境属性指定。
  • 杂项
    • 测试环境定义格式中,game_rulesbool_ruleint_rule字段已被rules取代。

资源包:

  • 模型和纹理:
    • 静止的水和熔岩的纹理现在硬编码为minecraft:block/water_stillminecraft:block/lava_still
    • 新增了items纹理集,包含所有物品的纹理。同一个物品模型所使用的纹理必须全都来自于items或全都来自于blocks
  • 着色器:
    • 加入了ChunkSection,被terrain.vsh使用,替代了DynamicTransforms

1.21.9

数据包:

  • 世界
    • 出生点区块不再被强加载。
    • 移除了spawnChunkRadius游戏规则,因为不再有出生点区块的概念。
    • 每个世界的世界边界现在各自独立。
    • 飞行中的末影珍珠以及活跃的传送门现在会加载区块。
  • 命令
    • /test pos [<var>]现在搜索半径由200格更改为250格。/test clearall [<radius>]的默认值更改为250格。
    • /summon在和平难度下尝试召唤无法在和平难度生成的敌对生物会执行失败。
    • /setworldspawn/spawnpoint<angle>参数被替换为可选参数<rotation>,可以在设置玩家重生时面朝的垂直角度
    • /setworldspawn现在不止可以在主世界中执行。服务端会在世界出生点执行命令,即使出生点不在主世界。
  • 文本组件
    • 现在尝试使用run_command执行/say​/me​/msg​/tell​/w​/teammsg​/tm这类署名命令会弹出提示窗,允许玩家复制命令手动执行。
  • 数据组件
    • block_attacks组件,受到为0的伤害现在不会触发抵挡行为,不会进入冷却,也不会因抵挡而受到击退。
    • profile组件现在有静态和动态两种行为:
      • 静态:当此组件具有properties、同时具有nameid字段亦或上述两字段均无时。
        • 将会永久按照生成时的档案。展示的皮肤会在组件创建时冻结。
      • 动态nameid字段只有其一时。
        • 将会动态解析为最近的数据。会展示目标当前的皮肤。
      • 旧版世界中的头颅会优先转换为动态形式。
  • NBT
    • 玩家的respawn中的angle重命名为yaw

资源包:

  • 着色器:
    • 移除了core/blit_screen.vsh​post/blit.vsh​post/blur.vsh​post/invert.vsh​post/sobel.vsh​post/screenquad.vsh,并由core/screenquad.vsh替代。
    • 移除了core/position_color_lightmap.vsh/fshcore/position_color_tex_lightmap.vsh/fsh
    • 用于后处理效果、亮度图生成和全屏位块传输的顶点着色器不再传递Position属性,而须通过gl_VertexID分配顶点坐标。
    • 修改了core/terrain.vsh中函数minecraft_sample_lightmap中UV计算的部分。
    • 所有着色器的版本已经从150提升至330

pack.mcmeta

  • 现在版本号包含一个主要版本号和一个次要版本号。
  • 弃用了supported_formats
  • 加入了必选字段min_formatmax_format规定支持的版本。
    • 格式为[主版本号,次版本号]。若只填入一个整数则等价于[主版本号, 0]
  • pack_format现在是可选的。

1.21.6

数据包:

  • 文本组件
    • 现在使用run_command执行命令时,若执行的命令需要1级或更高的权限,将会展示弹窗提示玩家二次确认
  • NBT
    • 药水效果云的Particle被重命名为custom_particle。使用entity_effecttinted_leaves粒子时,颜色不再从药水中继承。
  • 标签
    • 重命名以下方块标签:
      • #plays_ambient_desert_block_sounds#triggers_ambient_desert_sand_block_sounds
  • 数据组件
    • painting/variant组件不再接受内联。

资源包:

  • 纹理
    • 移除了mob_effects纹理集。其中的纹理移动至gui纹理集中。
  • 模型
    • 现在在物品模型映射中,若物品在GUI中的大小大过一个格子,需要添加"oversized_in_gui": true,否在会在格子边缘被裁断。
  • 声音:
    • 重命名block.sand.windblock.dry_grass.ambient
  • 着色器
    • 所有的内置uniform都改为统一变量块而不再是松散的。后处理着色器现在接受统一变量块。
  • 杂项
    • 玩家头颅物品模型不再从profile数据组件中读取纹理。加入了新的player_head模型类别以渲染profile的纹理。

1.21.5

数据包:

  • SNBT格式:
    • 整数现在可以以0开始。
    • 不再允许使用科学计数法(如1e1000)表示数字。
  • NBT:
    • ArmorItemsHandItems,和body_armor_item被合并为了equipment,包含所有槽位的物品。
    • ArmorDropChancesHandDropChances,以及body_armor_drop_chance被合并为了drop_chances
      • 这是一个复合标签,内含各个槽位的掉落概率。
    • PosMotion,和Rotation列表现在必须有正确数量的元素。
    • 重命名FallDistancefall_distance且类型更改为double
    • 矿车类实体的CustomDisplayTile被移除。DisplayState总是可以设置展示的方块。DisplayOffset不再需要有自定义的展示方块才能生效。
    • 物品展示框,荧光物品展示框,和栓绳结的TileXTileY,和TileZ被合并为block_pos
    • 恼鬼的LifeTicks重命名为life_ticksBoundXBoundY,和BoundZ被合并为bound_pos
    • 海龟的HasEgg重命名为has_eggHomePosXHomePosY,和HomePosZ被合并为home_posTravelPos<X|Y|Z>被移除。
    • 海豚的TreasurePosXTreasurePosY,和TreasurePosZ被移除。
    • 幻翼的Size重命名为sizeAXAY,和AZ被合并为anchor_pos
    • 多个实体的SleepingXSleepingY,和SleepingZ被合并为sleeping_pos
    • 玩家实体NBT
      • enteredNetherPosition重命名为entered_nether_pos,且现在为3个double组成的列表。
      • SpawnXSpawnYSpawnZSpawnAngleSpawnDimension,和SpawnForced标签合并为respawn
  • 命令
    • /setblock/fill命令现在不会更改方块实体数据,除非特别地使用{...}指定。
      • 想要清空方块实体的数据,必须指明{}
      • 只要在命令执行前后有方块的状态或数据变更,就视为执行成功。
  • 标签
    • 重命名以下方块标签:
      • #dead_bush_may_place_on#dry_vegetation_may_place_on
  • 文本组件
    • 文本组件现在在所有命令中使用SNBT格式。在JSON文件中使用JSON格式。
    • hoverEventclickEvent,以及它们的子项被重命名。
  • 谓词
    • 实体谓词新增了components用于匹配实体组件。下列type_specific实体子谓词已被移除并挪入components
      • axolotl, fox, mooshroom, rabbit, horse, llama, villager, parrot, salmon, tropical_fish, painting, cat, frog, wolf, pig, 以及sheepcolor项。
  • 数据组件
    • 重命名weapon组件的damage_per_attackitem_damage_per_attack
    • hide_additional_tooltiphide_tooltip组件被移除。多个组件中的show_in_tooltip项也被移除。现在统一由新组件tooltip_display管理。
  • 配方
    • smithing_trim配方类型的basetemplate,和addition现在是必选的。
    • crafting_transmute配方类型的base现在是必选的。
  • 进度
    • background现在使用命名空间ID而不再使用带.png路径的绝对路径。
  • 世界生成
    • patch_pumpkinpatch_sugar_cane的生成顺序被调换。
  • 杂项
    • 槽位horse.saddle重命名为saddle且任何生物都拥有
    • 盔甲纹饰定义不再有item。现在这由配方决定。
    • tinted_leaves粒子现在需要color提供颜色。
    • 猪变种定义格式的texture重命名为assets_id
    • 狼变种定义格式angry_texturetame_texture, wild_texture合并为assets
    • 各生物变种格式的biome重命名为spawn_conditions,且可以根据更多条件决定生成。
    • 实体potion独立为splash_potionlingering_potion两个实体。

资源包:

  • 纹理:
  • 以下纹理的命名空间ID变更
    • entity/pig/pig_saddle.pngentity/equipment/pig_saddle/saddle.png
    • entity/strider/strider_saddle.pngentity/equipment/strider_saddle/saddle.png
    • .../cow.../temperate_cow
    • .../pig.../temperate_pig
    • entity/chicken.pngentity/chicken/temperate_chicken.png
    • 以下纹理的大小变化
      • temperate_cow
      • temperate_pig
      • red_mooshroom
      • brown_mooshroom
    • 以下纹理被从原本的纹理文件中分离为单独的文件
      • entity/camel/camel.pngentity/equipment/camel_saddle/saddle.png
      • entity/horse/horse_<variant>.pngentity/equipment/horse_saddle/saddle.png
      • entity/horse/donkey.pngentity/equipment/donkey_saddle/saddle.png
      • entity/horse/mule.pngentity/equipment/mule_saddle/saddle.png
      • entity/horse/horse_skeleton.pngentity/equipment/skeleton_horse_saddle/saddle.png
      • entity/horse/horse_zombie.pngentity/equipment/zombie_horse_saddle/saddle.png
  • 模型
    • 牛和蘑菇牛的模型多了个鼻子。
  • 声音
    • 移除了entity.wolf.howl
    • 原本的狼的音效被移动到了classic文件夹下
  • 着色器
    • 核心和后处理着色器不再使用任何JSON文件定义。
    • 删除了着色器中的program,以vertex_shaderfragment_shader替代。<namespace>:<path>会被解析为assets/<namespace>/shaders/<path>.<vsh|fsh>
    • 在每个uniformtype现在是必选的。接受任意的intivec3floatvec2vec3vec4,和matrix4

1.21.4

数据包:

  • 命令:
    • trial粒子加入必选字段duration;
  • NBT:
    • 修改了TNT矿车的NBT:
      • TNTFuse重命名为fuse
    • custom_model_data组件更改为复合标签,set_custom_model_data修饰器同步更新;
  • 数据包其他组分:
    • 移除了#trim_templates物品标签。
    • 移除了trim_material注册表中的item_model_index字段;
    • equippable组件中的model字段现已重命名为asset_id

资源包:

  • 引入新格式以描述物品模型

  • toast/system精灵图外观现在已更新至使用标准九宫格划分方式;
  • toast/tutorial精灵图现在被缩放为更高的弹窗;
  • advancements/box_obtainedadvancements/box_unobtainedGUI纹理现在使用九宫格划分方式变换尺寸;
  • 与物品栏中盔甲槽一类的空槽位纹理现已从item移动到gui/sprites/container/slot目录,并重命名;
  • 织布机、酿造台、马和羊驼物品栏GUI中的空槽位精灵图现已从背景拆分并移动;

1.21.2

数据包:

  • 命令:
    • 栓绳结,浮漂和闪电不再能通过/ride骑乘;
    • 属性id不再有generic. player.zombie.前缀;
  • NBT:
    • 重命名fire_resistant物品组件为damage_resistant,并加入types字段;
    • potion_contents物品组件加入custom_name字段;
    • 将船和箱船的实体类型拆分为每种材质独立实体;
    • 容器方块实体的Lock字段被重命名为lock,并支持物品谓词;
  • 数据包组分:
    • 进度:
      • 重命名killed_by_crossbow判据为killed_by_arrow;
    • 附魔:
      • 重命名附魔类型damage_itemchange_item_damage,并支持负值;
    • 战利品表、谓词、物品修饰器:
      • 移除战利品表empty;
      • 移除了minecraft:boat实体子谓词;
    • 配方:
      • 配方原料格式修改:
        • { "item": "<item id>" } 修改为 "<item id>"
        • { "tag": "<tag id>" } 修改为 "#<tag id>"
        • 列表格式不再支持tag
    • 世界生成:
      • 移除了雕刻器类型carvers,现在可直接列出雕刻器;

资源包:

  • 纹理:
    • 所有与装备相关的纹理现移动到了textures/entity/equipment的子目录中。
  • 着色器:
    • rendertype_entity_glint_direct重命名为rendertype_entity_glint
    • rendertype_entity_translucent_cull重命名为rendertype_item_entity_translucent_cull
    • 用于后处理效果的程序定义(assets/<命名空间>/shaders/program/<名称>.json)现与核心着色器定义(assets/<命名空间>/shaders/core/<名称>.json)一致化:
      • 移除了没有实际作用的blend字段。
      • 移除了attributes字段,其顶点属性Position将永被绑定。
      • Uniform现与为核心着色器提供的Uniform合并,其中Time被重命名为GameTime
    • 现在后处理管线程序由assets/<命名空间>/shaders/post移动到assets/<命名空间>/post_effect
    • 处理管线使用的顶点和片段着色器现由assets/<命名空间>/shaders/program移动到assets/<命名空间>/shaders/post
    • 后处理渲染过程name现被重命名为program,且需要命名空间ID。

1.21

数据包:

  • NBT:
    • 移除了箭类实体的 ShotFromCrossbow 字段
  • 数据包组分:
    • 战利品表、谓词、物品修饰器:
      • 诸如谓词的entity键的值重命名:
        • killer -> attacker
        • direct_killer -> direct_attacker
        • killer_player -> attacking_player
      • 谓词中的 enchantment 字段重命名为 enchantments
      • 重命名random_chance_with_looting 条件为random_chance_with_enchanted_bonus,并修改如下字段:
        • 移除looting_multiplier字段;
        • chance 现在为等级依赖函数;
        • 加入enchantment字段;
      • 加入enchantment_active_check条件;
      • 重命名 looting_enchant 函数为 enchanted_count_increase ,并加入 enchantment 字段;
      • enchant_randomly 函数下修改如下字段:
        • enchantments 字段重命名为 options;
        • 加入布尔值字段 only_compatible
      • enchant_with_levels 函数下修改:
        • 移除了 treasure 字段;
        • 加入 options 字段;
      • copy_name函数更改:重命名了字段source的枚举值:
        • killer重命名为attacking_entity
        • killer_player重命名为last_damage_player

1.20.5

数据包:

  • 命令:
    • 粒子:
      • /particle指令格式大幅修改,详见Wiki
      • 拆分粒子gust_emittergust_emitter_largegust_emitter_small
    • 属性:
      • 重命名属性:
        • generic.block_interaction_rangeplayer.block_interaction_range
        • generic.entity_interaction_rangeplayer.entity_interaction_range
      • 移除属性:horse.jump_strength
    • 命令最大长度现在为2000000(2百万)字符;
  • 实体和NBT:
    • 修改了区域效果云实体的 Particle 字段以和命令/世界生成格式一致;
    • 药水箭的Potioncustom_potion_effects字段被合并在item标签内;
    • 修改药水效果云的效果字段以与potion_contents 组件匹配;
    • 修改旗帜的方块实体字段以和banner_patterns 组件匹配;
    • 修改蜂巢的方块实体字段以和bees 组件匹配;
    • 重命名部分方块和实体的NBT字段:
      • 位置nbt:{X:1,Y:2,Z:3}[I;1,2,3]
      • 蜜蜂: FlowerPos and HivePosflower_pos and hive_pos
      • 蜂巢: FlowerPosflower_pos
      • 末影水晶: BeamTargetbeam_target
      • 可被栓绳牵引的生物: Leashleash
      • 袭击生物: PatrolTargetpatrol_target
      • 末地传送门: ExitPortalexit_portal
      • 流浪商人: WanderTargetwander_target
    • 移除了部分药水效果在大于127级时产生的反效果行为;
  • 物品组件
    • 物品的NBTtags由新的结构化物品组件替代:

      • Damage:12 -> damage=12
      • RepairCost:12 -> repair_cost=12
      • Unbreakable:1b -> unbreakable={}
      • Enchantments:[{id:"sharpness",lvl:2}] -> enchantments={levels:{sharpness:2}}
      • StoredEnchantments -> stored_enchantments
      • display:{Name:'"hello"'} -> custom_name='"hello"'
      • display:{Lore:['"hello"']} -> lore=['"hello"']
      • CanDestroy:["stone"] -> can_break={blocks:"stone"}
      • CanPlaceOn:["stone"] -> can_place_on={blocks:"stone"}
      • display:{color:16711680} -> dyed_color={rgb:16711680}
      • AttributeModifiers:[] -> attribute_modifiers={modifiers=[]}
      • Charged:1b,ChargedProjectiles:[{id:"arrow"}] -> charged_projectiles=[{id:"arrow"}]
      • Items:[] (bundle) -> bundle_contents=[]
      • display:{MapColor:16711680} -> map_color=16711680
      • Decorations:[] (filled map) -> map_decorations={}
      • map:1 -> map=1
      • CustomModelData -> custom_model_data
      • Potion:"invisibility",CustomPotionColor:16711680,custom_potion_effects:[] -> potion_contents={potion:"invisibility",custom_color:16711680,custom_effects:[]}
      • pages:["hello"] (book and quill) -> writable_book_content={pages:["hello"]}
      • pages:['"hello"'],title:"Title",author:"Misode",generation:1,resolved:1b (written book) -> written_book_content={pages:['"hello"'],title:"Title",author:"Misode",generation:1,resolved:true}
      • Trim={...} -> trim={...}
      • effects:[] (suspicious stew) -> suspicious_stew=[]
      • HideFlags -> split to the different components as well as hide_additional_tooltip component
      • DebugProperty -> debug_stick_state
      • EntityTag:{...} -> entity_data={...}
      • bucketed mobs data -> bucket_entity_data={...}
      • instrument:"ponder_goat_horn" -> instrument="ponder_goat_horn"
      • Recipes:[] (knowledge book) -> recipes=[]
      • LodestonePosLodestoneDimension, and LodestoneTracked -> lodestone_target={pos:[13,64,-43],dimension:"the_nether"}
      • Explosion (firework star) -> firework_exlosion={}
      • Fireworks:{Explosions:[],Flight:1} (firework rocket) -> fireworks={explosions:[],flight_duration:1}
      • SkullOwner:{Name:"Steve"} -> profile={name:"Steve"}
      • BlockEntityTag:{note_block_sound:"ambient.cave"} -> note_block_sound="ambient.cave"
      • BlockEntityTag:{Base:2} -> base_color="magenta"
      • BlockEntityTag:{Patterns:[]} -> banner_patterns=[]
      • BlockEntityTag:{sherds:[]} -> pot_decorations=[]
      • BlockEntityTag:{Items:[]} (shulker box) -> container=[]
      • BlockEntityTag:{Bees:[]} -> bees=[]
      • BlockEntityTag:{Lock:"test"} -> lock="test"
      • BlockEntityTag:{LootTable:"foo",LootTableSeed:123} -> container_loot={loot_table:"foo",seed:123}
      • BlockEntityTag:{...} -> block_entity_data={...}
      • BlockStateTag:{...} -> block_state={...}
    • 加入了物品组件enchantment_glint_override ;
    • 物品格式Count重命名为count
  • 数据包组分:
    • 战利品表:
      • Nested lists are no longer supported in loot function lists.
      • 战利品表抽取项loot_table(从提供的嵌套战利品表返回所有物品)现在有以下语法:value可以是:
        • 一个命名空间ID,指对另一个战利品表的引用。
        • 完整的战利品表,格式与独立文件的战利品表相同。
    • 谓词:
      • 物品谓词修改:
        • 移除了 tag 字段,items 字段现在支持标签;
        • potion 字段重命名为 potions;
        • nbt 字段重命名为 custom_data;
      • 方块谓词修改
        • 移除 tag 字段,blocks 字段现在支持标签;
      • 流体谓词fluid 重命名为 fluids
      • 实体谓词type支持标签;
      • 位置谓词修改:
        • biome 重命名为 biomes ,并支持群系标签;
        • structure 重命名为 structures ,并支持结构标签;
      • 修改物品谓词的predicates下的子谓词:
        • durability -> damage 子谓词;
        • enchantments -> enchantments 子谓词;
        • stored_enchantments -> stored_enchantments 子谓词;
        • potions -> potion_contents 子谓词;
        • custom_data -> custom_data 子谓词;
    • 物品修饰器:
      • 重命名物品修饰器函数
        • set_nbtset_custom_data
        • copy_nbtcopy_custom_data
      • 重命名/attribute命令的operation字段:
        • addadd_value
        • multiply_baseadd_multiplied_base
        • multiplyadd_multiplied_total
      • 移除了 set_contents 物品修饰器函数中的 type 字段,并加入 component 字段;
      • set_attributes物品修饰器函数加入replace字段;
      • set_lore物品修饰器函数下replace字段重命名为mode;
      • set_written_book_pages函数:pages现在是一个JSON对象而不再是一个JSON文本。
    • 配方:
      • 配方的产物栏现在支持指定物品组件;
    • 标签:
      • 修改:
        • 实体标签 punchable_projectiles 重命名为 redirectable_projectile
        • 重命名 axolotl_tempt_itemsaxolotl_food;
      • 移除:
        • 移除物品标签tools
        • 移除实体标签deflects_arrowsdeflects_tridents
    • 世界生成:
      • 用于worldgen定义的整数和浮点数提供器不再包装在type旁的额外value字段中。

资源包:

  • 纹理:
    • 将地图装饰图标从以前的map_icons.png中分离为从textures/map/decorations/目录中加载的图集;
  • 字体:
    • ttf字体提供器的shift字段的值现在被限制在-512到512之间;
  • 着色器:
    • 后处理着色器 blur 重命名为 box_blur;
    • 新增entity_outline_box_blur 着色器;

1.20.3

数据包:

  • 命令:
    • /function命令不再返回执行的命令条数;
    • 游戏规则 maxCommandChainLength 现在更严格计数;
  • NBT:
    • 重命名方块草及其对应物品的注册名,从minecraft:grass重命名为minecraft:short_grass
    • 将三叉戟(实体)的Trident 字段重命名为 item;
    • TNT实体的nbt数据:Fuse 重命名为 fuse; 添加 block_state 字段;

资源包:

  • 纹理:
    • .png现在是唯一支持的纹理格式;

1.20.2

数据包:

  • 命令:
    • 加入了函数宏,可以在函数中加入宏参数传入函数,以实现动态函数;
    • 可以在一行命令的末尾用反斜杠\表示换行,以支持多行单指令,增加可读性;
  • 调试:
    • 现在命令记忆功能跨存档保存50条,可在游戏文件夹的command_history.txt文件中找到;
  • NBT:
    • 生物NBT的状态效果id由数字id改为命名空间id(字符串)
    • 许多状态效果相关的实体NBT键名从驼峰格式改为蛇形格式:
      • 生物状态效果字段:
        • Id -> id
        • Ambient -> ambient
        • Amplifier -> amplifier
        • Duration -> duration
        • ShowParticles -> show_particles
        • ShowIcon -> show_icon
        • HiddenEffect -> hidden_effect
        • FactorCalculationData -> factor_calculation_data
      • 药水和药水箭:
        • CustomPotionEffects -> custom_potion_effects
      • 状态效果云和迷之炖菜:
        • Effects -> effects
        • EffectId -> id
        • EffectDuration -> duration
      • 哞菇:
        • EffectId and EffectDuration -> stew_effects
      • 生物状态效果:
      • ActiveEffects -> active_effects
      • 信标:
        • Primary -> primary_effect
        • Secondary -> secondary_effect

资源包:

  • 纹理:
    • 文本编辑框现在是一张位于widget/text_fieldwidget/text_field_highlighted的九宫格切分的精灵图。
    • 列表和编辑框的滚动条现在是一张位于widget/scroller的九宫格切分的精灵图。
    • realms命名空间的纹理被移入minecraft命名空间内;
    • 所有含有多个部件贴图的GUI纹理现在都被拆分为单独的贴图,位于textures/gui/sprites目录下。
    • villager2.png被重命名为villager.png
    • 辅助功能、语言和Realms新闻的按钮图标现在是单独的文件,不再各自附于按钮的纹理之上。

1.20

数据包:

  • 数据包组分:
    • 进度:
      • placed_blockitem_used_on_block, 和 allay_drop_item_on_block 进度触发器下所有字段并入location 字段;现在该字段接受战利品表谓词。
    • 战利品表、谓词、物品修饰器:
      • 加入all_of条件, alternative 条件重命名为 any_of
    • 标签:
      • 方块标签replaceable_plants 拆分为replaceablereplaceable_by_trees
    • 世界生成:
      • 移除了结构后处理器ruleoutput_nbt 字段,新增了block_entity_modifier 作为替代。

资源包:

  • 字体:
    • 移除字符提供器legacy_unicode;

1.19.4

数据包:

  • 实体和NBT
    • 加入(方块、物品、文本)展示实体、交互实体;
  • 数据包组分
    • 战利品表、谓词、物品修饰器:
      • 伤害类型谓词修改,移除了原先判据,改用新的伤害类型数据判定,使用tags字段判定;

1.19.3

数据包:

  • 命令:
    • 修改了命令/publish的格式
  • 数据包组分:
    • 配方:
      • 配方文件内加入必选字段 category
    • 标签:
      • 移除方块标签overworld_natural_logs;
    • 世界生成:
      • 移除template_poolname字段;

资源包:

  • 纹理:
    • entity/player/(slim|wide)新增了各默认玩家皮肤;移除了entity/steveentity/alex
    • 修改了gui/container/creative_inventory/tabs纹理

1.19.1

1.19

数据包:

  • 命令:
    • 猫变种由数字id改为命名空间id;
    • 状态效果 ID 的类型由字节型改为整型;
  • 进度:
    • 进度触发器 locationslept_in_bedhero_of_the_villagevoluntary_exilelocation 字段被移入 player.location 位置;
  • 战利品表、谓词、物品修饰器:
    • 位置谓词字段 feature 重命名为 structure
  • 世界生成:
    • 移除地物 ice_patchice_patch 并由地物 disk 代替;
    • 树根放置器格式修改:
      • y_offset 重命名为 trunk_offset_y;
      • 字段 max_root_widthmax_root_lengthrandom_skew_chancecan_grow_throughmuddy_roots_inmuddy_roots_provider 移入 mangrove_root_placement 对象下;
      • 加入字段 above_root_placement ;
    • 地物 glow_lichen 重命名为 multiface_growth ;
    • block_rot 处理器的字段 rottable_blocks现在需要一个#前缀;
    • 移除结构字段 adapt_noise ;
    • 移除密度函数 slide,由 addmuly_clamped_gradient 代替;
    • 移除噪声设置字段 noise.samplingnoise.top_slidenoise.bottom_slide,并移入密度函数;
    • 维度类型不再内联于维度数据中;
    • 移除区块噪声生成器的 seed 字段;
    • 移除密度函数 terrain_shaper_spline 并移除密度函数 splinemin_valuemax_value 字段;
    • 移除生物群系字段 category
    • worldgen/configured_structure_feature 文件夹移入 worldgen/structure 文件夹;

1.18.2

数据包:

  • 命令
    • locate命令现在接受已配置的结构地物ID作为参数而不是结构类型;
    • locate命令和locatebiome命令现在支持标签作为参数;
  • 世界生成
    • 加入结构集JSON文件,取代了噪声字段中的structures字段;
    • 移除了噪声设置中的字段noise_caves_enablednoodle_caves_enabled
    • 一些标签字段现在要求在ID前面加上#,但是它们暂不接受元素列表:
      • dimension_type中的infiniburn
      • feature.geode配置中的blocks.cannot_replaceblocks.invalid_blocks
      • feature.vegetation_patchfeature.waterlogged_vegetation_patch配置中的replaceable
      • feature.root_system配置中的root_replaceable
      • structure_processor.protected_blocks中的value
    • 修改了噪声设置中structures的格式;

1.18

数据包:

  • 命令

    • 移除了记分项、记分板名称、队伍名称的名称长度限制;
  • NBT

    • 将刷怪笼的SpawnPotentials格式更改为:
      snbt
      {
          weight: <int>,
          data: {
          	entity: {...},
      		custom_spawn_rules: {...}
      	}
      }
    • 将刷怪笼的SpawnData字段的内容移动到SpawnData.entity
  • 进度

    • 将进度谓词中的nether_travelentered重命名为start_position,移除了字段exit
  • 物品修饰器

    • 现在set_contentsset_loot_table物品修饰器函数需要type字段
  • 标签

    • 将方块标签lava_pool_stone_replaceables重命名为lava_pool_stone_cannot_replace
  • 世界生成

    • 加入用于地物放置的方块谓词;
    • 加入了已放置的地物;
    • 加入了表面规则;
    • 加入噪声JSON数据文件;
    • 移除了地表生成器;
    • 移除了方块放置器;

1.17

数据包:

  • 命令
    • 加入/item命令,取代了/replaceitem命令;
    • /give命令能给予的物品上限现在是100;
  • 进度
    • 在触发器 effects_changed中加入条件 source
  • 战利品表和谓词
    • 把谓词中的所有物品条件字段的名称从item修改为了items,所有方块条件字段的名称从block修改为了blocks
  • 加入了物品修饰器
  • NBT
    • fireball的字段 ExplosionPower现在是byte而不是int;
    • 史莱姆的字段 Size现在上限是126;
    • 药水云的字段 Radius现在上限是32;
  • 标签
    • 重命名方块标签: snow_step_soundsinside_snow_step_sounds
  • 方块
    • 铁轨能含水了,水不再破坏铁轨;
    • 将炼药锅拆分为cauldron(空的炼药锅), water_cauldron(装水的)和 lava_cauldron(装岩浆的);
    • 重命名 grass_pathdirt_pathgrimstone deepslate
  • 实体
    • 加入了marker
  • 其他
    • 加入了游戏事件;
    • 使用F3+L可以生成一份性能报告,储存在 .minecraft/debug/profiling/下;
    • 文本组件中的目标选择器组件和NBT组件可以使用字段 separator指定分隔符;

资源包:

  • 着色器
    • 现在使用OpenGL 3.2渲染,可使用资源包替换原版着色器;
    • 新增资源包目录shaders/coreshaders/include
  • 其他
    • 制作者名单现在是json格式储存而不是txt;

1.16.2

数据包:

  • 世界生成:
    • 自定义世界生成和维度设置现在在数据包中使用相同的文件夹模式(namespace/<类型>/resource.json),与其他资源保持一致。

1.16

数据包:

  • 命令:
    • 属性命名由驼峰命名改为下划线命名;
  • NBT:
    • 实体的UUID值现在改为4元素整数数组;
  • 数据包组分:
    • 进度:
      • 移除进度触发器 safely_harvest_honey
      • 进度内容location, slept_in_bed, hero_of_the_village, voluntary_exile 字段被放入location 字段下;
    • 世界生成:
      • 加入实验性玩法“自定义世界”;
  • 其他:
    • 数据包加载优化:
      • 若加载失败,则修改不会被应用;
      • 如果进入世界时,已加载的数据包出错,会弹出“安全模式”选项;
      • 仅在数据包成功加载后修改数据包列表;
      • 数据包现在可以在世界生成之前指定;
      • 现在若数据包组分缺失(如卸载了vanilla数据包),将阻止玩家加载世界。

Powered by Vitepress and Github Pages