For some reason blocks don't update if they're generated using a procedure on the "On structure instance generated" event.
They used to update in 2020.3 but it seems like they don't anymore.
Which is.. Well very critical for most of my mods (If not all ↓)..
This also means we can't make giant structures anymore without them breaking.
Workspace is attached
(The ancient jigsaw block is the block you're looking for in the workspace btw)
Issue comments
That's odd because my work in progress dungeon mod is broken because the dungeon generator block (Which is placed on structure instance generated) doesn't update anymore...
It did update in 2020.3
Let me show you:
This house was supposed to be the start of the dungeon
It's generated using the "On structure instance generated"
This block is placed by the procedure slightly beneath the the stairs of the house and was supposed to continue the generation of the dungeon.
Now you may be thinking.. Sooo? what are you trying to tell me?
Well this worked perfectly but somehow in 2020.4 it doesn't
And here is the dungeon with the exact same system of the exact same mod but in 2020.3
As far as I know, this did not work in 2020.3, for this exact reason I don't know how I would fix this, unfortunately. If you find a fix this, you are welcome to provide one. You can compare codes generated by both versions, I did this but could not figure out what would change this.
Why wouldn't you directly place a block without additional block ticking?
Also, My speculation about the structures breaking and blocks not updating like they used to be is..
Whatever is placed/spawned/generated with the on structure instance generated now happens with structuregen instead of after structuregen
If that makes sense in any way
It might be because of the structure spawning condition and things happening in different orders than before but idk
now happens with structuregen instead of after structuregen
I used to use queue to do other generations but this could crash world-gen randomly due to not being the right approach. It could well be this, but I can't use the old way as it was wrong and could cause nasty threading problems as the worldgen is threaded.
What do you mean exactly?
Right now you do:
Structure gen -> Place block -> Tick -> Place other parts on tick
Why not
Structure gen -> Place other parts on structure gen trigger
Ah ok
"Structure gen -> Place other parts on structure gen trigger" That's the system I used to use for the big structures before they broke like this---> https://mcreator.net/tracker/issue/64585
I understand. They broke like this in 2020.3 too, but when this happens is not really predictable (due to multithreaded worldgen).
All this is in fact "hacking" the worldgen system, the proper approach will be https://mcreator.net/tracker/issue/61132 after I figure out this system.
Structures could break in 2020.3 too, it is a problem with chunk loading.
I am not sure how I would change this as the same code is used in both versions.
But blocks did not tick by default in 2020.3 too, that's for sure. One would have to use tick randomly to tick in all cases.