mojira.dev
MC-268618

Vault blocks spawned by custom structures are not interactable in new worlds

The Issue

If a player saves a structure that contains a vault block using structure blocks in a world with a high playtime, then loads that structure into a different world, the vault blocks will be uninteractive. This is caused by the server_data.state_updating_resumes_at property of the new vault block being the same as the original. This property prevents the vault block from being interacted with until the world timer exceeds the given value. Because the structure has been loaded into a new world, the value of this property is far higher than the new world's world timer, rendering the vault uninteractable.

Fixing the Issue

To fix this issue, one of two things should happen;

  • Make structure blocks not save the server_data.state_updating_resumes_at property of vault blocks when saving to a file.

  • Set the value of server_data.state_updating_resumes_at to zero (or delete the property) when loading the structure into the world.

Β 

Linked issues

Attachments

Comments 9

Thank you for your report!

However, this issue has been temporarily closed as Awaiting Response.

Could you please attach an example structure and/or world showcasing the issue?

This ticket will automatically reopen when you reply.

Quick Links:
πŸ““ Issue Guidelines – πŸ’¬ Mojang Support – πŸ““ Project Summary – πŸ“§ Suggestions – πŸ“– Minecraft Wiki

Just ran into the same issue; the bug is alive and well. I've attached a datapack of my custom structure:

[media]

You'll notice that, for any new world generated with the datapack, the vaults from the structure "players-versus:trial_tower" will all be disabled because their server_data.state_updating_resumes_at is set to my other world's gametime, which was 1M+.

[media]

Screenshot was taken in 1.20.5. Affects latest release

Can confirm this happens in 1.21 as well.

1 - Generate a new 1.21 world with this

[media]

datapack

2 - run either

/locate structure trickiertrials:arthropit

/place structure trickiertrials:arthropit

and go into the structure

3 - go to the deepest floors of the structure where the vaults are located and you'll notice that they're completly unresponsive

both

/loot give @p loot trickiertrials:arthropit/items/key

/loot give @p loot trickiertrials:arthropit/items/ominous_key

can be used to obtain the keys needed to unlock the vaults but they will not be useable because of the issue mentioned in this report

I have the exact same issue

Hey chief, I found the source of the issue and a work arund.
Basically the vault has a state_updating_resumes_at value, which in your building world is probably when you palced it, but in the newly generated world it starts at 0 so it is less than the spawners time and thus it cant activate.

You can use /time set 99999999 in the new world and it will β€œfix it”

Actually im lying, that doesnt fix it. Not sure what i did.

I did not investigate it, but maby you can set a jigsaw that generates air and turns into a spawner?

Ok so yeah i did more investigating and I found a solution.

Core of the issue:

  • state_updating_resumes_at is updated every tick to current game time

  • structure blocks will save this value and include it in the NBT file

  • in your building world the game time will be significantly higher than in newly generated world

Workaround:

  • use /tick freeze

  • place the vault and save the structure

  • since ticks were frozen, the vault never could set the value

Technically speaking everything is working as intended, but would be nice if mojang did something about it, as this is really dumb and the solution is rather unintuitive.

JABrules

(Unassigned)

1226523

Confirmed

Expansion B

Normal

Structures

24w07a, 1.20.5, 1.21

Retrieved