Translation notice
This page was translated with machine translation and may contain inaccuracies. If you can help improve it, please open an issue or submit a pull request.
Disruptive Technology Update Log
AKA "What will break after upgrading your data pack"
⚠️Part of the content before 1.21.6 of this article is translated from misode’s “Technical Update Log” page:https://misode.github.io/changelog
Preface
This entry lists all destructive changes in all vanilla Minecraft version updates, that is, those updates that if left unaddressed will cause the data pack or resource pack to not run properly after upgrading the version.
Please note that most entries have been simplified simply to alert readers to the existence of this change. Please check the wiki for detailed instructions.
The change log uses the official version as the category entry and sorts it in descending order.
text
26.2
data pack:
- world
- The bed is no longer blockentity.
- Gollins now despawn in Peaceful difficulty.
- Piglins can now spawn on Peaceful difficulty.
- Children of armadillos, hoglins and zombie hoglins, axolotls, camels, chickens, cows and mooshrooms, dolphins, cats and ocelots, foxes, bees, goats, merry ghasts, pandas, pigs, polar bears, sheep, squids, wolves, striders, piglins, all zombie variants, and nautilus's collision boxes, eye height and passenger height changes. Please subject to Wiki。
- particle
- Now, instead of discarding new particles when there are too many, the game will randomly select particles to render.
- command
advancementThe text output of command has changed.teamThe team color parameter in now strictly needs to be in lowercase underline form (dark_bluerather thanDarkBlue)。
- Game content
- Respawning in spectator mode in a Hardcore world no longer turns off game rules
spectators_generate_chunks。
- Respawning in spectator mode in a Hardcore world no longer turns off game rules
- tag
- Rename blocktag
#concrete_powder->#concrete_powders。 - The blocktag
#mineable/pickaxeand#happy_ghast_avoidsThe dripstone cone in is replaced by#speleothems。 - entity type tag
#cannot_be_pushed_onto_boatsAdded sulfur cube monster.
- Rename blocktag
- NBT
- mob's
HurtByTimestampChange toticks_since_last_hurt_by_mob. Record the time since last injury instead of the timestamp. charged_projectilesArray components now only accept stacks of up to 1024 items.
- mob's
- predicate
- entitypredicate
entity_propertiesAll fields in are expanded into data component-like forms.- This means that the top-level field names are now of the form namespaceID (
effects->minecraft:effects, minecraft can be omitted). - entity sub-predicate
type_sepcificwas moved to the top level("type_sepcific":{"minecraft:lightning":{...}}->"minecraft:type_specific/lightning":{...})。 - Rename
type->minecraft:entity_type。
- This means that the top-level field names are now of the form namespaceID (
- entitypredicate
- world generation
- Configured features
- The following features have been destructively renamed and/or modified. Please refer to Wiki:
pointed_dripstone->speleothemdripstone_cluster->speleothem_clusterlarge_dripstonetreemultiface_growth
- The following features have been destructively renamed and/or modified. Please refer to Wiki:
- Processor list
block_rotThe block state after processing by the previous block handler chain is now evaluated instead of always using the original block of the structure.
- Density function
- Removed
weird_scaled_sampler, by newly addedinterval_selectreplace.
- Removed
- Configured features
resource pack:
- Model
- Signs and hanging signs now use the block model instead of the built-in entity model.
- item model mapping
- Special model types removed
bed,standing_sign,andhanging_sign。
- Special model types removed
- texture
minecraft:signsandminecraft:bedsTexture set has been removed.- Changed the textures of baby hoglins, baby zombie hoglins, and baby white foxes.
- shader
- Minecraft is about to complete its migration from OpenGL to Vulkan. The current version supports both, allowing players to switch freely. OpenGL is still used by default, but it will be completely deprecated in the near future.
- core shader
rendertype_text,rendertype_text_see_through,rendertype_text_intensity,rendertype_text_intensity_see_through,rendertype_text_backgroundandrendertype_text_background_see_throughquilttextandtext_backgroundAlternative.
26.1
data pack:
- timeline
- Added required fields
clock, stipulates which world clock this timeline is based on. To get the original behavior, you should changeclockdefined asminecraft:overworld。
- Added required fields
- command
timecommand uses such asday,nightThe time points represented by other options are no longer hard-coded, but can be adjusted in the world clock. This means something liketime set dayThe behavior of the command may be changed by the data pack.- **Slot removed
villager.*. The item slots of villagers and piglins can now be usedmob.inventory.*Come visit. **
- recipe
- Some special recipe types have been removed and replaced with new, more flexible recipe types. include
minecraft:crafting_special_armordye,minecraft:crafting_special_tippedarrow,minecraft:crafting_special_mapcloning. **Please check wiki for details. ** - The format of the following recipe types has been changed to a more flexible form. include
minecraft:crafting_transmute,minecraft:crafting_special_bannerduplicate,crafting_special_bookcloning,minecraft:crafting_decorated_pot,minecraft:crafting_special_firework_rocket,minecraft:crafting_special_firework_star_fade,minecraft:crafting_special_firework_star,minecraft:crafting_special_mapextending,minecraft:crafting_special_shielddecoration. **Please check wiki for details. ** - **Also, some stonecutter recipes have been renamed. **
- Some special recipe types have been removed and replaced with new, more flexible recipe types. include
- text component
- **Use now
nbtIn case of dynamic type, ifinterpretforfalse, the parsed result is no longer a flat string, but a complex text with color highlighting. **- **Use new fields
plainColor highlighting can be removed, but the parsed result is not a flat string like the previous version. **
- **Use new fields
- **Use now
- world
- **The hitboxes of some baby mobs have been changed. **Includes cows, sheep, ocelots, mooshrooms, squids, glowing squids, zombies, husks, drowned zombies, piglins, zombie piglins, villagers, zombie villagers, cats, chickens, horses, wolves, pigs, rabbits, axolotls, and skeleton horses.
- Naturally spawned zombies may now have higher health than 20.
- Unused juveniles of camel carcasses have been removed.
- Refreshing of villager trades now depends on a random sequence.
- Signs and flags
rotationThe default value of the block attribute changes from0Change to8。
- Data format
- Removed player's NBTtag
ignore_fall_damage_from_current_explosion。
- Removed player's NBTtag
- dimension type
- **Field added
default_clockdesignated for/timeThe default world clock. ** - **Field added
has_ender_dragon_fightControls whether there is an ender dragon to fight in this dimension. ** ambient_lightIt is no longer possible to fully control the ambient lighting of dimensions. The visual part of ambient lighting is now represented by the environment propertiesvisual/ambient_light_colorcontrol
- **Field added
- Environmental properties
gameplay/turtle_egg_hatch_chanceThe default value of is changed to0.002。
- Configured features
- The following figure types have been renamed:
forest_rock->block_blob,ice_spike->spike
- **Removed
flower,flower_no_bonemeal, andrandom_patchFeature type. ** treeFeature fieldsforce_dirtanddirt_providerDon't merge intobelow_trunk_provider。
- The following figure types have been renamed:
- curse
post_piercing_attackThe component no longer checks the player's hunger level by default.
- tag
- Some tags have been renamed:
#dry_vegetation_may_place_on→#supports_dry_vegetation#bamboo_plantable_on→#supports_bamboo#small_dripleaf_placeable→#supports_small_dripleaf#big_dripleaf_placeable→#supports_big_dripleaf#mushroom_grow_block→#overrides_mushroom_light_requirement#snow_layer_can_survive_on→#support_override_snow_layer#snow_layer_cannot_survive_on→#cannot_support_snow_layer
- **
#dyeableitemtag has been removed. ** - **
#dirtblocktag now only contains dirt, sand, and rootbound dirt. ** - **To blocktag
#flower_potsAdded golden dandelion potted plants. ** - **To blocktag
#small_flowers、itemtag#piglin_lovedand#small_flowersAdded Golden Dandelion. **
- Some tags have been renamed:
- sound effect format
- Wolf sound effect variant definition format moves all previous fields to
adult_soundswithin and joinedbaby_soundsSound effect representing a young wolf.
- Wolf sound effect variant definition format moves all previous fields to
- Test environment definition format
- **Will
time_of_dayReplace withclock_time. Add required fieldsclockto provide a world clock ID. **
- **Will
- storage
- **The folder archive format of the game world is the same as
level.datThe format has undergone major changes, which means that maps of the new version will not be loaded in the old version.level.datInstead of storing a copy of player data, only the player's UUID is stored to reference the player data file. Please check wiki: Java Edition Archive Format and wiki: Archive Basic Data Storage Format for details. **
- **The folder archive format of the game world is the same as
resource pack:
- Textures and models
- Lots of texture and model changes for baby mobs. Includes donkey, mule, turtle, bee, fox, armadillo, polar bear, alpaca, panda, hoglin, zombie hoglin, sniffer, cow, sheep, ocelot, mooshroom, squid, glowing squid, zombie, corpse Husks, Drowned, Piglins, Zombie Piglins, Villagers, Zombie Villagers, Cats, Chickens, Horses, Wolves, Pigs, Goats, Rabbits, Axolotls, Camels, Dolphins, Striders, Zombie Horses, Skeleton Horses, and Trader Alpacas.
- Wolf armor or saddles no longer render on young wolves or pigs.
- Removed
demo_background.png, use sprites insteadpopup/background.png。 - An extremely large number of textures have been renamed or moved. See this table in Wiki。
- sound
- Some baby mobs now use separate sound effects from adult mobs. Including cats, chickens, horses, pigs, and wolves.
- shader
- **Tripwire textures are now used
alpha cutoutRendering is no longer transparent. ** - **
lightmap.fshbeen significantly modified. ** - **
core/rendertype_item_entity_translucent_cullwas removed bycore/entityreplace. ** - **
core/rendertype_entity_alphaandcore/rendertype_entity_decalwas removed and changed tocore/entityImplemented DISSOLVE flag. ** - Removed
core/rendertype_translucent_moving_block, to supportcore/block。 - Item rendering in UI and world is now done by
core/entitySplit to new shadercore/item。
- **Tripwire textures are now used
- item model mapping
- **Some model types now have new
transformationFields, similar to display entities, can transform the model. Therefore, some special types of transformations are no longer hard-coded, but need to be specified in the item model mapping. **- include
minecraft:bed,minecraft:banner,minecraft:conduit,minecraft:copper_colem_statue,minecraft:head,minecraft:player_head,minecraft:shulker_box,minecraft:shield,minecraft:trident,minecraft:standing_sign,minecraft:hanging_sign
- include
- **
minecraft:bedThe model now renders only half of the bed and is ready to usepartField controls which half is displayed. To show the complete bed the two models need to be joined together. ** - **
minecraft:shulker_boxModel removedorientationfield. **
- **Some model types now have new
1.21.11
data pack:
- command
- **/The time parameter of worldborder now uses game ticks as the unit by default. **
- **World boundaries are now controlled by game time rather than real time. **
- All game rules now use namespaceID. All original IDs were renamed snake_case. The meaning of some game rules is reversed. The value ranges of some game rules now have additional restrictions. Please check the Wiki。
- NBT
- **Removed
AngerTime,byanger_end_timeReplace, indicating the moment when the mob is no longer angry. ** AngryATRename toangry_at。
- **Removed
- data component
- **
consumablecomponentanimationfield, the originalspearAnimation renamed totrident. Added newspearanimation. ** - **
intangible_projectileComponents now have toolbar tips. **
- **
- tag
- Rename itemtag
#enchantable/sword→#enchantable/sweeping。 - The following mob biotags were replaced by new environmental attributes and therefore removed:
#snow_golem_melts,#increased_fire_burnout,#plays_underwater_music,#has_closer_water_fog。
- Rename itemtag
- item decorator
- **
filterIn the modifier, addmodifierReplace withon_passandon_failTwo fields, executed when the test succeeds and fails respectively. **
- **
- world generation
- **The following fields in dimension type and mob biomes have been moved to new environment attribute options: **
ultrawarm,bed_works,respawn_anchor_works,cloud_height,piglin_safe,has_raids,natural,fog_color,water_fog_color,sky_color,particle,ambient_sound,music,music_volume。
- **dimension type
effectswas removed byskyboxandcardinal_lightreplace. ** - **dimension type
fixed_timeis reset tohas_fixed_time, the new field is a Boolean value, and the default isfalse. Time-based effects are now specified by environment properties. **
- **The following fields in dimension type and mob biomes have been moved to new environment attribute options: **
- Miscellaneous
- **In the test environment definition format,
game_rulesofbool_ruleandint_ruleThe field has beenrulesreplace. ** - dialog different body elements (
Body) has slightly increased spacing
- **In the test environment definition format,
resource pack:
- Models and Textures:
- Still water and lava textures are now hardcoded to
minecraft:block/water_stillandminecraft:block/lava_still - Added
itemsTexture set, containing the textures of all items. The textures used by the same item model must all come fromitemsor all fromblocks。
- Still water and lava textures are now hardcoded to
- shader:
- Joined
ChunkSection,quiltterrain.vshuse, replaceDynamicTransforms。
- Joined
1.21.9
data pack:
- world
- **The spawn point chunk is no longer forced to load. **
- **Removed
spawnChunkRadiusGame rules, because there is no longer the concept of spawn point chunk. ** - **The world boundaries of each world are now independent. **
- **Flying ender pearls and active portals now load chunks. **
- Block "Iron Chain" ID rename:
minecraft:hain->minecraft:iron_chain
- command
- **
/test pos [<var>]The search radius is now changed from 200 blocks to 250 blocks./test clearall [<radius>]The default value is changed to 250 blocks. ** - **
/summonAttempting to summon hostile mobs that cannot be spawned in Peaceful difficulty will fail. ** /setworldspawnand/spawnpointof<angle>Parameters are replaced with optional parameters<rotation>, you can set the vertical angle that the player faces when reborn.- **
/setworldspawnNow it can be executed not only in the main world. The server will execute the command at the world spawn point, even if the spawn point is not in the main world. **
- **
- text component
- **Try it now
run_commandimplement/say、/me、/msg、/tell、/w、/teammsgand/tmThis type of signed command will pop up a prompt window, allowing the player to copy the command and execute it manually. **
- **Try it now
- data component
- **
block_attacksComponent, receiving 0 damage will now not trigger the blocking behavior, will not enter the cooldown, and will not be knocked back due to blocking. ** - **
profileComponents now have both static and dynamic behaviors: **- static: when this component has
properties, having at the same timenameandidfield or neither of the above two fields.- The file will be permanently maintained as it was when it was generated. The displayed skin is frozen when the component is created.
- dynamic:
nameandidThere is only one field.- Will be dynamically parsed to the most recent data. The target's current skin will be displayed.
- **The heads in the old version of the world will be converted to dynamic form first. **
- static: when this component has
- **
- NBT
- player
respawninangleRename toyaw。
- player
resource pack:
- shader:
- **Removed
core/blit_screen.vsh、post/blit.vsh、post/blur.vsh、post/invert.vsh、post/sobel.vshandpost/screenquad.vsh, and bycore/screenquad.vshsubstitute. ** - Removed
core/position_color_lightmap.vsh/fshandcore/position_color_tex_lightmap.vsh/fsh。 - **Vertex shaders used for post-processing effects, luma map generation and full-screen binning transfer are no longer passed
Positionattribute, and must passgl_VertexIDAssign vertex coordinate. ** - **Modified
core/terrain.vshMedium functionminecraft_sample_lightmapThe UV calculation part. ** - All shader versions have been changed from
150promoted to330
- **Removed
pack.mcmeta
- **The version number now contains a major version number and a minor version number. **
- Deprecated
supported_formats。 - **Added required fields
min_formatandmax_formatSpecifies supported versions. **- The format is
[主版本号,次版本号]. If only one integer is filled in, it is equivalent to[主版本号, 0]。
- The format is
- **
pack_formatNow optional. **
1.21.6
data pack:
- text component
- Use now
run_commandWhen executing a command, if the executed command requires level 1 or higher permissions, a pop-up window will be displayed prompting the player for a second confirmation.
- Use now
- NBT
- ** Potion effect cloud
Particlewas renamed tocustom_particle. useentity_effectandtinted_leavesColor is no longer inherited from potions when using particles. **
- ** Potion effect cloud
- tag
- Rename the following blocktag:
#plays_ambient_desert_block_sounds→#triggers_ambient_desert_sand_block_sounds
- Rename the following blocktag:
- data component
- **
painting/variantComponents no longer accept inlining. **
- **
resource pack:
- texture
- **Removed
mob_effectsTexture set. The texture in it is moved toguiTexture is concentrated. **
- **Removed
- Model
- **Now in item model mapping, if the size of the item in the GUI is larger than one grid, you need to add
"oversized_in_gui": true, otherwise it will be cut off at the edge of the grid. **
- **Now in item model mapping, if the size of the item in the GUI is larger than one grid, you need to add
- sound:
- Rename
block.sand.windforblock.dry_grass.ambient。
- Rename
- shader
- **All built-in uniforms have been changed to uniform variable blocks instead of loose. The post-processing shader now accepts uniform variable blocks. **
- Miscellaneous
- **The player head item model no longer changes from
profileRead the texture from the data component. Added new player_head model class for renderingprofiletexture. **
- **The player head item model no longer changes from
1.21.5
data pack:
- SNBT format:
- Integers can now be
0start. - Scientific notation (e.g.
1e1000) represents a number.
- Integers can now be
- NBT:
- **
ArmorItems,HandItems,andbody_armor_itemwas merged intoequipment, including items in all slots. ** ArmorDropChances,HandDropChances,as well asbody_armor_drop_chancewas merged intodrop_chances。- This is a composite tag that contains the drop probability of each slot.
- **
Pos,Motion,andRotationLists must now have the correct number of elements. ** - Rename
FallDistanceforfall_distanceand the type is changed todouble。 - ** Minecart type entity
CustomDisplayTilewas removed.DisplayStateIt is always possible to set the display block.DisplayOffsetThere is no longer a need for a custom display block to take effect. ** - item display frame, fluorescent item display frame, and tie knot
TileX,TileY,andTileZwas merged intoblock_pos。 - ** Annoying
LifeTicksRename tolife_ticks,BoundX,BoundY,andBoundZwas merged intobound_pos。** - **Turtle's
HasEggRename tohas_egg,HomePosX,HomePosY,andHomePosZwas merged intohome_pos,TravelPos<X|Y|Z>was removed. ** - **Dolphin's
TreasurePosX,TreasurePosY,andTreasurePosZwas removed. ** - Phantom's
SizeRename tosize,AX,AY,andAZwas merged intoanchor_pos。 - Multiple entities
SleepingX,SleepingY,andSleepingZwas merged intosleeping_pos。 - playerentityNBT:
enteredNetherPositionRename toentered_nether_pos, and now there are 3doublecomposed list.SpawnX,SpawnY,SpawnZ,SpawnAngle,SpawnDimension,andSpawnForcedtags are merged intorespawn。
- **
- command
- **
/setblockand/fillcommand will now not change blockentity data unless specifically used{...}specified. **- If you want to clear the blockentity data, you must specify
{}。 - As long as the status or data of the block changes before and after command execution, the execution is considered successful.
- If you want to clear the blockentity data, you must specify
- **
- tag
- Rename the following blocktag:
#dead_bush_may_place_on→#dry_vegetation_may_place_on
- Rename the following blocktag:
- text component
- **Text components now use SNBT format in all commands. Use JSON format in JSON files. **
- **
hoverEventandclickEvent, and their children are renamed. **
- predicate
- entitypredicate added
componentsUsed to match entity components. the followingtype_specificThe entity sub-predicate has been removed and moved incomponentsmiddle:axolotl,fox,mooshroom,rabbit,horse,llama,villager,parrot,salmon,tropical_fish,painting,cat,frog,wolf,pig, as well assheepofcoloritem.
- entitypredicate added
- data component
- Rename
weaponcomponentdamage_per_attackforitem_damage_per_attack。 - **
hide_additional_tooltipandhide_tooltipThe component is removed. in multiple componentsshow_in_tooltipItems are also removed. Now unified by new componentstooltip_displaymanage. **
- Rename
- recipe
- **
smithing_trimRecipe typebase,template,andadditionIt is now required. ** - **
crafting_transmuteRecipe typebaseIt is now required. **
- **
- advancement
- **
backgroundNow use namespaceID instead of using.pngThe absolute path of the path. **
- **
- world generation
- **
patch_pumpkinandpatch_sugar_caneThe order of creation is reversed. **
- **
- Miscellaneous
- **Slot
horse.saddleRename tosaddleAnd any mob has **. - **Armor crest definition no longer exists
item. Now this is determined by the recipe. ** - **
tinted_leavesParticles now requirecolorColors available. ** - pig variant definition format
textureRename toassets_id。 - Wolf variant definition format
angry_texture,tame_texture,wild_texturemerged intoassets。 - **Each mob variant format
biomeRename tospawn_conditions, and can be generated based on more conditions. ** - **entity
potionindependent forsplash_potionandlingering_potionTwo entities. **
- **Slot
resource pack:
- Texture:
- namespaceID changes for the following textures:
entity/pig/pig_saddle.png→entity/equipment/pig_saddle/saddle.pngentity/strider/strider_saddle.png→entity/equipment/strider_saddle/saddle.png.../cow→.../temperate_cow.../pig→.../temperate_pigentity/chicken.png→entity/chicken/temperate_chicken.png- Size changes for the following textures:
temperate_cowtemperate_pigred_mooshroombrown_mooshroom
- The following textures were separated into separate files from the original texture files:
entity/camel/camel.png→entity/equipment/camel_saddle/saddle.pngentity/horse/horse_<variant>.png→entity/equipment/horse_saddle/saddle.pngentity/horse/donkey.png→entity/equipment/donkey_saddle/saddle.pngentity/horse/mule.png→entity/equipment/mule_saddle/saddle.pngentity/horse/horse_skeleton.png→entity/equipment/skeleton_horse_saddle/saddle.pngentity/horse/horse_zombie.png→entity/equipment/zombie_horse_saddle/saddle.png
- Model
- **The cow and mushroom cow models have extra noses. **
- sound
- Removed
entity.wolf.howl。 - The original wolf sound effects have been moved to the classic folder.
- Removed
- shader
- **Core and post-processing shaders no longer use any JSON file definitions. **
- Deleted the
program,byvertex_shaderandfragment_shadersubstitute.<namespace>:<path>will be parsed asassets/<namespace>/shaders/<path>.<vsh|fsh> - ** in every
uniform,typeIt is now required. accept anyint,ivec3,float,vec2,vec3,vec4,andmatrix4。**
1.21.4
data pack:
- command:
trialParticles are added to a required fieldduration;
- NBT:
- Modified the NBT of the TNT minecart:
- Will
TNTFuseRename tofuse;
- Will
- **
custom_model_dataThe component is changed to a composite tag,set_custom_model_dataModifiers are updated synchronously; **
- Modified the NBT of the TNT minecart:
- Other components of data pack:
- Removed
#trim_templatesitemtag。 - Removed
trim_materialin the registryitem_model_indexField; equippablein the componentmodelThe field has now been renamed toasset_id。
- Removed
resource pack:
Introducing a new format to describe item model;
toast/systemThe sprite appearance has now been updated to use the standard nine-square grid division;toast/tutorialSprites are now scaled to taller popups;- **
advancements/box_obtainedandadvancements/box_unobtainedGUI textures now use the nine-square grid division method to change size; ** - **Empty slot textures such as armor slots in the item bar are now removed from
itemmove togui/sprites/container/slotdirectory and rename it; ** - Empty slot sprites in the Loom, Brewing Stand, Horse and Llama item bar GUI are now split from the background and moved;
1.21.2
data pack:
- command:
- Tie knots, floats and lightning no longer pass
/rideRide; - **Attribute id no longer exists
generic.,player.,zombie.Prefix; **
- Tie knots, floats and lightning no longer pass
- NBT:
- Rename
fire_resistantThe item component isdamage_resistant, and jointypesField; potion_contentsitem component addedcustom_namefield;- Split the entity types of ships and box ships into separate entities for each texture;
- ** Container blockentity
LockThe field is renamed tolock, and supports itempredicate;**
- Rename
- data pack components:
- advancement:
- Rename
killed_by_crossbowThe criterion iskilled_by_arrow;
- Rename
- Enchantment:
- **Renamed enchantment type
damage_itemforchange_item_damage, and supports negative values; **
- **Renamed enchantment type
- loot table, predicate, item modifier:
- Remove loot table
empty; - Removed
minecraft:boatentity subpredicate;
- Remove loot table
- recipe:
- Recipe raw material format modification:
{ "item": "<item id>" }Modify to"<item id>"{ "tag": "<tag id>" }Modify to"#<tag id>"- List format no longer supports tags
- Recipe raw material format modification:
- world generation:
- Removed carvers type cars, carvers can now be listed directly;
- advancement:
resource pack:
- Texture:
- **All equipment related textures have now been moved to
textures/entity/equipmentin the subdirectory. **
- **All equipment related textures have now been moved to
- shader:
rendertype_entity_glint_directRename torendertype_entity_glint;rendertype_entity_translucent_cullRename torendertype_item_entity_translucent_cull;- **Program definition for post-processing effects (
assets/<命名空间>/shaders/program/<名称>.json) is now defined with the core shader (assets/<命名空间>/shaders/core/<名称>.json) Uniformity: **- **Removed those that have no practical effect
blendfield. ** - **Removed
attributesfields whose vertex attributesPositionwill be bound forever. ** UniformNow provided for the core shaderUniformmerge, whereTimewas renamed toGameTime;
- **Removed those that have no practical effect
- The post-processing pipeline program is now run by
assets/<命名空间>/shaders/post移动到assets/<命名空间>/post_effect。 - The vertex and fragment shaders used by the post-processing pipeline are now
assets/<命名空间>/shaders/programmove toassets/<命名空间>/shaders/post。** - **Post processing rendering process
nameNow renamed toprogram, and namespaceID is required. **
1.21
My world JE1.21 data pack folder name changed
data pack:
- NBT:
- Removed the arrow type entity
ShotFromCrossbowField
- Removed the arrow type entity
- data pack components:
- loot table, predicate, item modifier:
- **Value renaming of entity keys such as predicate: **
killer->attackerdirect_killer->direct_attackerkiller_player->attacking_player
- predicate in
enchantmentThe field is renamed toenchantments; - **Rename
random_chance_with_lootingThe condition israndom_chance_with_enchanted_bonus, and modify the following fields: **- Remove
looting_multiplierField; - **
chanceNow for level dependent functions; ** - join in
enchantmentField;
- Remove
- join in
enchantment_active_checkcondition; - Rename
looting_enchantfunction isenchanted_count_increase, and joinenchantmentField; - **exist
enchant_randomlyModify the following fields under function: **enchantmentsThe field is renamed tooptions;- Add Boolean value field
only_compatible;
- **
enchant_with_levelsModify under function: **- Removed
treasureField; - join in
optionsField;
- Removed
- **
copy_namefunction change: renamed fieldssourceEnumeration value: **- Will
killerRename toattacking_entity。 - Will
killer_playerRename tolast_damage_player
- Will
- **Value renaming of entity keys such as predicate: **
- loot table, predicate, item modifier:
1.20.5
data pack:
- command:
- particle:
/particleThe command format has been significantly modified, see Wiki for details- Split particles
gust_emitterforgust_emitter_largeandgust_emitter_small
- property:
- Rename properties:
- generic.block_interaction_range → player.block_interaction_range
- generic.entity_interaction_range → player.entity_interaction_range
- Remove attributes:
horse.jump_strength
- Rename properties:
- The maximum command length is now 2000000 (2 million) characters;
- particle:
- entity and NBT:
- Modified the regional effect cloud entity
ParticleThe fields are in the same format as command/world generation; - Potion arrow's
Potionandcustom_potion_effectsfields are merged initemwithin tag; - Modify the effect field of the potion effect cloud to match
potion_contentsComponent matching; - Modify the blockentity field of the flag to be
banner_patternsComponent matching; - Modify the blockentity field of hive to be
beesComponent matching; - Rename some NBT fields of blocks and entities:
- Location nbt:
{X:1,Y:2,Z:3}→[I;1,2,3] - bee:
FlowerPosandHivePos→flower_posandhive_pos - honeycomb:
FlowerPos→flower_pos - End Crystal:
BeamTarget→beam_target - Mobs that can be towed by tethers:
Leash→leash - raid mob:
PatrolTarget→patrol_target - End Portal:
ExitPortal→exit_portal - Wandering Trader:
WanderTarget→wander_target
- Location nbt:
- Removed the counter-productive behavior of some potions when they are above level 127;
- Modified the regional effect cloud entity
- item component:
item’s NBT tags are replaced by the new structured item component:
Damage:12->damage=12RepairCost:12->repair_cost=12Unbreakable:1b->unbreakable={}Enchantments:[{id:"sharpness",lvl:2}]->enchantments={levels:{sharpness:2}}StoredEnchantments->stored_enchantmentsdisplay:{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=16711680Decorations:[](filled map) ->map_decorations={}map:1->map=1CustomModelData->custom_model_dataPotion:"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 ashide_additional_tooltipcomponentDebugProperty->debug_stick_stateEntityTag:{...}->entity_data={...}- bucketed mobs data ->
bucket_entity_data={...} instrument:"ponder_goat_horn"->instrument="ponder_goat_horn"Recipes:[](knowledge book) ->recipes=[]LodestonePos,LodestoneDimension, andLodestoneTracked->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={...}
- Added item component
enchantment_glint_override; - item format
CountRename tocount
- data pack components:
- loot table:
- Nested lists are no longer supported in loot function lists.
- **loot table extraction item loot_table (returning all items from the provided nested loot table) now has the following syntax: value can be: **
- **A namespaceID refers to a reference to another loot table. **
- **The complete loot table has the same format as the independent file's loot table. **
- predicate:
- itempredicate modification:
- The tag field has been removed, and the items field now supports tags;
- potion field renamed to potions;
- nbt field renamed to custom_data;
- blockpredicate modified
- Removed tag field, blocks field now supports tag;
- fluid predicate
fluidRename tofluids - entitypredicate
typeSupport tag; - Location predicate modification:
- **
biomeRename tobiomes, and supports group tags; ** structureRename tostructures, and supports structure tag;
- **
- **Modify itempredicate
predicatesThe following sub-predicate: **durability->damagesubpredicate;enchantments->enchantmentssubpredicate;stored_enchantments->stored_enchantmentssubpredicate;potions->potion_contentssubpredicate;custom_data->custom_datasubpredicate;
- itempredicate modification:
- item modifier:
- Rename item decorator function
set_nbt→set_custom_datacopy_nbt→copy_custom_data
- **Rename
/attributeThe operation field of command: **add→add_valuemultiply_base→add_multiplied_basemultiply→add_multiplied_total
- Removed
set_contentsin item decorator functiontypefields and joincomponentfield; - for
set_attributesitem modifier function addedreplacefield; set_loreUnder item modifier functionreplaceThe field is renamed tomode;- **
set_written_book_pagesfunction:pagesNow a JSON object instead of a JSON text. **
- Rename item decorator function
- recipe:
- The product column of recipe now supports specified item components;
- tag:
- Revise:
- entitytag
punchable_projectilesRename toredirectable_projectile; - Rename
axolotl_tempt_itemsforaxolotl_food;
- entitytag
- Remove:
- Remove itemtag
tools - Remove entitytag
deflects_arrows,deflects_tridents
- Remove itemtag
- Revise:
- world generation:
- **for
worldgenDefined integer and floating point providers are no longer wrapped intypenext to extravaluein the field. **
- **for
- loot table:
resource pack:
- Texture:
- Change map decoration icons from previous ones
map_icons.pngseparated fromtextures/map/decorations/Atlas loaded in directory;
- Change map decoration icons from previous ones
- Font:
- **ttf font provider
shiftField values are now limited to between -512 and 512; **
- **ttf font provider
- shader:
- Post-processing shader
blurRename tobox_blur; - New
entity_outline_box_blurshader;
- Post-processing shader
1.20.3
data pack:
- command:
/functioncommand no longer returns the number of executed commands;- Game rules
maxCommandChainLengthCounting is now stricter;
- NBT:
- Rename the registered name of block grass and its corresponding item from minecraft:grass to minecraft:short_grass
- Place the trident (entity)
TridentThe field is renamed toitem; - TNTentity’s nbt data:
FuseRename tofuse; Add toblock_stateField;
resource pack:
- Texture:
.pngNow the only supported texture format;
1.20.2
data pack:
- command:
- The function macro has been added. You can add macro parameters to the function and pass it into the function to achieve dynamic functions;
- **You can use a backslash at the end of a command line
\Indicates line break to support multi-line single instructions and increase readability; **
- debug:
- The command memory function now saves 50 items across archives, which can be found in the game folder.
command_history.txtfound in the file;
- The command memory function now saves 50 items across archives, which can be found in the game folder.
- NBT:
- mobNBT’s status effect id is changed from numeric id to namespaceid (string);
- **Many status effect related entityNBT key names have been changed from camel case to snake format: **
- mob status effect field:
Id->idAmbient->ambientAmplifier->amplifierDuration->durationShowParticles->show_particlesShowIcon->show_iconHiddenEffect->hidden_effectFactorCalculationData->factor_calculation_data
- Potions and Potion Arrows:
CustomPotionEffects->custom_potion_effects
- Status Effect Cloud and Mysterious Stew:
Effects->effectsEffectId->idEffectDuration->duration
- Mooshroom:
EffectIdandEffectDuration->stew_effects
- mob status effect:
ActiveEffects->active_effects- Beacon:
Primary->primary_effectSecondary->secondary_effect
- mob status effect field:
resource pack:
- Texture:
- **The text edit box is now a picture located in
widget/text_fieldandwidget/text_field_highlightedA sprite diagram divided into nine squares. ** - **The scroll bars for lists and edit boxes are now a
widget/scrollerA sprite diagram divided into nine squares. ** realmsThe namespace texture is moved inminecraftWithin namespace;- **All GUI textures containing multiple widget maps are now split into separate maps located in
textures/gui/spritesdirectory. ** villager2.pngwas renamed tovillager.png- **Button icons for Accessibility, Languages, and Realms News are now separate files and are no longer individually attached to the button's texture. **
- **The text edit box is now a picture located in
1.20
data pack:
- data pack components:
- advancement:
- **
placed_block,item_used_on_block, andallay_drop_item_on_blockAll fields under the advancement trigger are mergedlocationfield; this field now accepts a loot table predicate. **
- **
- loot table, predicate, item modifier:
- join in
all_ofcondition,alternativeThe condition is renamed toany_of
- join in
- tag:
- blocktag
replaceable_plantsSplit intoreplaceableandreplaceable_by_trees
- blocktag
- world generation:
- Removed structural postprocessor
ruleofoutput_nbtField, addedblock_entity_modifieras an alternative.
- Removed structural postprocessor
- advancement:
resource pack:
- Font:
- Remove character provider
legacy_unicode;
- Remove character provider
1.19.4
data pack:
- entity and NBT
- Add (block, item, text) display entity, interactive entity;
- data pack components
- loot table, predicate, item modifier:
- damage typepredicate is modified, the original criterion is removed, and the new damage type data judgment is used instead, using
tagsField judgment;
- damage typepredicate is modified, the original criterion is removed, and the new damage type data judgment is used instead, using
- loot table, predicate, item modifier:
1.19.3
data pack:
- command:
- modified command
/publishThe format;
- modified command
- data pack components:
- recipe:
- Add required fields to the recipe file
category;
- Add required fields to the recipe file
- tag:
- Remove blocktag
overworld_natural_logs;
- Remove blocktag
- world generation:
- Remove
template_poolofnamefield;
- Remove
- recipe:
resource pack:
- Texture:
- exist
entity/player/(slim|wide)Added default player skins; removedentity/steveandentity/alex; - Modified
gui/container/creative_inventory/tabstexture;
- exist
1.19.1
1.19
data pack:
- command:
- Cat variant changed from numeric id to namespaceid;
- **Status effects
IDThe type is changed from byte type to integer type; **
- advancement:
- advancement trigger
location,slept_in_bed,hero_of_the_villageandvoluntary_exileDownlocationFields are moved intoplayer.locationLocation;
- advancement trigger
- loot table, predicate, item modifier:
- Location predicate field
featureRename tostructure;
- Location predicate field
- world generation:
- Remove features
ice_patch,ice_patchand by featuresdiskreplace; - Tree root placer format modification:
y_offsetRename totrunk_offset_y;- Field
max_root_width,max_root_length,random_skew_chance,can_grow_through,muddy_roots_in,muddy_roots_providermove inmangrove_root_placementunder the object; - Join fields
above_root_placement;
- Features
glow_lichenRename tomultiface_growth; block_rotProcessor fieldsrottable_blocksNeed one now#prefix;- Remove structure fields
adapt_noise; - Remove density function
slide,Depend onadd,mul,y_clamped_gradientreplace; - Remove noise settings field
noise.sampling,noise.top_slide,noise.bottom_slide, and moved into the density function; - dimension type is no longer inline in dimension data;
- Remove chunk noise generator
seedfield; - Remove density function
terrain_shaper_splineand remove the density functionsplineofmin_valueandmax_valuefield; - Remove mob biofield
category; - Will
worldgen/configured_structure_featureMove folder intoworldgen/structurefolder;
- Remove features
1.18.2
data pack:
- command
locatecommand now accepts the configured structure object ID as a parameter instead of the structure type;locatecommand andlocatebiomeCommand now supports tags as parameters;
- world generation
- Added structure set JSON file, replaced the noise field
structuresfield; - Removed fields in noise settings
noise_caves_enabled,noodle_caves_enabled; - Some tag fields now require the ID to be preceded by
#, but they do not accept lists of elements yet:dimension_typeininfiniburnfeature.geodein configurationblocks.cannot_replaceandblocks.invalid_blocksfeature.vegetation_patchandfeature.waterlogged_vegetation_patchin configurationreplaceablefeature.root_systemin configurationroot_replaceablestructure_processor.protected_blocksinvalue
- Modified the noise settings
structuresformat;
- Added structure set JSON file, replaced the noise field
1.18
data pack:
command
- Removed the name length limit for score items, scoreboard names, and team names;
NBT
Will be a monster spawner
SpawnPotentialsThe format changes to:snbt{ weight: <int>, data: { entity: {...}, custom_spawn_rules: {...} } }Will be a monster spawner
SpawnDataThe contents of the field are moved toSpawnData.entity;
advancement
- Change the advancepredicate in
nether_travelofenteredRename tostart_position, removed the fieldexit;
- Change the advancepredicate in
item decorator
- Now
set_contentsandset_loot_tableitem decorator function requirestypeField
- Now
tag
- blocktag
lava_pool_stone_replaceablesRename tolava_pool_stone_cannot_replace;
- blocktag
world generation
- Add blockpredicate for feature placement;
- Added placed features;
- Added surface rules;
- Add noise JSON data file;
- Removed surface generator;
- Removed block placer;
1.17
data pack:
- command
- join in
/itemcommand, replaced/replaceitemcommand; /giveThe upper limit of items that can be given by command is now 100;
- join in
- advancement
- in trigger
effects_changedAdd conditions insource;
- in trigger
- loot table and predicate
- Change the names of all item condition fields in predicate from
itemmodified toitems, the names of all block condition fields start fromblockmodified toblocks;
- Change the names of all item condition fields in predicate from
- Added item modifier
- NBT
fireballfieldsExplosionPowernow byte instead of int;- slime field
SizeThe upper limit is now 126; - Potion cloud fields
RadiusThe upper limit is now 32;
- tag
- Rename blocktag:
snow_step_sounds→inside_snow_step_sounds
- Rename blocktag:
- block
- The rails can now contain water, and water will no longer damage the rails;
- Split the cauldron into
cauldron(empty cauldron),water_cauldron(filled with water) andlava_cauldron(containing magma); - Rename
grass_path→dirt_path,grimstone→deepslate;
- entity
- Joined
marker
- Joined
- other
- Added game events;
- use
F3+LA performance report can be generated and stored in.minecraft/debug/profiling/Down; - The target selector component and NBT component in the text component can use fields
separatorSpecify delimiter;
resource pack:
- shader
- Now using OpenGL 3.2 rendering, you can use resource pack to replace vanilla shader;
- Add resource pack directory
shaders/coreandshaders/include;
- other
- The credits are now stored in json format instead of txt;
1.16.2
data pack:
- world generation:
- **Custom world generation and dimension settings now use the same folder pattern (namespace/<type>/resource.json) in the data pack, consistent with other resources. **
1.16
data pack:
- command:
- Attribute naming changed from camel case naming to underline naming;
- NBT:
- The UUID value of the entity is now changed to a 4-element integer array;;
- data pack components:
- advancement:
- Remove advancement trigger
safely_harvest_honey; - advancement content
location,slept_in_bed,hero_of_the_village,voluntary_exilefields are put intolocationunder field;
- Remove advancement trigger
- world generation:
- Added experimental gameplay "custom world";
- advancement:
- other:
- data pack loading optimization:
- If the load fails, the modifications will not be applied;
- If there is an error in the loaded data pack when entering the world, the "Safe Mode" option will pop up;
- Only modify the data pack list after the data pack is successfully loaded;
- data pack can now be specified before world generation;
- Now if the data pack component is missing (such as uninstalled
vanilladata pack), will prevent the player from loading the world.
- data pack loading optimization: