Summary:
Plains of villages can be generated in biomes such as jungle and swamp. At the same time, not a single part of the village is located on the plain and close (as in MCPE-41332), that is, villages are located entirely in the specified biomes.
This is not a duplicate of MCPE-136939, as villages in biomes where they can be generated are now generated correctly.
Examples of seeds (taken from comments on MCPE-136939 by @unknown):
Plains village in a jungle
Seed: 4345832
Coords: 131 125 149
Plains village in a swamp
Seed: 16198093
Coords: 126 106 126
Steps to reproduce:
Create a world with the specified seed.
Move to the specified coordinates.
Observed results:
In a biome where villages are not generated (jungle, swamp) a plains village was generated.
Expected results:
This looks good since these villages will spawn residents with sparse textures, but for consistency with the java version, no villages should be generated in the jungle and swamp biome.
Image:
[media][media]Attachments
Comments 5
@unknown
I think this is all one problem like MCPE-142867 and MCPE-141249.
I doubt MCPE-142867 is the same issue. The biome check that I think is causing the inappropriate and missing villages is the "isFeatureChunk" one.
MCPE-141249 was likely the same issue but it looks like something was done to the "isFeatureChunk" function on RandomScatteredLargeFeature (its a single feature that covers all temple types in bedrock) to correct it. I'm not able to find temples that don't generate due to a y320 biome check, which makes me think they aren't affected anymore. Maybe the same fix can be applied for villages but it's hard to say.
I've just rechecked seeds 4345832, 16198093 and 1297 in 1.17.40.23 and they haven't changed so it looks like 1.17.40.23 is affected too.
I should also mention the inverse is also true. There are villages that should generate and don't.
For example on seed 1297 a village should generate at x168 z104 but doesn't. you can clearly see its a plains biome for a significant range around the chunk thats been selected for village placement attempt.
[media]The cause for both problems appears to be the same. The biome check appears to be occurring at y=320.
For the jungle and swamp villages, there is a valid village biome at y320, but invalid biomes at surface level and the village gets placed.
For the missing plains village, the biome check at y320 finds an invalid village biome when then surface biomes are clearly valid village biomes.