More Ore Stones [FABRIC]

More Ore Stones [FABRIC]

70.7k Downloads

[Bug]: 1.18 Mixins crash when playing alongside some other mods

Raidobw2 opened this issue ยท 3 comments

commented

Problem

The game will crash on initialize if SBM Jukebox Fabric and Ordana's Mores is installed.

I wrote this on your mod's issue tracker since ExampleMixin shows up in the stacktrace and as far as I could read your mod's code, you don't use mixins. SBM Jukebox uses some for the Jukebox, but I have no idea why there's a specific interaction like that. Your mod plays nice with other mods that have mixins as well, it's for some reason that one that doesn't work with it. Let me know if you think it's the other mod's problem, I'll link them a report too. Thanks in advance!

Steps to reproduce

  1. Install a new instance on the CurseForge App for Fabric 0.12.11.
  2. Install SBM Jukebox Fabric from https://www.curseforge.com/minecraft/mc-mods/sbm-jukebox-fabric/files/3541465.
  3. Install Ordana's More from https://www.curseforge.com/minecraft/mc-mods/ordanas-mores/files/3551196.
  4. Play the game and notice it crashes directly at the beginning.

Versions

MC: 1.18
Fabric: 0.12.11
SBM Jukebox Fabric: sbm-jukebox-1.18-rc4-1.0.1.jar
Ordana's Mores: mores-1.2.6.jar

Stacktrace

With other mods and SBM Jukebox Fabric: https://pastebin.com/QZN157B4
Just the Fabric API and those 2 mods: https://pastebin.com/cA3yPAH2
Latest.log only with Fabric API and the 2 mods: https://pastebin.com/KGw7RGXy

MixinApplyError: Mixin [modid.mixins.json:ExampleMixin] from phase [DEFAULT] in config [modid.mixins.json] from mod [sbm-jukebox] FAILED during PREPARE
InvalidMixinException: The specified mixin 'net.fabricmc.example.mixin.ExampleMixin' was not found
ClassNotFoundException: The specified mixin 'net.fabricmc.example.mixin.ExampleMixin' was not found
at org.spongepowered.asm.mixin.transformer.MixinInfo.loadMixinClass(MixinInfo.java:1314)

Screenshots

image
image

Config files

SBMJukeboxFabric modid.mixins.json

{
  "required": true,
  "minVersion": "0.8",
  "package": "io.github.strikerrocker.jukebox.mixin",
  "compatibilityLevel": "JAVA_17",
  "mixins": [
    "MixinJukeboxBlockEntity"
  ],
  "injectors": {
    "defaultRequire": 1
  },
  "refmap": "sbm-jukebox-1.18-rc4-refmap.json"
}

Ordana's Mores modid.mixins.json

{
  "required": true,
  "minVersion": "0.8",
  "package": "net.fabricmc.example.mixin",
  "compatibilityLevel": "JAVA_16",
  "mixins": [
  ],
  "client": [
    "ExampleMixin"
  ],
  "injectors": {
    "defaultRequire": 1
  }
}
commented

Thank you for the detailed report. You are correct, Mores doens't use mixins at all and I have removed the example mixin file that is unused and might be causing this conflict. I have pushed a new version that includes that fix as well as a number of minor things. It will be labeled as version 1.2.7 on Curseforge. If the issue persists, I would bring it up with the other dev team as I have done everything I can think of on my end to fix what might be causing that.

commented

Thanks for the reply and the quick fix wow, that's awesome.
I've updated your mod and threw in the SBM Jukebox mod with it inside a modpack I was making for my folks. This is the ultimate test!
And I can confirm it works :)
As for other changes you pushed on 1.2.7, they are great too. I used to have a script like this one in KubeJS:
image
Which would adjust your mod's recipes since it was new, I thought it was WIP. Now it's correctly implemented, I don't need the script anymore :D
image
There's only one more thing I need to manually adjust for your mod, and it's tags. But that thing is up to the mod author's vision and intended compatibility given, really up to you. In Forge there's something called "the ore dictionary", in Fabric it's called "common", it's the same thing basically.
Some mods can implement based on common tags if they want, Tech Reborn does this in its recipes for example with copper. As you see on the image above too I'm able to process your ores in that machine with the correct tag. This provides easier integration basically.
image
I'm sure you can find out how to register that later on if you feel like it since you've registered a "mores" tag. Here's my script if that helps validating you've done all ores:
image
In short, the problem is fully resolved and working, and you added an extra with the smelting and blasting recipes :)
As a suggestion if you want you can implement common tags for the ores, this will help making your mod compatible OOTB with other mods.

You can close this ticket upon read, thanks again and have a nice holiday time in advance!

commented

Thank you for this incredibly detailed reply, I will look into the "common" thing and if all goes well, push out an updated version soon. Thanks again!