The bug
On loading a structure with a structure block, the structural integrity is not dependent on the chosen seed, but only the location of where the structure is placed.
To reproduce
Save some blocks in a structure using a structure block
Go somewhere else and place a new structure block
Put that structure block in
Load
modeSet the integrity to some number between
0.0
and1.0
Set the integrity seed to some number (for example
1234
)Load the previously saved structure
The structure will be loaded, with some blocks missing. Remember or take a screenshot of how the structure looks.
Clear the area where the structure was loaded using a
/fill
commandChange the integrity seed in the loading structure block to another number (for example
5678
)Load the structure again
❌ It will look exactly the same
Repeat as often as you want.
Video
[media]Previous description
Simple Replication:
Save a region in a structure block, load it, and set the integrity to a number. Place another one down somewhere else, and place down an identical one. That should load a different arrangement of blocks, despite the seed being set.
Replication:
Save a 4x1x4 area of grass_block
in a file named grass_4x4
(or minecraft:grass_4x4
). Load the structure block twice in an open (vertical) space, both with an integrity of 0.2
and a seed of 0
, and leave the rest default. Place three more structure blocks identical to the previous ones directly above the previous two, only changing the seed to 1234
. Load all five. Then, the fifth structure block's relative y-position should be set to 2, and loaded again. Place a structure block two blocks above the fifth, identical to the previous three, only changing the relative y-position to -2
. Load that, then set that value to -1
.
Results:
The first two structure blocks should be random, but it remains upon replacement. The next four do not share the same arrangement. The fifth and sixth blocks have different locations, but the randomness appears to be from the origin of the structure, as both of them generate both layers identical.
Expected:
The first two should generate a seed when the integrity is first set to below 1, and remain that way until broken or replaced. The remaining blocks should have the same arrangement because their seed is identical.
Linked issues
relates to 2
Attachments
Comments 6
Confirmed in 19w06a, a structure block with an integrity < 1.0 and seed set to 0 will always generate the exact same outcome every time at a given location.
I don't think this is working as intended. This would practically render the "integrity seed" functionality of the structure block useless.
I would advise against using the seed 0
to test anything, as that is a special value and functions differently from other seeds (see for example MC-1820).
@unknown, I have reworded and edited this ticket to provide easier reproduction steps, I hope you're fine with that. If I have changed the meaning of the report in any way, please tell!
Fixing this caused MC-146353.
Confirmed for all versions from 18w47b to the latest snapshot.
Didn't get a chance to test before 18w47b.