friends-and-foes icon indicating copy to clipboard operation
friends-and-foes copied to clipboard

[1.19.2-2.0.9] Crash : AbstractMethodError when Lightning Rod changes weathering state - Possible conflict with Caverns & Chasms

Open TigerWalts opened this issue 11 months ago • 1 comments

Minecraft version information

1.19.2

Mod loader information

Forge

Mod loader version information

43.3.8

Mod version information

2.0.9

Reproduction Steps

  1. Install both Friends & Foes 2.0.9 and Caverns & Chasms 1.0.0
  2. Find a Copper Golem workshop
    • Just placing a Lightning Rod may be enough
  3. Wait
  4. ...
  5. Crash

Crash Report and latest.log

Crash Report: https://mclo.gs/1QQjmd5

java.lang.AbstractMethodError: Receiver class net.minecraft.world.level.block.LightningRodBlock does not define or inherit an implementation of the resolved method 'abstract java.util.Optional m_142123_(net.minecraft.world.level.block.state.BlockState)' of interface net.minecraft.world.level.block.ChangeOverTimeBlock.
	at net.minecraft.world.level.block.ChangeOverTimeBlock.m_220952_(ChangeOverTimeBlock.java:70) ~[server-1.19.2-20220805.130853-srg.jar%23543!/:?] {re:classloading,re:mixin}
	at net.minecraft.world.level.block.ChangeOverTimeBlock.m_220947_(ChangeOverTimeBlock.java:24) ~[server-1.19.2-20220805.130853-srg.jar%23543!/:?] {re:classloading,re:mixin}
	at net.minecraft.world.level.block.LightningRodBlock.m_213898_(LightningRodBlock.java:548) ~[server-1.19.2-20220805.130853-srg.jar%23543!/:?] {re:mixin,re:classloading,pl:mixin:APP:caverns_and_chasms.mixins.json:LightningRodBlockMixin,pl:mixin:APP:friendsandfoes-common.mixins.json:LightningRodBlockDegradableMixin,pl:mixin:APP:friendsandfoes-common.mixins.json:LightningRodBlockMixin,pl:mixin:APP:friendsandfoes-common.mixins.json:LightningRodBlockOxidizableMixin,pl:mixin:A}
	at net.minecraft.world.level.block.state.BlockBehaviour$BlockStateBase.m_222972_(BlockBehaviour.java:698) ~[server-1.19.2-20220805.130853-srg.jar%23543!/:?] {re:mixin,pl:accesstransformer:B,xf:fml:forgeendertech:coremod,re:classloading,pl:accesstransformer:B,xf:fml:forgeendertech:coremod,pl:mixin:APP:modernfix-common.mixins.json:bugfix.chunk_deadlock.BlockStateBaseMixin,pl:mixin:APP:modernfix-common.mixins.json:perf.reduce_blockstate_cache_rebuilds.BlockStateBaseMixin,pl:mixin:APP:arc-common.mixins.json:MixinBlockStateBase,pl:mixin:APP:byg.mixins.json:common.block.MixinBlockBehaviourBlockStateBase,pl:mixin:APP:fruitsdelight.mixins.json:BlockStateBaseMixin,pl:mixin:APP:twigs.mixins.json:BlockStateBaseMixin,pl:mixin:APP:ferritecore.blockstatecache.mixin.json:BlockStateBaseMixin,pl:mixin:APP:valhelsia_core.mixins.json:BlockStateBaseMixin,pl:mixin:A}
	at net.minecraft.server.level.ServerLevel.m_8714_(ServerLevel.java:446) ~[server-1.19.2-20220805.130853-srg.jar%23543!/:?] {re:mixin,pl:accesstransformer:B,xf:fml:forgeendertech:coremod,xf:fml:sereneseasons:temperature_transformer,re:classloading,pl:accesstransformer:B,xf:fml:forgeendertech:coremod,xf:fml:sereneseasons:temperature_transformer,pl:mixin:APP:cupboard.mixins.json:ServerAddEntityMixin,pl:mixin:APP:betterendisland.mixins.json:ServerLevelMixin,pl:mixin:APP:modernfix-common.mixins.json:perf.cache_strongholds.ServerLevelMixin,pl:mixin:APP:modernfix-common.mixins.json:bugfix.chunk_deadlock.ServerLevelMixin,pl:mixin:APP:leavesbegone.common.mixins.json:ServerLevelMixin,pl:mixin:APP:supplementaries-common.mixins.json:ServerLevelMixin,pl:mixin:APP:endergetic.mixins.json:ServerLevelMixin,pl:mixin:APP:corgilib.mixins.json:MixinServerLevel,pl:mixin:APP:byg.mixins.json:common.world.MixinServerLevel,pl:mixin:APP:aether.mixins.json:common.accessor.ServerLevelAccessor,pl:mixin:APP:forge-mca.mixin.json:MixinServerWorld,pl:mixin:APP:betterdeserttemples.mixins.json:ServerLevelMixin,pl:mixin:APP:blueprint.mixins.json:ServerLevelMixin,pl:mixin:APP:friendsandfoes-common.mixins.json:ServerWorldAccessor,pl:mixin:APP:friendsandfoes-common.mixins.json:ServerWorldMixin,pl:mixin:APP:atmospheric.mixins.json:ServerLevelMixin,pl:mixin:APP:ars_elemental.mixins.json:ServerLevelMixin,pl:mixin:APP:create.mixins.json:accessor.ServerLevelAccessor,pl:mixin:APP:betterendisland.mixins.json:EndergeticExpansionMixins,pl:mixin:A}

Additional information

Crash was observed when a structure added by Friends and Foes intended to demonstrate the Copper Golem was placed in the world. When the rod's weathering state changes, the server crashes.

Waxing or scraping the rod does not trigger a crash.

Lightning resetting the weathered state has not been checked.

Both mods add mixins that allow the lighting rod to weather/oxidize. There may be a conflict

  • https://github.com/team-abnormals/caverns-and-chasms/issues/35

TigerWalts avatar Mar 14 '24 16:03 TigerWalts

I checked their mixins, and they @Override everything, which is a compatibility killer in a mixins, so hopefully they can do a rewrite.

Faboslav avatar Mar 15 '24 07:03 Faboslav

After a lot of work on this, i am closing this, with 2.0.11 release this should be in the state, which is as close as it could be with compatibility between these two mods.

Faboslav avatar Jul 03 '24 17:07 Faboslav