Supplementaries

Supplementaries

82M Downloads

[๐Ÿž]: Incompatibility crash with Numismatic Overhaul

mosharky opened this issue ยท 15 comments

commented

Before Continuing:

  • Always check you are using the latest version of the mods and its dependencies
  • Remove known problematic rendering mods such as Optifine, Sodium and others. Do NOT report issues related to said mods
  • If you are unsure which mod is the culprit.
    Disable half your mods at time until you isolate the culprit
  • If you have a crash ALWAYS post LATEST.LOG below
  • If the issue is about behaviors be sure to consult the WIKI first

Version-Loader

1.20.1-fabric

Supplementaries Version

1.20-2.7.30

Moonlight Lib Version

1.20-2.9.2

Issue Detail

Both Supplementaries and Numismatic Overhaul use a custom data driven system for villager trades, so they directly clash when trying to add their own trades. The crash happens when loading or creating a world.

Optional Attachment

latest.log
crash

To Produce

Use:

  • Moonlight Lib
  • Supplementaries
  • Numismatic Overhaul
  • owo lib

Try creating or loading into a singleplayer world to reproduce.

commented

did we just use the same exact frealing name for data. ...

Yes, this is the case. Numismatic Overhaul has used this namespace for cross-mod trades since its inception back in January 2022. As shown in the following screenshot using Supplementaries 2.7.21, Numismatic works just fine with it.

image

Looking at commit history the functionality to add Villager trades via Moonlight Lib was added 4 days ago? Not sure if that is the first instance of it. The best solution in regards to compatibility would be for Moonlight Lib to use a different namespace. I am unsure how many mods have compatibility with Numismatic Overhaul's format, and this will keep breaking for every other mod which uses it. The crash itself is simply that our parser fails since the trade files have different structures.

commented

well thing is i think they technically do use 2 diff namespaces since i dont look in that folder but only its subfolders

commented

thats true. what i meant is that i filted to only look into subfolders

commented

I don't understand what you mean, this is not true? Similar to recipes: all JSON files within the villager_trades folder are searched, which does include subfolders. This is due to how an IdentifiableResourceLoader works within Fabric API. Then for each trade we look up the name of the profession in the villager trade map based on the field in the file, e.g. profession:armorer.

commented

also crash comes from their mod not mine

commented

did we just use the same exact frealing name for data. lmao. I was aware that not using my own namespaced system could have resulted in clashes but thoguht that the chance of that happening with somebody elee using the same exact folder structure and substructure would have been slim

commented

try new moonlight version

commented

same crash i think https://mclo.gs/DHhjps8

I think you or them will have to do more fixing beyond this crash too since numismatic overhaul tries to patch modded trades to use their currency. I have a feeling that it wont be able to patch the trades now added by moonlight/supplementaries

commented

maybe you or numismatic could add a mod_loaded condition for a compat version of supplementaries trades?

commented

true. can be overridden via same data system tho. Either way direct integration would be needed

commented

also crash comes from their mod not mine

should I report it to them or do you have a fix planned?

commented

i cant fix the crash. its not coming from my mod. You should report to them

commented

alright

commented

Sorry for reanimating. How is compat with Numismatic Overhaul done now? On my end the Wandering Trader still has flax_seeds for sale for emeralds.

commented

All my trades are data driven and can be edited with datapacka. You can also edit vanilla ones using the same syatem