Doggy Talents

Doggy Talents

27M Downloads

Crash with mods that use Mixin

WenXin20 opened this issue ยท 6 comments

commented

Environment And Mod Information:

  • Minecraft v1.15.2
  • Forge v31.2.36
  • Doggy Talents v2.0.0.0
  • Mixin Bootstrap v1.0.4
  • Java Version: 8
  • Operating System (OS): Windows

Logs

Issue Description:

  • The game crashes almost immediately on launch, most likely because I have several mods which uses mixin are installed, one of which is Biomes You'll Go.
  • It will crash when loaded on the client or server.

Steps to reproduce:

  1. Install Mixin Bootstrap & a mod that uses it, such as Biomes You'll Go.
  2. Launch the game
  3. Crash
commented

I have tried a variety of forge versions with Doggy Talents v2.0.0.0, Mixin Bootstrap v1.0.4 and byg-1.0.11 and can not reproduce, I do access transform the function that says causes the crash but unlikely I am doing anything wrong.

Could you try updating forge to latest version as Mixin Bootstrap is now longer required as Mixin is packaged directly with forge

commented

alright, I'll give that a try

commented

It still crashes me. I took a closer look at the log, and it looks like the crash is happening when Performant is installed along with Doggy Talents.

[14:25:15] [main/FATAL]: Mixin apply failed performant.mixins.json:entity.EntityMixin -> net.minecraft.entity.Entity: org.spongepowered.asm.mixin.transformer.throwables.InvalidMixinException PRIVATE @Overwrite method func_209511_p in performant.mixins.json:entity.EntityMixin cannot reduce visibiliy of PUBLIC target method
commented

Yes I can reproduce now, it is a bad interaction between forge access transformers and mixins. Not sure of the best fix but I think there are a few options

  • Since the function I want to call is a simple one I could just replicate the call it makes (func_209511_p is isInRain)
  • Use reflection instead of an access transformer
  • I could ask the author of Performant to change the method they are trying to mixin to be public

I think I will go with the first option

commented

Fix is now available in 1.15.2-2.0.0.1

commented

Alright, thanks!