Skidamek / AutoModpack

Enjoy a seamless modpack installation process and effortless updates with a user-friendly solution that simplifies management, making your gaming experience a breeze.
https://modrinth.com/mod/automodpack
GNU Lesser General Public License v3.0
91 stars 29 forks source link

InvalidPathException on Legacy Launcher causing version check mismatch #159

Closed WallyCZ closed 9 months ago

WallyCZ commented 10 months ago

Bug description

I use this launcher https://llaun.ch/ and on client side it throws InvalidPathException (see log below) what probably causes "AutoModpack version mismatch! Install 3.4.5 version of AutoModpack mod for fabric to play on this server!" error even both versions on client and server are the same. I noticed that client's log shows version 1.0.0 probably because the previous InvalidPathException (...You are on the latest version: 1.0.0)

Steps to reproduce

  1. Use Legacy Launcher on Windows
  2. Choose fabric 1.20.1 and install AutoModpack 3.4.5 on client
  3. Run and see the log

Expected behavior

It connects to the server

Actual behavior

Server shows "AutoModpack version mismatch! Install 3.4.5 version of AutoModpack mod for fabric to play on this server!"

Relevant logs

[14:59:06] [main/INFO]: [PreloadingTricks/LanguageAdapter] Loading settingdust.preloadingtricks.fabric.FabricLanguageProviderCallback
[14:59:06] [main/INFO]: [PreloadingTricks/LanguageAdapter] Loading settingdust.preloadingtricks.quilt.QuiltLanguageProviderCallback
[14:59:06] [main/INFO]: [PreloadingTricks/LanguageAdapter] Loading settingdust.preloadingtricks.forge.ForgeLanguageProviderCallback
[14:59:06] [main/INFO]: [PreloadingTricks/ModSetup] Loading pl.skidam.automodpack.Preload
java.nio.file.InvalidPathException: Illegal char <:> at index 2: /C:/Users/guest/AppData/Roaming/.tlauncher/mcl/Minecraft/game/mods/automodpack-mc1.20.1-fabric-3.4.5.jar
    at java.base/sun.nio.fs.WindowsPathParser.normalize(WindowsPathParser.java:182)
    at java.base/sun.nio.fs.WindowsPathParser.parse(WindowsPathParser.java:153)
    at java.base/sun.nio.fs.WindowsPathParser.parse(WindowsPathParser.java:77)
    at java.base/sun.nio.fs.WindowsPath.parse(WindowsPath.java:92)
    at java.base/sun.nio.fs.WindowsFileSystem.getPath(WindowsFileSystem.java:232)
    at java.base/java.nio.file.Path.of(Path.java:147)
    at java.base/java.nio.file.Paths.get(Paths.java:69)
    at pl.skidam.automodpack.loaders.Loader.getAMVersion(Loader.java:33)
    at pl.skidam.automodpack.GlobalVariables.<clinit>(GlobalVariables.java:38)
    at pl.skidam.automodpack.Preload.<init>(Preload.java:42)
    at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:77)
    at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
    at java.base/java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:499)
    at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:480)
    at java.base/java.util.ServiceLoader$ProviderImpl.newInstance(ServiceLoader.java:789)
    at java.base/java.util.ServiceLoader$ProviderImpl.get(ServiceLoader.java:729)
    at settingdust.preloadingtricks.util.ServiceLoaderUtil.loadServices(ServiceLoaderUtil.java:33)
    at settingdust.preloadingtricks.fabric.FabricLanguageProviderCallback.setupModsInvoking(FabricLanguageProviderCallback.java:42)
    at settingdust.preloadingtricks.fabric.FabricLanguageProviderCallback$ModsListProxy.invoke(FabricLanguageProviderCallback.java:51)
    at jdk.proxy1/jdk.proxy1.$Proxy18.iterator(Unknown Source)
    at net.fabricmc.loader.impl.FabricLoaderImpl.setupMods(FabricLoaderImpl.java:448)
    at net.fabricmc.loader.impl.FabricLoaderImpl.finishModLoading(FabricLoaderImpl.java:350)
    at net.fabricmc.loader.impl.FabricLoaderImpl.freeze(FabricLoaderImpl.java:112)
    at net.fabricmc.loader.impl.launch.knot.Knot.init(Knot.java:149)
    at net.fabricmc.loader.impl.launch.knot.Knot.launch(Knot.java:68)
    at net.fabricmc.loader.impl.launch.knot.KnotClient.main(KnotClient.java:23)
[14:59:06] [main/INFO]: Prelaunching AutoModpack...
[14:59:07] [main/INFO]: Loaded config! took 183ms
[14:59:07] [main/INFO]: Checking if AutoModpack is up-to-date...
[14:59:07] [main/INFO]: Didn't find any updates for AutoModpack! You are on the latest version: 1.0.0
[14:59:07] [main/INFO]: AutoModpack prelaunched! took 866ms

Minecraft & Mod Loader versions

1.20.1 with Fabric Loader 0.14.21

Minecraft launcher

Legacy Launcher

Operating system

Windows 11

AutoModpack version

3.4.5

Other information

No response

Check list

SettingDust commented 10 months ago

https://github.com/SettingDust/ModSets/blob/main/forge-mod-locator/src/main/java/settingdust/modsets/forge/service/ModSetsModLocator.java#L59-L66 The usage is wrong https://github.com/Skidamek/AutoModpack/blob/main/src/main/java/pl/skidam/automodpack/loaders/Loader.java#L35-L39

Skidamek commented 10 months ago

use 3.4.4 for now

Skidamek commented 9 months ago

fixed in 3.5.0