MineColonies

MineColonies

53M Downloads

[BUG] Game Crash When Demolishing Builder's Hut with MineColonies and Structurize

YumatanGames opened this issue ยท 2 comments

commented

Is there an existing issue for this?

  • I have searched the existing issues

Are you using the latest MineColonies Version?

  • I am running the latest beta version of MineColonies for my Minecraft version.

Did you check on the Wiki? or ask on Discord?

  • [] I checked the MineColonies Wiki and made sure my issue is not covered there. Or I was sent from discord to open an issue here.

What were you playing at the time? Were you able to reproduce it in both settings?

  • Single Player
  • Multi Player

Minecraft Version

1.20.1

MineColonies Version

1.20.1-1.15.12-BETA

Structurize Version

1.20.1-1.0.712-BETA

Related Mods and their Versions

Forge Version: forge-1.20.1-47.2.21.jar
Domum Ornamentum: 1.20.1-1.0.170-BETA
UI Library Mod: 1.20.1-1.0.151-BETA

Current Behavior

A crash occurs when the builder tries to demolish the builder's hut, particularly when breaking either the rack or the builder's hut block. This has happened on two separate occasions with similar crash reports.

Crash Report 1 (most recent): https://pastebin.com/DF0Nf9BA
Crash Report 2 (yesterday): https://pastebin.com/72r0w2hv

Expected Behavior

The builder should demolish the builder's hut without causing the game to crash.

Reproduction Steps

Place a builder's hut using MineColonies using the base style
Upgrade it to level 2
Request the hut to be demolished
Observe that as the builder attempts to break down the structure, the game crashes when certain blocks (rack or hut block) are interacted with.

Logs

Crash Report 1 (most recent): https://pastebin.com/DF0Nf9BA Crash Report 2 (yesterday): https://pastebin.com/72r0w2hv

Anything else?

According to ChatGPT:

From the crash report provided, it seems that the crash is related to an interaction between the MineColonies mod and the Structurize mod (specifically a component from Domum Ornamentum, which seems to be an API used by Structurize).

The relevant error line from the crash report is:

java
java.lang.AbstractMethodError: Method com/minecolonies/core/blocks/BlockMinecoloniesRack.getMainComponent()Lcom/ldtteam/domumornamentum/block/IMateriallyTexturedBlockComponent; is abstract 

This indicates that the method getMainComponent() from BlockMinecoloniesRack is being called but it's an abstract method, which means it hasn't been implemented. In Java, calling an abstract method that hasn't been implemented will cause an AbstractMethodError. This suggests a compatibility issue between the versions of MineColonies and Structurize/Domum Ornamentum you are using.

  • The crash is triggered during the "Ticking entity" phase, which in Minecraft is when the game is updating the entities in the world, like mobs, items, etc.
  • It's specifically happening when a builder from MineColonies is trying to interact with a block - likely trying to determine the best tool to use to break the block.
  • It seems like the builder was trying to demolish a builder's hut, and during the process of determining the correct tool for the block (either the rack or the hut block itself), the game crashes due to the aforementioned error.
commented

It's a little trickier in multiplayer, but if you downgrade DO to 1.20-1.0.167-BETA or earlier, this should work around it for the moment.