Level datapack error
Tomat777 opened this issue ยท 1 comments
When bumblezone(forge) and imbued gear(fabric via sinytra connector) used together there is level datapack error due to
java.util.concurrent.ExecutionException: com.llamalad7.mixinextras.injector.wrapoperation.IncorrectArgumentCountException: Incorrect number of arguments passed to Operation::call! Expected 2 but got 1. Expected types were [net.minecraft.world.item.Item, net.minecraft.world.item.ItemStack], actual types were [com.telepathicgrunt.the_bumblezone.items.HoneyCrystalShield].
Logs: https://gist.github.com/Tomat777/a5dde0d110bc0202d7de3b51cd21705e
@Tomat777 You're trying to use a Fabric mod on Forge which is generally not a supported use case. The reason is, the Fabric mod has a mixin to ItemStack$getMaxDamage.
https://github.com/fzzyhmstrs/gc/blob/2d1554557648262ff6d7a8796168d0bd260f6cab/src/main/java/me/fzzyhmstrs/gear_core/mixins/ItemStackMixin.java#L54
On Fabric, the getMaxDamage method takes no parameters. On Forge, Forge changed the method to accept an ItemStack parameter
https://github.com/MinecraftForge/MinecraftForge/blob/88d2dc6c8f91fd3a6b38fa06bd92cde2db1c94db/patches/minecraft/net/minecraft/world/item/ItemStack.java.patch#L156
As a result, their mixin explodes because it was not designed for Forge. There's nothing I can do because this has nothing to do with my mod. It's a fundamental incompatibility between the Fabric mod and Forge patches itself. You could ask the Fabric modder to redesign the mixin but they are likely to say no because they do not want to support Forge.
Your best solution is to remove the Fabric mod because it will crash whenever ItemStack$getMaxDamage is called by anyone. Even vanilla calling it will crash on Forge with this Fabric mod on.