The first pre-release for 26.3 is here! There are technical changes, but we are now mainly fixing bugs, making improvements and putting on the final touches ahead of release.
Happy mining!
Changes
UI
- On macOS, Exclusive Fullscreen is now available again
- On macOS, added a "Menu/Dock Visibility" option in Video Settings, which controls whether the macOS Menu bar and Dock can be revealed by moving the mouse to the edge of the screen while in fullscreen
- The cursor is now confined to the window while Exclusive Fullscreen is active
Technical Changes
- The Data Pack version is now 119.0
- The Resource Pack version is now 97.1
Data Pack Version 119.0
- The minecraft:number_provider and minecraft:number_provider_type registries have been split into separate registries for integer calculations (minecraft:context_int_provider, minecraft:context_int_provider_type) and float calculations (minecraft:context_float_provider, minecraft:context_float_provider_type)
Number Providers
Number provider types and values have been split into two separate registries: minecraft:context_int_provider and minecraft:context_float_provider to avoid accidental loss of precision and range due to mixing of float and integer operations
Note: those new types should not be confused with already existing minecraft:int_provider_type and minecraft:float_provider_type, which are context-free providers, used mostly for world generation
Following number provider types have been split into integer and float variants:
- minecraft:constant
- minecraft:uniform
- minecraft:storage
- minecraft:sum (renamed to minecraft:add)
- minecraft:product (renamed to minecraft:mul)
- minecraft:minimum (renamed to minecraft:min)
- minecraft:maximum (renamed to minecraft:max)
- minecraft:average (renamed to minecraft:avg)
- minecraft:weighted_list
- minecraft:conditional
- minecraft:number_dispatcher
- minecraft:environment_attribute
Following number providers types are now only available in integer variant:
- minecraft:binomial
- minecraft:score
Following number providers types are now only available in float variant:
- minecraft:enchantment_level
Following vanilla number providers have been migrated to minecraft:context_int_provider registry:
- minecraft:compostable/low
- minecraft:compostable/low_medium
- minecraft:compostable/medium
- minecraft:compostable/medium_high
- minecraft:compostable/always_add_one
- minecraft:cooking/time_bamboo
- minecraft:cooking/time_wool_slabs
- minecraft:cooking/time_wool_carpets
- minecraft:cooking/time_dry_plants
- minecraft:cooking/time_wood_items_extra_small
- minecraft:cooking/time_wool
- minecraft:cooking/time_wood_slabs
- minecraft:cooking/time_wood_items_large
- minecraft:cooking/time_wood_items_small
- minecraft:cooking/time_roots
- minecraft:cooking/time_wood_blocks
- minecraft:cooking/time_hanging_signs
- minecraft:cooking/time_boats
- minecraft:cooking/time_coal
- minecraft:cooking/time_blaze_rod
- minecraft:cooking/time_dried_kelp_block
- minecraft:cooking/time_coal_block
- minecraft:cooking/time_lava_bucket
- minecraft:brewing/uses_default
Following vanilla number providers have been migrated to minecraft:context_float_provider registry:
- minecraft:cooking/speed_default
- minecraft:cooking/normal_speed_multiplier
- minecraft:cooking/fast_speed_multiplier
- minecraft:brewing/speed_default
Following vanilla number providers have been removed:
- minecraft:cooking/normal_burn_time_multiplier (replaced by minecraft:cooking/normal_burn_time_reduction_factor)
- minecraft:cooking/fast_burn_time_multiplier (replaced by minecraft:cooking/fast_burn_time_reduction_factor)
Integer Number Providers
- Added the minecraft:context_int_provider registry
- All calculations are performed using 32-bit integers
- Result of calculations that provide invalid values (like division by zero) is undefined
- Format:
- type - a namespaced ID from minecraft:context_int_provider_type registry
- <type-specific fields>
Added minecraft:abs
- Returns the absolute value of input
- If the final result does not fit inside 32-bit integer, calculation will be canceled
- Fields:
- input - an inline value or a namespaced ID of a minecraft:context_int_provider type
Added minecraft:avg
- Evaluates multiple integer providers and returns arithmetic mean of results
- Division rounds towards 0
- Fields:
- inputs - an inline value, a single namespaced ID, a list of namespaced IDs, a list of inline values, or a hash-prefixed tag ID of a minecraft:context_int_provider type
- Requires at least one value
- inputs - an inline value, a single namespaced ID, a list of namespaced IDs, a list of inline values, or a hash-prefixed tag ID of a minecraft:context_int_provider type
Added minecraft:binomial
- Makes n random coin flips with probability of succeeding equal to p, then returns number of successes
- Fields:
- n - number of coin flips, an inline value or a namespaced ID of a minecraft:context_int_provider type
- p - probability of a single coin flip succeeding ([0.0, 1.0]), an inline value or a namespaced ID of a minecraft:context_float_provider type
Added minecraft:conditional
- Returns the value from on_true if its condition is fulfilled or on_false if not
- Fields:
- conditions - an inline value or a namespaced ID of a minecraft:predicate type
- on_true - an inline value or a namespaced ID of a minecraft:context_int_provider type which is executed if its condition is fulfilled
- on_false - an optional inline value or a namespaced ID of a minecraft:context_int_provider type
- Defaults to a constant 0 if omitted
Added minecraft:constant
- Returns a constant value
- Fields:
- value - an integer
- Can be also written inline as a plain number (foo: 1 is equivalent to foo: {type:"minecraft:constant",value:1})
Added minecraft:sub
- Returns left minus right
- If the final result does not fit inside 32-bit integer, calculation will be canceled
- Fields:
- left - an inline value or a namespaced ID of a minecraft:context_int_provider type
- right - an inline value or a namespaced ID of a minecraft:context_int_provider type
Added minecraft:from_float
- Evaluates a float provider and converts it to an integer value
- Noninteger values will be truncated (i.e. rounded towards zero)
- Values that don't fit inside 32-bit integer (including NaN) are treated as errors and will cancel calculation
- Fields:
- input - an inline value or a namespaced ID of a minecraft:context_float_provider type
Added minecraft:max
- Evaluates multiple integer providers and returns the largest of results
- Fields:
- inputs - an inline value, a single namespaced ID, a list of namespaced IDs, a list of inline values, or a hash-prefixed tag ID of a minecraft:context_int_provider type
- Requires at least one value
- inputs - an inline value, a single namespaced ID, a list of namespaced IDs, a list of inline values, or a hash-prefixed tag ID of a minecraft:context_int_provider type
Added minecraft:min
- Evaluates multiple integer providers and returns the smallest of results
- Fields:
- inputs - an inline value, a single namespaced ID, a list of namespaced IDs, a list of inline values, or a hash-prefixed tag ID of a minecraft:context_int_provider type
- Requires at least one value
- inputs - an inline value, a single namespaced ID, a list of namespaced IDs, a list of inline values, or a hash-prefixed tag ID of a minecraft:context_int_provider type
Added minecraft:mod
- Returns the modulus of left by right
- Uses truncated integer division (rounds towards zero)
- Division by zero is treated as an error and will cancel calculation
- Fields:
- left - an inline value or a namespaced ID of a minecraft:context_int_provider type
- right - an inline value or a namespaced ID of a minecraft:context_int_provider type
Added minecraft:floor_mod
- Returns the modulus of left by right
- Uses floored integer division (rounds towards negative infinity)
- Division by zero is treated as an error and will cancel calculation
- Fields:
- left - an inline value or a namespaced ID of a minecraft:context_int_provider type
- right - an inline value or a namespaced ID of a minecraft:context_int_provider type
Added minecraft:environment_attribute
- Fetches and provides the value of an Environment Attribute (minecraft:environment_attribute)
- Fields
- attribute - Environment Attribute ID to fetch (must be representable as an int)
Added minecraft:negate
- Returns the negation of input
- If the final result does not fit inside 32-bit integer, calculation will be canceled
- Fields:
- input - an inline value or a namespaced ID of a minecraft:context_int_provider type
Added minecraft:number_dispatcher
- Returns the first case which fulfills its condition or the default if none do
- Fields:
- cases - a list of cases in the order that the dispatcher will try to execute them
- Fields:
- condition - an inline value or a namespaced ID of a minecraft:predicate type
- value - an inline value or a namespaced ID of a minecraft:context_int_provider type which is executed if the condition is fulfilled
- Fields:
- default - an optional inline value or a namespaced ID of a minecraft:context_int_provider type
- Defaults to a constant 0 if omitted
- cases - a list of cases in the order that the dispatcher will try to execute them
Added minecraft:pow
- Returns base to the power of exponent
- If the exponent is negative, calculation will be canceled
- If both the base and the exponent are zero, calculation will be canceled
- If the final result does not fit inside 32-bit integer, calculation will be canceled
- Fields:
- base - an inline value or a namespaced ID of a minecraft:context_int_provider type
- exponent - an inline value or a namespaced ID of a minecraft:context_int_provider type
Added minecraft:mul
- Evaluates multiple integer providers and returns product of results
- If the final result does not fit inside 32-bit integer, calculation will be canceled
- Fields:
- inputs - an inline value, a single namespaced ID, a list of namespaced IDs, a list of inline values, or a hash-prefixed tag ID of a minecraft:context_int_provider type
- Requires at least one value
- inputs - an inline value, a single namespaced ID, a list of namespaced IDs, a list of inline values, or a hash-prefixed tag ID of a minecraft:context_int_provider type
Added minecraft:div
- Returns left divided by right
- Uses truncated integer division (rounds towards zero)
- Division by zero is treated as an error and will cancel calculation
- Fields:
- left - an inline value or a namespaced ID of a minecraft:context_int_provider type
- right - an inline value or a namespaced ID of a minecraft:context_int_provider type
Added minecraft:floor_div
- Returns left divided by right
- Uses floored integer division (rounds towards negative infinity)
- Division by zero is treated as an error and will cancel calculation
- If the final result does not fit inside 32-bit integer, calculation will be canceled
- Fields:
- left - an inline value or a namespaced ID of a minecraft:context_int_provider type
- right - an inline value or a namespaced ID of a minecraft:context_int_provider type
Added minecraft:score
- Returns a score of the selected target
- If score is not present, provider returns value of fallback
- Fields:
- score - objective name
- target - score holder (same format as in number provider version)
- fallback - an optional inline value or a namespaced ID of a minecraft:context_int_provider type, defaults to 0
Added minecraft:storage
- Returns an integer value from a command storage
- If value is not present, is not a number or path returned multiple values, provider returns value of fallback
- Conversion of numeric NBT values that are not an integer is undefined
- Fields:
- storage - a namespaced ID of a command storage
- path - an NBT path
- fallback - an optional inline value or a namespaced ID of a minecraft:context_int_provider type, defaults to 0
Added minecraft:add
- Evaluates multiple integer providers and returns sum of results
- If the final result does not fit inside 32-bit integer, calculation will be canceled
- Fields:
- inputs - an inline value, a single namespaced ID, a list of namespaced IDs, a list of inline values, or a hash-prefixed tag ID of a minecraft:context_int_provider type
- Requires at least one value
- inputs - an inline value, a single namespaced ID, a list of namespaced IDs, a list of inline values, or a hash-prefixed tag ID of a minecraft:context_int_provider type
Added minecraft:uniform
- Picks a random integer from a closed range
- Fields:
- min - minimum value (inclusive), an inline value or a namespaced ID of a minecraft:context_int_provider type
- max - maximum value (inclusive), an inline value or a namespaced ID of a minecraft:context_int_provider type
Added minecraft:weighted_list
- Returns a value from a distribution of weighted number providers
- Fields:
- distribution - a list of objects with the following fields
- Fields:
- data - an inline value or a namespaced ID of a minecraft:context_int_provider type
- weight - a positive integer
- Fields:
- distribution - a list of objects with the following fields
Float Number Providers
- Added a minecraft:context_float_provider registry
- All calculations are peformed using single-precision floating-point numbers ("floats")
- Result of calculations that produce NaN and Infinity is undefined
- Format:
- type - a namespaced ID from minecraft:context_float_provider_type registry
- <type-specific fields>
Added vanilla float number providers
- minecraft:cooking/speed_default
- Returns the default speed multiplier for cooking fuel
- minecraft:cooking/normal_speed_multiplier
- Returns the speed multiplier for cooking fuel when used in a normal furnace
- minecraft:cooking/fast_speed_multiplier
- Returns the speed multiplier for cooking fuel when used in a block matching the block/fast_cooking predicate
- minecraft:brewing/speed_default
- Returns the default speed multiplier for brewing fuel
Added minecraft:abs
- Returns the absolute value of input
- Fields:
- input - an inline value or a namespaced ID of a minecraft:context_float_provider type
Added minecraft:avg
- Evaluates multiple float providers and returns arithmetic mean of results
- Fields:
- inputs - an inline value, a single namespaced ID, a list of namespaced IDs, a list of inline values, or a hash-prefixed tag ID of a minecraft:context_float_provider type
- Requires at least one value
- inputs - an inline value, a single namespaced ID, a list of namespaced IDs, a list of inline values, or a hash-prefixed tag ID of a minecraft:context_float_provider type
Added minecraft:ceil
- Returns the ceiling (i.e. rounded towards positive infinity) value of input
- Fields:
- input - an inline value or a namespaced ID of a minecraft:context_float_provider type
Added minecraft:conditional
- Returns the value from on_true if its condition is fulfilled or on_false if not
- Fields:
- conditions - an inline value or a namespaced ID of a minecraft:predicate type
- on_true - an inline value or a namespaced ID of a minecraft:context_float_provider type which is executed if its condition is fulfilled
- on_false - an optional inline value or a namespaced ID of a minecraft:context_float_provider type
- Defaults to a constant 0.0 if omitted
Added minecraft:constant
- Returns a constant value
- Fields:
- value - a float
- Can be also written inline as a plain number (foo: 1.0 is equivalent to foo: {type:"minecraft:constant",value:1.0})
Added minecraft:cos
- Returns the cosine of input
- Fields:
- input - argument in radians, an inline value or a namespaced ID of a minecraft:context_float_provider type
Added minecraft:sub
- Returns left minus right
- Fields:
- left - an inline value or a namespaced ID of a minecraft:context_float_provider type
- right - an inline value or a namespaced ID of a minecraft:context_float_provider type
Added minecraft:enchantment_level
- Evaluates Enchantment Level-Based (minecraft:enchantment_level_based_value_type) parameter
- Fields:
- amount: A Level-Based Value giving a value based on the level of the Enchantment
Added minecraft:environment_attribute
- Fetches and provides the value of an Environment Attribute (minecraft:environment_attribute)
- Fields
- attribute - Environment Attribute ID to fetch (must be representable as a float)
Added minecraft:floor
- Returns the floored (i.e. rounded towards negative infinity) value of input
- Fields:
- input - an inline value or a namespaced ID of a minecraft:context_float_provider type
Added minecraft:from_int
- Evaluates an integer provider and converts it to a float value
- Fields:
- input - an inline value or a namespaced ID of a minecraft:context_int_provider type
Added minecraft:length
- Evaluates multiple float providers and returns square root of the sum of squares
- Fields:
- inputs - an inline value, a single namespaced ID, a list of namespaced IDs, a list of inline values, or a hash-prefixed tag ID of a minecraft:context_float_provider type
- Requires at least one value
- inputs - an inline value, a single namespaced ID, a list of namespaced IDs, a list of inline values, or a hash-prefixed tag ID of a minecraft:context_float_provider type
Added minecraft:max
- Evaluates multiple float providers and returns the largest of result
- Fields:
- inputs - an inline value, a single namespaced ID, a list of namespaced IDs, a list of inline values, or a hash-prefixed tag ID of a minecraft:context_float_provider type
- Requires at least one value
- inputs - an inline value, a single namespaced ID, a list of namespaced IDs, a list of inline values, or a hash-prefixed tag ID of a minecraft:context_float_provider type
Added minecraft:min
- Evaluates multiple float providers and returns the smallest of results
- Fields:
- inputs - an inline value, a single namespaced ID, a list of namespaced IDs, a list of inline values, or a hash-prefixed tag ID of a minecraft:context_float_provider type
- Requires at least one value
- inputs - an inline value, a single namespaced ID, a list of namespaced IDs, a list of inline values, or a hash-prefixed tag ID of a minecraft:context_float_provider type
Added minecraft:mod
- Returns the modulus of left by right
- Fields:
- left - an inline value or a namespaced ID of a minecraft:context_float_provider type
- right - an inline value or a namespaced ID of a minecraft:context_float_provider type
Added minecraft:negate
- Returns the negation of input
- Fields:
- input - an inline value or a namespaced ID of a minecraft:context_float_provider type
Added minecraft:number_dispatcher
- Returns the first case which fulfills its condition or the default if none do
- Fields:
- cases - a list of cases in the order that the dispatcher will try to execute them
- Fields:
- condition - an inline value or a namespaced ID of a minecraft:predicate type
- value - an inline value or a namespaced ID of a minecraft:context_float_provider type which is executed if the condition is fulfilled
- Fields:
- default - an optional inline value or a namespaced ID of a minecraft:context_float_provider type
- Defaults to a constant 0.0 if omitted
- cases - a list of cases in the order that the dispatcher will try to execute them
Added minecraft:pow
- Returns base to the power of exponent
- Fields:
- base - an inline value or a namespaced ID of a minecraft:context_float_provider type
- exponent - an inline value or a namespaced ID of a minecraft:context_float_provider type
Added minecraft:mul
- Evaluates multiple float providers and returns product of results
- Fields:
- inputs - an inline value, a single namespaced ID, a list of namespaced IDs, a list of inline values, or a hash-prefixed tag ID of a minecraft:context_float_provider type
- Requires at least one value
- inputs - an inline value, a single namespaced ID, a list of namespaced IDs, a list of inline values, or a hash-prefixed tag ID of a minecraft:context_float_provider type
Added minecraft:div
- Returns left divided by right
- Fields:
- left - an inline value or a namespaced ID of a minecraft:context_float_provider type
- right - an inline value or a namespaced ID of a minecraft:context_float_provider type
Added minecraft:round
- Returns the rounded (towards nearest integer, with ties rounding towards positive infinity) value of input
- Fields:
- input - an inline value or a namespaced ID of a minecraft:context_float_provider type
Added minecraft:sin
- Returns the sine of input
- Fields:
- input - argument in radians, an inline value or a namespaced ID of a minecraft:context_float_provider type
Added minecraft:sqrt
- Returns the square root of input
- Fields:
- input - an inline value or a namespaced ID of a minecraft:context_float_provider type
Added minecraft:storage
- Returns a float value from a command storage
- If value is not present, is not a number or path returned multiple values, provider returns value of fallback
- Conversion of numeric NBT values that are not a float is undefined
- Fields:
- storage - a namespaced ID of a command storage
- path - an NBT path
- fallback - an optional inline value or a namespaced ID of a minecraft:context_float_provider type, defaults to 0.0
Added minecraft:add
- Evaluates multiple float providers and returns sum of results
- Fields:
- inputs - an inline value, a single namespaced ID, a list of namespaced IDs, a list of inline values, or a hash-prefixed tag ID of a minecraft:context_float_provider type
- Requires at least one value
- inputs - an inline value, a single namespaced ID, a list of namespaced IDs, a list of inline values, or a hash-prefixed tag ID of a minecraft:context_float_provider type
Added minecraft:truncate
- Returns the truncated (rounded towards zero) value of input
- Fields:
- input - an inline value or a namespaced ID of a minecraft:context_float_provider type
Added minecraft:uniform
- Picks a random number from a range
- Fields:
- min - minimum value, an inline value or a namespaced ID of a minecraft:context_float_provider type
- max - maximum value, an inline value or a namespaced ID of a minecraft:context_float_provider type
Added minecraft:weighted_list
- Returns a value from a distribution of weighted number providers
- Fields:
- distribution - a list of objects with the following fields
- Fields:
- data - an inline value or a namespaced ID of a minecraft:context_float_provider type
- weight - a positive integer
- Fields:
- distribution - a list of objects with the following fields
Villager Trades
- The max_uses and xp fields now require an inline value of a minecraft:context_int_provider type
- The count field in wants and additional_wants structures now require an inline value of a minecraft:context_int_provider type
- The reputation_discount field now requires an inline value of a minecraft:context_float_provider type
Commands
Modified /compute
-
Command syntax has been modified to take into account number provider split:
- /compute <target> integer <int_provider>
- where <int_provider> either an element of minecraft:context_int_provider registry or an inline value
- /compute <target> float <float_provider> [<scale>]
- where <float_provider> either an element of minecraft:context_float_provider registry or an inline value
- /compute <target> integer <int_provider>
-
If evaluation of a number provider fails (for example due to division by zero), command will now fail
Modified /data
- Command syntax has been modified to take into account number provider split:
- compute <target> integer <int_provider>
- compute <target> float <float_provider>
Data Components
Changed minecraft:cooking_fuel
- burn_time field is now minecraft:context_int_provider
- speed_multiplier field is now minecraft:context_float_provider
- Cooking fuel items with remainders will be handled as follows
- If there is fuel remaining in the fuel slot, the remainder item will be dropped on the ground
- If the fuel has run out, the remainder item will remain in the fuel slot
Changed minecraft:brewing_fuel
- uses field is now minecraft:context_int_provider
- speed_multiplier field is now minecraft:context_float_provider
- Brewing fuel items with remainders will be handled as follows
- If there is fuel remaining in the fuel slot, the remainder item will be dropped on the ground
- If the fuel has run out, the remainder item will remain in the fuel slot
- This behavior matches items placed in the input and reagent slots of the brewing stand
Changed minecraft:compostable
- layers field is now minecraft:context_int_provider
Loot tables
- rolls field is now minecraft:context_int_provider
- bonus_rolls field is now minecraft:context_float_provider
Functions
Changed minecraft:set_attributes
- Number providers in amount sub-fields of modifiers list now accept an inline value or a namespaced ID of a minecraft:context_float_provider type
Changed minecraft:enchanted_count_increase
- The count field now accepts an inline value or a namespaced ID of a minecraft:context_float_provider type
Changed minecraft:enchant_with_levels
- The levels field now accepts an inline value or a namespaced ID of a minecraft:context_int_provider type
Changed minecraft:set_custom_model_data
- Elements in the floats list can now be an inline value or a namespaced ID of a minecraft:context_float_provider type
- Elements in the colors lists can now be an inline value or a namespaced ID of a minecraft:context_int_provider type
Changed minecraft:set_enchantments
- Values in enchantments map can now be an inline value or a namespaced ID of a minecraft:context_int_provider type
Changed minecraft:set_count
- The count field now accepts an inline value or a namespaced ID of a minecraft:context_int_provider type
Changed minecraft:limit_count
- The min and max fields inside limit structure now accept an inline value or a namespaced ID of a minecraft:context_int_provider type
- limit field no longer accepts a single number
Changed minecraft:set_damage
- The damage field now accepts an inline value or a namespaced ID of a minecraft:context_float_provider type
Changed minecraft:set_ominous_bottle_amplifier
- The amplifier field now accepts an inline value or a namespaced ID of a minecraft:context_int_provider type
Changed minecraft:set_random_dyes
- The number_of_dyes field now accepts an inline value or a namespaced ID of a minecraft:context_int_provider type
Changed minecraft:set_stew_effect
- The duration field in elements of effects list now accepts an inline value or a namespaced ID of a minecraft:context_int_provider type
Predicates
Changed minecraft:random_chance
- The chance field now accepts an inline value or a namespaced ID of a minecraft:context_float_provider type
Removed minecraft:value_check
- This condition has been split into integer and float variants
Added minecraft:int_value_check
- Checks value against some range
Fields:
- value - an inline value or a namespaced ID of a minecraft:context_int_provider type
- test - one of:
- an inline value (including a single integer) or a namespaced ID of a minecraft:context_int_provider type
- Will test if result of value is equal to provided test value
- an object with fields:
- min - an optional inline value (including a single integer) or a namespaced ID of a minecraft:context_int_provider type
- max - an optional inline value (including a single integer) or a namespaced ID of a minecraft:context_int_provider type
- Will test if result of value is between min and max (inclusive)
- an inline value (including a single integer) or a namespaced ID of a minecraft:context_int_provider type
Added minecraft:float_value_check
- Checks value against some range
Fields:
- value - an inline value or a namespaced ID of a minecraft:context_float_provider type
- test - one of:
- an inline value (including a single float) or a namespaced ID of a minecraft:context_float_provider type
- Will test if result of value is equal to provided test value
- an object with fields:
- min - an optional inline value (including a single float) or a namespaced ID of a minecraft:context_float_provider type
- max - an optional inline value (including a single float) or a namespaced ID of a minecraft:context_float_provider type
- Will test if result of value is between min and max (inclusive)
- an inline value (including a single float) or a namespaced ID of a minecraft:context_float_provider type
Changed minecraft:time_check
- The min and max fields inside value structure now accept an inline value or a namespaced ID of a minecraft:context_int_provider type
- value field itself now accepts an inline value or a namespaced ID of a minecraft:context_int_provider type (previously only integers were allowed)
Changed minecraft:entity_scores
- The min and max fields inside values of scores map now accept an inline value or a namespaced ID of a minecraft:context_int_provider type
- scores field itself now accepts an inline value or a namespaced ID of a minecraft:context_int_provider type (previously only integers were allowed)
Recipes
Cooking Recipes
-
The cookingtime field of all cooking recipes is no longer optional
-
Custom Smoker and Blast Furnace recipes should be updated accordingly, by setting cookingtime to twice the previous value
-
If a custom cooking recipe was previously relying on the default cookingtime value, 200 can be used to maintain the same timing
World Generation
Block State Providers
Block State Providers can now be defined as standalone types in a registry - worldgen/block_state_provider- and referenced by using a namespaced string for a field that expects a Block State Provider.
An inline Block State definition is now an accepted shorthand form for a minecraft:simple block state provider providing that state. The Block State has to be in the form of an object with fields, a shorthand Block ID is not allowed.
Renamed Provider Types
The following providers types have been renamed:
- minecraft:dual_noise_provider renamed to minecraft:dual_noise
- minecraft:noise_provider renamed to minecraft:noise
- minecraft:noise_threshold_provider renamed to minecraft:noise_threshold
- minecraft:randomized_int_state_provider renamed to minecraft:randomized_int
- minecraft:rule_based_state_provider renamed to minecraft:rule_based
- minecraft:simple_state_provider renamed to minecraft:simple
- minecraft:weighted_state_provider renamed to minecraft:weighted
- minecraft:random_block_provider renamed to minecraft:random_block
- minecraft:rotated_block_provider renamed to minecraft:rotated
Changed minecraft:rule_based
- If a rule yields no result, the following rules will be evaluated
- If no rule or fallback yields a result, will now also yield no result
Villager Trades
- The max_uses and xp fields now require an inline value of a minecraft:context_int_provider type
- The count field in wants and additional_wants structures now require an inline value of a minecraft:context_int_provider type
- The reputation_discount field now requires an inline value of a minecraft:context_float_provider type
Tags
Item Tags
- Added #furnace_fuel_bottom_takeable - Items that can be taken out of furnace by a hopper attached to the bottom face
Resource Pack Version 97.1
Order-independent Transparency (OIT)-related Shader Changes
- core/blit_depth.fsh added as a way to copy contents of depth textures as an alternative to the rendering backend-based copying methods that do not work on some devices
Fixed bugs in 26.3 Pre-Release 1
- MC-154881 - Dropping an item from your hotbar at the same time as switching to another hotbar slot desyncs the second item
- MC-254370 - The entity_scores predicate type cannot check all possible scores
- MC-270970 - The player's camera shakes when attempting to step up blocks with a boat above them
- MC-277906 - Ender pearls land incorrectly at high speeds
- MC-309768 - Persistent targets in post_effects are not cleared when removing the effect with /posteffect
- MC-309855 - The entity texture of black cushions has one extra color compared to all other cushions
- MC-309870 - Drowned holding spears can use both the jab and charge attacks at the same time
- MC-310289 - Entity collisions fully above an entity's hitbox are ignored when stepping up blocks
- MC-310331 - The game crashes on Wayland with the OpenGL rendering backend
- MC-310332 - The mouse cursor's position isn't updated after closing a singleplayer world and entering the title screen
- MC-310522 - Pressing Right Shift in textboxes toggles fullscreen under specific conditions
- MC-310646 - The textures of shelf mushrooms contain several unused pixels
- MC-310710 - A few maps' item textures have inconsistent details compared to the others
- MC-310712 - Using a Nether portal in Spectator mode while spectating an entity now causes the player to stop spectating when the other side is not generated
- MC-310830 - The scissor bounds check ignores the render area's Y offset
- MC-310957 - The player is unable to perform a sweep attack for a brief moment after blocking an attack with their shield
- MC-310990 - The "Join Realm" button can extend out of the screen
- MC-311037 - The same "Join Realm" string is used for two buttons with different meanings
- MC-311129 - Dappled forests use the music.overworld.flower_forest sound event instead of music.overworld.forest
- MC-311183 - Fuel in blast furnaces and smokers smelts double the items
- MC-311222 - NBT to SNBT data generators crash when attempting to convert old NBT files
- MC-311236 - The block_transformer component ignores the use_cooldown component
- MC-311274 - The default value of the cookingtime field for blasting and smoking recipes is still 100
- MC-311297 - Keyboard input is picked up by input methods even when no text input box is selected
- MC-311298 - On certain locales, pressing Right Shift while the "Toggle Cinematic Camera" key bind is unbound will toggle it
- MC-311364 - Category headers in some screens still can't be selected
- MC-311369 - The World Options screen is not centered
- MC-311372 - Endermen can now teleport onto waterlogged blocks
- MC-311384 - Empty buried treasure maps from previous updates are called "filled_map.buried_treasure"
- MC-311390 - The swimming animation of drowned is incorrect
- MC-311391 - Leaving the Enter Join Code screen always brings you to the main Realms screen
- MC-311399 - Enabling commands in the World Options screen and clicking "Edit Game Rules" shows an infinite loading screen
- MC-311400 - Arrows now bounce off endermen even when they teleport
- MC-311414 - Players can teleport arbitrary distances by using a desynced carrot on a stick on a pig
- MC-311423 - Moving then opening the inventory does not allow input from IME, and switching the input method immediately inserts previous inputs
- MC-311428 - Number providers lose precision when reading the initial values in integer mode
- MC-311431 - Abandoned camps located on biome edges can generate explorer maps leading to themselves
- MC-311472 - Turning off commands on the World Options screen doesn't properly reset the personal game mode
- MC-311478 - Copper veins generate ores with stone variants on the deepslate layer
- MC-311486 - Veins of deepslate iron ore and tuff now generate above y=0
- MC-311546 - Locking the difficulty of a world doesn't immediately disable the difficulty button
Get the Pre-Release
Pre-Releases are available for Minecraft: Java Edition. To install the Pre-Release, open up the Minecraft Launcher and enable snapshots in the "Installations" tab.
Testing versions can corrupt your world, so please backup and/or run them in a different folder from your main worlds.
Cross-platform server jar:
Report bugs here:
Want to give feedback?
- For any feedback and suggestions, head over to the Feedback site. If you're feeling chatty, join us over at the official Minecraft Discord.
Share this story