FR: Conditional generation for natural structures
marcmagus opened this issue ยท 3 comments
Currently we can restrict the dimension and biome in which structures will naturally generate, but don't have any finer control than that. I suggest adding a third list similar to the above in which we can define expressions which are checked before generating a structure, and which will cause it not to generate if any of them evaluates to false. (Possibly a limited loop of generation attempts should be attempted in this situation, possibly we should just get fewer structures)
My rationale is that while the natural ground generation gives good smoothing, I'm still getting some weird generation: in particular very small structures are happy to generate in the middle of water features in land biomes which have them.
Examples:
Surface block at generation point is not water.
Percentage of surface blocks in target x,z area which are water is less than <n>.
Difference between highest y surface block in target x,z area and lowest y is less than <n>.
As above, but counting highest solid block rather than water.
I think this would also apply: certain structure, namely the graveyard and wall, will generate even on steep slopes. Even though they have natural ground, parts of the structure that extend far enough create unnatural looking overhangs. I think there should be some sort of option for how much of the structure is allowed to have air below it, even with natural ground, like AtomicStryker's ruins mod has. This will prevent walls from generating on mountain slopes, which looks bad.