Structurize

Structurize

40M Downloads

Version 0.13.100 is registered as being lower than version 0.13.96

CodyMW opened this issue · 2 comments

commented

Prerequisites

  • I am running the latest 0,13,100 version of Structurize for my Minecraft version.
  • I checked the MineColonies/Structurize wiki and made sure that my issue is not covered there.
  • I made sure that this mod compatibility issue is not a duplicate of any existing mod compatibility issue.
    I'm kind of surprised I can't this anywhere.

Context

  • Minecraft Version: 1.16.4
  • Structurize Version: 0.13.100-RELEASE
  • Related Mods and their Versions: minecolonies 0.13.437-RELEASE

Expected behavior

It would load

Actual behavior

image

Logs

Error during pre-loading phase
net.minecraftforge.fml.ModLoadingException: Mod §eminecolonies§r requires §6structurize§r §o0.13.96-ALPHA§r
§7Currently, §6structurize§r§7 is §o0.13.100-RELEASE
at net.minecraftforge.fml.ModLoadingException.lambda$fromEarlyException$0(ModLoadingException.java:64)
at net.minecraftforge.fml.ModLoadingException$$Lambda$2912/162667475.apply(Unknown Source)
at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:193)
at java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1374)
at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:512)
at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:502)
at java.util.stream.ForEachOps$ForEachOp.evaluateSequential(ForEachOps.java:151)
at java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(ForEachOps.java:174)
at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
at java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:418)
at java.util.stream.ReferencePipeline$7$1.accept(ReferencePipeline.java:270)
at java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1374)
at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:512)
at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:502)
at java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:708)
at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
at java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:499)
at net.minecraftforge.fml.ModLoader.(ModLoader.java:114)
at net.minecraftforge.fml.ModLoader.get(ModLoader.java:148)
at net.minecraftforge.fml.client.ClientModLoader.lambda$begin$1(ClientModLoader.java:103)
at net.minecraftforge.fml.client.ClientModLoader$$Lambda$2909/770669178.run(Unknown Source)
at net.minecraftforge.fml.client.ClientModLoader.lambda$createRunnableWithCatch$4(ClientModLoader.java:123)
at net.minecraftforge.fml.client.ClientModLoader$$Lambda$2910/619199769.run(Unknown Source)
at net.minecraftforge.fml.client.ClientModLoader.begin(ClientModLoader.java:103)
at net.minecraft.client.Minecraft.(Minecraft.java:437)
at net.minecraft.client.main.Main.main(Main.java:149)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:497)
at net.minecraftforge.fml.loading.FMLClientLaunchProvider.lambda$launchService$0(FMLClientLaunchProvider.java:51)
at net.minecraftforge.fml.loading.FMLClientLaunchProvider$$Lambda$411/2123846943.call(Unknown Source)
at cpw.mods.modlauncher.LaunchServiceHandlerDecorator.launch(LaunchServiceHandlerDecorator.java:37)
at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:54)
at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:72)
at cpw.mods.modlauncher.Launcher.run(Launcher.java:82)
at cpw.mods.modlauncher.Launcher.main(Launcher.java:66)

  • latest.log:
  • crashlog:

Viewers

  • Add a thumbs-up to the mod compatibility issue if you are also affected. This helps the bug report become more visible to the team and doesn't clutter the comments.
  • Add a comment if you have any insights or background information that isn't already part of the conversation.
commented

To use 0.13.100 as the version number all other versions need to start with a lower number. Java compares the numbers from left to right, so 0.13.100 is lower than 0.13.96 because java finds the 9 first. To use version number 0.13.100 you would need all other versions to use the format 0.13.010, 0.13.020... 0.13.096 than 0.13.100.

minecolonies/src/main/resources/META-INF/mods.toml

[[dependencies.minecolonies]]
modId="structurize"
mandatory=true
versionRange="[0.13.94-ALPHA]"
ordering="AFTER"
side="BOTH"
----------------- changed to ------------------------
[[dependencies.minecolonies]]
modId="structurize"
mandatory=true
versionRange="[0.13.094-ALPHA]"
ordering="AFTER"
side="BOTH"

---------------------- edit ---------------------------
There are a lot of other places you would have to change the format the same way. Changing that one would make this version runnable. It would also effectively make all other 0.13.** versions accepted by this version. Which would break a lot. The easiest fix would be to move to 0.14.** or above.

commented

Each minecolonies version is compiled for exactly one structurize version. This check doesn't fail because 100 is interpreted < 96, but because 100 != 96