Super-Santa / EssentialAddons

Fabric Carpet extension that adds things from the Spigot plugin Essentials, or other features I think are needed for Minecraft
MIT License
50 stars 7 forks source link

HopperHelper Mixin Carpet Essentials Crash #81

Closed TinyDerp closed 2 months ago

TinyDerp commented 2 months ago

Version

EssentialAddons-1.4.2+mc1.21.jar lithium-fabric-mc1.21-0.13.0.jar

Reproduction Steps

  1. Activate the server
  2. Join server
  3. Crash

    Crash Report File

crash-2024-08-15_20.15.03-server.txt

Minecraft Save

a32xse.zip

Additional Information

It seams that Carpet Essentials donsn't work with lithium at all on the newer minecraft versions. Something to do with hoppers and other containers. I already made the same issue on lithium and they rederected me to here. Also Carpet TIS Addions has the same issue.

adammakesfilm commented 2 months ago

Carpet TIS Addons has released a patch for this already.

In the meantime, a workaround would be to manually disable lithium's optimization in the lithium.properties file in the config folder by adding the following line to it: mixin.block.hopper=false

eatmyvenom commented 2 months ago

Breaking patch from lithium: https://github.com/CaffeineMC/lithium-fabric/commit/e826c9e28660717cbc930bcd91985f643f65d662 Mentioned patch from Carpet TIS: https://github.com/TISUnion/Carpet-TIS-Addition/commit/2dc38ada8500bcd14402933179fa07d24e59a75a

since that patch was meant to solve https://github.com/TISUnion/Carpet-TIS-Addition/issues/171 (which was reported by the same user that reported this issue in this repository), it seems the proper thing to do for essential addons would be to change this mixin target to match the new signature https://github.com/Super-Santa/EssentialAddons/blob/c352532aa80b41929cd1886f933d9ede38924de5/src/main/java/essentialaddons/mixins/lithium/HopperHelperMixin.java#L18-L20

which would look like this

+ tryMoveSingleItem(Lnet/minecraft/inventory/Inventory;Lnet/minecraft/inventory/SidedInventory;Lnet/minecraft/item/ItemStack;Lnet/minecraft/item/ItemStack;ILnet/minecraft/util/math/Direction;)Z
- tryMoveSingleItem(Lnet/minecraft/inventory/Inventory;Lnet/minecraft/inventory/SidedInventory;Lnet/minecraft/item/ItemStack;ILnet/minecraft/util/math/Direction;)Z
senseiwells commented 2 months ago

Thank you, this has now been fixed: https://modrinth.com/mod/essentialaddons/version/1.4.3+mc1.21