Patchouli (Fabric/Quilt)

Patchouli (Fabric/Quilt)

28M Downloads

"Structure can't have no center" when it has a center

HyperCodec opened this issue ยท 2 comments

commented

Mod loader

NeoForge

Minecraft version

1.20.1

Patchouli version

1.20.1-84.1

Modloader version

Neoforge 47.1.106

Modpack info

Currently making a modpack, not uploaded anywhere yet.

The latest.log file

https://mclo.gs/xRMyI08

Issue description

I keep getting the "a structure can't have no center" error when my structure clearly has a center.

Steps to reproduce

I have the following page defined in my JSON book:

{
            "type": "patchouli:multiblock",
            "name": "Ratlantean Automation",
            "multiblock": {
                "mapping": {
                    "C": "rats:marbled_cheese_raw",
                    "H": "rats:marbled_cheese_rat_head",
                    "M": "rats:marbled_cheese_golem_core"
                },
                "pattern": [
                    [" H "],
                    ["CMC"],
                    [" C "]
                ]
            },
            "text": "..."
},

I've also tried padding it with more strings/z layers in case the length 1 was breaking things, no dice. Even running the example at https://vazkiimods.github.io/Patchouli/docs/patchouli-basics/multiblocks/ fails with the same error.

Other information

relevant portion of log:

3192 | [21Feb2025 17:49:59.296] [Render thread/ERROR] [patchouli/]: Error loading and compiling book patchouli:wrguide, using empty contents
3193 | java.lang.RuntimeException: Error building entry patchouli:miscellaneous/rats of book patchouli:wrguide
3194 | at vazkii.patchouli.client.book.BookContentsBuilder.lambda$build$2(BookContentsBuilder.java:97) ~[Patchouli-1.20.1-84.1-FORGE.jar%23401!/:1.20.1-84.1-FORGE]
3195 | at java.util.HashMap$Values.forEach(Unknown Source) ~[?:?]
3196 | at vazkii.patchouli.client.book.BookContentsBuilder.build(BookContentsBuilder.java:93) ~[Patchouli-1.20.1-84.1-FORGE.jar%23401!/:1.20.1-84.1-FORGE]
3197 | at vazkii.patchouli.client.book.BookContentsBuilder.loadAndBuildFor(BookContentsBuilder.java:73) ~[Patchouli-1.20.1-84.1-FORGE.jar%23401!/:1.20.1-84.1-FORGE]
3198 | at vazkii.patchouli.common.book.Book.reloadContents(Book.java:194) ~[Patchouli-1.20.1-84.1-FORGE.jar%23401!/:1.20.1-84.1-FORGE]
3199 | at vazkii.patchouli.client.book.gui.GuiBookLanding.handleButtonEdit(GuiBookLanding.java:232) ~[Patchouli-1.20.1-84.1-FORGE.jar%23401!/:1.20.1-84.1-FORGE]
3200 | at net.minecraft.client.gui.components.Button.m_5691_(Button.java:38) ~[client-1.20.1-20230612.114412-srg.jar%23440!/:?]
3201 | at net.minecraft.client.gui.components.AbstractButton.m_5716_(AbstractButton.java:55) ~[client-1.20.1-20230612.114412-srg.jar%23440!/:?]
3202 | at net.minecraftforge.client.extensions.IAbstractWidgetExtension.onClick(IAbstractWidgetExtension.java:40) ~[forge-1.20.1-47.1.106-universal.jar%23445!/:?]
3203 | at net.minecraft.client.gui.components.AbstractWidget.m_6375_(AbstractWidget.java:177) ~[client-1.20.1-20230612.114412-srg.jar%23440!/:?]
3204 | at vazkii.patchouli.client.book.gui.GuiBook.mouseClickedScaled(GuiBook.java:316) ~[Patchouli-1.20.1-84.1-FORGE.jar%23401!/:1.20.1-84.1-FORGE]
3205 | at vazkii.patchouli.client.book.gui.GuiBookLanding.mouseClickedScaled(GuiBookLanding.java:210) ~[Patchouli-1.20.1-84.1-FORGE.jar%23401!/:1.20.1-84.1-FORGE]
3206 | at vazkii.patchouli.client.book.gui.GuiBook.m_6375_(GuiBook.java:289) ~[Patchouli-1.20.1-84.1-FORGE.jar%23401!/:1.20.1-84.1-FORGE]
3207 | at net.minecraft.client.MouseHandler.m_168084_(MouseHandler.java:92) ~[client-1.20.1-20230612.114412-srg.jar%23440!/:?]
3208 | at net.minecraft.client.gui.screens.Screen.m_96579_(Screen.java:437) ~[client-1.20.1-20230612.114412-srg.jar%23440!/:?]
3209 | at net.minecraft.client.MouseHandler.m_91530_(MouseHandler.java:89) ~[client-1.20.1-20230612.114412-srg.jar%23440!/:?]
3210 | at net.minecraft.client.MouseHandler.m_168091_(MouseHandler.java:189) ~[client-1.20.1-20230612.114412-srg.jar%23440!/:?]
3211 | at net.minecraft.util.thread.BlockableEventLoop.execute(BlockableEventLoop.java:102) ~[client-1.20.1-20230612.114412-srg.jar%23440!/:?]
3212 | at net.minecraft.client.MouseHandler.m_91565_(MouseHandler.java:188) ~[client-1.20.1-20230612.114412-srg.jar%23440!/:?]
3213 | at org.lwjgl.glfw.GLFWMouseButtonCallbackI.callback(GLFWMouseButtonCallbackI.java:43) ~[lwjgl-glfw-3.3.1.jar%23152!/:build 7]
3214 | at org.lwjgl.system.JNI.invokeV(Native Method) ~[lwjgl-3.3.1.jar%2392!/:build 7]
3215 | at org.lwjgl.glfw.GLFW.glfwPollEvents(GLFW.java:3403) ~[lwjgl-glfw-3.3.1.jar%23152!/:build 7]
3216 | at com.mojang.blaze3d.systems.RenderSystem.pollEvents(RenderSystem.java:201) ~[client-1.20.1-20230612.114412-srg.jar%23440!/:?]
3217 | at com.mojang.blaze3d.systems.RenderSystem.flipFrame(RenderSystem.java:219) ~[client-1.20.1-20230612.114412-srg.jar%23440!/:?]
3218 | at com.mojang.blaze3d.platform.Window.m_85435_(Window.java:274) ~[client-1.20.1-20230612.114412-srg.jar%23440!/:?]
3219 | at net.minecraft.client.Minecraft.m_91383_(Minecraft.java:1170) ~[client-1.20.1-20230612.114412-srg.jar%23440!/:?]
3220 | at net.minecraft.client.Minecraft.m_91374_(Minecraft.java:718) ~[client-1.20.1-20230612.114412-srg.jar%23440!/:?]
3221 | at net.minecraft.client.main.Main.main(Main.java:218) ~[1.20.1-47.1.106.jar:?]
3222 | at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:?]
3223 | at jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:?]
3224 | at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:?]
3225 | at java.lang.reflect.Method.invoke(Unknown Source) ~[?:?]
3226 | at net.minecraftforge.fml.loading.targets.CommonLaunchHandler.runTarget(CommonLaunchHandler.java:126) ~[loader-47.2.2.jar:47.2]
3227 | at net.minecraftforge.fml.loading.targets.CommonLaunchHandler.clientService(CommonLaunchHandler.java:114) ~[loader-47.2.2.jar:47.2]
3228 | at net.minecraftforge.fml.loading.targets.CommonClientLaunchHandler.runService(CommonClientLaunchHandler.java:24) ~[loader-47.2.2.jar:47.2]
3229 | at net.minecraftforge.fml.loading.targets.CommonLaunchHandler.lambda$launchService$4(CommonLaunchHandler.java:108) ~[loader-47.2.2.jar:47.2]
3230 | at cpw.mods.modlauncher.LaunchServiceHandlerDecorator.launch(LaunchServiceHandlerDecorator.java:30) ~[modlauncher-10.0.9.jar:?]
3231 | at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:53) ~[modlauncher-10.0.9.jar:?]
3232 | at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:71) ~[modlauncher-10.0.9.jar:?]
3233 | at cpw.mods.modlauncher.Launcher.run(Launcher.java:108) ~[modlauncher-10.0.9.jar:?]
3234 | at cpw.mods.modlauncher.Launcher.main(Launcher.java:78) ~[modlauncher-10.0.9.jar:?]
3235 | at cpw.mods.modlauncher.BootstrapLaunchConsumer.accept(BootstrapLaunchConsumer.java:26) ~[modlauncher-10.0.9.jar:?]
3236 | at cpw.mods.modlauncher.BootstrapLaunchConsumer.accept(BootstrapLaunchConsumer.java:23) ~[modlauncher-10.0.9.jar:?]
3237 | at cpw.mods.bootstraplauncher.BootstrapLauncher.main(BootstrapLauncher.java:141) ~[bootstraplauncher-1.1.2.jar:?]
3238 | Caused by: java.lang.RuntimeException: Error while building entry patchouli:miscellaneous/rats page 3 of book patchouli:wrguide
3239 | at vazkii.patchouli.client.book.BookEntry.build(BookEntry.java:242) ~[Patchouli-1.20.1-84.1-FORGE.jar%23401!/:1.20.1-84.1-FORGE]
3240 | at vazkii.patchouli.client.book.BookContentsBuilder.lambda$build$2(BookContentsBuilder.java:95) ~[Patchouli-1.20.1-84.1-FORGE.jar%23401!/:1.20.1-84.1-FORGE]
3241 | ... 43 more
3242 | Caused by: java.lang.IllegalArgumentException: A structure can't have no center
3243 | at vazkii.patchouli.common.multiblock.DenseMultiblock.build(DenseMultiblock.java:142) ~[Patchouli-1.20.1-84.1-FORGE.jar%23401!/:1.20.1-84.1-FORGE]
3244 | at vazkii.patchouli.common.multiblock.DenseMultiblock.<init>(DenseMultiblock.java:29) ~[Patchouli-1.20.1-84.1-FORGE.jar%23401!/:1.20.1-84.1-FORGE]
3245 | at vazkii.patchouli.common.multiblock.SerializedMultiblock.deserializeDense(SerializedMultiblock.java:93) ~[Patchouli-1.20.1-84.1-FORGE.jar%23401!/:1.20.1-84.1-FORGE]
3246 | at vazkii.patchouli.common.multiblock.SerializedMultiblock.toMultiblock(SerializedMultiblock.java:103) ~[Patchouli-1.20.1-84.1-FORGE.jar%23401!/:1.20.1-84.1-FORGE]
3247 | at vazkii.patchouli.client.book.page.PageMultiblock.build(PageMultiblock.java:79) ~[Patchouli-1.20.1-84.1-FORGE.jar%23401!/:1.20.1-84.1-FORGE]
3248 | at vazkii.patchouli.client.book.BookEntry.build(BookEntry.java:238) ~[Patchouli-1.20.1-84.1-FORGE.jar%23401!/:1.20.1-84.1-FORGE]
3249 | at vazkii.patchouli.client.book.BookContentsBuilder.lambda$build$2(BookContentsBuilder.java:95) ~[Patchouli-1.20.1-84.1-FORGE.jar%23401!/:1.20.1-84.1-FORGE]
3250 | ... 43 more
3251 | [21Feb2025 17:49:59.299] [Render thread/INFO] [net.minecraft.client.gui.components.ChatComponent/]: [System] [CHAT] Books reloaded in 26 ms.
commented

mb i realized i don't have the 0. also the multiblock mappings in the last section aren't compatible with 1.20 (idk if it's outdated or if it's 1.21)

commented

something i noticed, animated blocks like the Ratlantean Automation Head don't render properly in the ui, but render fine when placing the schematic.