trainb0y / FabriZoom

Highly-configurable zoom for Fabric/NeoForge. Maintained fork of OkZoomer v4
https://modrinth.com/mod/fabrizoom
MIT License
15 stars 4 forks source link

YACL version incompatibilities #10

Closed purple512 closed 1 year ago

purple512 commented 1 year ago

I've met all the listed requirements, and it does not work. There is no config button in modmenu.

minecraft 1.19.3 fabric loader 0.14.12 fabrizoom 1.2.2 fabric api 0.71.0 fabric language kotlin 1.9.0 modmenu 5.0.2 YetAnotherConfigLib 2.2.0

No other mods. Just those.

Log has this error when entering modmenu

java.lang.IncompatibleClassChangeError: Found interface dev.isxander.yacl.api.YetAnotherConfigLib$Builder, but class was expected
        at io.github.trainb0y.fabrizoom.config.ConfigScreenKt.openConfigScreen(ConfigScreen.kt:31) ~[FabriZoom-1.2.2.jar:?]
        at io.github.trainb0y.fabrizoom.config.modmenu.ModMenuIntegration.getModConfigScreenFactory$lambda$0(ModMenuIntegration.kt:11) ~[FabriZoom-1.2.2.jar:?]
        at com.terraformersmc.modmenu.ModMenu.getConfigScreen(ModMenu.java:54) ~[modmenu-5.0.2.jar:?]
        at com.terraformersmc.modmenu.gui.ModsScreen.method_25426(ModsScreen.java:114) ~[modmenu-5.0.2.jar:?]
        at net.minecraft.class_437.method_41843(class_437.java:392) ~[client-intermediary.jar:?]
        at net.minecraft.class_437.method_25423(class_437.java:383) ~[client-intermediary.jar:?]
        at net.minecraft.class_310.method_1507(class_310.java:1049) ~[client-intermediary.jar:?]
        at com.terraformersmc.modmenu.gui.widget.ModMenuButtonWidget.lambda$new$0(ModMenuButtonWidget.java:11) ~[modmenu-5.0.2.jar:?]
        at net.minecraft.class_4185.method_25306(class_4185.java:94) ~[client-intermediary.jar:?]
        at net.minecraft.class_4264.method_25348(class_4264.java:16) ~[client-intermediary.jar:?]
        at net.minecraft.class_339.method_25402(class_339.java:172) ~[client-intermediary.jar:?]
        at net.minecraft.class_4069.method_25402(class_4069.java:31) ~[client-intermediary.jar:?]
        at net.minecraft.class_442.method_25402(class_442.java:332) ~[client-intermediary.jar:?]
        at net.minecraft.class_312.method_1611(class_312.java:94) ~[client-intermediary.jar:?]
        at net.minecraft.class_437.method_25412(class_437.java:492) ~[client-intermediary.jar:?]
        at net.minecraft.class_312.method_1601(class_312.java:94) ~[client-intermediary.jar:?]
        at net.minecraft.class_312.method_22686(class_312.java:165) ~[client-intermediary.jar:?]
        at net.minecraft.class_1255.execute(class_1255.java:102) ~[client-intermediary.jar:?]
        at net.minecraft.class_312.method_22684(class_312.java:165) ~[client-intermediary.jar:?]
        at org.lwjgl.glfw.GLFWMouseButtonCallbackI.callback(GLFWMouseButtonCallbackI.java:43) ~[lwjgl-glfw-3.3.1.jar:?]
        at org.lwjgl.system.JNI.invokeV(Native Method) ~[lwjgl-3.3.1.jar:?]
        at org.lwjgl.glfw.GLFW.glfwPollEvents(GLFW.java:3403) ~[lwjgl-glfw-3.3.1.jar:?]
        at com.mojang.blaze3d.systems.RenderSystem.flipFrame(RenderSystem.java:190) ~[client-intermediary.jar:?]
        at net.minecraft.class_1041.method_15998(class_1041.java:310) ~[client-intermediary.jar:?]
        at net.minecraft.class_310.method_1523(class_310.java:1222) ~[client-intermediary.jar:?]
        at net.minecraft.class_310.method_1514(class_310.java:781) ~[client-intermediary.jar:?]
        at net.minecraft.client.main.Main.method_44604(Main.java:244) ~[fabric-loader-0.14.12-1.19.3.jar:?]
        at net.minecraft.client.main.Main.main(Main.java:51) ~[fabric-loader-0.14.12-1.19.3.jar:?]
        at net.fabricmc.loader.impl.game.minecraft.MinecraftGameProvider.launch(MinecraftGameProvider.java:461) ~[fabric-loader-0.14.12.jar:?]
        at net.fabricmc.loader.impl.launch.knot.Knot.launch(Knot.java:74) ~[fabric-loader-0.14.12.jar:?]
        at net.fabricmc.loader.impl.launch.knot.KnotClient.main(KnotClient.java:23) ~[fabric-loader-0.14.12.jar:?]

Complete list of mods from log:

[05:01:05] [main/INFO]: Loading 73 mods:
    - com_google_guava_guava 31.1-jre via fabrizoom
    - com_typesafe_config 1.4.2 via fabrizoom
    - fabric-api 0.71.0+1.19.3
    - fabric-api-base 0.4.20+afca2f3e85 via fabric-api
    - fabric-api-lookup-api-v1 1.6.19+49abcf7e85 via fabric-api
    - fabric-biome-api-v1 12.1.0+b5d379b085 via fabric-api
    - fabric-block-api-v1 1.0.4+e022e5d185 via fabric-api
    - fabric-blockrenderlayer-v1 1.1.29+c6af733c85 via fabric-api
    - fabric-client-tags-api-v1 1.0.10+99f9db8085 via fabric-api
    - fabric-command-api-v1 1.2.20+f71b366f85 via fabric-api
    - fabric-command-api-v2 2.1.16+99f9db8085 via fabric-api
    - fabric-commands-v0 0.2.37+df3654b385 via fabric-api
    - fabric-containers-v0 0.1.46+df3654b385 via fabric-api
    - fabric-content-registries-v0 3.5.0+1d37d50285 via fabric-api
    - fabric-convention-tags-v1 1.2.1+8e4e694f85 via fabric-api
    - fabric-crash-report-info-v1 0.2.13+aeb40ebe85 via fabric-api
    - fabric-data-generation-api-v1 11.1.3+87855a7085 via fabric-api
    - fabric-dimensions-v1 2.1.40+48349a3f85 via fabric-api
    - fabric-entity-events-v1 1.5.6+b83334a085 via fabric-api
    - fabric-events-interaction-v0 0.4.39+3baeb27a85 via fabric-api
    - fabric-events-lifecycle-v0 0.2.41+df3654b385 via fabric-api
    - fabric-game-rule-api-v1 1.0.29+99f9db8085 via fabric-api
    - fabric-item-api-v1 2.1.7+e498f5f085 via fabric-api
    - fabric-item-group-api-v1 2.1.10+0a2a0d0b85 via fabric-api
    - fabric-key-binding-api-v1 1.0.30+bc01e09785 via fabric-api
    - fabric-keybindings-v0 0.2.28+df3654b385 via fabric-api
    - fabric-language-kotlin 1.9.0+kotlin.1.8.0
    - fabric-lifecycle-events-v1 2.2.9+23a79c8a85 via fabric-api
    - fabric-loot-api-v2 1.1.19+75e9821185 via fabric-api
    - fabric-loot-tables-v1 1.1.23+9e7660c685 via fabric-api
    - fabric-message-api-v1 5.0.13+6ede1da985 via fabric-api
    - fabric-mining-level-api-v1 2.1.30+49abcf7e85 via fabric-api
    - fabric-models-v0 0.3.26+11ba9c3b85 via fabric-api
    - fabric-networking-api-v1 1.2.16+4017a8cb85 via fabric-api
    - fabric-networking-v0 0.3.33+df3654b385 via fabric-api
    - fabric-object-builder-api-v1 5.3.0+85f102ee85 via fabric-api
    - fabric-particles-v1 1.0.19+f1e4495b85 via fabric-api
    - fabric-registry-sync-v0 2.0.3+2608564685 via fabric-api
    - fabric-renderer-api-v1 2.2.0+9f179aa185 via fabric-api
    - fabric-renderer-indigo 0.7.0+9f179aa185 via fabric-api
    - fabric-renderer-registries-v1 3.2.29+df3654b385 via fabric-api
    - fabric-rendering-data-attachment-v1 0.3.24+afca2f3e85 via fabric-api
    - fabric-rendering-fluids-v1 3.0.17+f1e4495b85 via fabric-api
    - fabric-rendering-v0 1.1.32+df3654b385 via fabric-api
    - fabric-rendering-v1 1.12.0+6dc0edd785 via fabric-api
    - fabric-resource-conditions-api-v1 2.2.1+280be3ab85 via fabric-api
    - fabric-resource-loader-v0 0.10.4+a91e48b785 via fabric-api
    - fabric-screen-api-v1 1.0.40+f1e4495b85 via fabric-api
    - fabric-screen-handler-api-v1 1.3.12+99f9db8085 via fabric-api
    - fabric-sound-api-v1 1.0.7+75e9821185 via fabric-api
    - fabric-transfer-api-v1 2.1.13+f1e4495b85 via fabric-api
    - fabric-transitive-access-wideners-v1 2.3.0+5b9a588b85 via fabric-api
    - fabricloader 0.14.12
    - fabrizoom 1.2.2
    - io_leangen_geantyref_geantyref 1.3.12 via fabrizoom
    - java 17
    - minecraft 1.19.3
    - modmenu 5.0.2
    - org_jetbrains_kotlin_kotlin-reflect 1.8.0 via fabric-language-kotlin
    - org_jetbrains_kotlin_kotlin-stdlib 1.8.0 via fabric-language-kotlin
    - org_jetbrains_kotlin_kotlin-stdlib-jdk7 1.8.0 via fabric-language-kotlin
    - org_jetbrains_kotlin_kotlin-stdlib-jdk8 1.8.0 via fabric-language-kotlin
    - org_jetbrains_kotlinx_atomicfu-jvm 0.18.5 via fabric-language-kotlin
    - org_jetbrains_kotlinx_kotlinx-coroutines-core-jvm 1.6.4 via fabric-language-kotlin
    - org_jetbrains_kotlinx_kotlinx-coroutines-jdk8 1.6.4 via fabric-language-kotlin
    - org_jetbrains_kotlinx_kotlinx-datetime-jvm 0.4.0 via fabric-language-kotlin
    - org_jetbrains_kotlinx_kotlinx-serialization-cbor-jvm 1.4.1 via fabric-language-kotlin
    - org_jetbrains_kotlinx_kotlinx-serialization-core-jvm 1.4.1 via fabric-language-kotlin
    - org_jetbrains_kotlinx_kotlinx-serialization-json-jvm 1.4.1 via fabric-language-kotlin
    - org_spongepowered_configurate-core 4.1.2 via fabrizoom
    - org_spongepowered_configurate-extra-kotlin 4.1.2 via fabrizoom
    - org_spongepowered_configurate-hocon 4.1.2 via fabrizoom
    - yet-another-config-lib 2.2.0
trainb0y commented 1 year ago

I think this probably happens because the mod is compiled against YACL 2.0.0, and you have 2.2.0 installed.

I’ll update it later today, hopefully that will fix it.

trainb0y commented 1 year ago

Hopefully fixed with https://github.com/trainb0y/FabriZoom/commit/71a781d329e9d470db662673b5d2711c4f567d0a and released in version 1.2.3.

TrueKapline commented 1 year ago

Still doesn't work.

Minecraft 1.19.4 Fabric Loader 0.14.19 Fabrizoom 1.2.4 Fabric API 0.81.1 Fabric Language Kotlin 1.9.4 Mod Menu 6.2.2 YetAnotherConfigLib 3.0.0

Also no other mods

The Mod Menu error:

[22:33:01] [Render thread/WARN]: The 'fabrizoom' mod config screen is not available because dev/isxander/yacl/api/YetAnotherConfigLib is missing.

List of mods from log:

[22:28:42] [main/INFO]: Loading 74 mods:
    - fabric-api 0.81.1+1.19.4
       |-- fabric-api-base 0.4.26+1e9487d2f4
       |-- fabric-api-lookup-api-v1 1.6.27+504944c8f4
       |-- fabric-biome-api-v1 13.0.8+348a9c64f4
       |-- fabric-block-api-v1 1.0.7+e022e5d1f4
       |-- fabric-blockrenderlayer-v1 1.1.36+c2e6f674f4
       |-- fabric-client-tags-api-v1 1.0.17+504944c8f4
       |-- fabric-command-api-v1 1.2.29+f71b366ff4
       |-- fabric-command-api-v2 2.2.8+504944c8f4
       |-- fabric-commands-v0 0.2.46+df3654b3f4
       |-- fabric-containers-v0 0.1.56+df3654b3f4
       |-- fabric-content-registries-v0 3.5.11+ae0966baf4
       |-- fabric-convention-tags-v1 1.5.1+fe8721bef4
       |-- fabric-crash-report-info-v1 0.2.16+aeb40ebef4
       |-- fabric-data-generation-api-v1 11.4.2+504944c8f4
       |-- fabric-dimensions-v1 2.1.47+7f87f8faf4
       |-- fabric-entity-events-v1 1.5.15+504944c8f4
       |-- fabric-events-interaction-v0 0.5.1+76ba65ebf4
       |-- fabric-events-lifecycle-v0 0.2.54+df3654b3f4
       |-- fabric-game-rule-api-v1 1.0.34+a1ccd7bff4
       |-- fabric-item-api-v1 2.1.19+504944c8f4
       |-- fabric-item-group-api-v1 3.0.7+043f9acff4
       |-- fabric-key-binding-api-v1 1.0.34+504944c8f4
       |-- fabric-keybindings-v0 0.2.32+df3654b3f4
       |-- fabric-lifecycle-events-v1 2.2.17+1e9487d2f4
       |-- fabric-loot-api-v2 1.1.29+75e98211f4
       |-- fabric-loot-tables-v1 1.1.33+9e7660c6f4
       |-- fabric-message-api-v1 5.1.3+504944c8f4
       |-- fabric-mining-level-api-v1 2.1.41+49abcf7ef4
       |-- fabric-models-v0 0.3.32+504944c8f4
       |-- fabric-networking-api-v1 1.3.3+504944c8f4
       |-- fabric-networking-v0 0.3.43+df3654b3f4
       |-- fabric-object-builder-api-v1 7.0.5+504944c8f4
       |-- fabric-particles-v1 1.0.25+f1e4495bf4
       |-- fabric-recipe-api-v1 1.0.10+a1ccd7bff4
       |-- fabric-registry-sync-v0 2.2.2+504944c8f4
       |-- fabric-renderer-api-v1 2.2.7+ebc93ff3f4
       |-- fabric-renderer-indigo 1.2.0+ebc93ff3f4
       |-- fabric-renderer-registries-v1 3.2.40+df3654b3f4
       |-- fabric-rendering-data-attachment-v1 0.3.30+afca2f3ef4
       |-- fabric-rendering-fluids-v1 3.0.23+504944c8f4
       |-- fabric-rendering-v0 1.1.43+df3654b3f4
       |-- fabric-rendering-v1 2.1.3+504944c8f4
       |-- fabric-resource-conditions-api-v1 2.3.2+e6c7d4eef4
       |-- fabric-resource-loader-v0 0.11.4+5ade3c38f4
       |-- fabric-screen-api-v1 1.0.47+3bd4ab0ff4
       |-- fabric-screen-handler-api-v1 1.3.22+504944c8f4
       |-- fabric-sound-api-v1 1.0.10+504944c8f4
       |-- fabric-transfer-api-v1 3.2.0+80d07a0af4
       \-- fabric-transitive-access-wideners-v1 3.1.1+b4a333d6f4
    - fabric-language-kotlin 1.9.4+kotlin.1.8.21
       |-- org_jetbrains_kotlin_kotlin-reflect 1.8.21
       |-- org_jetbrains_kotlin_kotlin-stdlib 1.8.21
       |-- org_jetbrains_kotlin_kotlin-stdlib-jdk7 1.8.21
       |-- org_jetbrains_kotlin_kotlin-stdlib-jdk8 1.8.21
       |-- org_jetbrains_kotlinx_atomicfu-jvm 0.20.2
       |-- org_jetbrains_kotlinx_kotlinx-coroutines-core-jvm 1.6.4
       |-- org_jetbrains_kotlinx_kotlinx-coroutines-jdk8 1.6.4
       |-- org_jetbrains_kotlinx_kotlinx-datetime-jvm 0.4.0
       |-- org_jetbrains_kotlinx_kotlinx-serialization-cbor-jvm 1.5.0
       |-- org_jetbrains_kotlinx_kotlinx-serialization-core-jvm 1.5.0
       \-- org_jetbrains_kotlinx_kotlinx-serialization-json-jvm 1.5.0
    - fabricloader 0.14.19
    - fabrizoom 1.2.4
       |-- com_google_guava_guava 31.1-jre
       |-- com_typesafe_config 1.4.2
       |-- io_leangen_geantyref_geantyref 1.3.12
       |-- org_spongepowered_configurate-core 4.1.2
       |-- org_spongepowered_configurate-extra-kotlin 4.1.2
       \-- org_spongepowered_configurate-hocon 4.1.2
    - java 17
    - minecraft 1.19.4
    - modmenu 6.2.2
    - yet_another_config_lib_v3 3.0.0-beta.2+1.19.4
trainb0y commented 1 year ago

Still doesn't work.

Minecraft 1.19.4 Fabric Loader 0.14.19 Fabrizoom 1.2.4 Fabric API 0.81.1 Fabric Language Kotlin 1.9.4 Mod Menu 6.2.2 YetAnotherConfigLib 3.0.0

Im not entirely sure, but I suspect this is because the 1.19.4 version only supports YACL v2, and you’re running v3. The (not yet released) 1.20 fabrizoom version uses YACL v3, and it should be fairly simple to backport (https://github.com/trainb0y/FabriZoom/commit/5f11524dffc01fe17a61a5f765e8492fe7745641), if this is in fact the issue.

trainb0y commented 1 year ago

If you send the full log I can take a closer look, but I can’t get to my computer for a while, so I doubt I’ll be able to backport the yacl v3 changes soon. If you can maybe use yacl v2 for the time being? Not sure

TrueKapline commented 1 year ago

Yes, it works with YACL v2. This was the issue, thank you

trainb0y commented 1 year ago

Going to leave this issue open until I backport the yacl v3 changes, glad that worked though