New Shrine Version 2.1.X does not recognize structures from 1.8 worlds
Reio911 opened this issue ยท 10 comments
Describe the bug
I created a world using Shrine version 1.8 as that is the one currently being used by the Mineshafts and Monsters modpack.
It occasionally would hang the server so I updated to 2.1.0-build2 and while the server is now responsive, the console constantly prints out errors that looks like the following.
[18:29:04] [Server thread/ERROR] [minecraft/ChunkSerializer]: Unknown structure start: shrines:camp2
[18:29:04] [Server thread/ERROR] [minecraft/ChunkSerializer]: Unknown structure start: shrines:camp1
[18:29:04] [Server thread/ERROR] [minecraft/ChunkSerializer]: Unknown structure start: shrines:camp3
[18:29:04] [Server thread/ERROR] [minecraft/ChunkSerializer]: Unknown structure start: shrines:pig
[18:29:04] [Server thread/ERROR] [minecraft/ChunkSerializer]: Unknown structure start: shrines:cow
To Reproduce
Steps to reproduce the behavior:
- Create a world using shrin
latest.log
es 1.8 and generate some chunks - Update world to use Shrines 2.1
- The console is now constantly showing unrecognized structures
Expected behavior
To see similar behavior to the 1.8 version (with the improved performance)
Screenshots
N/A
Version (please complete the following information):
- OS: Windows 7
- Forge Version 36.2.20
- Mod Version 2.1.0-build2
Additional context
The modpack being used here is Mineshafts and Monsters.
The issue originally came up because my server kept becoming unresponsive at times and outright crashing after stalling for a few hours. While Shrine is not the sole culprit of this, a large amount of server delay did come from the 1.8 version, so I would like to use 2.1 version
So far so good! The server is not hanging and the only message message spams during login.
[10:19:25] [Server thread/ERROR] [minecraft/ChunkSerializer]: Unknown structure start: shrines:witch_house
witch_house seems the be the only missing thing
Thank you. I'll take a look at that. Witch house should work, but it seems like it doesn't. I'll let you know as soon as I know more
Thanks again, unfortunately I think Shrines was only the first step, I've noticed that the server still hangs after logging out for a while and logging back in... Dungeon Crawl and betterdungeons seem to be attempting to do world gen at regions we've never even visited, I think Shrines is victim to this behavior as well, which would explain the witch_house console spam even though no one is online.
I seems like I've missed to use the old name of the witch house too. 2.2.0 fixes that for future updates, but that won't work in your case, because you've already started the server onetime with the new name. The spam would only change to shrines:abandoned_witch_house. To fix that, you'll now need to use the Structure Configuration UI. Open it as I've described above and select any of the packages that appear there (There should be a list similar to the world or server selection list) and open it. You can add a new structure now and set the key to 'shrines:witch_house' and set generate to false (untick the box). The other options don't matter for now. Restart the server and the log should stop spamming finally.
I don't think the problem you've described is related to shrines, because I know the reason for the log spam well, but can't really prevent it. I think you should report that issue to Dungeon Crawl then. Good luck
Upon launching the server with version 2.2.0-Beta1 the debug shows the same messages
[15Feb2022 09:34:14.797] [Worker-Main5/DEBUG] [Smooth Boot/]: Initialized Worker-Main10
[15Feb2022 09:34:14.811] [Server thread/ERROR] [net.minecraft.world.chunk.storage.ChunkSerializer/]: Unknown structure start: shrines:flying_castle
[15Feb2022 09:34:14.815] [Server thread/ERROR] [net.minecraft.world.chunk.storage.ChunkSerializer/]: Unknown structure start: shrines:flying_castle
Unfortunately the console does still spam the messages for all of the structure types upon login. Do I still need to follow the steps related to the Structure Configuration UI? If so could you tell me how to access this UI? I am unfamiliar with it. Thanks for your efforts, I really appreciate this.
You will need to reset the updated structure packages so that Shrines can re-import the old structures. It will only import the old structures if it thinks you are playing with the new version for the first time. To make it think that, you need to delete the Packets directory in shrines-saves, which is in your Minecraft directory.
By the way, you need to press 'k' while you are in a world (or on a server) and the Structure Novel UI will open. There is a hidden button if you press the arrow in the upper right corner called 'open Admin Mode'. Press this button to open the structure configuration UI. That has no business being here, because you don't need to do anything there.
It seems like the issue isn't up to date anymore. For that reason, I'll close this issue. Please comment if the issue is still a problem
Yesterday, I was confused about version 2.x.x and 3.x.x. While version 3.x.x makes the update itself, 2.x.x doesn't. You can manually import the structures package to fix that issue for now. To do that, open the Structure Configuration UI and press the 'Import Legacy' button. Now choose the shrines-saves directory and confirm. After a restart, the log-spam shouldn't appear anymore
The main problem with this solution (and any solution I can provide) is that I've changed the structure generation system to 'jigsaw'. That means that any structure that is larger than 48x48x48 blocks will need extra attention from the package creator. I think Mineshafts & Monsters contains structures that are larger than 48x48x48 blocks (giant castle I think). Shrines isn't able to automatically convert these old structure to the new 'jigsaw' system, so it just removes any structure template (the files where the actual building is stored in) and generates nothing at the places where it normally generates a structures. The only think you can probably do is report that issue to Mineshafts & Monsters and ask them to update their structures. There is a lot of material around that explains the 'jigsaw' system (it's the same as Minecraft's villages use)
Later, I'm going to add the automatic update of the custom structures for 2.x.x too