Generated Pale Oak trees with Creaking Hearts are rarer than in Java Edition
The Pale Oak Java feature definition contains the following weights:
{ "chance": 0.2, "feature": "minecraft:pale_oak_creaking_checked" },
{ "chance": 0.8, "feature": "minecraft:pale_oak_checked" }
Which comes out to a 20% chance of a Pale Heart Oak of being selected.
However, on Bedrock Edition, the Pale Oak feature is defined as follows:
[ "minecraft:pale_oak_tree_with_decoration_feature", 9 ], [ "minecraft:pale_oak_tree_with_creaking_heart_feature", 1 ]
Which comes out to a 10% chance of a Pale Heart Oak being selected for generation.
However, the feature weights do not significantly affect the outcome of the Heart generate due to Bedrock only scanning the northeast quadrant of the 2x2 trunk of the Pale Oak for a suitable location. Java Edition, on the other hand, allows Hearts to be placed in all four quadrants of the Pale Oak trunk. This not only causes far fewer Hearts to be generated, it also means the player always knows which corner of the oak to search when confronted by a Creaking.
Here is a table illustrating the stark differences between snapshot 22w44a and newer and Bedrock 1.21.50.28:
Seed XLoc ZLoc Java count Bedrock count -1106759604738884840 0 0 16 3 -270 380 82 40 -480 1000 1 3 -7715933454100370463 -80 -40 19 8 -380 0 19 7 -700 80 2 0 -990 -80 1 2 970220026128112722 -4900 -560 4 1 1920 1950 1 0 5814430461651672175 -700 1050 8 1 -4971446989647199504 -560 200 12 1 -600 620 13 6 -3542109416978120429 580 2800 30 11
Bedrock had more Hearts in only two edge case with small Pale Garden biomes where the search and branch generation worked in its favor. In every other case, there are fewer (and often far fewer) Hearts in the biome.
One way to fix this is to increase the search to a 2x2 grid, raise the Y start from 0 to 3 to make up for the extra computational requirements, and even split the Creaking Heart Pale Oak feature into two subfeatures where the search will sometimes start at the bottom (Y 3) and sometimes start from the top (Y 6). Because there are more branches at the top, successful placements are more likely after the first row at Y 6, which should help reduce the cost of increasing the X and Z search grid.
If 2x2 is altogether too expensive to run on mobile devices perhaps remove the Heart placement check feature and instead modify the minecraft:tree_feature to include the ability to place a single block during its branch generation?
I added the latest iteration of the add-on I was using to test different generation strategies here: CreakingHeartParity.mcaddon
. It sacrifices vertical variety for horizontal variety. The 2x2 check is done on the XZ, but the Y is now limited to rows 4, 5, and 6 in the trunk. The weight for generating a non-Heart tree is also increased, improving performance since the 2x2 check provided more than enough Hearts. (Odds of a Heart-containing Pale Oak in this addon are 7.6%, down from the default of 10%.) It seems to run smoothly enough at 50 chunks of render distance and 12 chunks of simulation distance; however, I am using a beefy PC.
Steps to Reproduce:
- Create a new world in Creative Mode and locate a Pale Garden biome.
- Move around using /fill ~-20 ~ ~-20 ~20 ~8 ~20 air replace pale_oak_log and /fill ~-20 ~ ~-20 ~20 ~8 ~20 air replace pale_oak_leaves to clear the garden.
Expected Results:
The number of Pale Hearts should roughly match that of Java Edition.
Observed Results:
On Bedrock there are far fewer Pale Hearts available to the player, and in certain circumstances, none, even in medium sized Pale Garden biomes.
Created Issue:
Generated Pale Oak trees with Creaking Hearts generate are rarer than in Java Edition
The Pale Oak Java feature definition contains the following weights:
{ "chance": 0.2, "feature": "minecraft:pale_oak_creaking_checked" },
{ "chance": 0.8, "feature": "minecraft:pale_oak_checked" }Which comes out to a 20% chance of a Pale Heart Oak of being selected.
However, on Bedrock Edition, the Pale Oak feature is defined as follows:
[ "minecraft:pale_oak_tree_with_decoration_feature", 9 ],
[ "minecraft:pale_oak_tree_with_creaking_heart_feature", 1 ]Which comes out to a 10% chance of a Pale Heart Oak being selected for generation.
The Bedrock feature weights should be changed to 8 and 2 to bring it into parity.
Steps to Reproduce:
- Create a new world in Creative Mode and locate a Pale Garden biome.
- Move around using /fill ~-20 ~ ~-20 ~20 ~8 ~20 air replace pale_oak_log and /fill ~-20 ~ ~-20 ~20 ~8 ~20 air replace pale_oak_leaves to clear the garden.
Expected Results:
The number of Pale Hearts should roughly match that of Java Edition.
Observed Results:
On Bedrock there are roughly half the number Pale Hearts available to the player.
The Pale Oak Java feature definition contains the following weights:
{ "chance": 0.2, "feature": "minecraft:pale_oak_creaking_checked" },
{ "chance": 0.8, "feature": "minecraft:pale_oak_checked" }Which comes out to a 20% chance of a Pale Heart Oak of being selected.
However, on Bedrock Edition, the Pale Oak feature is defined as follows:[ "minecraft:pale_oak_tree_with_decoration_feature", 9 ],
[ "minecraft:pale_oak_tree_with_creaking_heart_feature", 1 ]Which comes out to a 10% chance of a Pale Heart Oak being selected for generation.
The Bedrock feature weights should be changed to 8 and 2 to bring it into parity.
Steps to Reproduce:
- Create a new world in Creative Mode and locate a Pale Garden biome.
- Move around using /fill ~-20 ~ ~-20 ~20 ~8 ~20 air replace pale_oak_log and /fill ~-20 ~ ~-20 ~20 ~8 ~20 air replace pale_oak_leaves to clear the garden.
Expected Results:
The number of Pale Hearts should roughly match that of Java Edition.
Observed Results:
On Bedrock there are roughly half the number Pale Hearts available to the player.
The Pale Oak Java feature definition contains the following weights:
{ "chance": 0.2, "feature": "minecraft:pale_oak_creaking_checked" }, { "chance": 0.8, "feature": "minecraft:pale_oak_checked" }Which comes out to a 20% chance of a Pale Heart Oak of being selected.
However, on Bedrock Edition, the Pale Oak feature is defined as follows:
[ "minecraft:pale_oak_tree_with_decoration_feature", 9 ], [ "minecraft:pale_oak_tree_with_creaking_heart_feature", 1 ]Which comes out to a 10% chance of a Pale Heart Oak being selected for generation.
The Bedrock feature weights should be changed to 8 and 2 to bring it into parity.
Steps to Reproduce:
- Create a new world in Creative Mode and locate a Pale Garden biome.
- Move around using /fill ~-20 ~ ~-20 ~20 ~8 ~20 air replace pale_oak_log and /fill ~-20 ~ ~-20 ~20 ~8 ~20 air replace pale_oak_leaves to clear the garden.
Expected Results:
The number of Pale Hearts should roughly match that of Java Edition.
Observed Results:
On Bedrock there are roughly half the number Pale Hearts available to the player.
Generated Pale Oak trees with Creaking Heartsgenerateare rarer than in Java Edition
is duplicated by
The Pale Oak Java feature definition contains the following weights:
{ "chance": 0.2, "feature": "minecraft:pale_oak_creaking_checked" }, { "chance": 0.8, "feature": "minecraft:pale_oak_checked" }Which comes out to a 20% chance of a Pale Heart Oak of being selected.
However, on Bedrock Edition, the Pale Oak feature is defined as follows:
[ "minecraft:pale_oak_tree_with_decoration_feature", 9 ], [ "minecraft:pale_oak_tree_with_creaking_heart_feature", 1 ]Which comes out to a 10% chance of a Pale Heart Oak being selected for generation.
The Bedrock feature weights should be changed to 8 and 2 to bring it into parity.
Steps to Reproduce:
- Create a new world in Creative Mode and locate a Pale Garden biome.
- Move around using /fill ~-20 ~ ~-20 ~20 ~8 ~20 air replace pale_oak_log and /fill ~-20 ~ ~-20 ~20 ~8 ~20 air replace pale_oak_leaves to clear the garden.
Expected Results:
The number of Pale Hearts should roughly match that of Java Edition.
Observed Results:
On Bedrock there are
roughly half the number Pale Hearts available to the player.The Pale Oak Java feature definition contains the following weights:
{ "chance": 0.2, "feature": "minecraft:pale_oak_creaking_checked" }, { "chance": 0.8, "feature": "minecraft:pale_oak_checked" }Which comes out to a 20% chance of a Pale Heart Oak of being selected.
However, on Bedrock Edition, the Pale Oak feature is defined as follows:
[ "minecraft:pale_oak_tree_with_decoration_feature", 9 ], [ "minecraft:pale_oak_tree_with_creaking_heart_feature", 1 ]Which comes out to a 10% chance of a Pale Heart Oak being selected for generation.
The Bedrock feature weights should be changed to 8 and 2 to bring it into parity.
Steps to Reproduce:
- Create a new world in Creative Mode and locate a Pale Garden biome.
- Move around using /fill ~-20 ~ ~-20 ~20 ~8 ~20 air replace pale_oak_log and /fill ~-20 ~ ~-20 ~20 ~8 ~20 air replace pale_oak_leaves to clear the garden.
Expected Results:
The number of Pale Hearts should roughly match that of Java Edition.
Observed Results:
On Bedrock there are far fewer Pale Hearts available to the player, and in certain circumstances, none, even in medium sized Pale Garden biomes.
is duplicated by
The Pale Oak Java feature definition contains the following weights:
{ "chance": 0.2, "feature": "minecraft:pale_oak_creaking_checked" }, { "chance": 0.8, "feature": "minecraft:pale_oak_checked" }Which comes out to a 20% chance of a Pale Heart Oak of being selected.
However, on Bedrock Edition, the Pale Oak feature is defined as follows:
[ "minecraft:pale_oak_tree_with_decoration_feature", 9 ], [ "minecraft:pale_oak_tree_with_creaking_heart_feature", 1 ]Which comes out to a 10% chance of a Pale Heart Oak being selected for generation.
The Bedrock feature weights should be changed to 8 and 2 to bring it into parity.
Steps to Reproduce:
- Create a new world in Creative Mode and locate a Pale Garden biome.
- Move around using /fill ~-20 ~ ~-20 ~20 ~8 ~20 air replace pale_oak_log and /fill ~-20 ~ ~-20 ~20 ~8 ~20 air replace pale_oak_leaves to clear the garden.
Expected Results:
The number of Pale Hearts should roughly match that of Java Edition.
Observed Results:
On Bedrock there are far fewer Pale Hearts available to the player, and in certain circumstances, none, even in medium sized Pale Garden biomes.
The Pale Oak Java feature definition contains the following weights:
{ "chance": 0.2, "feature": "minecraft:pale_oak_creaking_checked" }, { "chance": 0.8, "feature": "minecraft:pale_oak_checked" }Which comes out to a 20% chance of a Pale Heart Oak of being selected.
However, on Bedrock Edition, the Pale Oak feature is defined as follows:
[ "minecraft:pale_oak_tree_with_decoration_feature", 9 ], [ "minecraft:pale_oak_tree_with_creaking_heart_feature", 1 ]Which comes out to a 10% chance of a Pale Heart Oak being selected for generation.
The Bedrock feature weights should be changed to 8 and 2 to bring it into parity.
Additional notes following further research:
It appears the weight isn't the main issue with the lack of generation. Changing it to 20% didn't make much difference. The primary cause of the lack of hearts is the single-column feature search in the creaking_heart_search_feature.json file.
What I did to solve the problem is create an add-on which changes the Y search of 0 to 6 to 3 to 6 (half the height) since those lower Y values are wasted CPU cycles since the Pale Oak is very unlikely to contain branches capable of hiding the Heart at its base. Then I used those extra cycles to increase the X and Z search to do a 2x2 search instead of a 1x1 search. Finally, to help the Heart appear in tiny Pale Garden biomes I raised the feature weight from 10% (see top of description above) to 18%. This gives excellent results closely matching Java Edition. Here's the segment of creaking_heart_search_feature.json which shows the search changes:
"search_volume": { "min": [ 0, 3, 0 ], "max": [ 1, 6, 1 ] },
If 2x2 is too expensive to run on mobile devices perhaps remove the Heart placement check feature and instead modify the minecraft:tree_feature to include the ability to place a single block during its branch generation?
Steps to Reproduce:
- Create a new world in Creative Mode and locate a Pale Garden biome.
- Move around using /fill ~-20 ~ ~-20 ~20 ~8 ~20 air replace pale_oak_log and /fill ~-20 ~ ~-20 ~20 ~8 ~20 air replace pale_oak_leaves to clear the garden.
Expected Results:
The number of Pale Hearts should roughly match that of Java Edition.
Observed Results:
On Bedrock there are far fewer Pale Hearts available to the player, and in certain circumstances, none, even in medium sized Pale Garden biomes.
The Pale Oak Java feature definition contains the following weights:
{ "chance": 0.2, "feature": "minecraft:pale_oak_creaking_checked" }, { "chance": 0.8, "feature": "minecraft:pale_oak_checked" }Which comes out to a 20% chance of a Pale Heart Oak of being selected.
However, on Bedrock Edition, the Pale Oak feature is defined as follows:
[ "minecraft:pale_oak_tree_with_decoration_feature", 9 ], [ "minecraft:pale_oak_tree_with_creaking_heart_feature", 1 ]Which comes out to a 10% chance of a Pale Heart Oak being selected for generation.
The Bedrock feature weights should be changed to 8 and 2 to bring it into parity.
Additional notes following further research:
It appears the weight isn't the main issue with the lack of generation. Changing it to 20% didn't make much difference. The primary cause of the lack of hearts is the single-column feature search in the creaking_heart_search_feature.json file.
What I did to solve the problem is create an add-on which changes the Y search of 0 to 6 to 3 to 6 (half the height) since those lower Y values are wasted CPU cycles since the Pale Oak is very unlikely to contain branches capable of hiding the Heart at its base. Then I used those extra cycles to increase the X and Z search to do a 2x2 search instead of a 1x1 search. Finally, to help the Heart appear in tiny Pale Garden biomes I raised the feature weight from 10% (see top of description above) to 18%. This gives excellent results closely matching Java Edition. Here's the segment of creaking_heart_search_feature.json which shows the search changes:
"search_volume": { "min": [ 0, 3, 0 ], "max": [ 1, 6, 1 ] },
If 2x2 is too expensive to run on mobile devices perhaps remove the Heart placement check feature and instead modify the minecraft:tree_feature to include the ability to place a single block during its branch generation?
Steps to Reproduce:
- Create a new world in Creative Mode and locate a Pale Garden biome.
- Move around using /fill ~-20 ~ ~-20 ~20 ~8 ~20 air replace pale_oak_log and /fill ~-20 ~ ~-20 ~20 ~8 ~20 air replace pale_oak_leaves to clear the garden.
Expected Results:
The number of Pale Hearts should roughly match that of Java Edition.
Observed Results:
On Bedrock there are far fewer Pale Hearts available to the player, and in certain circumstances, none, even in medium sized Pale Garden biomes.
The Pale Oak Java feature definition contains the following weights:
{ "chance": 0.2, "feature": "minecraft:pale_oak_creaking_checked" }, { "chance": 0.8, "feature": "minecraft:pale_oak_checked" }Which comes out to a 20% chance of a Pale Heart Oak of being selected.
However, on Bedrock Edition, the Pale Oak feature is defined as follows:
[ "minecraft:pale_oak_tree_with_decoration_feature", 9 ], [ "minecraft:pale_oak_tree_with_creaking_heart_feature", 1 ]Which comes out to a 10% chance of a Pale Heart Oak being selected for generation.
The Bedrock feature weights should be changed to 8 and 2 to bring it into parity.
Additional notes following further research:
It appears the weight isn't the main issue with the lack of generation. Changing it to 20% didn't make much difference. The primary cause of the lack of hearts is the single-column feature search in the creaking_heart_search_feature.json file.
What I did to solve the problem is create an add-on which changes the Y search of 0 to 6 to 3 to 6 (half the height) since those lower Y values are wasted CPU cycles since the Pale Oak is very unlikely to contain branches capable of hiding the Heart at its base. Then I used those extra cycles to increase the X and Z search to do a 2x2 search instead of a 1x1 search. Finally, to help the Heart appear in tiny Pale Garden biomes I raised the feature weight from 10% (see top of description above) to 18%. This gives excellent results closely matching Java Edition. Here's the segment of creaking_heart_search_feature.json which shows the search changes:
"search_volume": { "min": [ 0, 3, 0 ], "max": [ 1, 6, 1 ] },If 2x2 is too expensive to run on mobile devices perhaps remove the Heart placement check feature and instead modify the minecraft:tree_feature to include the ability to place a single block during its branch generation?
Steps to Reproduce:
- Create a new world in Creative Mode and locate a Pale Garden biome.
- Move around using /fill ~-20 ~ ~-20 ~20 ~8 ~20 air replace pale_oak_log and /fill ~-20 ~ ~-20 ~20 ~8 ~20 air replace pale_oak_leaves to clear the garden.
Expected Results:
The number of Pale Hearts should roughly match that of Java Edition.
Observed Results:
On Bedrock there are far fewer Pale Hearts available to the player, and in certain circumstances, none, even in medium sized Pale Garden biomes.
The Pale Oak Java feature definition contains the following weights:
{ "chance": 0.2, "feature": "minecraft:pale_oak_creaking_checked" }, { "chance": 0.8, "feature": "minecraft:pale_oak_checked" }Which comes out to a 20% chance of a Pale Heart Oak of being selected.
However, on Bedrock Edition, the Pale Oak feature is defined as follows:
[ "minecraft:pale_oak_tree_with_decoration_feature", 9 ], [ "minecraft:pale_oak_tree_with_creaking_heart_feature", 1 ]Which comes out to a 10% chance of a Pale Heart Oak being selected for generation.
The Bedrock feature weights should be changed to 8 and 2 to bring it into parity.
Additional notes following further research:
It appears the
weight isn't the main issue with the lack of generation. Changing it to 20% didn't make much difference. The primary cause of the lack of hearts is the single-column feature search in the creaking_heart_search_feature.json file.
What I did to solve the problem is create an add-on which changes the Y search of 0 to 6 to 3 to 6 (halftheheight) since those lower Y values are wasted CPU cycles since the Pale Oak is very unlikely to contain branches capable of hiding the Heart at its base. Then I used those extra cycles to increase the X and Z search to do a 2x2 search instead of a 1x1 search. Finally, to help the Heart appear in tiny Pale Garden biomes I raised the feature weight from 10% (see top of description above) to 18%. This gives excellent results closely matching Java Edition. Here's the segment ofcreaking_heart_search_feature.jsonwhich shows the search changes:"search_volume": { "min": [ 0, 3, 0 ], "max": [ 1, 6, 1 ] },If 2x2 is too expensive to run on mobile devices perhaps remove the Heart placement check feature and instead modify the minecraft:tree_feature to include the ability to place a single block during its branch generation?
Steps to Reproduce:
- Create a new world in Creative Mode and locate a Pale Garden biome.
- Move around using /fill ~-20 ~ ~-20 ~20 ~8 ~20 air replace pale_oak_log and /fill ~-20 ~ ~-20 ~20 ~8 ~20 air replace pale_oak_leaves to clear the garden.
Expected Results:
The number of Pale Hearts should roughly match that of Java Edition.
Observed Results:
On Bedrock there are far fewer Pale Hearts available to the player, and in certain circumstances, none, even in medium sized Pale Garden biomes.
The Pale Oak Java feature definition contains the following weights:
{ "chance": 0.2, "feature": "minecraft:pale_oak_creaking_checked" }, { "chance": 0.8, "feature": "minecraft:pale_oak_checked" }Which comes out to a 20% chance of a Pale Heart Oak of being selected.
However, on Bedrock Edition, the Pale Oak feature is defined as follows:
[ "minecraft:pale_oak_tree_with_decoration_feature", 9 ], [ "minecraft:pale_oak_tree_with_creaking_heart_feature", 1 ]Which comes out to a 10% chance of a Pale Heart Oak being selected for generation.
The Bedrock feature weights should be changed to 8 and 2 to bring it into parity.
Additional notes following further research:
NOTE: It appears there is an apparent reduction in the number of Hearts in 24w44a, however, Bedrock is still generating far fewer than that new lower amount. Working on some experiments to match it.
It appears the weight isn't the main issue with the lack of generation. Changing it to 20% didn't make much difference. The primary cause of the lack of hearts is the single-column feature search in the creaking_heart_search_feature.json file.
What I did to solve the problem is create an add-on which changes the Y search of 0 to 6 to 3 to 6 (half the height) since those lower Y values are wasted CPU cycles since the Pale Oak is very unlikely to contain branches capable of hiding the Heart at its base. Then I used those extra cycles to increase the X and Z search to do a 2x2 search instead of a 1x1 search. Finally, to help the Heart appear in tiny Pale Garden biomes I raised the feature weight from 10% (see top of description above) to 18%. This gives excellent results closely matching Java Edition. Here's the segment of creaking_heart_search_feature.json which shows the search changes:
"search_volume": { "min": [ 0, 3, 0 ], "max": [ 1, 6, 1 ] },If 2x2 is too expensive to run on mobile devices perhaps remove the Heart placement check feature and instead modify the minecraft:tree_feature to include the ability to place a single block during its branch generation?
Steps to Reproduce:
- Create a new world in Creative Mode and locate a Pale Garden biome.
- Move around using /fill ~-20 ~ ~-20 ~20 ~8 ~20 air replace pale_oak_log and /fill ~-20 ~ ~-20 ~20 ~8 ~20 air replace pale_oak_leaves to clear the garden.
Expected Results:
The number of Pale Hearts should roughly match that of Java Edition.
Observed Results:
On Bedrock there are far fewer Pale Hearts available to the player, and in certain circumstances, none, even in medium sized Pale Garden biomes.
is duplicated by
The Pale Oak Java feature definition contains the following weights:
{ "chance": 0.2, "feature": "minecraft:pale_oak_creaking_checked" }, { "chance": 0.8, "feature": "minecraft:pale_oak_checked" }Which comes out to a 20% chance of a Pale Heart Oak of being selected.
However, on Bedrock Edition, the Pale Oak feature is defined as follows:
[ "minecraft:pale_oak_tree_with_decoration_feature", 9 ], [ "minecraft:pale_oak_tree_with_creaking_heart_feature", 1 ]Which comes out to a 10% chance of a Pale Heart Oak being selected for generation.
The Bedrock feature weights should be changed to 8 and 2 to bring it into parity.
Additional notes following further research:
NOTE: It appears there is an apparent reduction in the number of Hearts in 24w44a, however, Bedrock is still generating far fewer than that new lower amount. Working on some experiments to match it.
It appears the weight isn't the main issue with the lack of generation. Changing it to 20% didn't make much difference. The primary cause of the lack of hearts is the single-column feature search in the creaking_heart_search_feature.json file.What I did to solve the problem is create an add-on which changes the Y search of 0 to 6 to 3 to 6 (half the height) since those lower Y values are wasted CPU cycles since the Pale Oak is very unlikely to contain branches capable of hiding the Heart at its base. Then I used those extra cycles to increase the X and Z search to do a 2x2 search instead of a 1x1 search. Finally, to help the Heart appear in tiny Pale Garden biomes I raised the feature weight from 10% (see top of description above) to 18%. This gives excellent results closely matching Java Edition. Here's the segment of creaking_heart_search_feature.json which shows the search changes:
"search_volume": { "min": [ 0, 3, 0 ], "max": [ 1, 6, 1 ] },If 2x2 is too expensive to run on mobile devices perhaps remove the Heart placement check feature and instead modify the minecraft:tree_feature to include the ability to place a single block during its branch generation?
Steps to Reproduce:
- Create a new world in Creative Mode and locate a Pale Garden biome.
- Move around using /fill ~-20 ~ ~-20 ~20 ~8 ~20 air replace pale_oak_log and /fill ~-20 ~ ~-20 ~20 ~8 ~20 air replace pale_oak_leaves to clear the garden.
Expected Results:
The number of Pale Hearts should roughly match that of Java Edition.
Observed Results:
On Bedrock there are far fewer Pale Hearts available to the player, and in certain circumstances, none, even in medium sized Pale Garden biomes.
The Pale Oak Java feature definition contains the following weights:
{ "chance": 0.2, "feature": "minecraft:pale_oak_creaking_checked" }, { "chance": 0.8, "feature": "minecraft:pale_oak_checked" }Which comes out to a 20% chance of a Pale Heart Oak of being selected.
However, on Bedrock Edition, the Pale Oak feature is defined as follows:
[ "minecraft:pale_oak_tree_with_decoration_feature", 9 ], [ "minecraft:pale_oak_tree_with_creaking_heart_feature", 1 ]Which comes out to a 10% chance of a Pale Heart Oak being selected for generation.
However, the feature weights do not affect the outcome of the Heart generate due to Bedrock only scanning the northeast quadrant of the 2x2 trunk of the Pale Oak for a suitable location. Java Edition, on the other hand, allows Hearts to be placed in all four quadrants of the Pale Oak trunk.
Here is a table illusttrating the stark differences between snapshot 22w44a and newer and Bedrock 1.21.50.28:
If 2x2 is too expensive to run on mobile devices perhaps remove the Heart placement check feature and instead modify the minecraft:tree_feature to include the ability to place a single block during its branch generation?
Steps to Reproduce:
- Create a new world in Creative Mode and locate a Pale Garden biome.
- Move around using /fill ~-20 ~ ~-20 ~20 ~8 ~20 air replace pale_oak_log and /fill ~-20 ~ ~-20 ~20 ~8 ~20 air replace pale_oak_leaves to clear the garden.
Expected Results:
The number of Pale Hearts should roughly match that of Java Edition.
Observed Results:
On Bedrock there are far fewer Pale Hearts available to the player, and in certain circumstances, none, even in medium sized Pale Garden biomes.
The Pale Oak Java feature definition contains the following weights:
{ "chance": 0.2, "feature": "minecraft:pale_oak_creaking_checked" }, { "chance": 0.8, "feature": "minecraft:pale_oak_checked" }Which comes out to a 20% chance of a Pale Heart Oak of being selected.
However, on Bedrock Edition, the Pale Oak feature is defined as follows:
[ "minecraft:pale_oak_tree_with_decoration_feature", 9 ], [ "minecraft:pale_oak_tree_with_creaking_heart_feature", 1 ]Which comes out to a 10% chance of a Pale Heart Oak being selected for generation.
However, the feature weights do not affect the outcome of the Heart generate due to Bedrock only scanning the northeast quadrant of the 2x2 trunk of the Pale Oak for a suitable location. Java Edition, on the other hand, allows Hearts to be placed in all four quadrants of the Pale Oak trunk.
Here is a table illusttrating the stark differences between snapshot 22w44a and newer and Bedrock 1.21.50.28:
If 2x2 is too expensive to run on mobile devices perhaps remove the Heart placement check feature and instead modify the minecraft:tree_feature to include the ability to place a single block during its branch generation?
Steps to Reproduce:
- Create a new world in Creative Mode and locate a Pale Garden biome.
- Move around using /fill ~-20 ~ ~-20 ~20 ~8 ~20 air replace pale_oak_log and /fill ~-20 ~ ~-20 ~20 ~8 ~20 air replace pale_oak_leaves to clear the garden.
Expected Results:
The number of Pale Hearts should roughly match that of Java Edition.
Observed Results:
On Bedrock there are far fewer Pale Hearts available to the player, and in certain circumstances, none, even in medium sized Pale Garden biomes.
The Pale Oak Java feature definition contains the following weights:
{ "chance": 0.2, "feature": "minecraft:pale_oak_creaking_checked" }, { "chance": 0.8, "feature": "minecraft:pale_oak_checked" }Which comes out to a 20% chance of a Pale Heart Oak of being selected.
However, on Bedrock Edition, the Pale Oak feature is defined as follows:
[ "minecraft:pale_oak_tree_with_decoration_feature", 9 ], [ "minecraft:pale_oak_tree_with_creaking_heart_feature", 1 ]Which comes out to a 10% chance of a Pale Heart Oak being selected for generation.
However, the feature weights do not affect the outcome of the Heart generate due to Bedrock only scanning the northeast quadrant of the 2x2 trunk of the Pale Oak for a suitable location. Java Edition, on the other hand, allows Hearts to be placed in all four quadrants of the Pale Oak trunk.
Here is a table illusttrating the stark differences between snapshot 22w44a and newer and Bedrock 1.21.50.28:
Seed XLoc ZLoc Java count Bedrock count -1106759604738884840 0 0 16 3 -270 380 82 40 -480 1000 1 3 -7715933454100370463 -80 -40 19 8 -380 0 19 7 -700 80 2 0 -990 -80 1 2 970220026128112722 -4900 -560 4 1 1920 1950 1 0 5814430461651672175 -700 1050 8 1 -4971446989647199504 -560 200 12 1 -600 620 13 6If 2x2 is too expensive to run on mobile devices perhaps remove the Heart placement check feature and instead modify the minecraft:tree_feature to include the ability to place a single block during its branch generation?
Steps to Reproduce:
- Create a new world in Creative Mode and locate a Pale Garden biome.
- Move around using /fill ~-20 ~ ~-20 ~20 ~8 ~20 air replace pale_oak_log and /fill ~-20 ~ ~-20 ~20 ~8 ~20 air replace pale_oak_leaves to clear the garden.
Expected Results:
The number of Pale Hearts should roughly match that of Java Edition.
Observed Results:
On Bedrock there are far fewer Pale Hearts available to the player, and in certain circumstances, none, even in medium sized Pale Garden biomes.
The Pale Oak Java feature definition contains the following weights:
{ "chance": 0.2, "feature": "minecraft:pale_oak_creaking_checked" }, { "chance": 0.8, "feature": "minecraft:pale_oak_checked" }Which comes out to a 20% chance of a Pale Heart Oak of being selected.
However, on Bedrock Edition, the Pale Oak feature is defined as follows:
[ "minecraft:pale_oak_tree_with_decoration_feature", 9 ], [ "minecraft:pale_oak_tree_with_creaking_heart_feature", 1 ]Which comes out to a 10% chance of a Pale Heart Oak being selected for generation.
However, the feature weights do not affect the outcome of the Heart generate due to Bedrock only scanning the northeast quadrant of the 2x2 trunk of the Pale Oak for a suitable location. Java Edition, on the other hand, allows Hearts to be placed in all four quadrants of the Pale Oak trunk.
Here is a table illust
trating the stark differences between snapshot 22w44a and newer and Bedrock 1.21.50.28:Seed XLoc ZLoc Java count Bedrock count -1106759604738884840 0 0 16 3 -270 380 82 40 -480 1000 1 3 -7715933454100370463 -80 -40 19 8 -380 0 19 7 -700 80 2 0 -990 -80 1 2 970220026128112722 -4900 -560 4 1 1920 1950 1 0 5814430461651672175 -700 1050 8 1 -4971446989647199504 -560 200 12 1 -600 620 13 6
If 2x2 is too expensive to run on mobile devices perhaps remove theHeart placement check feature and instead modify theminecraft:tree_feature to include the ability to place a single block during its branch generation?
Steps to Reproduce:
- Create a new world in Creative Mode and locate a Pale Garden biome.
- Move around using /fill ~-20 ~ ~-20 ~20 ~8 ~20 air replace pale_oak_log and /fill ~-20 ~ ~-20 ~20 ~8 ~20 air replace pale_oak_leaves to clear the garden.
Expected Results:
The number of Pale Hearts should roughly match that of Java Edition.
Observed Results:
On Bedrock there are far fewer Pale Hearts available to the player, and in certain circumstances, none, even in medium sized Pale Garden biomes.
The Pale Oak Java feature definition contains the following weights:
{ "chance": 0.2, "feature": "minecraft:pale_oak_creaking_checked" }, { "chance": 0.8, "feature": "minecraft:pale_oak_checked" }Which comes out to a 20% chance of a Pale Heart Oak of being selected.
However, on Bedrock Edition, the Pale Oak feature is defined as follows:
[ "minecraft:pale_oak_tree_with_decoration_feature", 9 ], [ "minecraft:pale_oak_tree_with_creaking_heart_feature", 1 ]Which comes out to a 10% chance of a Pale Heart Oak being selected for generation.
However, the feature weights do not significantly affect the outcome of the Heart generate due to Bedrock only scanning the northeast quadrant of the 2x2 trunk of the Pale Oak for a suitable location. Java Edition, on the other hand, allows Hearts to be placed in all four quadrants of the Pale Oak trunk. This not only causes far fewer Hearts to be generated, it also means the player always knows which corner of the oak to search when confronted by a Creaking.
Here is a table illustrating the stark differences between snapshot 22w44a and newer and Bedrock 1.21.50.28:
Seed XLoc ZLoc Java count Bedrock count -1106759604738884840 0 0 16 3 -270 380 82 40 -480 1000 1 3 -7715933454100370463 -80 -40 19 8 -380 0 19 7 -700 80 2 0 -990 -80 1 2 970220026128112722 -4900 -560 4 1 1920 1950 1 0 5814430461651672175 -700 1050 8 1 -4971446989647199504 -560 200 12 1 -600 620 13 6Bedrock had more Hearts in only two edge case with small Pale Garden biomes where the search and branch generation worked in its favor. In every other case, there are fewer (and often far fewer) Hearts in the biome.
One way to fix this is to increase the search to a 2x2 grid, raise the Y start from 0 to 3 to make up for the extra computational requirements, and even split the Creaking Heart Pale Oak feature into two subfeatures where the search will sometime start at the bottom (Y 3) and sometime start from the top (Y 6). Because there are more branches at the top, successful placements are more likely after the first row at Y 6, which should help reduce the cost of increasing the X and Z search grid.
If 2x2 is altogether too expensive to run on mobile devices perhaps remove the Heart placement check feature and instead modify the minecraft:tree_feature to include the ability to place a single block during its branch generation?
Steps to Reproduce:
- Create a new world in Creative Mode and locate a Pale Garden biome.
- Move around using /fill ~-20 ~ ~-20 ~20 ~8 ~20 air replace pale_oak_log and /fill ~-20 ~ ~-20 ~20 ~8 ~20 air replace pale_oak_leaves to clear the garden.
Expected Results:
The number of Pale Hearts should roughly match that of Java Edition.
Observed Results:
On Bedrock there are far fewer Pale Hearts available to the player, and in certain circumstances, none, even in medium sized Pale Garden biomes.
The Pale Oak Java feature definition contains the following weights:
{ "chance": 0.2, "feature": "minecraft:pale_oak_creaking_checked" }, { "chance": 0.8, "feature": "minecraft:pale_oak_checked" }Which comes out to a 20% chance of a Pale Heart Oak of being selected.
However, on Bedrock Edition, the Pale Oak feature is defined as follows:
[ "minecraft:pale_oak_tree_with_decoration_feature", 9 ], [ "minecraft:pale_oak_tree_with_creaking_heart_feature", 1 ]Which comes out to a 10% chance of a Pale Heart Oak being selected for generation.
However, the feature weights do not significantly affect the outcome of the Heart generate due to Bedrock only scanning the northeast quadrant of the 2x2 trunk of the Pale Oak for a suitable location. Java Edition, on the other hand, allows Hearts to be placed in all four quadrants of the Pale Oak trunk. This not only causes far fewer Hearts to be generated, it also means the player always knows which corner of the oak to search when confronted by a Creaking.
Here is a table illustrating the stark differences between snapshot 22w44a and newer and Bedrock 1.21.50.28:
Seed XLoc ZLoc Java count Bedrock count -1106759604738884840 0 0 16 3 -270 380 82 40 -480 1000 1 3 -7715933454100370463 -80 -40 19 8 -380 0 19 7 -700 80 2 0 -990 -80 1 2 970220026128112722 -4900 -560 4 1 1920 1950 1 0 5814430461651672175 -700 1050 8 1 -4971446989647199504 -560 200 12 1 -600 620 13 6Bedrock had more Hearts in only two edge case with small Pale Garden biomes where the search and branch generation worked in its favor. In every other case, there are fewer (and often far fewer) Hearts in the biome.
One way to fix this is to increase the search to a 2x2 grid, raise the Y start from 0 to 3 to make up for the extra computational requirements, and even split the Creaking Heart Pale Oak feature into two subfeatures where the search will sometimes start at the bottom (Y 3) and sometimes start from the top (Y 6). Because there are more branches at the top, successful placements are more likely after the first row at Y 6, which should help reduce the cost of increasing the X and Z search grid.
If 2x2 is altogether too expensive to run on mobile devices perhaps remove the Heart placement check feature and instead modify the minecraft:tree_feature to include the ability to place a single block during its branch generation?
Steps to Reproduce:
- Create a new world in Creative Mode and locate a Pale Garden biome.
- Move around using /fill ~-20 ~ ~-20 ~20 ~8 ~20 air replace pale_oak_log and /fill ~-20 ~ ~-20 ~20 ~8 ~20 air replace pale_oak_leaves to clear the garden.
Expected Results:
The number of Pale Hearts should roughly match that of Java Edition.
Observed Results:
On Bedrock there are far fewer Pale Hearts available to the player, and in certain circumstances, none, even in medium sized Pale Garden biomes.
The Pale Oak Java feature definition contains the following weights:
{ "chance": 0.2, "feature": "minecraft:pale_oak_creaking_checked" }, { "chance": 0.8, "feature": "minecraft:pale_oak_checked" }Which comes out to a 20% chance of a Pale Heart Oak of being selected.
However, on Bedrock Edition, the Pale Oak feature is defined as follows:
[ "minecraft:pale_oak_tree_with_decoration_feature", 9 ], [ "minecraft:pale_oak_tree_with_creaking_heart_feature", 1 ]Which comes out to a 10% chance of a Pale Heart Oak being selected for generation.
However, the feature weights do not significantly affect the outcome of the Heart generate due to Bedrock only scanning the northeast quadrant of the 2x2 trunk of the Pale Oak for a suitable location. Java Edition, on the other hand, allows Hearts to be placed in all four quadrants of the Pale Oak trunk. This not only causes far fewer Hearts to be generated, it also means the player always knows which corner of the oak to search when confronted by a Creaking.
Here is a table illustrating the stark differences between snapshot 22w44a and newer and Bedrock 1.21.50.28:
Seed XLoc ZLoc Java count Bedrock count -1106759604738884840 0 0 16 3 -270 380 82 40 -480 1000 1 3 -7715933454100370463 -80 -40 19 8 -380 0 19 7 -700 80 2 0 -990 -80 1 2 970220026128112722 -4900 -560 4 1 1920 1950 1 0 5814430461651672175 -700 1050 8 1 -4971446989647199504 -560 200 12 1 -600 620 13 6 -3542109416978120429 580 2800 30 11Bedrock had more Hearts in only two edge case with small Pale Garden biomes where the search and branch generation worked in its favor. In every other case, there are fewer (and often far fewer) Hearts in the biome.
One way to fix this is to increase the search to a 2x2 grid, raise the Y start from 0 to 3 to make up for the extra computational requirements, and even split the Creaking Heart Pale Oak feature into two subfeatures where the search will sometimes start at the bottom (Y 3) and sometimes start from the top (Y 6). Because there are more branches at the top, successful placements are more likely after the first row at Y 6, which should help reduce the cost of increasing the X and Z search grid.
If 2x2 is altogether too expensive to run on mobile devices perhaps remove the Heart placement check feature and instead modify the minecraft:tree_feature to include the ability to place a single block during its branch generation?
Steps to Reproduce:
- Create a new world in Creative Mode and locate a Pale Garden biome.
- Move around using /fill ~-20 ~ ~-20 ~20 ~8 ~20 air replace pale_oak_log and /fill ~-20 ~ ~-20 ~20 ~8 ~20 air replace pale_oak_leaves to clear the garden.
Expected Results:
The number of Pale Hearts should roughly match that of Java Edition.
Observed Results:
On Bedrock there are far fewer Pale Hearts available to the player, and in certain circumstances, none, even in medium sized Pale Garden biomes.
The Pale Oak Java feature definition contains the following weights:
{ "chance": 0.2, "feature": "minecraft:pale_oak_creaking_checked" }, { "chance": 0.8, "feature": "minecraft:pale_oak_checked" }Which comes out to a 20% chance of a Pale Heart Oak of being selected.
However, on Bedrock Edition, the Pale Oak feature is defined as follows:
[ "minecraft:pale_oak_tree_with_decoration_feature", 9 ], [ "minecraft:pale_oak_tree_with_creaking_heart_feature", 1 ]Which comes out to a 10% chance of a Pale Heart Oak being selected for generation.
However, the feature weights do not significantly affect the outcome of the Heart generate due to Bedrock only scanning the northeast quadrant of the 2x2 trunk of the Pale Oak for a suitable location. Java Edition, on the other hand, allows Hearts to be placed in all four quadrants of the Pale Oak trunk. This not only causes far fewer Hearts to be generated, it also means the player always knows which corner of the oak to search when confronted by a Creaking.
Here is a table illustrating the stark differences between snapshot 22w44a and newer and Bedrock 1.21.50.28:
Seed XLoc ZLoc Java count Bedrock count -1106759604738884840 0 0 16 3 -270 380 82 40 -480 1000 1 3 -7715933454100370463 -80 -40 19 8 -380 0 19 7 -700 80 2 0 -990 -80 1 2 970220026128112722 -4900 -560 4 1 1920 1950 1 0 5814430461651672175 -700 1050 8 1 -4971446989647199504 -560 200 12 1 -600 620 13 6 -3542109416978120429 580 2800 30 11Bedrock had more Hearts in only two edge case with small Pale Garden biomes where the search and branch generation worked in its favor. In every other case, there are fewer (and often far fewer) Hearts in the biome.
One way to fix this is to increase the search to a 2x2 grid, raise the Y start from 0 to 3 to make up for the extra computational requirements, and even split the Creaking Heart Pale Oak feature into two subfeatures where the search will sometimes start at the bottom (Y 3) and sometimes start from the top (Y 6). Because there are more branches at the top, successful placements are more likely after the first row at Y 6, which should help reduce the cost of increasing the X and Z search grid.
If 2x2 is altogether too expensive to run on mobile devices perhaps remove the Heart placement check feature and instead modify the minecraft:tree_feature to include the ability to place a single block during its branch generation?
I added the latest iteration of the add-on I was using to test different generation strategies here: CreakingHeartParity.mcaddon
. It sacrifices vertical variety for horizontal variety. The 2x2 check is done on the XZ, but the Y is now limited to rows 4, 5, and 6 in the trunk. The weight for generating a non-Heart tree is also increased, improving performance since the 2x2 check provided more than enough Hearts. (Odds of a Heart-containing Pale Oak in this addon are 7.6%, down from the default of 10%.) It seems to run smoothly enough at 50 chunks of render distance and 12 chunks of simulation distance; however, I am using a beefy PC.
Steps to Reproduce:
- Create a new world in Creative Mode and locate a Pale Garden biome.
- Move around using /fill ~-20 ~ ~-20 ~20 ~8 ~20 air replace pale_oak_log and /fill ~-20 ~ ~-20 ~20 ~8 ~20 air replace pale_oak_leaves to clear the garden.
Expected Results:
The number of Pale Hearts should roughly match that of Java Edition.
Observed Results:
On Bedrock there are far fewer Pale Hearts available to the player, and in certain circumstances, none, even in medium sized Pale Garden biomes.
Duplicates MCPE-187337 MCPE-90625
This is more of a feature suggestion, here's why:
- For pale gardens generating too "small" refer to
MC-277083 - The creaking heart not generating due to generation constraints is intentional behavior, see
MC-277207 - If you believe that, for some reason, there is something within the pale forest biome's code that would indicate they're being generated at the wrong Y-level, then feel free to submit a separate report. However, I do not believe that a pale oak biome spawning on mountainous terrain indicates there is a bug.
- Creaking hearts also spawn less frequently on Bedrock, see
MCPE-187337 - The biomes spawning "fragmented" isn't really a bug and a part of natural generation. Such behavior is observable with other biomes, depending on the seed.
Duplicates MCPE-187337
The new biome generating relatively small isn't a bug, see MC-277083
Thank you for your report!
We're tracking this issue in MCPE-187337 and MCPE-90625, so this ticket is being resolved and linked as a duplicate.
If you would like to add a vote and any extra information to the main ticket it would be appreciated.
If you haven't already, you might like to make use of the search feature to see if the issue has already been mentioned.
Quick Links:
📓 Bug Tracker Guidelines – 💬 Community Support – 📧 Mojang Support (Technical Issues) – 📧 Microsoft Support (Account Issues)
📓 Project Summary – ✍️ Feedback and Suggestions – 📖 Game Wiki
– I am a bot. This action was performed automatically! The ticket was resolved by one of our moderators, and I left this message to give more information to you.
Duplicate of MCPE-187337
Thank you for your report!
We're tracking this issue in MCPE-187337, so this ticket is being resolved and linked as a duplicate.
If you would like to add a vote and any extra information to the main ticket it would be appreciated.
If you haven't already, you might like to make use of the search feature to see if the issue has already been mentioned.
Quick Links:
📓 Bug Tracker Guidelines – 💬 Community Support – 📧 Mojang Support (Technical Issues) – 📧 Microsoft Support (Account Issues)
📓 Project Summary – ✍️ Feedback and Suggestions – 📖 Game Wiki
– I am a bot. This action was performed automatically! The ticket was resolved by one of our moderators, and I left this message to give more information to you.
Your issue with less Creaking Hearts is MCPE-187337.
I noticed this as well while clearing out an entire forest with the fill & replace command, not finding a single creaking heart out of over 100 trees.
The chance of a pale oak tree generating with a creaking heart has been decreased in Java Edition and is matching Bedrock Edition.
@Gb16 The reduction in Hearts on Java didn't solve the problem. Bedrock is still rarely placing Hearts and does not match. See my new results table in the description.
Can confirm
The winter drop is almost complete and this is still a problem.
This is still a problem in the 1.21.50 - The Garden Awakens update. People are searching through multiple forests and covering thousands of blocks and not finding a heart. We do not want to update a long term world until this is fixed. What is the pale oak forest with no spooky creaking?
In a small Pele Garden with around 50-80 Pale Oak trees I didn't encounter a single creaking in 3 nights.
I don't think that's that normal.
Still an issue in 1.21.51
Fixed in 1.21.51 & 1.21.60-24. Super-fixed, in fact. Here a quick test result from one of my test seeds:
-7715933454100370463 X -80 Z -40 Hearts: 29 (wow!)
It probably isn't necessary to increase the search volume X 2, Z 2, Y 9 as I noticed in the new implementation of the feature search, but if the performance isn't hurt by that size volume, then there's no harm in it, either.
Java Edition should probably be brought into parity with Bedrock after this change since this number of Hearts should make finding a Creaking in those small-sized Pale Garden biomes more common.