Uploaded image for project: 'Minecraft: Java Edition'
  1. Minecraft: Java Edition
  2. MC-177126

Structure generation ignores air and void blocks

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Open
    • Resolution: Unresolved
    • Affects Version/s: 1.15.2
    • Fix Version/s: None
    • Labels:
      None
    • Environment:
      Win 10 Home 1909
      Manjaro Linux
      Java 8,9,11
    • Confirmation Status:
      Unconfirmed
    • Category:
      (Unassigned)

      Description

      I am currently working on a resource pack that replaces quite a few of vanilla's structures. To do this I am using the structure void block to first load the structures I want to edit, modify them and then save them to my hard drive, from where I drag and drop them into my resource pack.

      For the most part, this process works exactly as it should, parts of villages and the woodland mansion (the two structures I am currently working on) are replaced with my custom pieces.
      The problem is how world gen deals with air blocks in structure files, or rather how it doesn't.

      According to the wiki structure void blocks "[are] part of a structure and are ignored when the structure file is saved. This results in the blocks at the location where the structure is placed being maintained and not being overridden".

      This works fine when I load the structure with a structure block, both air and normal blocks are set while void blocks are ignored, everything works as intended.

      However, when a structure is generated by the world generator things are different.
      Instead of behaving the way they should according to the wiki void block and normal blocks are placed while air blocks are ignored. This means that the places I want to be empty (e.g. interior rooms) can be filled with any blocks that were there before my structure was spawned while the blocks where I want to keep any previous blocks are now filled with void block.

      Short version:

      Current behavior when a structure is generated by world gen:

      1. All blocks except air are set (including structure void blocks)

      Expected behavior when a structure is generated by world gen:

      1. All normal blocks are set
      2. Structure void block are ignored
      3. Air blocks are replaced with cave air blocks so that later parts of world gen can't generate inside my rooms

      Steps to reproduce:

      Modify a village structure and attempt to add a cellar using jigsaws and structure void blocks.

        Attachments

          Activity

            People

            Assignee:
            Unassigned Unassigned
            Reporter:
            Ansraer Jakob Lang
            Votes:
            2 Vote for this issue
            Watchers:
            1 Start watching this issue

              Dates

              Created:
              Updated: