TheIllusiveC4 / Curios

Minecraft Mod: A flexible and expandable accessory/equipment API for users and developers.
https://www.curseforge.com/minecraft/mc-mods/curios
Other
185 stars 73 forks source link

[Forge] Compatability Issue #128

Closed Spieler2301 closed 3 years ago

Spieler2301 commented 3 years ago

Basicly this Happened: Details: Mod File: backpacked-1.9.0-1.16.3.jar Failure message: Mod backpacked only supports curios 4.0.1.0 or above Currently, curios is 1.16.5-4.0.5.1

Im kinda new to 1.16 modding so what is going on?

Spieler2301 commented 3 years ago

Removed the mod in favor of another backpack after tinkering around with different curios versions, now the next problem! Details: Mod File: VampiresNeedUmbrellas-1.16.5-1.1.1.jar Failure message: Mod vampiresneedumbrellas only supports curios 1+ Currently, curios is 1.16.3-4.0.1.0

Logicless36 commented 3 years ago

Basicly this Happened: Details: Mod File: backpacked-1.9.0-1.16.3.jar Failure message: Mod backpacked only supports curios 4.0.1.0 or above Currently, curios is 1.16.5-4.0.5.1

Im kinda new to 1.16 modding so what is going on?

Having the same issue, Latest version of Tetra does not support latest version of Curios CuriousElytra however does work with latest version of Curios

TheIllusiveC4 commented 3 years ago

From my own testing, Curios 1.16.5-4.0.5.1 works fine when loaded with: tetra-1.16.5-3.8.0 backpacked-1.9.0-1.16.3 VampiresNeedUmbrellas-1.16.5-1.1.1

I'm not sure why these errors could be popping up on your ends. What launchers are being used in these environments?

TinLiovic commented 3 years ago

Problem was in forge. I downloaded the recomended version and it worked! Latest forge version is making problems for you. Use forge 36.1.0

Spieler2301 commented 3 years ago

Jep that fixed it!

ocram9 commented 3 years ago

This is because of a forge update, specfically this merge: MinecraftForge/MinecraftForge#7710

TheIllusiveC4 commented 3 years ago

Oh ok, I see. I understand the issue now.

To those encountering this issue, you can downgrade to Forge 1.16.5-36.1.9 or lower as a temporary workaround. Ideally however, you can submit an issue with the developer of the mods that are throwing this error for Curios and let them know that their dependency versioning is likely incorrect.

A common mistake is listing the version for the dependency as, for example, 4.0.5.1 when it's actually 1.16.5-4.0.5.1, which will spit this error out on Forge 1.16.5-36.1.10+.

kencinder commented 3 years ago

The bigger problem is mods for some reason using minecraft version IN their own version declaration. There's no reason to call your mod version 1.16.5 dash anything, there's a depend on minecraft version possible in mods.toml, pre-pending a minecraft version instead of just doing 4.0.5.1 leads to things like this, and it's only going to get worse now that Forge has imposed proper declaration on optional dependencies with that PR.

TheIllusiveC4 commented 3 years ago

The matter of what versioning to use is largely subjective, as developers have their own opinions and workflows that they prefer using. Personally, I find having a MC version prefix/suffix is vital for conveying the full amount of detail succinctly.

I will also point out that the Forge docs currently advocate for appending the MC version so it's not exactly without precedent. If it's desirable to avoid this behavior, then this page is due for an update: https://mcforge.readthedocs.io/en/latest/conventions/versioning/

More to the point, I don't think it's proper to blame a modder's versioning for this issue since the problem stems from using an incorrect version when declaring a dependency. Even without considering the topic of MC versioning, it essentially would be akin to declaring 4.1.0 when you meant to declare 4.0.1. The simple solution is to double-check the version constraints when declaring dependencies. It's just that modders had no reason to believe those were incorrect before due to a lack of validation checks.

kencinder commented 3 years ago

Suppose that's true and seeing it right on Forge's own docs in that manner, it's obvious that the PR didn't account for it and should have. Though it would be more down to the depending mod to check and declare correctly.