mojira.dev
MC-197128

If a custom biome uses multiple configured structure features of the same type, only one of them can generate

The bug

When multiple configured structure features with the same type are referenced in a biome's starts, only one of them generates. For example, it is impossible to have both taiga villages and desert villages generate in the same biome.

How to reproduce:

  1. Download the attached data pack

  2. Create a new world and import the data pack. It will replace the overworld with swamps and attempt to generate all types of villages in the swamp biome.

  3. Locate villages at different positions with the following command:

    execute positioned ~3000 ~ ~ run locate village

Only taiga villages generate.

Note: in the pre-releases, the last feature of the same type would always generate, meaning that only plains villages would generate. This seems to have changed in 1.16.2, as I now only get taiga villages.

Attachments

Comments 4

This is a major issue for datapack makers as they are using the Village and Bastion Remnants types to generate their jigsaw structures like castles or volcanos and stuff. However, due to this bug, these datapack makers cannot add 2 of their completely different structures to the same biome because they both uses the village type structure as the base of their configured structure. 

While it may be a far long while before Mojang allows us to make completely custom structures by json, fixing this bug would greatly help as a workaround to allow datapack makers to generate many kinds of castles in a single biome instead of only one. (Although they could abuse multiple starting pools to bypass this limitation but then they lose the ability to control spacing for each structure)

Can confirm in 1.17-pre5 using this datapack: 

[media]

Can confirm in 1.17.

Fixed in 1.18.2-pre1

Aeldrion

(Unassigned)

Confirmed

Low

Custom Worlds, Structures

1.16.2 Pre-release 2, 1.16.2 Release Candidate 1, 1.16.2, 1.16.3 Release Candidate 1, 1.16.3, 1.17

1.18.2 Pre-release 1

Retrieved