[ { "group": "1.18.2", "version": "22w07a", "tags": [ "tag", "worldgen", "data", "structure" ], "content": "Added field `biomes` to configured structure features, which is a biome tag that determines which biomes the structure can generate in. For vanilla this biome tag format is `minecraft:has_structure/`." }, { "group": "1.18.2", "version": "22w07a", "tags": [ "tag", "worldgen", "data" ], "content": "Added biome tags `is_badlands`, `is_beach`, `is_deep_ocean`, `is_forest`, `is_hill`, `is_jungle`, `is_mountain`, `is_nether`, `is_ocean`, `is_river`, and `is_taiga`." }, { "group": "1.18.2", "version": "22w06a", "tags": [ "tag", "data" ], "content": "Universal tags: any type present in registries can now have tags. They can be defined in a data pack in the directory `/tags/`. Existing tags (`blocks`, `items`, `fluids`, `entity_types`, `game_events` and `functions`) keep their name for now." }, { "group": "1.18.2", "version": "22w06a", "tags": [ "worldgen", "tag" ], "content": "Some fields that previously accepted a list of IDs, or a single ID now accept tags, either in the format `[\"id1\", \"id2\"]`, `\"id\"` (as shurtcut for `[\"id\"]`), or `#tag`. Changed fields:\n* Configured feature `glow_lichen`: `can_be_placed_on` is a block tag\n* Configured feature `spring_feature`: `valid_blocks` is a block tag\n* Configured feature `simple_random_selector`: `features` is a placed feature tag\n* Block predicate `matching_block`: `blocks` is a block tag\n* Block predicate `matching_fluids`: `fluids` is a fluid tag\n* Biome: inner list of `features` is a placed feature tag and `carvers` values are carver tags\n* Biome source `checkerboard`: `biomes` is a biome tag" }, { "group": "1.18.2", "version": "22w06a", "tags": [ "worldgen", "tag" ], "content": "Some fields now require the ID to be prepended with `#`, and don't yet accept a list of tags. Changed fields:\n* Dimension type: `infiniburn`\n* Configured feature `geode`: `blocks.cannot_replace` and `blocks.invalid_blocks`\n* Configured feature `vegetation_patch` and `waterlogged_vegetation_patch`: `replaceable`\n* Configured feature `root_system`: `root_replaceable`\n* Structure processor `protected_blocks`: `value`" }, { "group": "1.18.2", "version": "22w06a", "tags": [ "structure", "worldgen" ], "content": "Modified the format of the `structures` tag in noise settings. It is now a single map with structure types as keys and structure placement configuration as values. There are currently two possible placement types:\n* `random_spread`: Has the old fields from the inner `structures` map. Additionally, has an optional `spread_type` field which can be one of `linear` or `triangular`, and an optional `locate_offset` field, which is a list of 3 numbers.\n* `concentric_rings`: Has 3 required int fields, the same as the old `stronghold` configurarion: `distance`, `spread`, and `count`." }, { "group": "1.18.2", "version": "22w06a", "tags": [ "assets" ], "content": "Added a new resource file `assets/minecraft/regional_compliancies.json` configuring the hourly popup messages displayed in South Korea." }, { "group": "1.18.2", "version": "22w03a", "tags": [ "command" ], "content": "The `/locate` command now uses a namespaced ID parameter." }, { "group": "1.18.2", "version": "22w03a", "tags": [ "command" ], "content": "Added the `/placefeature` command that places a configured feature in the world." }, { "group": "1.18.2", "version": "1.18.2-pre2", "tags": [ "worldgen" ], "content": "Added density function `spline`. It has a field `spline` which is a cubic spline with the same format as the terrain shaper splines, with the exception that `coordinate` is a density function." }, { "group": "1.18.2", "version": "1.18.2-pre1", "tags": [ "pack", "breaking", "obsolete" ], "content": "Data pack format has been increased to 9." }, { "group": "1.18.2", "version": "1.18.2-pre1", "tags": [ "command", "structure", "breaking" ], "content": "The `/locate` command now expects configured structure features, rather than structure types. For example `/locate village_desert`." }, { "group": "1.18.2", "version": "1.18.2-pre1", "tags": [ "command", "structure" ], "content": "The `/locate` and `/locatebiome` commands now support tags, when prefixing with a `#`. For example `/locate #village`." }, { "group": "1.18.2", "version": "1.18.2-pre1", "tags": [ "structure", "worldgen" ], "content": "Added configured structure feature fields `adapt_noise` and `spawn_overrides`." }, { "group": "1.18.2", "version": "1.18.2-pre1", "tags": [ "structure", "worldgen" ], "content": "Added structure sets, stored in the data pack folder `worldgen/structure_set`. They reference a weighted list of configured structure features in `structures` and a structure placement configuration in `placement`. This matches the old structure placement from the noise settings. There are currently two possible placement types: `random_spread` and `concentric_rings`." }, { "group": "1.18.2", "version": "1.18.2-pre1", "tags": [ "worldgen" ], "content": "Removed noise settings fields `noise_caves_enabled`, `noodle_caves_enabled`, and `structures`." }, { "group": "1.18.2", "version": "1.18.2-pre1", "tags": [ "worldgen" ], "content": "Added noise settings field `noise_router` with the following required sub-fields, each a density function: `barrier`, `fluid_level_floodedness`, `fluid_level_spread`, `lava`, `temperature`, `vegetation`, `continents`, `erosion`, `depth`, `initial_density_without_jaggedness`, `final_density`, `vein_toggle`, `vein_ridged`, `vein_gap`." }, { "group": "1.18.2", "version": "1.18.2-pre1", "tags": [ "worldgen" ], "content": "Added density functions, stored in the data pack folder `worldgen/density_function`. They're functions that transform a block position into a number. The currently available density function types are `abs`, `add`, `beardifier`, `blend_alpha`, `blend_density`, `blend_offset`, `cache_2d`, `cache_all_in_cell`, `cache_once`, `clamp`, `constant`, `cube`, `end_islands`, `flat_cache`, `half_negative`, `interpolated`, `max`, `min`, `mul`, `noise`, `old_blended_noise`, `quarter_negative`, `range_choice`, `shift`, `shift_a`, `shift_b`, `shifted_noise`, `slide`, `square`, `squeeze`, `terrain_shaper_spline`, `weird_scaled_sampler`, and `y_clamped_gradient`. Some types map a single density function in `argument`, others combine two functions in `argument1` and `argument2`. Others have more complex configurations." }, { "group": "1.19.1", "version": "1.19.1-pre2", "tags": [ "options" ], "content": "The server property `enforce-secure-profile` now defaults to `true`." }, { "group": "1.19.1", "version": "1.19.1-pre2", "tags": [ "text", "chat-type", "data" ], "content": "Removed the `system`, `game_info`, and `tellraw_command` chat types." }, { "group": "1.19.1", "version": "1.19.1-pre2", "tags": [ "text", "chat-type" ], "content": "Removed the `overlay` field in chat types. Chat types can now no longer be used to show text on the actionbar." }, { "group": "1.19.1", "version": "1.19.1-pre2", "tags": [ "text", "chat-type" ], "content": "Flattened the chat type decorations, which are now placed directly in the `chat` and `narration` fields, without a `decoration` object. Removed the `priority` field in `narration`." }, { "group": "1.19.1", "version": "1.19.1-pre3", "tags": [ "assets", "splash" ], "content": "Added splash text \"Technoblade never dies!\"." }, { "group": "1.19.1", "version": "1.19.1-pre3", "tags": [ "text", "chat-type" ], "content": "Renamed the `team_name` parameter to `target`. This is now also used in the `msg_command_outgoing` chat type." }, { "group": "1.19.1", "version": "1.19.1-pre3", "tags": [ "text", "chat-type", "data" ], "content": "The `msg_command` chat type has been split into `msg_command_outgoing` and `msg_command_incoming`." }, { "group": "1.19.1", "version": "1.19.1-rc1", "tags": [ "text" ], "content": "The `run_command` click event no longer supports sending chat messages. Values now always need to have `/` as prefix." }, { "group": "1.19.1", "version": "22w24a", "tags": [ "api" ], "content": "Changed `launchermeta.mojang.com` \u2192 `piston-meta.mojang.com`. The old URL is still supported for now." }, { "group": "1.19.1", "version": "22w24a", "tags": [ "game-event" ], "content": "Added game events `jukebox_play` and `jukebox_stop_play`." }, { "group": "1.19.1", "version": "22w24a", "tags": [ "assets" ], "content": "Added icons for chat reporting to the `guide/social_interactions.png` texture." }, { "group": "1.19.1", "version": "22w24a", "tags": [ "text", "chat-type" ], "content": "The `style` field in chat type decorations is now optional." }, { "group": "1.18", "version": "21w41a", "tags": [ "jar" ], "content": "The `server.jar` file is now signed, and can be verified offline without the need for a separate manifest hash." }, { "group": "1.18", "version": "21w41a", "tags": [ "worldgen" ], "content": "The noise settings option `legacy_random_source` has beeen set to `false` for the overworld. This enables the new Xoroshiro random number generator." }, { "group": "1.18", "version": "21w41a", "tags": [ "worldgen" ], "content": "Added generation step `FLUID_SPRINGS` between `UNDERGROUND_DECORATION` and `VEGETAL_DECORATION`." }, { "group": "1.18", "version": "21w41a", "tags": [ "worldgen" ], "content": "Changed noise settings. Removed fields `noise.simplex_surface_noise` and `noise.random_density_offset`." }, { "group": "1.18", "version": "21w41a", "tags": [ "worldgen" ], "content": "Removed surface builders. Removed the `surface_builder` field from biomes." }, { "group": "1.18", "version": "21w41a", "tags": [ "worldgen" ], "content": "Added surface rules, a new concept which replaces surface builders. Noise settings now have a `surface_rule` field. There are currently 4 surface rules:\n* `block` places a block state from `result_state`.\n* `sequence` runs a list of surface rules from the field `sequence` in order, until one returns a block state.\n* `condition` checks a surface condition in `if_true` and only if it passes runs the surface rule in `then_run`.\n* `bandlands` a hardcoded surface rule used in badlands.\n\nThe `condition` surface rule uses surface conditions. There are currently 9 conditions:\n* `biome` checks if the biome at the location is one of the given biome IDs in the array `biome_is`.\n* `hole`\n* `noise_threshold` checks if the value of a noise using `name` and `noise` is between `min_threshold` and `max_threshold`.\n* `not` inverts the surface condition in field `invert`.\n* `steep`\n* `stone_depth` checks for hitting the depth of stone. Takes as `surface_type` either `floor` or `ceiling`. Used for example for grass blocks, or for dirt if `add_run_depth` is `true`.\n* `temperature`\n* `water` checks for water at an offset. Also has fields `run_depth_multiplier` and `add_stone_depth`.\n* `y_above` checks that the location is above a vertical anchor specified by `anchor`. Also has fields `run_depth_multiplier` and `add_stone_depth`." }, { "group": "1.18", "version": "21w39a", "tags": [ "advancement" ], "content": "Added trigger `fall_from_height` when a player lands after falling. Takes conditions `start_position` and `distance`." }, { "group": "1.18", "version": "21w39a", "tags": [ "advancement" ], "content": "Added trigger `ride_entity_in_lava`, which triggers every tick a player rides an entity in lava. Takes conditions `start_position` (location predicate) and `distance` (distance predicate)." }, { "group": "1.18", "version": "21w39a", "tags": [ "advancement" ], "content": "Changed conditions for `nether_travel` trigger. Renamed condition `entered` to `start_position`. Removed condition `exited`, since it is identical to `player.location`." }, { "group": "1.18", "version": "21w39a", "tags": [ "loot", "item-modifier" ], "content": "Added function `set_potion`, it has a single field `id` which takes a potion ID." }, { "group": "1.18", "version": "21w39a", "tags": [ "pack", "breaking", "obsolete" ], "content": "Resource pack format has been increased to 8." }, { "group": "1.18", "version": "21w39a", "tags": [ "assets" ], "content": "GUI tecture `inventory.png` now contains an extra sprite for the thin layout of the effects list." }, { "group": "1.18", "version": "21w39a", "tags": [ "storage" ], "content": "Changed chunk storage. In sections, renamed `Palette` to `block_states.palette` and `BlockStates` to `block_states.data`. Moved the `Biomes` field to within sections using a similar format `biomes.palette` and `biomes.data`." }, { "group": "1.18", "version": "21w39a", "tags": [ "storage" ], "content": "Carving masks are now stored as `long[]` instead of `byte[]`." }, { "group": "1.18", "version": "21w39a", "tags": [ "jar" ], "content": "The `server.jar` now contains individual libraries instead of being a flat archive. On startup, libraries will be unpacked into a directory. To run a different main class than the server, use the `bundlerMainClass` property." }, { "group": "1.18", "version": "21w39a", "tags": [ "worldgen" ], "content": "Added int provider `weighted_list`. It has a field `distributions` which takes an array of objects each having an int `weight` and nested int provider `data`." }, { "group": "1.18", "version": "21w39a", "tags": [ "worldgen" ], "content": "Added \"Block predicates\" to worldgen. These are not the same as block predicates from advancements or predicates! Current block predicates are: `all_of`, `any_of`, `not`, `matching_blocks`, `matching_fluids`, and `replaceable`." }, { "group": "1.18", "version": "21w39a", "tags": [ "worldgen" ], "content": "Changed decorator `block_filter`. It now only takes a block predicate in field `predicate`." }, { "group": "1.18", "version": "21w39a", "tags": [ "worldgen" ], "content": "Changed feature `simple_block`. Removed config fields `place_on`, `place_in`, and `place_under`. A `block_filter` decorator can be used instead." }, { "group": "1.18", "version": "21w39a", "tags": [ "worldgen" ], "content": "Replaced feature `growing_plant` to `block_column`. Removed the config fields `body_provider`, `head_provider`, and `height_distribution`. Instead there is now a field `layers` that takes an array of objects each having an int provider `height` and block state provider `state`. Additionally there is a `prioritize_tip` boolean field. If true, it will start placing from the tip, which can be important in tight spaces." }, { "group": "1.18", "version": "21w39a", "tags": [ "worldgen" ], "content": "Changed the `random_patch`, `flower` and `flower_no_bonemeal` features. Now takes fields `tries`, `xz_spread`, `y_spread`, `only_in_air`, `allowed_on`, `disallowed_on`, and `feature`. Different X and Z spreads are no longer allowed, but it is now possible to nest a different feature in the placement." }, { "group": "1.18", "version": "21w39a", "tags": [ "worldgen" ], "content": "Removed \"Block placers\", which were only used in the `random_patch` feature." }, { "group": "1.18", "version": "21w39a", "tags": [ "worldgen" ], "content": "Removed decorators `heightmap_spread_double` and `spread_32_above`." }, { "group": "1.18", "version": "21w39a", "tags": [ "worldgen" ], "content": "Added decorator `environment_scan`. Scans block either up or down depending on the `direction_of_search` and `max_steps` fields. At each step, tests a block predicate `target_condition`." }, { "group": "1.18", "version": "1.18-pre1", "tags": [ "worldgen", "jar", "data" ], "content": "The `--reports` option in data generator now exports full vanilla worldgen reference files, instead of only biomes." }, { "group": "1.18", "version": "1.18-pre1", "tags": [ "worldgen" ], "content": "Added placed features, stored in the data pack folder `worldgen/placed_feature`. They reference a configured feature and a list of configured decorators." }, { "group": "1.18", "version": "1.18-pre1", "tags": [ "worldgen" ], "content": "Changed feature `twisting_vines`. Added fields `spread_width`, `spread_height`, and `max_height` which are all positive integers." }, { "group": "1.18", "version": "1.18-pre1", "tags": [ "worldgen" ], "content": "Changed feature `nether_forest_vegetation`. Added fields `spread_width` and `spread_height` which are both positive integers." }, { "group": "1.18", "version": "1.18-pre1", "tags": [ "worldgen" ], "content": "Changed feature `lake`. Removed field `state` and added fields `fluid` and `barrier` which are both block state providers." }, { "group": "1.18", "version": "1.18-pre1", "tags": [ "worldgen" ], "content": "Renamed surface rule field `run_depth_multiplier` \u2192 `surface_depth_multiplier`." }, { "group": "1.18", "version": "1.18-pre1", "tags": [ "worldgen" ], "content": "Changed surface condition `stone_depth`. Added fields `offset` which is an int and `add_surface_secondary_depth` which is a boolean. Renamed field `add_run_depth` \u2192 `add_surface_depth`." }, { "group": "1.18", "version": "1.18-pre1", "tags": [ "worldgen" ], "content": "Added block predicate `solid` which tests if the block material is solid." }, { "group": "1.18", "version": "1.18-pre1", "tags": [ "worldgen" ], "content": "Added block predicate `inside_world_bounds` which tests if the location is inside the (vertical) world bounds. It has an optional `offset` field which takes a block pos." }, { "group": "1.18", "version": "1.18-pre1", "tags": [ "worldgen" ], "content": "Removed decorators `decorated`, `dark_oak_tree`, `iceberg`, `count_extra`, `lava_lake`, `cave_surface`, `end_gateway`, and `nope`." }, { "group": "1.18", "version": "1.18-pre1", "tags": [ "worldgen" ], "content": "Renamed decorators:\n* `count_multilayer` \u2192 `count_on_every_layer`\n* `square` \u2192 `in_square`\n* `scatter` \u2192 `random_offset`\n* `chance` \u2192 `rarity_filter`\n* `count_noise` \u2192 `noise_threshold_count`\n* `count_noise_biased` \u2192 `noise_based_count`\n* `surface_relative_threshold` \u2192 `surface_relative_threshold_filter`\n* `water_depth_threshold` \u2192 `surface_water_depth_filter`\n* `range` \u2192 `height_range`\n* `block_filter` \u2192 `block_predicate_filter`" }, { "group": "1.18", "version": "1.18-pre1", "tags": [ "worldgen" ], "content": "Added decorator `biome`. Checks that the current feature exists in the biome at this position." }, { "group": "1.18", "version": "21w37a", "tags": [ "command" ], "content": "Added the `/jfr` command, along with the `--jfrProfile` startup option." }, { "group": "1.18", "version": "21w37a", "tags": [ "text", "font" ], "content": "Added `illageralt` rule-like font from Minecraft Dungeons." }, { "group": "1.18", "version": "21w37a", "tags": [ "loot", "item-modifier", "breaking" ], "content": "The `set_contents` and `set_loot_table` functions now require a `type` field with a valid block entity type." }, { "group": "1.18", "version": "21w37a", "tags": [ "pack", "breaking", "obsolete" ], "content": "Data pack format has been increased to 8." }, { "group": "1.18", "version": "21w37a", "tags": [ "command", "scoreboard" ], "content": "Removed length limits for scoreboard objectives, score holders (fake players), and team names." }, { "group": "1.18", "version": "21w37a", "tags": [ "nbt", "breaking" ], "content": "Added `custom_spawn_rules` NBT field to spawners, in the `SpawnData` object and `SpawnPotentials` list." }, { "group": "1.18", "version": "21w37a", "tags": [ "nbt", "breaking" ], "content": "Changed spawner NBT field `SpawnPotentials` format to `{ weight: , data: { entity: {...}, custom_spawn_rules: {...} } }`." }, { "group": "1.18", "version": "21w37a", "tags": [ "nbt", "breaking" ], "content": "Moved contents of spawner NBT field `SpawnData` to `SpawnData.entity`." }, { "group": "1.18", "version": "21w37a", "tags": [ "data", "tag", "breaking" ], "content": "Renamed block tag `lava_pool_stone_replaceables` to `lava_pool_stone_cannot_replace`." }, { "group": "1.18", "version": "21w37a", "tags": [ "worldgen" ], "content": "Removed `seed` field from the multi_noise biome source." }, { "group": "1.18", "version": "21w37a", "tags": [ "worldgen" ], "content": "Removed `altitude_noise`, `temperature_noise`, `humidity_noise` and `weirdness_noise` fields from the multi_noise biome source, and added `octaves` field to noise settings, used for both the biome and terrain noise." }, { "group": "1.18", "version": "21w37a", "tags": [ "worldgen" ], "content": "Removed the `vanilla_layered` biome source." }, { "group": "1.18", "version": "21w37a", "tags": [ "worldgen" ], "content": "Removed `altitude` biome noise parameter." }, { "group": "1.18", "version": "21w37a", "tags": [ "worldgen" ], "content": "Added `continentalness`, `erosion` and `depth` biome noise parameters." }, { "group": "1.18", "version": "21w37a", "tags": [ "worldgen" ], "content": "Multi noise debug values now show on the F3 screen." }, { "group": "1.18", "version": "21w37a", "tags": [ "worldgen" ], "content": "Removed `scale` and `depth` fields from biomes, since terrain is now shaped independently from biome placement." }, { "group": "1.18", "version": "21w37a", "tags": [ "worldgen" ], "content": "Removed `starts` field from biomes." }, { "group": "1.18", "version": "21w37a", "tags": [ "worldgen" ], "content": "Added mob category `axolotls`." }, { "group": "1.18", "version": "21w37a", "tags": [ "worldgen", "data" ], "content": "Added surface builders `grove`, `lofty_peaks`, `snowcapped_peaks`, `snowy_slopes`, `stone_shore`, and `stony_peaks`." }, { "group": "1.18", "version": "21w37a", "tags": [ "worldgen" ], "content": "Added decorator `surface_relative_threshold`." }, { "group": "1.18", "version": "21w37a", "tags": [ "worldgen" ], "content": "Removed block state providers `forest_flower_provider` and `plain_flower_provider`." }, { "group": "1.18", "version": "21w37a", "tags": [ "worldgen" ], "content": "Added block state providers `dual_noise_2d_provider`, `noise_2d_cutoff_provider`, and `noise_2d_provider`." }, { "group": "1.18", "version": "21w37a", "tags": [ "worldgen" ], "content": "Removed field `min_surface_level` from noise settings." }, { "group": "1.18", "version": "21w40a", "tags": [ "worldgen", "data" ], "content": "Renamed biomes:\n* `stone_shore` \u2192 `stony_shore`\n* `jungle_edge` \u2192 `sparse_jungle`\n* `snowy_tundra` \u2192 `snowy_plains`\n* `giant_tree_taiga` \u2192 `old_growth_pine_taiga`\n* `giant_spruce_taiga` \u2192 `old_growth_spruce_taiga`\n* `tall_birch_forest` \u2192 `old_growth_birch_forest`\n* `moutains` \u2192 `windswept_hills`\n* `wooded_mountains` \u2192 `windswept_forest`\n* `gravelly_mountains` \u2192 `windswept_gravelly_hills`\n* `shattered_savanna` \u2192 `windswept_savanna`\n* `wooded_badlands_plateau` \u2192 `wooded_badlands`\n* `lofty_peaks` \u2192 `jagged_peaks`\n* `snowcapped_peaks` \u2192 `frozen_peaks`" }, { "group": "1.18", "version": "21w40a", "tags": [ "worldgen", "data" ], "content": "Removed biomes `badlands_plateau`, `bamboo_jungle_hills`, `birch_forest_hills`, `dark_forest_hills`, `desert_hills`, `desert_lakes`, `giant_spruce_taiga_hills`, `giant_tree_taiga_hills`, `jungle_hills`, `modified_badlands_plateau`, `modified_gravelly_mountains`, `modified_jungle`, `modified_jungle_edge`, `modified_wooded_badlands_plateau`, `mountain_edge`, `mushroom_field_shore`, `shattered_savanna_plateau`, `snowy_mountains`, `snowy_taiga_hills`, `snowy_taiga_mountains`, `swamp_hills`, `taiga_hills`, `taiga_mountains`, `tall_birch_hills`, `wooded_hills`." }, { "group": "1.18", "version": "21w40a", "tags": [ "worldgen" ], "content": "Removed water lake feature." }, { "group": "1.18", "version": "21w40a", "tags": [ "worldgen" ], "content": "Temperature and humidity noises no longer change depending on the Y coordinate." }, { "group": "1.18", "version": "21w40a", "tags": [ "worldgen" ], "content": "Bedrock layers generate dependent on the world seed now." }, { "group": "1.18", "version": "21w40a", "tags": [ "worldgen" ], "content": "Removed decorator `block_survives_filter` decorator and replaced it with the added `world_survive` block predicate. This takes fields `offset` and `state`." }, { "group": "1.18", "version": "21w40a", "tags": [ "worldgen" ], "content": "The `offset` field of block predicates is now optional." }, { "group": "1.18", "version": "21w40a", "tags": [ "worldgen" ], "content": "Added block predicate `true` which always passes." }, { "group": "1.18", "version": "21w40a", "tags": [ "worldgen" ], "content": "Changed feature `block_column`. Replaced field `allow_water` which took a boolean with `allowed_placements` which takes a block predicate." }, { "group": "1.18", "version": "21w40a", "tags": [ "worldgen" ], "content": "Changed features `random_patch`, `flower` and `flower_no_bonemeal`. Removed fields `only_in_air`, `allowed_on` and `disallowed_on`, since they can be replaced with a `block_filter` decorator." }, { "group": "1.18", "version": "21w40a", "tags": [ "worldgen" ], "content": "Added noise settings field `noise.legacy_random_source`." }, { "group": "1.18", "version": "21w44a", "tags": [ "options" ], "content": "Added server property `hide-online-players`. If `true`, a player list won't be sent on a status request." }, { "group": "1.18", "version": "21w44a", "tags": [ "tag", "data", "entity" ], "content": "Added block tags to control mob spawning: `animals_spawnable_on`, `axolotls_spawnable_on`, `goats_spawnable_on`, `mooshrooms_spawnable_on`, `parrots_spawnable_on`, `polar_bears_spawnable_on_in_frozen_ocean`, `rabbits_spawnable_on`, `foxes_spawnable_on`, `wolves_spawnable_on`." }, { "group": "1.18", "version": "21w44a", "tags": [ "worldgen" ], "content": "Removed noise settings fields `bedrock_roof_position`, `bedrock_floor_position`, and `deepslate_enabled` since they can be replaced with the `surface_rules` field." }, { "group": "1.18", "version": "21w44a", "tags": [ "worldgen" ], "content": "Removed noise settings fields `noise.density_factor` and `noise.density_offset`." }, { "group": "1.18", "version": "21w44a", "tags": [ "worldgen" ], "content": "Added noise settings field `noise.large_biomes`." }, { "group": "1.18", "version": "21w44a", "tags": [ "worldgen" ], "content": "Added surface condition `vertical_gradient`. It has fields `random_name` which is a resource location, `true_at_and_below` which is a vertical anchor, and `false_at_and_above` which is a vertical anchor. It can be used to create the bedrock or deepslate gradients." }, { "group": "1.18", "version": "21w44a", "tags": [ "worldgen" ], "content": "Added surface condition `above_preliminary_surface`, which has no extra fields." }, { "group": "1.18", "version": "21w42a", "tags": [ "particle", "breaking" ], "content": "Replaced particles `light` and `barrier` with `block_marker`. This particle renders a texture based on the `particle` field of the block model. It takes a block state option similarly to the `block` particle, for example `block_marker wheat[age=2]`." }, { "group": "1.18", "version": "21w42a", "tags": [ "block", "particle" ], "content": "Light blocks now show their light level when viewed in the world." }, { "group": "1.18", "version": "21w42a", "tags": [ "worldgen" ], "content": "Changed decorator `cave_surface`. Added boolean field `allow_water`." }, { "group": "1.18", "version": "21w42a", "tags": [ "worldgen" ], "content": "Added decorator `scatter` that applies an offset. It has two fields `xz_spread` and `y_spread`, both taking an int provider." }, { "group": "1.18", "version": "21w42a", "tags": [ "worldgen" ], "content": "Added int provider `clamped_normal`, similar to the existing float provider. It has fields `mean`, `deviation`, `min_inclusive` and `max_inclusive`." }, { "group": "1.18", "version": "21w42a", "tags": [ "worldgen" ], "content": "Removed `small_dripstone` feature and replaced it with `pointed_dripstone`. This feature takes 4 optional fields `chance_of_taller_dripstone`, `chance_of_directional_spread`, `chance_of_spread_radius2`, `chance_of_spread_radius3`." }, { "group": "1.18", "version": "21w42a", "tags": [ "worldgen" ], "content": "Removed field `noise.use_legacy_random` from noise settings. The new random generator is now always enabled." }, { "group": "1.18", "version": "21w42a", "tags": [ "worldgen" ], "content": "Removed field `octaves` from noise settings. It is no longer possible to configure climate noise parameters per dimension. Instead you can configure global noise parameters in files like `worldgen/noise/temperature.json`." }, { "group": "1.18", "version": "21w42a", "tags": [ "worldgen" ], "content": "Added `worldgen/noise` folder in data packs to store noise parameters." }, { "group": "1.18", "version": "21w42a", "tags": [ "worldgen" ], "content": "Changed surface condition `noise_threshold`. Removed field `name` and changed field `noise` so it now takes a resource location pointing to noise parameters in `worldgen/noise`." }, { "group": "1.18", "version": "21w38a", "tags": [ "options" ], "content": "Added \"Simulation distance\" option where entities outside will not be updated. It can be change with the slider in the client options or with the server property `simulation-distance`." }, { "group": "1.18", "version": "21w38a", "tags": [ "worldgen" ], "content": "Removed `sapling_provider` field from tree features." }, { "group": "1.18", "version": "21w38a", "tags": [ "worldgen" ], "content": "Added `block_survives_filter` decorator. Tests that a certain block state would survive in the location." }, { "group": "1.18", "version": "21w38a", "tags": [ "worldgen" ], "content": "Added `block_filter` decorator. It has a list of `allowed` block IDs and a list of `disallowed` block IDs. It can also offset the location to check." }, { "group": "1.18", "version": "21w38a", "tags": [ "worldgen" ], "content": "Renamed block state providers `noise_2d_provider` \u2192 `noise_provider`, `dual_noise_2d_provider` \u2192 `dual_noise_provider`, and `noise_2d_cutoff_provider` \u2192 `noise_threshold_provider`." }, { "group": "1.18", "version": "21w38a", "tags": [ "worldgen" ], "content": "Removed carver field `aquifers_enabled`." }, { "group": "1.18", "version": "21w43a", "tags": [ "storage" ], "content": "Changed chunk storage. Removed the `Level` field and moved everything it contained up. Renamed fields:\n* `Entities` \u2192 `entities`\n* `TileEntities` \u2192 `block_entities`\n* `TileTicks` and `ToBeTicked` \u2192 `block_ticks`\n* `LiquidTicks` and `LiquidsToBeTicked` \u2192 `fluid_ticks`\n* `Sections` \u2192 `sections`\n* `Structures` \u2192 `structures`\n* `Structures.Starts` \u2192 `structures.starts`\n\nAdded fields:\n* `yPos` the minimum Y position in the chunk.\n* `below_zero_retrogen` containing data to support below Y=0 generation.\n* `blending_data` containing data to support world blending." }, { "group": "1.18", "version": "21w43a", "tags": [ "worldgen" ], "content": "Changed noise settings. Added field `noise.terrain_shaper`, defining the terrain shape using nested splines. It has 3 spline fields `offset`, `factor`, and `jaggedness`.\n\nSplines can either be constant numbers, or objects that define a spline. They have 2 fields:\n* `coordinate` a string defining what noise to use, one of `continents`, `erosion`, `weirdness`, or `ridges`\n* `points` an array of objects with a number field `location`, number `derivative`, and a nested spline `value`." }, { "group": "1.18", "version": "1.18-pre2", "tags": [ "worldgen" ], "content": "Removed biome field `player_spawn_friendly`." }, { "group": "1.18", "version": "1.18-pre3", "tags": [ "worldgen" ], "content": "Changed configured feature `glow_lichen`. The `can_be_placed_on` field is now a list of block IDs instead of a list of block states." }, { "group": "1.18", "version": "1.18-pre5", "tags": [ "worldgen" ], "content": "Added block predicate `has_sturdy_face` with fields `offset` and `direction`." }, { "group": "1.18", "version": "1.18-pre5", "tags": [ "worldgen" ], "content": "Added block predicate `matching_block_tag` with fields `offset` and `tag`." }, { "group": "1.18", "version": "1.18-pre5", "tags": [ "tag", "data" ], "content": "Added block tags `terracotta`, `replacable_plants`, `azalea_grows_on`, and `azalea_root_replaceable`." }, { "group": "1.18", "version": "1.18-pre5", "tags": [ "tag", "data" ], "content": "Added item tags `dirt` and `terracotta`." }, { "group": "1.18", "version": "1.18-pre5", "tags": [ "worldgen" ], "content": "Changed configured feature `random_boolean_selector`. The `feature_false` and `feature_true` are now placed features instead of configured features." }, { "group": "1.18", "version": "1.18-pre5", "tags": [ "worldgen" ], "content": "Changed configured feature `vegetation_patch` and `waterlogged_vegetation_patch`. The `vegetation_feature` field is now a placed feature instead of a configured feature." }, { "group": "1.20.5", "version": "24w03b", "tags": [ "particle" ], "content": "Removed particle type `gust_dust`." }, { "group": "1.20.5", "version": "1.20.5-pre3", "tags": [ "pack", "breaking", "obsolete" ], "content": "Data pack format has been increased to 41." }, { "group": "1.20.5", "version": "1.20.5-pre3", "tags": [ "data", "tag" ], "content": "Replaced entity type tag `punchable_projectiles` with `redirectable_projectile` for projectiles which can be redirected by player attacks and projectiles." }, { "group": "1.20.5", "version": "24w13a", "tags": [ "pack", "breaking", "obsolete" ], "content": "Data pack format has been increased to 37." }, { "group": "1.20.5", "version": "24w13a", "tags": [ "pack", "breaking", "obsolete" ], "content": "Resource pack format has been increased to 31." }, { "group": "1.20.5", "version": "24w13a", "tags": [ "network" ], "content": "The `chat_command_signed` packet has been split from `chat_command`." }, { "group": "1.20.5", "version": "24w13a", "tags": [ "network" ], "content": "The server can now clear chat state by sending a `reset_chat` packet in configuration phase." }, { "group": "1.20.5", "version": "24w13a", "tags": [ "loot" ], "content": "Added loot table type `equipment`. It has required parameters `this_entity`, and `origin`." }, { "group": "1.20.5", "version": "24w13a", "tags": [ "block", "nbt" ], "content": "Changed spawn data NBT, used in `SpawnPotentials` and `spawn_potentials`. Added an optional field `equipment_loot_table`." }, { "group": "1.20.5", "version": "24w13a", "tags": [ "block", "nbt", "component" ], "content": "Non-default components on item stacks are now copied to block entities when placed in a field `components`. Note that breaking the block does not automatically copy the components to the drops." }, { "group": "1.20.5", "version": "24w13a", "tags": [ "item", "component" ], "content": "Added component `item_name`, which is a stringified text component." }, { "group": "1.20.5", "version": "24w13a", "tags": [ "item", "component" ], "content": "Added component `ominous_bottle_amplifier`, which is an integer between 0 and 4." }, { "group": "1.20.5", "version": "24w13a", "tags": [ "loot", "item-modifier", "breaking" ], "content": "Replaced field `components` with two fields: `include` and `exclude`, both optional lists of component types." }, { "group": "1.20.5", "version": "24w13a", "tags": [ "loot", "item-modifier" ], "content": "Changed function `set_name`. Added optional field `target`, which can be one of `custom_name` or `item_name`." }, { "group": "1.20.5", "version": "24w13a", "tags": [ "loot", "item-modifier" ], "content": "Added function `set_ominous_bottle_amplifier`. It has a field `amplifier`, which is a number provider that will set the `ominous_bottle_amplifier` component." }, { "group": "1.20.5", "version": "24w13a", "tags": [ "predicate", "advancement", "loot" ], "content": "Added entity sub predicate `raider`. It has two optional boolean fields: `has_raid`, and `is_captain`." }, { "group": "1.20.5", "version": "24w13a", "tags": [ "particle" ], "content": "Added particle types `infested`, `item_cobweb`, `small_gust`, `raid_omen`, `trial_omen`, `trial_spawner_detection_ominous`, and `ominous_spawning`." }, { "group": "1.20.5", "version": "24w13a", "tags": [ "worldgen", "breaking" ], "content": "Int and float providers no longer wrap fields in an extra `value` object." }, { "group": "1.20.5", "version": "24w13a", "tags": [ "data", "tag" ], "content": "Added damage type tag `is_player_attack`, for attacks performed by a player." }, { "group": "1.20.5", "version": "24w13a", "tags": [ "data", "tag" ], "content": "Added entity type tags `immune_to_oozing`, and `immune_to_infested`." }, { "group": "1.20.5", "version": "24w03a", "tags": [ "pack", "breaking", "obsolete" ], "content": "Data pack format has been increased to 28." }, { "group": "1.20.5", "version": "24w03a", "tags": [ "pack", "breaking", "obsolete" ], "content": "Resource pack format has been increased to 24." }, { "group": "1.20.5", "version": "24w03a", "tags": [ "command", "gamerule" ], "content": "Added game rule `spawnChunkRadius` which controls the size of the spawn chunks. It allows values between `0` and `32`, with a default of `2`. Setting it to `0` completely disables spawn chunks." }, { "group": "1.20.5", "version": "24w03a", "tags": [ "enchantment", "nbt", "breaking" ], "content": "Renamed enchantment `sweeping` \u2192 `sweeping_edge`." }, { "group": "1.20.5", "version": "24w03a", "tags": [ "advancement" ], "content": "Added advancement triggers `any_block_use` and `default_block_use`." }, { "group": "1.20.5", "version": "24w03a", "tags": [ "attribute" ], "content": "Renamed attributes `generic.block_interaction_range` \u2192 `player.block_interaction_range` and `generic.entity_interaction_range` \u2192 `player.entity_interaction_range`." }, { "group": "1.20.5", "version": "24w03a", "tags": [ "entity", "nbt" ], "content": "Custom Villager trades can be configured to accept items that have different tags from the expected item by adding `ignoreTags:1b`." }, { "group": "1.20.5", "version": "24w03a", "tags": [ "data", "tag" ], "content": "Removed entity type tag `deflects_arrows` and `deflects_tridents`. Added entity type tag `deflects_projectiles`." }, { "group": "1.20.5", "version": "24w03a", "tags": [ "data", "tag" ], "content": "Added entity type tags `aquatic`, `arthropod`, `ignores_poison_and_regen`, `illager`, `illager_friends`, `inverted_healing_and_harm`, `not_scary_for_pufferfish`, `sensitive_to_bane_of_arthropods`, `sensitive_to_impaling`, and `wither_friends`." }, { "group": "1.20.5", "version": "24w03a", "tags": [ "data", "tag" ], "content": "Added item tags `chest_armor`, `foot_armor`, `head_armor`, `leg_armor`, and `skulls`." }, { "group": "1.20.5", "version": "24w03a", "tags": [ "data", "tag" ], "content": "Added item tags `enchantable/armor`, `enchantable/bow`, `enchantable/chest_armor`, `enchantable/crossbow`, `enchantable/durability`, `enchantable/equippable`, `enchantable/fishing`, `enchantable/foot_armor`, `enchantable/head_armor`, `enchantable/leg_armor`, `enchantable/mining`, `enchantable/mining_loot`, `enchantable/sword`, `enchantable/trident`, `enchantable/vanishing`, and `enchantable/weapon`." }, { "group": "1.20.5", "version": "24w03a", "tags": [ "assets", "font", "breaking" ], "content": "Changed the `ttf` font provider to have more reasonable defaults." }, { "group": "1.20.5", "version": "24w03a", "tags": [ "network" ], "content": "Added transfer and cookie packets." }, { "group": "1.20.5", "version": "1.20.5-rc1", "tags": [ "network" ], "content": "To ease the transition period, modded servers can now opt-out of the client disconnecting on invalid data by setting the appropriate field in the `handshake/game_profile` packet." }, { "group": "1.20.5", "version": "1.20.5-pre1", "tags": [ "pack", "breaking", "obsolete" ], "content": "Data pack format has been increased to 39." }, { "group": "1.20.5", "version": "1.20.5-pre1", "tags": [ "assets", "lang" ], "content": "Added new language Viossa. It has code `vp_vl`." }, { "group": "1.20.5", "version": "1.20.5-pre1", "tags": [ "command", "breaking" ], "content": "Changed the `/particle` command syntax for particles with extra options:\n* `block redstone_lamp[lit=true]` \u2192 `block{block_state:{Name:\"redstone_lamp\",Properties:{lit:\"true\"}}}` (also for `block_marker`, `falling_dust`, and `dust_pillar`)\n* `dust 0.1 0.2 0.3 0.4` \u2192 `dust{color:[0.1,0.2,0.3],scale:0.4}`\n* `dust_color_transition 0.1 0.2 0.3 0.4 0.5 0.6 0.7` \u2192 `dust_color_transition{from_color:[0.1,0.2,0.3],scale:0.4,to_color:[0.5,0.6,0.7]}`\n* `entity_effect` \u2192 `entity_effect{color:[0.1,0.2,0.3,0.4]}`\n* `item diamond` \u2192 `item{item:\"diamond\"}`\n* `sculk_charge 0.1` \u2192 `sculk_charge{roll:0.1}`\n* `shriek 1` \u2192 `shriek{delay:1}`\n* `vibration 0.1 0.2 0.3 4` \u2192 `vibration{destination:{type:\"block\",pos:[0.1,0.2,0.3]},arrival_in_ticks:4}`" }, { "group": "1.20.5", "version": "1.20.5-pre1", "tags": [ "entity", "nbt", "breaking" ], "content": "Changed the `Particle` field of area effect clouds to match worldgen and command format. For example `{Particle:{type:\"block\",block_state:\"diamond_block\"}}`." }, { "group": "1.20.5", "version": "1.20.5-pre1", "tags": [ "block", "nbt" ], "content": "Removed spawn data field `equipment_loot_table`, and replaced it with `equipment`, which has fields `loot_table` (same as the old field), and `slot_drop_chances` (optional list of floats, or single float)." }, { "group": "1.20.5", "version": "1.20.5-pre1", "tags": [ "item", "component" ], "content": "The combination of `max_stack_size` and `max_damage` is no longer allowed." }, { "group": "1.20.5", "version": "1.20.5-pre1", "tags": [ "item", "component" ], "content": "The page limit in written books has been removed. Note that the 100 page limit still exists for writable books and in survival." }, { "group": "1.20.5", "version": "1.20.5-pre1", "tags": [ "item", "component", "breaking" ], "content": "Changed the `food` component. Replaced field `saturation_modifier` \u2192 `saturation`, which is now defines as `nutrition * saturation_modifier * 2`." }, { "group": "1.20.5", "version": "1.20.5-pre1", "tags": [ "loot", "item-modifier", "breaking" ], "content": "Changed the `set_contents` function. Removed field `type` and added field `component`, which can be one of `container`, `bundle_contents`, or `charged_projectiles`." }, { "group": "1.20.5", "version": "1.20.5-pre1", "tags": [ "loot", "item-modifier" ], "content": "Changed the `set_custom_data` function. The `tag` field now also allows unflattened objects." }, { "group": "1.20.5", "version": "1.20.5-pre1", "tags": [ "loot", "item-modifier" ], "content": "Added function `modify_contents`, which applies an item modifier to items inside a component. It has fields `component` (one of `container`, `bundle_contents`, or `charged_projectiles`), and `modifier` (loot function or list)." }, { "group": "1.20.5", "version": "1.20.5-pre1", "tags": [ "loot", "item-modifier" ], "content": "Added function `set_item`. It has a single field `item`, which is a resource location." }, { "group": "1.20.5", "version": "1.20.5-pre1", "tags": [ "loot", "item-modifier" ], "content": "Added function `filtered`, which applies an item modifier only when the current item matches an item predicate. It has fields `item_filter` (item predicate), and `modifier` (loot function or list)." }, { "group": "1.20.5", "version": "1.20.5-pre1", "tags": [ "loot", "item-modifier" ], "content": "Added function `set_custom_model_data`. It has a single field `value`, which is a number provider." }, { "group": "1.20.5", "version": "1.20.5-pre1", "tags": [ "predicate", "advancement", "loot" ], "content": "Added new field `body` in `equipment` entity sub predicate." }, { "group": "1.20.5", "version": "1.20.5-pre1", "tags": [ "predicate", "advancement", "loot" ], "content": "Added collection matchers, which are used in predicates. It is an object with optional fields: `size` (int bounds), `contains` (list of element predicates), and `count` (object with fields `test` and `count`)." }, { "group": "1.20.5", "version": "1.20.5-pre1", "tags": [ "predicate", "advancement", "loot" ], "content": "Added item sub predicate `container`. It has a single optional field `items`, which is a collection matcher of item predicates. Empty slots will be ignored." }, { "group": "1.20.5", "version": "1.20.5-pre1", "tags": [ "predicate", "advancement", "loot" ], "content": "Added item sub predicate `bundle_contents`. It has a single optional field `items`, which is a collection matcher of item predicates." }, { "group": "1.20.5", "version": "1.20.5-pre1", "tags": [ "predicate", "advancement", "loot" ], "content": "Added item sub predicate `firework_explosion`. It has optional fields `shape` (string), `has_trail` (boolean), and `has_twinkle` (boolean)." }, { "group": "1.20.5", "version": "1.20.5-pre1", "tags": [ "predicate", "advancement", "loot" ], "content": "Added item sub predicate `fireworks`. It has optional fields `explosions` (collection matcher of firework explosions), and `flight_duration`." }, { "group": "1.20.5", "version": "1.20.5-pre1", "tags": [ "predicate", "advancement", "loot" ], "content": "Added item sub predicate `writable_book_content`. It has a single optional field `pages`, which is a collection matcher of strings." }, { "group": "1.20.5", "version": "1.20.5-pre1", "tags": [ "predicate", "advancement", "loot" ], "content": "Added item sub predicate `written_book_content`. It has a optional fields `pages` (collection matcher of text components), `author` (string), `title` (string), `generation` (int bounds), and `resolved` (boolean)." }, { "group": "1.20.5", "version": "1.20.5-pre1", "tags": [ "predicate", "advancement", "loot" ], "content": "Added item sub predicate `attribute_modifiers`. It has a single optional field `modifiers`, which is a collection matcher of modifier predicates." }, { "group": "1.20.5", "version": "1.20.5-pre1", "tags": [ "predicate", "advancement", "loot" ], "content": "Added item sub predicate `trim`. It has optional fields `material` and `pattern`, both an entry, list of entries, or tag." }, { "group": "1.20.5", "version": "1.20.5-pre1", "tags": [ "worldgen", "structure" ], "content": "Added new terrain adaptation `encapsulate`." }, { "group": "1.20.5", "version": "1.20.5-pre1", "tags": [ "data", "tag", "breaking" ], "content": "Removed item tag `tools`." }, { "group": "1.20.5", "version": "1.20.5-pre1", "tags": [ "data", "tag" ], "content": "Added entity type tag `punchable_projectiles`, for projectiles that the player can deflect." }, { "group": "1.20.5", "version": "1.20.5-pre1", "tags": [ "data", "tag" ], "content": "Added enchantment tag `tooltip_order` controlling the order of enchantments in item tooltips." }, { "group": "1.20.5", "version": "24w11a", "tags": [ "pack", "breaking", "obsolete" ], "content": "Data pack format has been increased to 35." }, { "group": "1.20.5", "version": "24w11a", "tags": [ "pack", "breaking", "obsolete" ], "content": "Resource pack format has been increased to 29." }, { "group": "1.20.5", "version": "24w11a", "tags": [ "predicate", "advancement", "loot" ], "content": "Removed the `any` entity sub predicate in `type_specific`." }, { "group": "1.20.5", "version": "24w11a", "tags": [ "command", "predicate" ], "content": "Added slot name `contents` for entities like items, item frames, and item displays." }, { "group": "1.20.5", "version": "24w11a", "tags": [ "predicate", "advancement", "loot", "breaking" ], "content": "Changed item predicates. Replaced some fields with item sub predicates, which is a map in field `predicates`:\n* `durability` \u2192 `damage` sub predicate, with two fields: `damage` and `durability`\n* `enchantments` \u2192 `enchantments` sub predicate\n* `stored_enchantments` \u2192 `stored_enchantments` sub predicate\n* `potions` \u2192 `potion_contents` sub predicate\n* `custom_data` \u2192 `custom_data` sub predicate" }, { "group": "1.20.5", "version": "24w11a", "tags": [ "loot", "item-modifier" ], "content": "Added function `set_fireworks`, which has fields `flight_duration` (optional int), and `explosions` (optional list of explosions), and `mode` (list operation)." }, { "group": "1.20.5", "version": "24w11a", "tags": [ "loot", "item-modifier" ], "content": "Added function `set_firework_explosion`, which has optional fields `shape` (string), `colors` (list of integers), `fade_colors` (list of integers), `trail` (boolean), and `twinkle` (boolean)." }, { "group": "1.20.5", "version": "24w11a", "tags": [ "loot", "item-modifier" ], "content": "Added function `set_book_cover`, which has optional fields `title` (filterable string), `author` (string), `generation` (integer)." }, { "group": "1.20.5", "version": "24w11a", "tags": [ "loot", "item-modifier" ], "content": "Added function `set_writable_book_pages`, which has fields `page` (list of filterable strings), and `mode` (list operation)." }, { "group": "1.20.5", "version": "24w11a", "tags": [ "loot", "item-modifier" ], "content": "Added function `set_written_book_pages`, which has fields `page` (list of filterable strings containing text components), and `mode` (list operation)." }, { "group": "1.20.5", "version": "24w11a", "tags": [ "loot", "item-modifier" ], "content": "Added list operations, which are used in some loot functions. They have a field `mode`:\n* `append`: no additional fields\n* `insert`: with optional field `offset` (integer)\n* `replace_all`: no additional fields\n* `replace_section`: with optional fields `offset` (integer) and `size` (integer)" }, { "group": "1.20.5", "version": "24w11a", "tags": [ "assets", "shader", "breaking" ], "content": "Renamed post processing shader `blur` \u2192 `box_blur`. Added new `entity_outline_box_blur` shader." }, { "group": "1.20.5", "version": "24w11a", "tags": [ "assets", "shader" ], "content": "Changed post processing passes. Added optional field `use_linear_filter` (boolean). When set to `true`, switches texture sampling mode from nearest-neighbor sampling to linear interpolation for that pass." }, { "group": "1.20.5", "version": "24w10a", "tags": [ "pack", "breaking", "obsolete" ], "content": "Data pack format has been increased to 34." }, { "group": "1.20.5", "version": "24w10a", "tags": [ "recipe" ], "content": "Changed recipe types `crafting_shaped`, `crafting_shapeless`, `stonecutting`, and `smithing_transform`. They now accept a `components` field in the `result` item stack, which is a component patch map." }, { "group": "1.20.5", "version": "24w10a", "tags": [ "recipe", "breaking" ], "content": "Changed recipe types `smelting`, `blasting`, `smoking`, and `campfire_cooking`. The `result` field is now an object with fields `id` (item resource location) and `components` (component patch map)." }, { "group": "1.20.5", "version": "24w10a", "tags": [ "predicate", "advancement", "loot" ], "content": "Changed entity predicates. Added field `slots`, which is a map of slot names to item predicates." }, { "group": "1.20.5", "version": "24w10a", "tags": [ "command", "predicate" ], "content": "Added slot names `player.cursor`, and `player.crafting.0` - `player.crafting.3`." }, { "group": "1.20.5", "version": "24w10a", "tags": [ "command", "predicate" ], "content": "Slot names in the `/item` command and in the `slots` field in entity predicates now also allow slot ranges. Possible slot ranges are: `container.*`, `hotbar.*`, `inventory.*`, `enderchest.*`, `villager.*`, `horse.*`, `weapon.*`, `armor.*`, `player.crafting.*`." }, { "group": "1.20.5", "version": "24w10a", "tags": [ "command" ], "content": "Added `/execute if items` command, with syntax:\n* `/execute if|unless items `" }, { "group": "1.20.5", "version": "24w10a", "tags": [ "banner" ], "content": "Added banner patterns, which are stored in the `banner_pattern` data pack folder. It has two fields: `asset_id` (namespaced string), and `translation_key` (string)." }, { "group": "1.20.5", "version": "24w10a", "tags": [ "item", "component" ], "content": "Changed the `profile` component. The `name` field is now optional. Added a shorthand: it can be defined as a string playername." }, { "group": "1.20.5", "version": "24w10a", "tags": [ "item", "component" ], "content": "Added some alternative shorthands to components:\n* `profile` can now also be a player name string\n* `dyed_color` can now also be an integer rgb\n* `attribute_modifiers` can now also be a list of modifiers\n* `potion_contents` can now also be a single potion string\n* `enchantments` and `stored_enchantments` can now also be a map of enchantment to level" }, { "group": "1.20.5", "version": "24w10a", "tags": [ "item", "component" ], "content": "All container blocks now use the `container` component in item form, not just shulker boxes." }, { "group": "1.20.5", "version": "24w10a", "tags": [ "item", "component" ], "content": "Renamed the component `lodestone_target` \u2192 `lodestone_tracker`. Changed its field, it now has a single field: `target`, which is an optional object containing `pos` and `dimension`." }, { "group": "1.20.5", "version": "24w10a", "tags": [ "item", "component" ], "content": "Changed the `lore` and `fireworks` components. The maximum number of lore and firework entries has been increased to 256." }, { "group": "1.20.5", "version": "24w10a", "tags": [ "variant" ], "content": "Added wolf variants, which are stored in the `wolf_variant` data pack folder. It has fields `biomes` (list of biomes or tag), `texture`, `tame_texture`, and `angry_texture` (resource locations ending with `.png`)." }, { "group": "1.20.5", "version": "24w12a", "tags": [ "pack", "breaking", "obsolete" ], "content": "Data pack format has been increased to 36." }, { "group": "1.20.5", "version": "24w12a", "tags": [ "pack", "breaking", "obsolete" ], "content": "Resource pack format has been increased to 30." }, { "group": "1.20.5", "version": "24w12a", "tags": [ "advancement" ], "content": "Added trigger `crafter_recipe_crafted`, which has conditions `recipe_id` (resource location), and `ingredients` (list of item predicates)." }, { "group": "1.20.5", "version": "24w12a", "tags": [ "advancement" ], "content": "Added trigger `fall_after_explosion`, which has conditions `start_position` (location predicate), `distance` (distance predicate), and `cause` (entity predicate)." }, { "group": "1.20.5", "version": "24w12a", "tags": [ "loot", "item-modifier" ], "content": "Added number provider `storage`. It has fields `storage` (resource location), and `path` (nbt path)." }, { "group": "1.20.5", "version": "24w12a", "tags": [ "loot", "item-modifier", "breaking" ], "content": "Changed function `set_lore`. Replaced the field `replace` with `mode`, which is a list operation." }, { "group": "1.20.5", "version": "24w12a", "tags": [ "loot", "item-modifier" ], "content": "Changed function `set_written_book_pages`. The `pages` field now contains filterable text components, without being stringified." }, { "group": "1.20.5", "version": "24w12a", "tags": [ "loot", "item-modifier" ], "content": "Added function `toggle_tooltips`. It has a field `toggles`, which is an object with optional boolean fields: `trim`, `dyed_color`, `enchantments`, `stored_enchantments`, `unbreakable`, `can_break`, `can_place_on`, and `attribute_modifiers`." }, { "group": "1.20.5", "version": "24w12a", "tags": [ "loot", "item-modifier", "breaking" ], "content": "Nested lists are no longer supported in loot function lists." }, { "group": "1.20.5", "version": "24w12a", "tags": [ "command" ], "content": "Expanded the item predicate syntax, used in `/execute if items` and `/clear`:\n* `*` can be used to match any item\n* `[damage]` can be used to check if a component exists\n* `[predicate~value]` can be used to check item sub predicates (not available for all components)\n* `[count=4]` is a special case for matching the item stack count\n* `[!count=1]`, `[!damage]` any entry can be negated by prepending a `!`\n* `[!damage|damage=0]` tests can be joined with `|` to match alternatives\n* removed the special behavior for custom data: `item{a:2}` \u2192 `item[custom_data~{a:2}]`" }, { "group": "1.20.5", "version": "24w12a", "tags": [ "predicate", "advancement", "loot" ], "content": "The `custom_data` item sub predicate now accepts both an unflattened object and a stringified tag." }, { "group": "1.20.5", "version": "24w12a", "tags": [ "predicate", "advancement", "loot" ], "content": "Added a `wolf` entity sub predicate. It has a single field `variant`, which allows a single entry, list of entries, or tag." }, { "group": "1.20.5", "version": "24w12a", "tags": [ "predicate", "advancement", "loot" ], "content": "Changed the `cat`, `frog`, and `painting` predicates. Their `variant` fied now allows a single entry, list of entries, or tag." }, { "group": "1.20.5", "version": "24w12a", "tags": [ "item", "component" ], "content": "Added component `food`, which makes the item consumable. It has fields `nutrition` (integer), `saturation_modifier` (float), `can_always_eat` (optional boolean), `eat_seconds` (optional float), and `effects` (optional list of effects)." }, { "group": "1.20.5", "version": "24w12a", "tags": [ "item", "component" ], "content": "Added component `max_stack_size`, which is an integer between 1 and 99." }, { "group": "1.20.5", "version": "24w12a", "tags": [ "item", "component" ], "content": "Added component `max_damage`, which is a positive integer. If not present, the item cannot be damaged." }, { "group": "1.20.5", "version": "24w12a", "tags": [ "item", "component" ], "content": "Added component `fire_resistant`, which accepts an empty object." }, { "group": "1.20.5", "version": "24w12a", "tags": [ "item", "component" ], "content": "Added component `rarity`, which determines the color of the item name. It can be one of `common`, `uncommon`, `rare`, or `epic`." }, { "group": "1.20.5", "version": "24w12a", "tags": [ "item", "component" ], "content": "Added component `tool`. It has fields `default_mining_speed` (optional float), `damage_per_block` (optional integer), and `rules`. Rules is an object with fields `blocks` (entries or block tag), `speed` (optional float), and `correct_for_drops` (optional boolean)." }, { "group": "1.20.5", "version": "24w12a", "tags": [ "item", "component" ], "content": "Added component `hide_tooltip`, which accepts an empty object. When present, completely hides the tooltip when hovered over." }, { "group": "1.20.5", "version": "24w12a", "tags": [ "data", "tag" ], "content": "Added block tags `incorrect_for_wooden_tool`, `incorrect_for_gold_tool`, `incorrect_for_stone_tool`, `incorrect_for_iron_tool`, `incorrect_for_diamond_tool`, and `incorrect_for_netherite_tool`. They combine the existing `needs_*_tool` tags for each tier." }, { "group": "1.20.5", "version": "24w12a", "tags": [ "data", "tag" ], "content": "Added entity type tag `sensitive_to_smite`." }, { "group": "1.20.5", "version": "24w12a", "tags": [ "data", "tag" ], "content": "Added item tags `meat`, `piglin_food`, `fox_food`, `cow_food`, `goat_food`, `sheep_food`, `wolf_food`, `cat_food`, `horse_food`, `horse_tempt_items`, `camel_food`, `armadillo_food`, `bee_food`, `chicken_food`, `frog_food`, `hoglin_food`, `llama_food`, `llama_tempt_items`, `ocelot_food`, `panda_food`, `pig_food`, `rabbit_food`, `strider_food`, `strider_tempt_items`, `turtle_food`, `parrot_food`, `parrot_poisonous_food`." }, { "group": "1.20.5", "version": "24w12a", "tags": [ "data", "tag" ], "content": "Renamed item tag `axolotl_tempt_items` \u2192 `axolotl_food`." }, { "group": "1.20.5", "version": "24w12a", "tags": [ "assets", "texture", "breaking" ], "content": "Map decoration icons have been split from `map_icons.png` to use an atlas loaded from `textures/map/decorations`. Added the `trial_chambers` map decoration." }, { "group": "1.20.5", "version": "24w05a", "tags": [ "pack", "breaking", "obsolete" ], "content": "Data pack format has been increased to 30." }, { "group": "1.20.5", "version": "24w05a", "tags": [ "pack", "breaking", "obsolete" ], "content": "Resource pack format has been increased to 25." }, { "group": "1.20.5", "version": "24w05a", "tags": [ "data", "tag" ], "content": "Added entity type tag `no_anger_from_wind_charge`." }, { "group": "1.20.5", "version": "24w05a", "tags": [ "data", "tag" ], "content": "Added item tag `dyeable`." }, { "group": "1.20.5", "version": "24w05a", "tags": [ "particle" ], "content": "Added particle type `vault_connection`." }, { "group": "1.20.5", "version": "24w05a", "tags": [ "storage", "options" ], "content": "Added a third possible value for the `region-file-compression` option in `server.properties`: `none`." }, { "group": "1.20.5", "version": "24w04a", "tags": [ "pack", "breaking", "obsolete" ], "content": "Data pack format has been increased to 29." }, { "group": "1.20.5", "version": "24w04a", "tags": [ "command" ], "content": "Added the `/transfer` command to transfer players to another server. It has syntax `/transfer [] []`." }, { "group": "1.20.5", "version": "24w04a", "tags": [ "storage", "options" ], "content": "The chunk compression mode can be configured with the `region-file-compression` option in `server.properties`. Possible values: `deflate` (default) and `lz4`." }, { "group": "1.20.5", "version": "24w04a", "tags": [ "storage" ], "content": "Added startup flag `recreateRegionFiles`, which will optimize and rewrite all the region files." }, { "group": "1.20.5", "version": "24w09a", "tags": [ "pack", "breaking", "obsolete" ], "content": "Data pack format has been increased to 33." }, { "group": "1.20.5", "version": "24w09a", "tags": [ "pack", "breaking", "obsolete" ], "content": "Resource pack format has been increased to 28 (skipping 27)." }, { "group": "1.20.5", "version": "24w09a", "tags": [ "item", "command", "nbt", "component", "breaking" ], "content": "Unstructured NBT tags on items tags (`tag` field) has been replaced with structured components. This impacts `/give`, `/clear`, and commands using item NBT. For example: `iron_axe{Damage:10,foo:\"bar\"}` \u2192 `iron_axe[minecraft:damage=10]{foo:\"bar\"}`.\n* `Damage:12` \u2192 `damage=12`\n* `RepairCost:12` \u2192 `repair_cost=12`\n* `Unbreakable:1b` \u2192 `unbreakable={}`\n* `Enchantments:[{id:\"sharpness\",lvl:2}]` \u2192 `enchantments={levels:{sharpness:2}}`\n* `StoredEnchantments` \u2192 `stored_enchantments`\n* `display:{Name:'\"hello\"'}` \u2192 `custom_name='\"hello\"'`\n* `display:{Lore:['\"hello\"']}` \u2192 `lore=['\"hello\"']`\n* `CanDestroy:[\"stone\"]` \u2192 `can_break={blocks:\"stone\"}`\n* `CanPlaceOn:[\"stone\"]` \u2192 `can_place_on={blocks:\"stone\"}`\n* `display:{color:16711680}` \u2192 `dyed_color={rgb:16711680}`\n* `AttributeModifiers:[]` \u2192 `attribute_modifiers={modifiers=[]}`\n* `Charged:1b,ChargedProjectiles:[{id:\"arrow\"}]` \u2192 `charged_projectiles=[{id:\"arrow\"}]`\n* `Items:[]` (bundle) \u2192 `bundle_contents=[]`\n* `display:{MapColor:16711680}` \u2192 `map_color=16711680`\n* `Decorations:[]` (filled map) \u2192 `map_decorations={}`\n* `map:1` \u2192 `map=1`\n* `CustomModelData` \u2192 `custom_model_data`\n* `Potion:\"invisibility\",CustomPotionColor:16711680,custom_potion_effects:[]` \u2192 `potion_contents={potion:\"invisibility\",custom_color:16711680,custom_effects:[]}`\n* `pages:[\"hello\"]` (book and quill) \u2192 `writable_book_content={pages:[\"hello\"]}`\n* `pages:['\"hello\"'],title:\"Title\",author:\"Misode\",generation:1,resolved:1b` (written book) \u2192 `written_book_content={pages:['\"hello\"'],title:\"Title\",author:\"Misode\",generation:1,resolved:true}`\n* `Trim={...}` \u2192 `trim={...}`\n* `effects:[]` (suspicious stew) \u2192 `suspicious_stew=[]`\n* `HideFlags` \u2192 split to the different components as well as `hide_additional_tooltip` component\n* `DebugProperty` \u2192 `debug_stick_state`\n* `EntityTag:{...}` \u2192 `entity_data={...}`\n* bucketed mobs data \u2192 `bucket_entity_data={...}`\n* `instrument:\"ponder_goat_horn\"` \u2192 `instrument=\"ponder_goat_horn\"`\n* `Recipes:[]` (knowledge book) \u2192 `recipes=[]`\n* `LodestonePos`, `LodestoneDimension`, and `LodestoneTracked` \u2192 `lodestone_target={pos:[13,64,-43],dimension:\"the_nether\"}`\n* `Explosion` (firework star) \u2192 `firework_exlosion={}`\n* `Fireworks:{Explosions:[],Flight:1}` (firework rocket) \u2192 `fireworks={explosions:[],flight_duration:1}`\n* `SkullOwner:{Name:\"Steve\"}` \u2192 `profile={name:\"Steve\"}`\n* `BlockEntityTag:{note_block_sound:\"ambient.cave\"}` \u2192 `note_block_sound=\"ambient.cave\"`\n* `BlockEntityTag:{Base:2}` \u2192 `base_color=\"magenta\"`\n* `BlockEntityTag:{Patterns:[]}` \u2192 `banner_patterns=[]`\n* `BlockEntityTag:{sherds:[]}` \u2192 `pot_decorations=[]`\n* `BlockEntityTag:{Items:[]}` (shulker box) \u2192 `container=[]`\n* `BlockEntityTag:{Bees:[]}` \u2192 `bees=[]`\n* `BlockEntityTag:{Lock:\"test\"}` \u2192 `lock=\"test\"`\n* `BlockEntityTag:{LootTable:\"foo\",LootTableSeed:123}` \u2192 `container_loot={loot_table:\"foo\",seed:123}`\n* `BlockEntityTag:{...}` \u2192 `block_entity_data={...}`\n* `BlockStateTag:{...}` \u2192 `block_state={...}`" }, { "group": "1.20.5", "version": "24w09a", "tags": [ "item", "nbt", "component" ], "content": "Added data component `enchantment_glint_override` (boolean), which can be used to add or remove the enchantment glint." }, { "group": "1.20.5", "version": "24w09a", "tags": [ "item", "nbt", "breaking" ], "content": "The format of serialized item stacks has been changed to support components:\n* Renamed `Count` \u2192 `count`. The count now defaults to 1 and will not be present in that case.\n* Removed `tag` and replaced with `components` which is a key-value map." }, { "group": "1.20.5", "version": "24w09a", "tags": [ "nbt", "breaking" ], "content": "Removed the `ignoreTags` field on villager trades. Instead trades can now list item component predicates." }, { "group": "1.20.5", "version": "24w09a", "tags": [ "entity", "nbt", "breaking" ], "content": "Tipped arrows no longer store their effects in `Potion` or `custom_potion_effects`. Instead this information is fetched from the `item` tag." }, { "group": "1.20.5", "version": "24w09a", "tags": [ "entity", "nbt", "breaking" ], "content": "Renamed area effect cloud fields to match the `potion_contents` component:\n* `Potion` \u2192 `potion_contents.potion`\n* `Color` \u2192 `potion_contents.custom_color`\n* `effects` \u2192 `potion_contents.custom_effects`" }, { "group": "1.20.5", "version": "24w09a", "tags": [ "block", "nbt", "breaking" ], "content": "Changed banner block entity fields to match the `banner_patterns` component:\n* `Patterns[].Pattern` (short string) \u2192 `patterns[].pattern` (namespaced ID)\n* `Patterns[].Color` (integer) \u2192 `patterns[].color` (dye string)" }, { "group": "1.20.5", "version": "24w09a", "tags": [ "block", "nbt", "breaking" ], "content": "Changed beehive block entity fields to match the `bees` component:\n* `Bees[].EntityData` \u2192 `bees[].entity_data`\n* `Bees[].TicksInHive` \u2192 `bees[].ticks_in_hive`\n* `Bees[].MinOccupationTicks` \u2192 `bees[].min_ticks_in_hive`\n* `FlowerPos` \u2192 `flower_pos`" }, { "group": "1.20.5", "version": "24w09a", "tags": [ "loot", "breaking" ], "content": "Changed loot table entry `loot_table`. The `name` field has been replaced with `value` and it now also allows inline loot tables." }, { "group": "1.20.5", "version": "24w09a", "tags": [ "loot", "advancement", "predicate", "breaking" ], "content": "Changed item predicates:\n* Removed the `tag` field. Instead `items` now also supports a single entry, and a hash-prefixed item tag\n* Renamed `potion` \u2192 `potions`, supporting a single entry, hash-prefixed potion tag\n* Renamed `nbt` \u2192 `custom_data`\n* Added optional field `components`, which matches exact components" }, { "group": "1.20.5", "version": "24w09a", "tags": [ "loot", "advancement", "predicate", "breaking" ], "content": "Changed block predicates:\n* Removed the `tag` field. Instead `blocks` now also supports a single entry, and a hash-prefixed block tag" }, { "group": "1.20.5", "version": "24w09a", "tags": [ "loot", "advancement", "predicate", "breaking" ], "content": "Changed fluid predicates:\n* Renamed `fluid` \u2192 `fluids`, and now also supports a single entry, and a hash-prefixed fluid tag" }, { "group": "1.20.5", "version": "24w09a", "tags": [ "loot", "advancement", "predicate" ], "content": "Changed entity predicates:\n* `type` now also supports a hash-prefixed entity type tag, and a list of entity types" }, { "group": "1.20.5", "version": "24w09a", "tags": [ "loot", "advancement", "predicate", "breaking" ], "content": "Changed location predicates:\n* Renamed `biome` \u2192 `biomes`, and now also supports a hash-prefixed biome tag, and a list of biomes\n* Renamed `structure` \u2192 `structures`, and now also supports a hash-prefixed structure tag, and a list of structures" }, { "group": "1.20.5", "version": "24w09a", "tags": [ "loot", "item-modifier" ], "content": "Added function `set_components` which can add, replace, or remove components. It has a single field `components` which is a map. Component keys can be prefixed with `!` to remove the component." }, { "group": "1.20.5", "version": "24w09a", "tags": [ "loot", "item-modifier" ], "content": "Added function `copy_components` which can copy components from a specified source. It has fields `source` (currently only `block_entity`) and `components` (list of component IDs)." }, { "group": "1.20.5", "version": "24w09a", "tags": [ "loot", "item-modifier", "breaking" ], "content": "Renamed function `set_nbt` \u2192 `set_custom_data` and `copy_nbt` \u2192 `copy_custom_data`. Vanilla data cannot be specified with this, instead use `set_components` and `copy_components`." }, { "group": "1.20.5", "version": "24w09a", "tags": [ "loot", "item-modifier", "breaking" ], "content": "Changed the `set_attributes` loot function. The `slot` field now also accepts `any`, `armor`, and `hand`. Renamed the operation options:\n* `addition` \u2192 `add_value`\n* `multiply_base` \u2192 `add_multiplied_base`\n* `multiply_total` \u2192 `add_multiplied_total`" }, { "group": "1.20.5", "version": "24w09a", "tags": [ "command", "breaking" ], "content": "Changed the `/attribute` command. Renamed the operation literals:\n* `add` \u2192 `add_value`\n* `multiply_base` \u2192 `add_multiplied_base`\n* `multiply` \u2192 `add_multiplied_total`" }, { "group": "1.20.5", "version": "24w09a", "tags": [ "command" ], "content": "Changed the `/playsound` command. The mixer (default `master`) and player (default `@s`) arguments are now optional." }, { "group": "1.20.5", "version": "24w09a", "tags": [ "item", "enchantment" ], "content": "Projectile weapon enchantments like `infinity`, `multishot` and `piercing` now work on both crossbows and bows, if placed onto the alternative weapon using data manipulation or a change to the `enchantable/*` tags." }, { "group": "1.20.5", "version": "24w09a", "tags": [ "jar", "data" ], "content": "Default item components are now exported to `reports/items.json` using the data generator." }, { "group": "1.20.5", "version": "24w09a", "tags": [ "data", "tag", "damage-type" ], "content": "Added damage type tag `bypasses_wolf_armor` for damage sources that can not be absorbed by wolf armor" }, { "group": "1.20.5", "version": "24w09a", "tags": [ "assets", "texture" ], "content": "Added textures to support the colored layer of wolf armor and the cracks: `entity/wolf/wolf_armor_overlay`, `item/wolf_armor_overlay`, `entity/wolf/wolf_armor_crackiness_low`, `entity/wolf/wolf_armor_crackiness_medium`, and `entity/wolf/wolf_armor_crackiness_high`." }, { "group": "1.20.5", "version": "24w09a", "tags": [ "assets", "texture" ], "content": "Removed the `options_background` and `light_dirt_background` textures. Instead `menu_background` and `menu_list_background` textures are used." }, { "group": "1.20.5", "version": "1.20.5-pre4", "tags": [ "pack", "breaking", "obsolete" ], "content": "Resource pack format has been increased to 32." }, { "group": "1.20.5", "version": "1.20.5-pre4", "tags": [ "assets", "font", "breaking" ], "content": "The `shift` field in `ttf` glyph providers is now restricted between -512 and 512." }, { "group": "1.20.5", "version": "24w14a", "tags": [ "pack", "breaking", "obsolete" ], "content": "Data pack format has been increased to 38." }, { "group": "1.20.5", "version": "24w14a", "tags": [ "jar" ], "content": "The game now requires Java 21 and a 64-bit operating system." }, { "group": "1.20.5", "version": "24w14a", "tags": [ "loot", "item-modifier" ], "content": "Changed function `set_attributes`. Added optional field `replace` (boolean), which defaults to `true`." }, { "group": "1.20.5", "version": "24w14a", "tags": [ "loot", "item-modifier", "component" ], "content": "The `text` field in filterable has been renamed to `raw` to avoid ambiguity. Note this is not the same `text` field in text components." }, { "group": "1.20.5", "version": "24w14a", "tags": [ "block", "item", "nbt", "component" ], "content": "The `profile` component and field on items and blocks now supports resolving by UUID, when the `id` field is specified, but `name` is not." }, { "group": "1.20.5", "version": "23w51a", "tags": [ "pack", "breaking", "obsolete" ], "content": "Data pack format has been increased to 27." }, { "group": "1.20.5", "version": "23w51a", "tags": [ "attribute" ], "content": "Added attributes `generic.block_interaction_range` and `generic.entity_interaction_range` for controlling the player's interaction range. Values can between `0` and `64`." }, { "group": "1.20.5", "version": "23w51a", "tags": [ "attribute" ], "content": "Added attribute `generic.scale` for controlling the entity scale. Values can be between `0.0625` and `16`, with a default of `1`." }, { "group": "1.20.5", "version": "23w51a", "tags": [ "attribute" ], "content": "Added attribute `generic.step_height`, which controls the maximum number of blocks that an entity can step up without jumping. Values can be between `0` and `10`, with a default of `0.6`." }, { "group": "1.20.5", "version": "23w51a", "tags": [ "damage-type" ], "content": "Added damage type `spit`, which llamas now use instead of `mob_projectile`." }, { "group": "1.20.5", "version": "23w51a", "tags": [ "damage-type" ], "content": "Added damage type `wind_charge`." }, { "group": "1.20.5", "version": "23w51a", "tags": [ "data", "tag", "damage-type" ], "content": "Added damage type tag `always_kills_armor_stands`" }, { "group": "1.20.5", "version": "23w51a", "tags": [ "memory" ], "content": "Added memory module types `danger_detected_recently` and `breeze_leaving_water`." }, { "group": "1.20.5", "version": "23w51a", "tags": [ "entity", "nbt" ], "content": "Removed field `FactorCalculationData` from effect NBT." }, { "group": "1.20.5", "version": "1.20.5-pre2", "tags": [ "pack", "breaking", "obsolete" ], "content": "Data pack format has been increased to 40." }, { "group": "1.20.5", "version": "1.20.5-pre2", "tags": [ "advancement" ], "content": "`Snip it!` advancement has been renamed to `Shear Brilliance`." }, { "group": "1.20.5", "version": "1.20.5-pre2", "tags": [ "item", "nbt" ], "content": "Using ctrl+pick block no longer lists \"(+NBT)\" in the item tooltip." }, { "group": "1.20.5", "version": "1.20.5-pre2", "tags": [ "assets" ], "content": "The animated nether portal texture is now displayed when changing dimension to or from the nether." }, { "group": "1.20.5", "version": "1.20.5-pre2", "tags": [ "assets" ], "content": "The animated end portal effect is now displayed when changing dimension to or from the end." }, { "group": "1.20.5", "version": "1.20.5-pre2", "tags": [ "network" ], "content": "Invalid data in packets sent from a server will now cause the game client to disconnect." }, { "group": "1.20.5", "version": "1.20.5-pre2", "tags": [ "loot", "item-modifier" ], "content": "Changed the `set_fireworks` function. Fields `explosions` and `mode` have been grouped together as a sub-object `explosions` field fields `values`, `mode`, and mode-dependent fields." }, { "group": "1.20.5", "version": "24w07a", "tags": [ "pack", "breaking", "obsolete" ], "content": "Data pack format has been increased to 32." }, { "group": "1.20.5", "version": "24w07a", "tags": [ "command" ], "content": "The `/place jigsaw` command now allows max depth values up to 20." }, { "group": "1.20.5", "version": "24w07a", "tags": [ "data", "tag" ], "content": "Added block tag `does_not_block_hoppers` for blocks that will never disable a hopper when placed above one." }, { "group": "1.20.5", "version": "24w07a", "tags": [ "data", "loot" ], "content": "Added loot table `gameplay/panda_sneeze` for drops when pandas sneeze." }, { "group": "1.20.5", "version": "24w05b", "tags": [ "command", "breaking", "obsolete" ], "content": "Effect amplifiers above 127 are no longer possible. Changed the `/effect` command: the amplifier argument is now limited to values between `0` and `127`." }, { "group": "1.20.5", "version": "24w06a", "tags": [ "pack", "breaking", "obsolete" ], "content": "Data pack format has been increased to 31." }, { "group": "1.20.5", "version": "24w06a", "tags": [ "pack", "breaking", "obsolete" ], "content": "Resource pack format has been increased to 26." }, { "group": "1.20.5", "version": "24w06a", "tags": [ "command", "obsolete" ], "content": "Effect amplifiers are restricted between 0 and 255 again." }, { "group": "1.20.5", "version": "24w06a", "tags": [ "command", "breaking" ], "content": "The former behavior of effects such as Jump Boost, Levitation, and Mining Fatigue over 127 has, also known as \"negative effects\" been removed." }, { "group": "1.20.5", "version": "24w06a", "tags": [ "command", "breaking" ], "content": "The maximum length of a command in a function is now 2000000 (2 million) characters." }, { "group": "1.20.5", "version": "24w06a", "tags": [ "attribute" ], "content": "Added new attributes:\n* `generic.gravity`, between `-1.0` and `1.0`, defaults to `0.08`\n* `generic.jump_strength`, between `0.0` and `32.0`, defaults to `0.42`\n* `generic.safe_fall_distance`, between `-1024.0` and `1024.0`, defaults to `3.0`\n* `generic.fall_damage_multiplier`, between `0.0` and `100.0`, defaults to `1.0`\n* `player.block_break_speed`, between `0.0` and `1024.0`, defaults to `1.0`" }, { "group": "1.20.5", "version": "24w06a", "tags": [ "attribute", "breaking" ], "content": "Removed `horse.jump_strength` attribute and replaced it with `generic.jump_strength`." }, { "group": "1.20.5", "version": "24w06a", "tags": [ "command" ], "content": "Added two events to the `/jfr` command: `ChunkRegionRead` and `ChunkRegionWrite`." }, { "group": "1.20.5", "version": "24w06a", "tags": [ "entity" ], "content": "Added new entity type `breeze_wind_charge`." }, { "group": "1.20.5", "version": "24w06a", "tags": [ "nbt", "entity", "block" ], "content": "Changed how block positions are stored and renamed NBT fields in some places. Instead of `{X:1,Y:2,Z:3}`, the format is now `[I;1,2,3]`:\n* Bees: `FlowerPos` and `HivePos` \u2192 `flower_pos` and `hive_pos`\n* Beehives: `FlowerPos` \u2192 `flower_pos`\n* End crystals: `BeamTarget` \u2192 `beam_target`\n* Leashable entities: `Leash` \u2192 `leash`\n* Patrolling mobs: `PatrolTarget` \u2192 `patrol_target`\n* End gateways: `ExitPortal` \u2192 `exit_portal`\n* Wandering traders: `WanderTarget` \u2192 `wander_target`" }, { "group": "1.20.5", "version": "24w06a", "tags": [ "particle" ], "content": "Removed particle type `gust_emitter`. Added `gust_emitter_large` and `gust_emitter_small`." }, { "group": "1.20.5", "version": "24w06a", "tags": [ "data", "tag" ], "content": "Added block tag `badlands_terracotta`, which is used by the `armadillo_spawnable_on` tag." }, { "group": "1.20.5", "version": "24w06a", "tags": [ "data", "tag" ], "content": "Added block tag `blocks_wind_charge_explosions` for blocks not impacted by the explosion when hit by wind charges. It contains `barrier` and `bedrock` by default." }, { "group": "1.20.5", "version": "24w06a", "tags": [ "assets", "font" ], "content": "Added font variant filters to font providers. Added a new field `filters` to all glyph providers, which is a map of variants to booleans. Current variants are `uniform` (Force Unicode Font) and `jp` (Japanese Glyph Variants)." }, { "group": "1.20.2", "version": "1.20.2-pre1", "tags": [ "pack", "breaking", "obsolete" ], "content": "Data pack format has been increased to 18." }, { "group": "1.20.2", "version": "1.20.2-pre1", "tags": [ "command", "breaking", "obsolete" ], "content": "Removed the `execute if|unless function` subcommand." }, { "group": "1.20.2", "version": "1.20.2-pre1", "tags": [ "command", "breaking", "obsolete" ], "content": "Removed the `return run` command syntax." }, { "group": "1.20.2", "version": "1.20.2-pre1", "tags": [ "command", "macro" ], "content": "Numbers used as macro arguments are now always inserted without suffixes, regardless of numeric type." }, { "group": "1.20.2", "version": "1.20.2-pre1", "tags": [ "gamerule" ], "content": "Added `enderPearlsVanishOnDeath` game rule, defaulting to `true`. This controls whether thrown ender pearls vanish when the player that threw them dies." }, { "group": "1.20.2", "version": "1.20.2-pre1", "tags": [ "assets" ], "content": "Added `map/map_icons.png` spritesheet." }, { "group": "1.20.2", "version": "23w31a", "tags": [ "pack", "breaking", "obsolete" ], "content": "Data pack format has been increased to 16." }, { "group": "1.20.2", "version": "23w31a", "tags": [ "pack", "breaking", "obsolete" ], "content": "Resource pack format has been increased to 16." }, { "group": "1.20.2", "version": "23w31a", "tags": [ "feature-flag", "pack" ], "content": "Added feature flag `trade_rebalance`." }, { "group": "1.20.2", "version": "23w31a", "tags": [ "block" ], "content": "Barrier blocks can now be waterlogged by players in Creative mode." }, { "group": "1.20.2", "version": "23w31a", "tags": [ "options" ], "content": "Added server property `log-ips`. If false, player ips will be excluded from the log when joining. The default is true." }, { "group": "1.20.2", "version": "23w31a", "tags": [ "command" ], "content": "The last 50 used commands will be remembered and accessable across game sessions. Recent commands are stored in `command_history.txt` in the game folder." }, { "group": "1.20.2", "version": "23w31a", "tags": [ "network" ], "content": "Chunks are no longer sent over the network to the client in one big continuous batch. Instead, chunks within the client's render distance are sent in smaller batches depending on available bandwidth. This means clients with low bandwidth won't time out while loading a world, and can interact with it before all chunks are loaded." }, { "group": "1.20.2", "version": "23w31a", "tags": [ "pack" ], "content": "Added optional field `supported_formats` to the `pack` object in `pack.mcmeta`, which can be an integer, list, or object. This enables multi-version packs. The `pack_format` field is still required, and its value must be contained in `supported_fields` if present. An example of each format:\n* `15` (only pack version 15)\n* `[15,18]` (all pack versions through and including 15 and 18)\n* `{\"min_inclusive\": 15, \"max_inclusive\": 18}` (all pack versions through and including 15 and 18)" }, { "group": "1.20.2", "version": "23w31a", "tags": [ "pack" ], "content": "Added optional field `overlays` to `pack.mcmeta`, which is an object with a single `entries` field containing a list of overlays. The order of overlays in `entries` is important, as the first in the list will be applied first. Each overlay entry has two fields:\n* `formats` (range of supported pack versions, same syntax as `supported_formats`)\n* `directory` (the directory to overlay for the respective versions)" }, { "group": "1.20.2", "version": "23w31a", "tags": [ "pack" ], "content": "Added pack overlays, which are sub-packs applied over the \"normal\" contents of a pack. Their directories (allowed characters: `a-z`, `0-9`, `_` and `-`) have their own `assets` and `data` directories, and are placed in the pack's root directory. They are applied based on the versions specified in the `pack.mcmeta`. Overlays can add and replace files, but not remove them." }, { "group": "1.20.2", "version": "23w31a", "tags": [ "network" ], "content": "New configuration phase in the network protocol to allow for more data-driven content in the future. The phase starts after login and lasts until the player joins a world. The configuration of data-driven registries, configuration of enabled features, and negotiation of resource packs has been moved from the play phase to this configuration phase. The updating of tags, exchange of custom packets, and ping/keep-alive packets are shared between the play and configuration phases." }, { "group": "1.20.2", "version": "23w31a", "tags": [ "debug" ], "content": "When hitboxes are displayed through F3+B, entities that have a passenger will display the passenger's attachment point." }, { "group": "1.20.2", "version": "23w31a", "tags": [ "pack" ], "content": "Validation for symbolic links now occurs in datapacks and resource packs." }, { "group": "1.20.2", "version": "23w31a", "tags": [ "assets", "breaking" ], "content": "All textures in the `realms` namespace have been moved into the `minecraft` namespace." }, { "group": "1.20.2", "version": "23w31a", "tags": [ "assets", "breaking" ], "content": "All textures containing multiple sprites in a sheet for GUI have been split into individual sprites under `textures/gui/sprites`. For example:\n* `widgets.png` has been split into `widgets/button.png` and `widgets/button_highlighted.png`.\n\nEach sprite can now be individually overriden by a resource pack instead of replacing the entire sheet. Sprites are loaded into the `gui` atlas from the `textures/gui/sprites` directory." }, { "group": "1.20.2", "version": "23w31a", "tags": [ "assets", "breaking" ], "content": "`villager2.png` has been renamed to `villager.png`." }, { "group": "1.20.2", "version": "23w31a", "tags": [ "assets", "breaking" ], "content": "`icon/trial_available` and `realm_status/expires_soon` GUI sprites are animated with `.mcmeta` declarations instead of individual sprites." }, { "group": "1.20.2", "version": "23w31a", "tags": [ "assets" ], "content": "Sprites in the gui atlas can now configure scaling behavior through a new `gui` section in `.mcmeta` files. The `gui` section in `.mcmeta` contains one `scaling` field with the following `type` options:\n* `stretch` (default) stretches the sprite across the desired space.\n* `tile` repeates the sprite across the desired space, requiring `width` and `height` fields.\n* `nine_slice` slices the sprite into 4 corners, 4 edges, and 1 center slice to be tiled across the desired space. `width`, `height`, and `border` fields are required." }, { "group": "1.20.2", "version": "23w31a", "tags": [ "assets", "breaking" ], "content": "The bundle tooltip background is now drawn as a nine-sliced sprite." }, { "group": "1.20.2", "version": "23w31a", "tags": [ "assets", "breaking" ], "content": "The icons for the Accessibility, Language, Realms News buttons have been split from their underlying button texture." }, { "group": "1.20.2", "version": "23w31a", "tags": [ "assets", "breaking" ], "content": "The Realms Invite button is now drawn as an overlay on the normal button texture, and the highlighted texture state for this button has been removed." }, { "group": "1.20.2", "version": "23w31a", "tags": [ "assets", "breaking" ], "content": "The exclamation marks on the `notification\\more.png` have been removed." }, { "group": "1.20.2", "version": "23w31a", "tags": [ "gamerule" ], "content": "Rate of accumulation of snow and ice is now affected by the `randomTickSpeed` game rule." }, { "group": "1.20.2", "version": "23w31a", "tags": [ "command" ], "content": "Added the `/random` command for controlling random sequences, with syntax:\n* `random value|roll []`: rolls a random number based on the given `range`. `roll` announces it in chat, while `value` does not\n* `random reset *| [] [] []`: resets the given `sequenceId` by using a `seed` to replace it" }, { "group": "1.20.2", "version": "23w31a", "tags": [ "command", "obsolete" ], "content": "Added the `/execute if function` sub-command, with syntax:\n* `execute if|unless function `: executes a function/function tag and matches the return value" }, { "group": "1.20.2", "version": "23w31a", "tags": [ "command", "obsolete" ], "content": "Added the `/return run` sub-command, with syntax:\n* `return run `: takes the return value from the `command` and returns it as the return value of the function" }, { "group": "1.20.2", "version": "23w31a", "tags": [ "command" ], "content": "A single backslash `\\` as the last non-whitespace character of a line now allows a command to be continued on the next line" }, { "group": "1.20.2", "version": "23w31a", "tags": [ "command", "macro" ], "content": "Macros have been added to functions. They are defined by lines beginning with `$`. Macros contain one or more subsitutions in the form `$(variable)`. All argument variables must be provided when calling function macros. Using macros mean their commands must be re-evaluated after variable substitution, which comes at a performance cost compared to pre-parsed functions." }, { "group": "1.20.2", "version": "23w31a", "tags": [ "command", "macro" ], "content": "To call macro functions, two new forms of the `/function` command were added, with syntax:\n* `function `: calls a function with a given data `compound` `{}`\n* `function with []`: calls a function from a `source` (such as what's used in `/data get`) and NBT `path`" }, { "group": "1.20.2", "version": "23w31a", "tags": [ "entity" ], "content": "Behavior of display entities has changed: Display entities now start updating their client-side position and rotation on the first tick after an update, similar to armor stands, mobs, and players. Duration of interpolation is now controlled by `teleport_duration`." }, { "group": "1.20.2", "version": "23w31a", "tags": [ "attribute" ], "content": "Added new `generic.max_absorption` attribute. It acts similar to `generic.max_health`, but is the upper bound for `AbsorptionAmount` rather than `Health`." }, { "group": "1.20.2", "version": "23w31a", "tags": [ "game-event", "breaking" ], "content": "The `entity_roar` and `entity_shake` game events are removed and replaced with `entity_action`." }, { "group": "1.20.2", "version": "23w31a", "tags": [ "data", "worldgen" ], "content": "Added `minecraft:ore_diamond_medium` feature." }, { "group": "1.20.2", "version": "23w31a", "tags": [ "data", "damage-type", "tag" ], "content": "Added damage tag `no_knockback`, which causes knockback to not be caused by the damage itself. In Vanilla, this is used by explosions which cause knockback separately." }, { "group": "1.20.2", "version": "23w31a", "tags": [ "data", "tag" ], "content": "Added entity tag `non_controlling_rider`, representing entities that don't override their vehicles movement control." }, { "group": "1.20.2", "version": "23w31a", "tags": [ "data", "tag" ], "content": "Added block tag `concrete_powder` for Concrete Powder blocks." }, { "group": "1.20.2", "version": "23w31a", "tags": [ "data", "tag" ], "content": "Added block tag `camel_sand_step_sound_blocks` for block producing `entity.camel.step_sand` sounds" }, { "group": "1.20.2", "version": "1.20.2-pre4", "tags": [ "data", "damage-type", "tag" ], "content": "Added damage tag `always_kills_armor_stands` for damage types that should always fully kill an Armor Stand." }, { "group": "1.20.2", "version": "23w35a", "tags": [ "jar" ], "content": "The bundled java runtime has been upgraded to 17.0.8." }, { "group": "1.20.2", "version": "1.20.2-pre2", "tags": [ "pack", "breaking", "obsolete" ], "content": "Resource pack format has been increased to 18." }, { "group": "1.20.2", "version": "23w33a", "tags": [ "debug" ], "content": "The charts on the debug screen can now be toggled with F3+1 (pie chart), F3+2 (FPS and TPS) and F3+3 (bandwidth and ping)." }, { "group": "1.20.2", "version": "23w33a", "tags": [ "trim" ], "content": "Added an optional `decal` field to armor trim patterns, defaulting to false. If true, the pattern texture will be masked based on the underlying armor." }, { "group": "1.20.2", "version": "23w32a", "tags": [ "pack", "breaking", "obsolete" ], "content": "Data pack format has been increased to 17." }, { "group": "1.20.2", "version": "23w32a", "tags": [ "pack", "breaking", "obsolete" ], "content": "Resource pack format has been increased to 17." }, { "group": "1.20.2", "version": "23w32a", "tags": [ "assets", "breaking" ], "content": "The text field background is now a nine-sliced sprite at `widget/text_field` and `widget/text_field_highlighted`." }, { "group": "1.20.2", "version": "23w32a", "tags": [ "assets", "breaking" ], "content": "The scroll bar in lists and text fields is now a nine-sliced sprite at `widget/scroller`." }, { "group": "1.20.2", "version": "23w32a", "tags": [ "nbt", "breaking" ], "content": "Mob effects are now namespaced ids rather than numeric values. For example, `1` is now `minecraft:speed`." }, { "group": "1.20.2", "version": "23w32a", "tags": [ "nbt", "entity", "block-entity", "breaking" ], "content": "The structure for mob effect storage has been largely changed from pascal to snake case, with a couple of renames. All changes:\n* `Id` \u2192 `id` (mob effect instances)\n* `Ambient` \u2192 `ambient` (mob effect instances)\n* `Amplifier` \u2192 `amplifier` (mob effect instances)\n* `Duration` \u2192 `duration` (mob effect instances)\n* `ShowParticles` \u2192 `show_particles` (mob effect instances)\n* `ShowIcon` \u2192 `show_icon` (mob effect instances)\n* `HiddenEffect` \u2192 `hidden_effect` (mob effect instances)\n* `FactorCalculationData` \u2192 `factor_calculation_data` (mob effect instances)\n* `CustomPotionEffects` \u2192 `custom_potion_effects` (`potion`, `lingering_potion`, `splash_potion`, `tipped_arrow`, `arrow`)\n* `Effects` \u2192 `effects` (`suspicious_stew`, `area_effect_cloud`)\n* `EffectId` \u2192 `id` (`suspicious_stew`)\n* `EffectDuration` \u2192 `duration` (`suspicious_stew`)\n* `EffectId` and `EffectDuration` \u2192 `stew_effects` (`mooshroom`)\n* `ActiveEffects` \u2192 `active_effects` (`player`, `armor_stand`, mobs)\n* `Primary` \u2192 `primary_effect` (`beacon`)\n* `Secondary` \u2192 `secondary_effect` (`beacon`)" }, { "group": "1.20.2", "version": "23w32a", "tags": [ "loot", "item-modifier" ], "content": "Added function `sequence` containing a single `functions` field. The array of sub-functions will run in sequence." }, { "group": "1.20.2", "version": "23w32a", "tags": [ "loot", "predicate" ], "content": "The `all_of` predicate and `sequence` function can now be declared implicitly as an inline array without a type." }, { "group": "1.20.2", "version": "23w32a", "tags": [ "network" ], "content": "Clients will no longer disconnect when receiving an invalid chat message, and will instead display a placeholder message." }, { "group": "1.20.2", "version": "23w32a", "tags": [ "network" ], "content": "Gameplay packets are now packed into bigger TCP-packets to reduce overhead from TCP-headers." }, { "group": "1.20.2", "version": "23w32a", "tags": [ "debug" ], "content": "The `Ctrl + F3` debug screen will now display ping and network traffic charts." }, { "group": "1.20.2", "version": "23w32a", "tags": [ "jar" ], "content": "Loot tables, predicates and item modifiers are now parsed using codecs." }, { "group": "1.16.2", "version": "20w29a", "tags": [ "command" ], "content": "Changed `/spawnpoint` and `/setworldspawn` commands to include an optional angle parameter:\n* `/spawnpoint [targets] [pos] [angle]`\n* `/setworldspawn [pos] [angle]`" }, { "group": "1.16.2", "version": "20w29a", "tags": [ "worldgen" ], "content": "Added noise settings, which are stored in the `worldgen/noise_settings` folder." }, { "group": "1.16.2", "version": "1.16.2-pre2", "tags": [ "command" ], "content": "The `/execute in` command now respects dimension scaling." }, { "group": "1.16.2", "version": "20w30a", "tags": [ "tag" ], "content": "Tags can now have optional entries. Instead of a string, they are defined as `{ \"id\": \"foo\", \"required\": false }`." }, { "group": "1.16.2", "version": "1.16.2-pre1", "tags": [ "worldgen" ], "content": "Custom world generation and dimension settings now use the same folder pattern in data packs as other resources. `data/minecraft///.json` \u2192 `data///.json`." }, { "group": "1.16.2", "version": "20w28a", "tags": [ "options" ], "content": "Added server property `rate-limit`. The default of `0` means no limit." }, { "group": "1.16.2", "version": "20w28a", "tags": [ "worldgen" ], "content": "Added biomes, which are stored in the `worldgen/biome` folder. Custom biomes can be used in custom dimension generators, and in the single biome world types after adding the data pack." }, { "group": "1.16.2", "version": "20w28a", "tags": [ "worldgen" ], "content": "Added configured carvers, which are stored in the `worldgen/configured_carver` folder." }, { "group": "1.16.2", "version": "20w28a", "tags": [ "worldgen" ], "content": "Added configured features, which are stored in the `worldgen/configured_feature` folder." }, { "group": "1.16.2", "version": "20w28a", "tags": [ "worldgen", "structure" ], "content": "Added configured structure features, which are stored in the `worldgen/configured_structure_feature` folder." }, { "group": "1.16.2", "version": "20w28a", "tags": [ "worldgen" ], "content": "Added configured surface builders, which are stored in the `worldgen/configured_surface_builder` folder." }, { "group": "1.16.2", "version": "20w28a", "tags": [ "worldgen" ], "content": "Added processor lists, which are stored in the `worldgen/processor_list` folder." }, { "group": "1.16.2", "version": "20w28a", "tags": [ "worldgen" ], "content": "Added template pools, which are stored in the `worldgen/template_pool` folder." }, { "group": "1.16.2", "version": "1.16.2-rc1", "tags": [ "pack", "breaking", "obsolete" ], "content": "Data and resource pack format has been increased to 6." }, { "group": "1.21.4", "version": "24w44a", "tags": [ "pack", "breaking", "obsolete" ], "content": "Data pack format has been increased to 58." }, { "group": "1.21.4", "version": "24w44a", "tags": [ "pack", "breaking", "obsolete" ], "content": "Resource pack format has been increased to 43." }, { "group": "1.21.4", "version": "24w44a", "tags": [ "command" ], "content": "Added `reset` subcommand to the `/attribute` command:\n* `attribute base reset`" }, { "group": "1.21.4", "version": "24w44a", "tags": [ "text" ], "content": "Added optional field `shadow_color` to text component style. It can either be a packed ARGB integer, or a list of 4 floats in the RGBA order." }, { "group": "1.21.4", "version": "24w44a", "tags": [ "particle", "breaking" ], "content": "Changed particle type `trail`. Added required field `duration`, which is a positive float." }, { "group": "1.21.4", "version": "24w44a", "tags": [ "particle" ], "content": "Added particle type `pale_oak_leaves`." }, { "group": "1.21.4", "version": "24w44a", "tags": [ "feature-flag" ], "content": "Removed feature flag `winter_drop`." }, { "group": "1.21.4", "version": "24w44a", "tags": [ "entity", "nbt", "breaking" ], "content": "Changed NBT of `tnt_minecart`:\n* Renamed field `TNTFuse` to `fuse`\n* Added optional field `explosion_speed_factor` (float between 0 and 128)" }, { "group": "1.21.4", "version": "24w44a", "tags": [ "block-entity", "component" ], "content": "Items with the `block_entity_data` component will now only set the data if `id` matches the block entity type that was placed." }, { "group": "1.21.4", "version": "24w44a", "tags": [ "worldgen", "breaking" ], "content": "Changed biome effects field `music`. It now is a weighted list of music objects. The list is also allowed to be empty." }, { "group": "1.21.4", "version": "24w44a", "tags": [ "worldgen" ], "content": "Added optional field `music_volume` (float) to biome effects." }, { "group": "1.21.4", "version": "24w44a", "tags": [ "worldgen" ], "content": "Changed feature `simple_block`. Added optional field `schedule_tick`, which is a boolean." }, { "group": "1.21.4", "version": "24w44a", "tags": [ "assets", "breaking" ], "content": "The `toast/system` texture has been changed to use a nine-sliced texture. The `toast/tutorial` texture was unchanged, but nine-slicing is enabled." }, { "group": "1.21.4", "version": "24w44a", "tags": [ "assets", "breaking" ], "content": "The `advancements/box_obtained` and `advancements/box_unobtained` textures now have nine-slicing enabled." }, { "group": "1.21.4", "version": "24w44a", "tags": [ "command" ], "content": "Added a new event to the `/jfr` command: `StructureGeneration`." }, { "group": "1.21.4", "version": "24w46a", "tags": [ "pack", "breaking", "obsolete" ], "content": "Data pack format has been increased to 60." }, { "group": "1.21.4", "version": "24w46a", "tags": [ "pack", "breaking", "obsolete" ], "content": "Resource pack format has been increased to 45." }, { "group": "1.21.4", "version": "24w46a", "tags": [ "entity", "nbt", "breaking" ], "content": "Removed entity type `creaking_transient`. Instead added field `home_pos` to `creaking` entity NBT, which is a list of 3 ints specifying the block position of the creaking heart." }, { "group": "1.21.4", "version": "24w46a", "tags": [ "block", "nbt" ], "content": "Added field `creaking`, which is a UUID specifying the linked creaking mob." }, { "group": "1.21.4", "version": "24w46a", "tags": [ "item", "component" ], "content": "Added option `bundle` to the `animation` field in the `consumable` item component." }, { "group": "1.21.4", "version": "24w46a", "tags": [ "tag", "data", "breaking" ], "content": "Removed item tag `#trim_templates`." }, { "group": "1.21.4", "version": "24w46a", "tags": [ "tag", "data" ], "content": "Renamed `_preferred_weapon` item tags to plural versions: `#skeleton_preferred_weapons`, `#piglin_preferred_weapons`, `#pillager_preferred_weapons`, and `#drowned_preferred_weapons`. Add item tag `#wither_skeleton_disliked_weapons`." }, { "group": "1.21.4", "version": "24w46a", "tags": [ "assets", "item" ], "content": "Blocks that previously has a special block entity renderer (banners, heads, beds, chests, conduits, decorated pots, shulker boxes and signs) will now also render normal block model over it." }, { "group": "1.21.4", "version": "24w46a", "tags": [ "assets", "item" ], "content": "Changed the `head` special model type. Added optional field `texture` referencing a texture in the `entity/` folder. If present, `profile` component is ignored." }, { "group": "1.21.4", "version": "24w46a", "tags": [ "assets", "item" ], "content": "Added `standing_sign` and `hanging_sign` special model types. They have fields `wood_type` and `texture`." }, { "group": "1.21.4", "version": "24w46a", "tags": [ "assets", "item" ], "content": "Removed `xmas` boolean property, replaced with `local_time`, with fields `locale`, `time_zone`, and `pattern`." }, { "group": "1.21.4", "version": "24w46a", "tags": [ "assets", "item" ], "content": "Removed `shift_down` boolean property, replaced with `extended_view`, which returns `true` if the player is holding shift in the UI." }, { "group": "1.21.4", "version": "24w46a", "tags": [ "assets", "item" ], "content": "Changed the `has_component` boolean property. Added optional field `ignore_default` (boolean), which defaults to `false`." }, { "group": "1.21.4", "version": "24w46a", "tags": [ "assets", "item" ], "content": "Added boolean property `keybind_down`, with field `keybind`." }, { "group": "1.21.4", "version": "24w46a", "tags": [ "assets", "item" ], "content": "Added string property `holder_type`, which returns the entity type of the item holder for compasses and clocks." }, { "group": "1.21.4", "version": "1.21.4-pre1", "tags": [ "pack", "breaking", "obsolete" ], "content": "Resource pack format has been increased to 46." }, { "group": "1.21.4", "version": "1.21.4-pre1", "tags": [ "item" ], "content": "Similarly to block items, spawn eggs now can have a warning in the tooltip if they could execute operator-only commands." }, { "group": "1.21.4", "version": "1.21.4-pre1", "tags": [ "assets", "font" ], "content": "Updated Unifont to `16.0.01`." }, { "group": "1.21.4", "version": "1.21.4-pre1", "tags": [ "assets", "item" ], "content": "Added optional field `hand_animation_on_swap` (boolean) to resource pack item format." }, { "group": "1.21.4", "version": "1.21.4-pre1", "tags": [ "assets", "item" ], "content": "Added tint source `team` with field `default` (RGB color)." }, { "group": "1.21.4", "version": "1.21.4-pre1", "tags": [ "assets", "item" ], "content": "Added field `animation` (float) to `head` special model type for the piglin ears and ender dragon jaw." }, { "group": "1.21.4", "version": "1.21.4-pre1", "tags": [ "assets", "item" ], "content": "Added boolean property `view_entity`." }, { "group": "1.21.4", "version": "1.21.4-pre1", "tags": [ "assets", "item" ], "content": "Renamed string property `holder_type` \u2192 `context_entity_type`" }, { "group": "1.21.4", "version": "1.21.4-pre1", "tags": [ "assets", "item" ], "content": "Added string property `context_dimension`." }, { "group": "1.21.4", "version": "1.21.4-pre1", "tags": [ "assets", "item" ], "content": "Changed `time` numeric property. Removed field `natural_only` and added `source`, which can be one of `daytime`, `moon_phase`, or `none`." }, { "group": "1.21.4", "version": "1.21.4-pre1", "tags": [ "assets", "item" ], "content": "Changed `compass` numeric property. Added possible value `none` to `target` field." }, { "group": "1.21.4", "version": "1.21.4-pre1", "tags": [ "assets", "item" ], "content": "Added item model type `empty` which doesn't render anything." }, { "group": "1.21.4", "version": "1.21.4-pre2", "tags": [ "pack", "breaking", "obsolete" ], "content": "Data pack format has been increased to 61." }, { "group": "1.21.4", "version": "1.21.4-pre2", "tags": [ "block", "nbt", "breaking" ], "content": "Renamed some block entity fields in `furnace`, `smoker` and `blast_furnace` blocks:\n* `CookTime` \u2192 `cooking_time_spent`\n* `CookTimeTotal` \u2192 `cooking_total_time`\n* `BurnTime` \u2192 `lit_time_remaining`\n* Added field `lit_total_time` (total time the furnace should be lit)" }, { "group": "1.21.4", "version": "24w45a", "tags": [ "pack", "breaking", "obsolete" ], "content": "Data pack format has been increased to 59." }, { "group": "1.21.4", "version": "24w45a", "tags": [ "pack", "breaking", "obsolete" ], "content": "Resource pack format has been increased to 44." }, { "group": "1.21.4", "version": "24w45a", "tags": [ "jar", "breaking" ], "content": "The data generator `net.minecraft.data.Main` in the server jar no longer generates the `assets` folder with the `--client` option. Instead use the `net.minecraft.client.data.Main` data generator in the client jar." }, { "group": "1.21.4", "version": "24w45a", "tags": [ "item", "component" ], "content": "Tooltip warnings on item blocks with `block_entity_data` can no longer be hidden by other components." }, { "group": "1.21.4", "version": "24w45a", "tags": [ "item", "component", "breaking" ], "content": "Changed `equippable` component. Renamed field `model` \u2192 `asset_id`." }, { "group": "1.21.4", "version": "24w45a", "tags": [ "item", "component", "breaking" ], "content": "Changed `custom_model_data` component. Instead of a single integer it now takes an object with optional fields: `floats` (list of floats), `flags` (list of booleans), `strings` (list of string), and `colors` (list of RGB colors)." }, { "group": "1.21.4", "version": "24w45a", "tags": [ "loot", "item-modifier", "breaking" ], "content": "Changed `set_custom_model_data` item modifier. Instead of a single `value` field, it now has optional list operation fields: `floats`, `flags`, `strings`, and `colors`." }, { "group": "1.21.4", "version": "24w45a", "tags": [ "trim", "breaking" ], "content": "Removed field `item_model_index` in trim materials." }, { "group": "1.21.4", "version": "24w45a", "tags": [ "tag", "data" ], "content": "Added block tag `#bee_attractive` to describe all blocks that bees may pollinate." }, { "group": "1.21.4", "version": "24w45a", "tags": [ "tag", "data", "breaking" ], "content": "Removed block tag `#tall_flowers`. Removed item tags `#flowers` and `#tall_flowers`." }, { "group": "1.21.4", "version": "24w45a", "tags": [ "tag", "data" ], "content": "Added item tags `#skeleton_preferred_weapon`, `#piglin_preferred_weapon`, `#pillager_preferred_weapon`, and `#drowned_preferred_weapon`." }, { "group": "1.21.4", "version": "24w45a", "tags": [ "assets", "breaking" ], "content": "Moved the folder `models/equipment` \u2192 `equipment`." }, { "group": "1.21.4", "version": "24w45a", "tags": [ "assets", "breaking" ], "content": "Renamed texture and model `broken_elytra` \u2192 `elytra_broken`." }, { "group": "1.21.4", "version": "24w45a", "tags": [ "assets", "item", "breaking" ], "content": "Removed the `overrides` field in item models. Instead the different models can be configured in the new `items` folder." }, { "group": "1.21.4", "version": "24w45a", "tags": [ "assets", "item" ], "content": "Added new format to describe item models in the folder `items`. It has a single field `models` with a field `type`. The different model types are currently:\n* `model`: has fields `model` (model reference), and `tints` (tint source)\n* `special`: has fields `special` (typed special model), and `base` (model reference)\n* `composite`: has fields `models`, same type as the root `models` field in this file\n* `condition`: has fields `property` + more fields, `on_true`, and `on_false`\n* `select`: has fields `property` + more fields, `cases`, and `fallback`\n* `range_dispatch`: has fields `property` + more fields, `scale`, `entries`, and `fallback`\n* `bundle/selected_item`: no fields" }, { "group": "1.19", "version": "22w16a", "tags": [ "nbt", "entity" ], "content": "Changed paintings NBT. Renamed fields `Motive` \u2192 `variant` and `Facing` \u2192 `facing`." }, { "group": "1.19", "version": "1.19-pre1", "tags": [ "options" ], "content": "Removed server property `test-rainbow-chat`." }, { "group": "1.19", "version": "1.19-pre1", "tags": [ "game-event" ], "content": "Added game event `instrument_play`." }, { "group": "1.19", "version": "1.19-pre1", "tags": [ "worldgen" ], "content": "Changed dimension type. Added fields `monster_spawn_block_light_limit` (int) and `monster_spawn_light_level` (int provider)." }, { "group": "1.19", "version": "1.19-pre1", "tags": [ "nbt", "entity" ], "content": "Renamed cat variant `british` to `british_shorthair`." }, { "group": "1.19", "version": "1.19-pre1", "tags": [ "nbt", "entity", "memory" ], "content": "Added memory module type `is_panicking` (boolean)." }, { "group": "1.19", "version": "22w15a", "tags": [ "advancement" ], "content": "Removed `item_delivered_to_player` advancement trigger and added `thrown_item_picked_up_by_player` to replace it. It has conditions `player`, `entity`, and `item`." }, { "group": "1.19", "version": "22w15a", "tags": [ "advancement" ], "content": "Added advancement trigger `avoid_vibration`. It has no extra conditions." }, { "group": "1.19", "version": "22w15a", "tags": [ "tag", "data" ], "content": "Renamed block tag `occludes_vibration_signals` \u2192 `dampens_vibrations`. It includes wool and wool carpets by default." }, { "group": "1.19", "version": "22w15a", "tags": [ "particle" ], "content": "Added particle type `sonic_boom`." }, { "group": "1.19", "version": "22w15a", "tags": [ "nbt", "entity", "memory" ], "content": "Added memory module types `sonic_boom_cooldown`, `sonic_boom_sound_cooldown`, and `sonic_boom_sound_delay`." }, { "group": "1.19", "version": "22w15a", "tags": [ "worldgen" ], "content": "Added field `replaceable` to carver configuration, which is a block/tag." }, { "group": "1.19", "version": "22w15a", "tags": [ "worldgen" ], "content": "Removed features `ice_patch` and `surface_disk`. They can now be replaced with a `disk` feature." }, { "group": "1.19", "version": "22w15a", "tags": [ "worldgen" ], "content": "Changed `disk` feature configuration:\n* Replaced `state` field with `state_provider`, which is a rule based block state provider. It has two fields: `fallback` (block state provider) and `rules`, which is a list of objects. A rule has two fields: `if_true` (block predicate) and `then` (block state provider).\n* Replaced `targets` field with `target`, which is now a block predicate.\n* Removed field `can_origin_replace`." }, { "group": "1.19", "version": "22w15a", "tags": [ "worldgen" ], "content": "Changed root placer configuration:\n* Renamed field `y_offset` \u2192 `trunk_offset_y`.\n* Moved fields `max_root_width`, `max_root_length`, `random_skew_chance`, `can_grow_through`, `muddy_roots_in`, and `muddy_roots_provider` to inside an object `mangrove_root_placement`.\n* Added field `above_root_placement` to all root placers, which is an object with fields `above_root_placement_chance` (float between 0 and 1) and `above_root_provider` (block state provider)." }, { "group": "1.19", "version": "1.19-pre4", "tags": [ "assets", "lang" ], "content": "Added new language Malay, written in Arabic script. It has code `zlm_arab`." }, { "group": "1.19", "version": "22w18a", "tags": [ "command" ], "content": "Removed `/placefeature` and added `/place` command, which has 3 subcommands:\n* `/place feature [pos]`: Places a configured feature\n* `/place jigsaw [pos]`: Places a jigsaw structure\n* `/place structure [pos]`: Places a full worldgen structure (not an NBT file)" }, { "group": "1.19", "version": "22w18a", "tags": [ "loot", "item-modifier" ], "content": "Removed item modifier `set_goat_horn_sound`." }, { "group": "1.19", "version": "22w18a", "tags": [ "loot", "item-modifier" ], "content": "Added item modifier `set_instrument`. It has one field `options`, which references an instrument tag from `tags/instrument`." }, { "group": "1.19", "version": "22w18a", "tags": [ "text", "chat-type" ], "content": "Added chat types, which are stored in the `chat_type` folder. There are 8 vanilla chat types which can be overwritten:\n* `chat`: When a player sends a message to chat\n* `emote_command`: When a player uses the `/me` command\n* `game_info`: For messages that are displayed to the actionbar\n* `msg_command`: When a player uses the `/msg` command\n* `say_command`: When a player uses the `/say` command\n* `system`: For system messages\n* `team_msg_command`: When a player uses the `/teammsg` command\n* `tellraw_command`: When the `/tellraw` command is used" }, { "group": "1.19", "version": "22w18a", "tags": [ "tag", "data" ], "content": "Added banner pattern tags in `tags/banner_pattern`, whichs allows modifying behavior of the loom block." }, { "group": "1.19", "version": "22w18a", "tags": [ "jar" ], "content": "The bundled java runtime has been upgraded to 17.0.3" }, { "group": "1.19", "version": "22w18a", "tags": [ "nbt", "entity" ], "content": "Added field to the `FactorCalculationData` field in potions and effects: `factor_start`, which is a float." }, { "group": "1.19", "version": "1.19-pre2", "tags": [ "tag", "data" ], "content": "Added biome tag `mineshaft_blocking`, containing `deep_dark` by default." }, { "group": "1.19", "version": "1.19-pre2", "tags": [ "game-event" ], "content": "Added game event `teleport`." }, { "group": "1.19", "version": "22w14a", "tags": [ "advancement", "loot", "predicate", "breaking" ], "content": "Removed `location` field from triggers `location`, `slept_in_bed`, `hero_of_the_village` and `voluntary_exile`. Instead the `player.location` field can be used." }, { "group": "1.19", "version": "22w14a", "tags": [ "advancement", "loot", "predicate", "breaking" ], "content": "Replaced entity predicate fields `player`, `fishing_hook`, `lightning_bolt`, and `catType` with `type_specific`. It has a field `type` (an entity type), and other fields depending on the type.\n* `player`: a player predicate\n* `fishing_hook`: has a field `in_open_water` (boolean)\n* `lightning`: has fields `blocks_set_on_fire` (int bounds) and `entity_struck` (entity predicate)\n* `cat`: has a field `variant`, which can be one of `all_black`, `black`, `british`, `calico`, `jellie`, `persian`, `ragdoll`, `red`, `siamese`, `tabby`, or `white`.\n* `slime`: (matches slimes and magma creams) has a field `size` (int bounds)\n* `frog`: has a field `variant`, which can be one of `cold`, `temperate`, or `warm`." }, { "group": "1.19", "version": "22w14a", "tags": [ "advancement" ], "content": "Added trigger `item_delivered_to_player` which only has the `player` condition." }, { "group": "1.19", "version": "22w14a", "tags": [ "advancement" ], "content": "Added trigger `allay_drop_item_on_block` which has conditions `player`, `location` and `item`." }, { "group": "1.19", "version": "22w14a", "tags": [ "nbt", "entity" ], "content": "Changed warden NBT. `anger.suspect` is now a list of objects, with fields `uuid` (UUID) and `anger` (int)." }, { "group": "1.19", "version": "22w14a", "tags": [ "nbt", "entity" ], "content": "Added player NBT field `LastDeathLocation`, which is an object with fields: `dimension` (string) and `pos` (list of 3 ints)" }, { "group": "1.19", "version": "22w14a", "tags": [ "nbt", "entity" ], "content": "Changed cat NBT: Removed field `CatType` which was an int and replaced it with `variant`, which is a resource location of a cat variant. Variants:\n* `0` \u2192 `tabby`\n* `1` \u2192 `black` \n* `2` \u2192 `red`\n* `3` \u2192 `siamese`\n* `4` \u2192 `british`\n* `5` \u2192 `calico`\n* `6` \u2192 `persian`\n* `7` \u2192 `ragdoll`\n* `8` \u2192 `white`\n* `9` \u2192 `jellie`\n* `10` \u2192 `all_black`" }, { "group": "1.19", "version": "22w14a", "tags": [ "worldgen" ], "content": "Added `disk` feature field: `can_origin_replace` (block/tag)." }, { "group": "1.19", "version": "22w14a", "tags": [ "worldgen" ], "content": "Added field to `leave_vine` tree decorator: `probability` (float between 0 and 1). This was previously hardcoded to `0.25`." }, { "group": "1.19", "version": "22w14a", "tags": [ "worldgen" ], "content": "Added tree decorator `attached_to_leaves` with fields: `probability` (float between 0 and 1), `exclusion_radius_xz` (int between 0 and 16), `exclusion_radius_y` (int between 0 and 16), `block_provider` (block state provider), `required_empty_blocks` (int between 1 and 16), `directions` (non empty list of directions)." }, { "group": "1.19", "version": "22w14a", "tags": [ "worldgen" ], "content": "Added optional `root_placer` field to `tree` feature. Currently only one root placer type: `mangrove_root_placer` with fields: `can_grow_through` (block/tag), `muddy_roots_in` (block/tag), `muddy_roots_provider` (block state provider), `max_root_width` (int between 1 and 12), `max_root_length` (int between 1 and 64), `y_offset` (int provider), `random_skew_chance` (float between 0 and 1)." }, { "group": "1.19", "version": "22w14a", "tags": [ "worldgen" ], "content": "Added trunk placer `upwards_branching_trunk_placer`. It has fields `extra_branch_steps` (int > 0), `place_branch_per_log_probability` (float between 0 and 1), `extra_branch_length` (int >= 0), `can_grow_through` (block/tag)." }, { "group": "1.19", "version": "22w14a", "tags": [ "worldgen" ], "content": "Renamed feature `glow_lichen` \u2192 `multiface_growth` (no configuration changes)." }, { "group": "1.19", "version": "22w14a", "tags": [ "worldgen" ], "content": "Added feature `surface_disk`, which has the same configuration as `disk`." }, { "group": "1.19", "version": "22w14a", "tags": [ "worldgen" ], "content": "Changed `rottable_blocks` field in `block_rot` processor. The block tag now needs to be prefixed with a `#`, and allows block IDs or a list of block IDs." }, { "group": "1.19", "version": "22w14a", "tags": [ "worldgen", "structure" ], "content": "Moved jigsaw structure configuration back out of the `value` field (reverts a change from last snapshot)." }, { "group": "1.19", "version": "22w11a", "tags": [ "pack", "breaking", "obsolete" ], "content": "Data pack format has been increased to 10." }, { "group": "1.19", "version": "22w11a", "tags": [ "pack", "breaking", "obsolete" ], "content": "Resource pack format has been increased to 9." }, { "group": "1.19", "version": "22w11a", "tags": [ "text", "font" ], "content": "Added `space` glyph provider. It has a single field `advances` which is a map of codepoints to glyph advance (width). This enables custom space widths, including negative spaces." }, { "group": "1.19", "version": "22w11a", "tags": [ "text", "font", "breaking" ], "content": "Font providers now manually need to declare the space glyph." }, { "group": "1.19", "version": "22w11a", "tags": [ "pack" ], "content": "Added optional field `filter` to `pack.mcmeta`. When present, must have a `block` field which is a list of patterns. Each pattern has two optional fields: `namespace` and `path`, which are regular expressions. It hides resources in packs loaded before the current pack that match the pattern." }, { "group": "1.19", "version": "22w11a", "tags": [ "loot", "predicate", "breaking" ], "content": "Renamed location predicate field `feature` \u2192 `structure`." }, { "group": "1.19", "version": "22w11a", "tags": [ "particle" ], "content": "Added particle types `sculk_charge`, `sculk_charge_pop` and `sculk_soul`." }, { "group": "1.19", "version": "22w11a", "tags": [ "options" ], "content": "Added server property `max-chained-neighbor-updates` which controls the amount of consecutive neighbor updates before skipping additional ones. Negative values remove the limit." }, { "group": "1.19", "version": "22w11a", "tags": [ "entity", "nbt", "breaking" ], "content": "Potion and effect field `Id`, previously a byte is now an int. When checking the `b` suffix needs to be removed." }, { "group": "1.19", "version": "22w11a", "tags": [ "entity", "nbt" ], "content": "The added `frog` entity has all the breedable and mob tags, and additionally a `Variant` tag, which is an int 0 (temperate), 1 (warm), or 2 (cold)." }, { "group": "1.19", "version": "22w11a", "tags": [ "entity", "nbt" ], "content": "The added `tadpole` entity has all mob tags, as well as two tags: `FromBucket` which is a boolean, and `Age` which is an integer. When it reaches 24000 the tadpole grows into a frog." }, { "group": "1.19", "version": "22w11a", "tags": [ "entity", "nbt", "memory" ], "content": "Added memory module types `is_in_water` and `is_pregnant`." }, { "group": "1.19", "version": "22w11a", "tags": [ "entity", "nbt" ], "content": "Added boat type `mangrove`." }, { "group": "1.19", "version": "22w11a", "tags": [ "tag", "data" ], "content": "Added block tag `dragon_transparent`, which behaves very similarly to `dragon_immune`. It contains `#fire` and `light` by default." }, { "group": "1.19", "version": "22w11a", "tags": [ "worldgen" ], "content": "Dimension types can no longer be inlined in the dimension, they have to be a reference to a separate dimension_type file." }, { "group": "1.19", "version": "22w11a", "tags": [ "worldgen" ], "content": "Removed field `seed` in noise chunk generator and end biome source." }, { "group": "1.19", "version": "22w11a", "tags": [ "worldgen" ], "content": "Changed noise settings. Removed field `terrain_shaper`, the terrain shaper splines have been moved to density functions. Added field `spawn_target`, which is a list of climate target points." }, { "group": "1.19", "version": "22w11a", "tags": [ "worldgen" ], "content": "Removed density function `terrain_shaper_spline`, and changed density function `spline`: removed two fields `min_value` and `max_value`." }, { "group": "1.19", "version": "22w11a", "tags": [ "worldgen" ], "content": "Removed biome field `category`. Functionality has been moved to biome tags." }, { "group": "1.19", "version": "22w11a", "tags": [ "worldgen" ], "content": "Added feature type `sculk_patch`. It has 5 required integer fields: `charge_count`, `amount_per_charge`, `spread_attempts`, `growth_rounds`, and `spread_rounds` and 1 required float field: `catalyst_chance`." }, { "group": "1.19", "version": "22w11a", "tags": [ "worldgen", "structure" ], "content": "Changed structure set placement.\n* Fields `salt` and `locate_offset` are no longer specific to the `random_spread` placement type.\n* Added field `preferred_biomes` to the placement type `concentric_rings`, which is a biome tag.\n* Added optional field `exclusion_zone`, which is an object with two fields: `other_set`: a structure set reference, and `chunk_count`: an integer between 1 and 16\n* Added optional fields `frequency`: a number between 0 and 1, and `frequency_reduction_method`, which is one of `default`, `legacy_type_1`, `legacy_type_2`, or `legacy_type_3`." }, { "group": "1.19", "version": "22w11a", "tags": [ "worldgen", "structure" ], "content": "Moved `worldgen/configured_structure_feature` to `worldgen/structure` folder." }, { "group": "1.19", "version": "22w11a", "tags": [ "worldgen", "structure" ], "content": "Changed structure fields:\n* Added field `step` which is one of `raw_generation`, `lakes`, `local_modifications`, `underground_structures`, `surface_structures`, `strongholds`, `underground_ores`, `underground_decoration`, `fluid_springs`, `vegetal_decoration`, or `top_layer_modification`.\n* All fields that were in `config` are now in the root.\n* Merged `village`, `bastion_remnant` and `pillager_outpost` types to `jigsaw`, and added the fields `start_height`: a height provider, `project_start_to_heightmap`: an optional heightmap type, and `use_expansion_hack`: a boolean.\n* For the `ruined_portal` type: removed field `portal_type` and replaced it with a weighted list `setups`.\n* For the `mineshaft` type: renamed field `type` \u2192 `mineshaft_type`.\n* Removed fields `probability`, this is instead being controlled by the structure set `frequency` settings." }, { "group": "1.19", "version": "22w11a", "tags": [ "worldgen" ], "content": "Added world presets, stored in the `worldgen/world_preset` directory. It has a single field `dimensions`, which is a map of dimension IDs to dimension settings, previously in the `dimension` folder." }, { "group": "1.19", "version": "22w17a", "tags": [ "options" ], "content": "Added server property `enforce-secure-profile`, which can be either `false` or `true`." }, { "group": "1.19", "version": "22w17a", "tags": [ "loot", "item-modifier" ], "content": "Added item modifier `set_goat_horn_sound`. It has no extra properties, and sets the item's `SoundVariant` NBT tag to a random value between 0 and 3 (inclusive), which are the non screaming goat variants." }, { "group": "1.19", "version": "22w17a", "tags": [ "worldgen", "structure" ], "content": "Added optional field `start_jigsaw_name` for `jigsaw` structures, which is a resource location." }, { "group": "1.19", "version": "22w19a", "tags": [ "options" ], "content": "Added server property `previews-chat`. If true, clients will will be shown a preview of their chat message, decorated by the server." }, { "group": "1.19", "version": "22w19a", "tags": [ "options" ], "content": "Added temporary server property `test-rainbow-chat`. If true, chat will be styled with rainbow colors by the server. This option will be removed in the next snapshot." }, { "group": "1.19", "version": "22w19a", "tags": [ "command" ], "content": "Added a `template` subcommand to `/place` to place structure NBT files, with syntax:\n* `/place template