isXander / Controlify

Another controller mod - for fabric!
https://www.isxander.dev/mods/controlify
GNU Lesser General Public License v3.0
135 stars 27 forks source link

[Bug] when i try to adjust controller settings the game crashes #198

Closed avepappoli closed 4 months ago

avepappoli commented 9 months ago

Current Behaviour

click settingd and the game crashes

Expected Behaviour

click settings and the game opens the controller config

Screenshots

image

Reproduction Steps

  1. open the config for the mod
  2. click "settings" on a specific controller

Logs

---- Minecraft Crash Report ----
// This doesn't make any sense!

Time: 2023-11-30 16:58:43
Description: Ticking current controller

java.lang.NoSuchMethodError: 'dev.isxander.yacl3.api.ButtonOption$Builder dev.isxander.yacl3.api.ButtonOption$Builder.text(net.minecraft.class_2561)'
    at dev.isxander.controlify.gui.screen.ControllerConfigScreenFactory.createBindsCategory(ControllerConfigScreenFactory.java:355)
    at dev.isxander.controlify.gui.screen.ControllerConfigScreenFactory.generateConfigScreen0(ControllerConfigScreenFactory.java:52)
    at dev.isxander.controlify.gui.screen.ControllerConfigScreenFactory.generateConfigScreen(ControllerConfigScreenFactory.java:44)
    at dev.isxander.controlify.gui.screen.ControllerCarouselScreen$CarouselEntry.lambda$new$0(ControllerCarouselScreen.java:220)
    at net.minecraft.class_4185.method_25306(class_4185.java:94)
    at dev.isxander.controlify.screenop.compat.vanilla.AbstractButtonComponentProcessor.overrideControllerButtons(AbstractButtonComponentProcessor.java:20)
    at dev.isxander.controlify.screenop.ScreenProcessor.handleComponentButtonOverride(ScreenProcessor.java:177)
    at dev.isxander.controlify.screenop.ScreenProcessor.onControllerUpdate(ScreenProcessor.java:47)
    at dev.isxander.controlify.Controlify.tickController(Controlify.java:349)
    at dev.isxander.controlify.Controlify.lambda$tick$16(Controlify.java:313)
    at dev.isxander.controlify.Controlify.wrapControllerError(Controlify.java:360)
    at dev.isxander.controlify.Controlify.lambda$tick$17(Controlify.java:312)
    at java.base/java.util.Optional.ifPresent(Optional.java:178)
    at dev.isxander.controlify.Controlify.tick(Controlify.java:311)
    at net.fabricmc.fabric.api.client.event.lifecycle.v1.ClientTickEvents.lambda$static$0(ClientTickEvents.java:34)
    at net.minecraft.class_310.handler$bcd000$fabric-lifecycle-events-v1$onStartTick(class_310.java:7517)
    at net.minecraft.class_310.method_1574(class_310.java)
    at net.minecraft.class_310.method_1523(class_310.java:1181)
    at net.minecraft.class_310.method_1514(class_310.java:802)
    at net.minecraft.client.main.Main.main(Main.java:250)
    at net.fabricmc.loader.impl.game.minecraft.MinecraftGameProvider.launch(MinecraftGameProvider.java:468)
    at net.fabricmc.loader.impl.launch.knot.Knot.launch(Knot.java:74)
    at net.fabricmc.loader.impl.launch.knot.KnotClient.main(KnotClient.java:23)

A detailed walkthrough of the error, its code path and all known details is as follows:
---------------------------------------------------------------------------------------

-- Head --
Thread: Render thread
Stacktrace:
    at dev.isxander.controlify.gui.screen.ControllerConfigScreenFactory.createBindsCategory(ControllerConfigScreenFactory.java:355)
    at dev.isxander.controlify.gui.screen.ControllerConfigScreenFactory.generateConfigScreen0(ControllerConfigScreenFactory.java:52)
    at dev.isxander.controlify.gui.screen.ControllerConfigScreenFactory.generateConfigScreen(ControllerConfigScreenFactory.java:44)
    at dev.isxander.controlify.gui.screen.ControllerCarouselScreen$CarouselEntry.lambda$new$0(ControllerCarouselScreen.java:220)
    at net.minecraft.class_4185.method_25306(class_4185.java:94)
    at dev.isxander.controlify.screenop.compat.vanilla.AbstractButtonComponentProcessor.overrideControllerButtons(AbstractButtonComponentProcessor.java:20)
    at dev.isxander.controlify.screenop.ScreenProcessor.handleComponentButtonOverride(ScreenProcessor.java:177)
    at dev.isxander.controlify.screenop.ScreenProcessor.onControllerUpdate(ScreenProcessor.java:47)
    at dev.isxander.controlify.Controlify.tickController(Controlify.java:349)
    at dev.isxander.controlify.Controlify.lambda$tick$16(Controlify.java:313)
    at dev.isxander.controlify.Controlify.wrapControllerError(Controlify.java:360)
    at dev.isxander.controlify.Controlify.lambda$tick$17(Controlify.java:312)
    at java.base/java.util.Optional.ifPresent(Optional.java:178)
    at dev.isxander.controlify.Controlify.tick(Controlify.java:311)
    at net.fabricmc.fabric.api.client.event.lifecycle.v1.ClientTickEvents.lambda$static$0(ClientTickEvents.java:34)
    at net.minecraft.class_310.handler$bcd000$fabric-lifecycle-events-v1$onStartTick(class_310.java:7517)

-- Affected controller --
Details:
    Controller name: 8BitDo Controller
    Controller identification: ControllerType[friendlyName=8BitDo Controller, mappingId=null, themeId=unknown, forceJoystick=false, dontLoad=false]
    Controller type: dev.isxander.controlify.controller.gamepad.GamepadController
Stacktrace:
    at dev.isxander.controlify.Controlify.wrapControllerError(Controlify.java:360)
    at dev.isxander.controlify.Controlify.lambda$tick$17(Controlify.java:312)
    at java.base/java.util.Optional.ifPresent(Optional.java:178)
    at dev.isxander.controlify.Controlify.tick(Controlify.java:311)
    at net.fabricmc.fabric.api.client.event.lifecycle.v1.ClientTickEvents.lambda$static$0(ClientTickEvents.java:34)
    at net.minecraft.class_310.handler$bcd000$fabric-lifecycle-events-v1$onStartTick(class_310.java:7517)
    at net.minecraft.class_310.method_1574(class_310.java)
    at net.minecraft.class_310.method_1523(class_310.java:1181)
    at net.minecraft.class_310.method_1514(class_310.java:802)
    at net.minecraft.client.main.Main.main(Main.java:250)
    at net.fabricmc.loader.impl.game.minecraft.MinecraftGameProvider.launch(MinecraftGameProvider.java:468)
    at net.fabricmc.loader.impl.launch.knot.Knot.launch(Knot.java:74)
    at net.fabricmc.loader.impl.launch.knot.KnotClient.main(KnotClient.java:23)

-- Last reload --
Details:
    Reload number: 1
    Reload reason: initial
    Finished: Yes
    Packs: vanilla, file/3D-Noteblock-Displays-1.19.3-V2.3.zip, fabric, continuity:default, continuity:glass_pane_culling_fix, file/EBE_v1.1_1.19.4.zip, file/axolotl_bucket_variants-1.19.4.zip, Supplementaries Generated Pack
Stacktrace:
    at net.minecraft.class_6360.method_36565(class_6360.java:49)
    at net.minecraft.class_310.method_1587(class_310.java:2413)
    at net.minecraft.class_310.method_1514(class_310.java:821)
    at net.minecraft.client.main.Main.main(Main.java:250)
    at net.fabricmc.loader.impl.game.minecraft.MinecraftGameProvider.launch(MinecraftGameProvider.java:468)
    at net.fabricmc.loader.impl.launch.knot.Knot.launch(Knot.java:74)
    at net.fabricmc.loader.impl.launch.knot.KnotClient.main(KnotClient.java:23)

-- System Details --
Details:
    Minecraft Version: 1.20.1
    Minecraft Version ID: 1.20.1
    Operating System: Windows 11 (amd64) version 10.0
    Java Version: 17.0.8, Microsoft
    Java VM Version: OpenJDK 64-Bit Server VM (mixed mode), Microsoft
    Memory: 630956392 bytes (601 MiB) / 2147483648 bytes (2048 MiB) up to 2147483648 bytes (2048 MiB)
    CPUs: 8
    Processor Vendor: AuthenticAMD
    Processor Name: AMD Ryzen 5 PRO 3350G with Radeon Vega Graphics
    Identifier: AuthenticAMD Family 23 Model 24 Stepping 1
    Microarchitecture: Zen / Zen+
    Frequency (GHz): 3.59
    Number of physical packages: 1
    Number of physical CPUs: 4
    Number of logical CPUs: 8
    Graphics card #0 name: AMD Radeon(TM) Vega 11 Graphics
    Graphics card #0 vendor: Advanced Micro Devices, Inc. (0x1002)
    Graphics card #0 VRAM (MB): 2048.00
    Graphics card #0 deviceId: 0x15d8
    Graphics card #0 versionInfo: DriverVersion=31.0.12027.9001
    Memory slot #0 capacity (MB): 8192.00
    Memory slot #0 clockSpeed (GHz): 2.67
    Memory slot #0 type: DDR4
    Virtual memory max (MB): 13000.42
    Virtual memory used (MB): 10741.20
    Swap memory total (MB): 6922.66
    Swap memory used (MB): 698.13
    JVM Flags: 9 total; -XX:HeapDumpPath=MojangTricksIntelDriversForPerformance_javaw.exe_minecraft.exe.heapdump -Xss1M -Xmx2G -XX:+UnlockExperimentalVMOptions -XX:+UseG1GC -XX:G1NewSizePercent=20 -XX:G1ReservePercent=20 -XX:MaxGCPauseMillis=50 -XX:G1HeapRegionSize=32M
    Fabric Mods: 
        adorn: Adorn 5.0.0+1.20.1
        appleskin: AppleSkin 2.5.0+mc1.20
        architectury: Architectury 9.1.12
        armorchroma: Armor Chroma 1.2.6
        athena: Athena 3.0.0
        betterstats: Better Statistics Screen 2.10.3+1.20.1
            tcdcommons: TCD Commons API 2.10.2+1.20.1
        cardinal-components: Cardinal Components API 5.2.1
            cardinal-components-base: Cardinal Components API (base) 5.2.1
            cardinal-components-block: Cardinal Components API (blocks) 5.2.1
            cardinal-components-chunk: Cardinal Components API (chunks) 5.2.1
            cardinal-components-entity: Cardinal Components API (entities) 5.2.1
            cardinal-components-item: Cardinal Components API (items) 5.2.1
            cardinal-components-level: Cardinal Components API (world saves) 5.2.1
            cardinal-components-scoreboard: Cardinal Components API (scoreboard) 5.2.1
            cardinal-components-world: Cardinal Components API (worlds) 5.2.1
        chipped: Chipped 3.0.1
        citresewn: CIT Resewn 1.1.3+1.20
            citresewn-defaults: CIT Resewn: Defaults 1.1.3+1.20
        cloth-config: Cloth Config v11 11.1.106
            cloth-basic-math: cloth-basic-math 0.6.1
        clutter: Clutter 1.20.1-0.3.9
        continuity: Continuity 3.0.0-beta.2+1.20
        controlify: Controlify 1.6.0+1.20
            com_github_llamalad7_mixinextras: MixinExtras 0.2.0-beta.9
            dev_isxander_sdl2-jni: sdl2-jni 2.28.2-26
            org_hid4java_hid4java: hid4java 0.7.0
            org_quiltmc_quilt-json5: quilt-json5 1.0.3
        corgilib: CorgiLib 4.0.0.0
            com_electronwill_night-config_core: core 3.6.6
            com_electronwill_night-config_toml: toml 3.6.6
        couplings: Couplings 1.9.5+1.20
        creeperoverhaul: Creeper Overhaul 3.0.1
        doggomodoverhauled: Doggo Mod Overhauled 5.2.0
        elytraslot: Elytra Slot 6.3.0+1.20.1
        enhancedblockentities: Enhanced Block Entities 0.9+1.20
            advanced_runtime_resource_pack: Runtime Resource Pack 0.6.7
            spruceui: SpruceUI 5.0.0+1.20
        enhancedcelestials: Enhanced Celestials 5.0.0.2
        entityculling: EntityCulling-Fabric 1.6.2-mc1.20
        expandeddelight: Expanded Delight 0.3.0.1
        fabric-api: Fabric API 0.86.1+1.20.1
            fabric-api-base: Fabric API Base 0.4.30+7abfd51577
            fabric-api-lookup-api-v1: Fabric API Lookup API (v1) 1.6.35+4d8536c977
            fabric-biome-api-v1: Fabric Biome API (v1) 13.0.10+b3afc78b77
            fabric-block-api-v1: Fabric Block API (v1) 1.0.9+e022e5d177
            fabric-blockrenderlayer-v1: Fabric BlockRenderLayer Registration (v1) 1.1.40+b3afc78b77
            fabric-client-tags-api-v1: Fabric Client Tags 1.1.1+97bb207577
            fabric-command-api-v1: Fabric Command API (v1) 1.2.33+f71b366f77
            fabric-command-api-v2: Fabric Command API (v2) 2.2.12+b3afc78b77
            fabric-commands-v0: Fabric Commands (v0) 0.2.50+df3654b377
            fabric-containers-v0: Fabric Containers (v0) 0.1.62+df3654b377
            fabric-content-registries-v0: Fabric Content Registries (v0) 4.0.9+b3afc78b77
            fabric-convention-tags-v1: Fabric Convention Tags 1.5.4+a1a980da77
            fabric-crash-report-info-v1: Fabric Crash Report Info (v1) 0.2.18+aeb40ebe77
            fabric-data-generation-api-v1: Fabric Data Generation API (v1) 12.2.1+1e61dba177
            fabric-dimensions-v1: Fabric Dimensions API (v1) 2.1.52+b3afc78b77
            fabric-entity-events-v1: Fabric Entity Events (v1) 1.5.22+b3afc78b77
            fabric-events-interaction-v0: Fabric Events Interaction (v0) 0.6.1+e91849a877
            fabric-events-lifecycle-v0: Fabric Events Lifecycle (v0) 0.2.62+df3654b377
            fabric-game-rule-api-v1: Fabric Game Rule API (v1) 1.0.38+b04edc7a77
            fabric-item-api-v1: Fabric Item API (v1) 2.1.27+b3afc78b77
            fabric-item-group-api-v1: Fabric Item Group API (v1) 4.0.10+23d9108177
            fabric-key-binding-api-v1: Fabric Key Binding API (v1) 1.0.36+fb8d95da77
            fabric-keybindings-v0: Fabric Key Bindings (v0) 0.2.34+df3654b377
            fabric-lifecycle-events-v1: Fabric Lifecycle Events (v1) 2.2.21+b3afc78b77
            fabric-loot-api-v2: Fabric Loot API (v2) 1.1.39+b3afc78b77
            fabric-loot-tables-v1: Fabric Loot Tables (v1) 1.1.43+9e7660c677
            fabric-message-api-v1: Fabric Message API (v1) 5.1.7+3265161977
            fabric-mining-level-api-v1: Fabric Mining Level API (v1) 2.1.49+b3afc78b77
            fabric-model-loading-api-v1: Fabric Model Loading API (v1) 1.0.2+709a987177
            fabric-models-v0: Fabric Models (v0) 0.4.1+9386d8a777
            fabric-networking-api-v1: Fabric Networking API (v1) 1.3.9+b3afc78b77
            fabric-networking-v0: Fabric Networking (v0) 0.3.49+df3654b377
            fabric-object-builder-api-v1: Fabric Object Builder API (v1) 11.1.1+6beca84877
            fabric-particles-v1: Fabric Particles (v1) 1.1.1+201a23a077
            fabric-recipe-api-v1: Fabric Recipe API (v1) 1.0.19+b3afc78b77
            fabric-registry-sync-v0: Fabric Registry Sync (v0) 2.3.1+4df89eb277
            fabric-renderer-api-v1: Fabric Renderer API (v1) 3.1.1+9386d8a777
            fabric-renderer-indigo: Fabric Renderer - Indigo 1.4.1+9172968c77
            fabric-renderer-registries-v1: Fabric Renderer Registries (v1) 3.2.45+df3654b377
            fabric-rendering-data-attachment-v1: Fabric Rendering Data Attachment (v1) 0.3.34+b3afc78b77
            fabric-rendering-fluids-v1: Fabric Rendering Fluids (v1) 3.0.27+b3afc78b77
            fabric-rendering-v0: Fabric Rendering (v0) 1.1.48+df3654b377
            fabric-rendering-v1: Fabric Rendering (v1) 3.0.7+b3afc78b77
            fabric-resource-conditions-api-v1: Fabric Resource Conditions API (v1) 2.3.5+ea08f9d877
            fabric-resource-loader-v0: Fabric Resource Loader (v0) 0.11.9+132c48c177
            fabric-screen-api-v1: Fabric Screen API (v1) 2.0.7+b3afc78b77
            fabric-screen-handler-api-v1: Fabric Screen Handler API (v1) 1.3.28+b3afc78b77
            fabric-sound-api-v1: Fabric Sound API (v1) 1.0.12+b3afc78b77
            fabric-transfer-api-v1: Fabric Transfer API (v1) 3.3.0+cdf060b277
            fabric-transitive-access-wideners-v1: Fabric Transitive Access Wideners (v1) 4.3.0+6c31357e77
        fabric-language-kotlin: Fabric Language Kotlin 1.10.8+kotlin.1.9.0
            org_jetbrains_kotlin_kotlin-reflect: kotlin-reflect 1.9.0
            org_jetbrains_kotlin_kotlin-stdlib: kotlin-stdlib 1.9.0
            org_jetbrains_kotlin_kotlin-stdlib-jdk7: kotlin-stdlib-jdk7 1.9.0
            org_jetbrains_kotlin_kotlin-stdlib-jdk8: kotlin-stdlib-jdk8 1.9.0
            org_jetbrains_kotlinx_atomicfu-jvm: atomicfu-jvm 0.21.0
            org_jetbrains_kotlinx_kotlinx-coroutines-core-jvm: kotlinx-coroutines-core-jvm 1.7.2
            org_jetbrains_kotlinx_kotlinx-coroutines-jdk8: kotlinx-coroutines-jdk8 1.7.2
            org_jetbrains_kotlinx_kotlinx-datetime-jvm: kotlinx-datetime-jvm 0.4.0
            org_jetbrains_kotlinx_kotlinx-serialization-cbor-jvm: kotlinx-serialization-cbor-jvm 1.5.1
            org_jetbrains_kotlinx_kotlinx-serialization-core-jvm: kotlinx-serialization-core-jvm 1.5.1
            org_jetbrains_kotlinx_kotlinx-serialization-json-jvm: kotlinx-serialization-json-jvm 1.5.1
        fabricloader: Fabric Loader 0.14.21
        farmersdelight: Farmer's Delight 1.20.1-1.4.1
        fsit: FSit v1.3.0
        geckolib: Geckolib 4.2.1
            com_eliotlash_mclib_mclib: mclib 20
        idwtialsimmoedm: idwtialsimmoedm 0.2.0+1.20
        incendium: Incendium 5.3.1
        indium: Indium 1.0.21+mc1.20.1
        iris: Iris 1.6.4
            io_github_douira_glsl-transformer: glsl-transformer 2.0.0-pre13
            org_anarres_jcpp: jcpp 1.4.14
            org_antlr_antlr4-runtime: antlr4-runtime 4.11.1
        ironchest: Iron Chests 2.0.0
            libgui: LibGui 8.0.0+1.20
                jankson: Jankson 5.0.1+j1.2.2
                    blue_endless_jankson: jankson 1.2.2
                libninepatch: LibNinePatch 1.2.0
        jade: Jade 11.1.4
        java: OpenJDK 64-Bit Server VM 17
        kibe: Kibe 1.10.1-BETA+1.20
            playerabilitylib: Pal 1.8.0
        labels: labels 1.20-1.13
        lambdynlights: LambDynamicLights 2.3.1+1.20.1
            pride: Pride Lib 1.2.0+1.19.4
        minecraft: Minecraft 1.20.1
        modmenu: Mod Menu 7.2.1
        moonlight: Moonlight 1.20-2.7.2
        moreculling: More Culling 1.20-0.18.1
            conditional-mixin: conditional mixin 0.3.2
        musicplayer: Music Player 2.6.0.216
        nightlights: Night Lights 1.1
        notes: Notes 1.20.1-2.1.0-fabric
        oldpotions: Old Potions 2.3
        resourcefulconfig: Resourcefulconfig 2.0.0
        resourcefullib: Resourceful Lib 2.1.5
            com_teamresourceful_yabn: yabn 1.0.3
        roughlyenoughitems: Roughly Enough Items 12.0.634
            error_notifier: Error Notifier 1.0.9
        shulkerboxtooltip: Shulker Box Tooltip 4.0.4+1.20.1
        simplyswords: Simply Swords 1.50.0-1.20.1
        sodium: Sodium 0.4.10+build.27
        sort: Sort 1.0.3
        supplementaries: Supplementaries 1.20-2.5.21
        terralith: Terralith 2.4.3
        travelersbackpack: Traveler's Backpack 1.20.1-9.1.2
        trinkets: Trinkets 3.7.1
        uteamcore: U Team Core 5.1.3.267
        xaerominimap: Xaero's Minimap 23.6.0
        xaeroworldmap: Xaero's World Map 1.31.0
        yet_another_config_lib_v3: YetAnotherConfigLib 3.0.1+1.20
            com_twelvemonkeys_common_common-image: common-image 3.9.4
            com_twelvemonkeys_common_common-io: common-io 3.9.4
            com_twelvemonkeys_common_common-lang: common-lang 3.9.4
            com_twelvemonkeys_imageio_imageio-core: imageio-core 3.9.4
            com_twelvemonkeys_imageio_imageio-metadata: imageio-metadata 3.9.4
            com_twelvemonkeys_imageio_imageio-webp: imageio-webp 3.9.4
        zoomify: Zoomify 2.10.0
            com_akuleshov7_ktoml-core-jvm: ktoml-core-jvm 0.4.1
            dev_isxander_settxi_settxi-core: settxi-core 2.10.6
            dev_isxander_settxi_settxi-kotlinx-serialization: settxi-kotlinx-serialization 2.10.6
    Loaded Shaderpack: (off)
    NEC status: No NEC detected
    Launched Version: fabric-loader-0.14.21-1.20.1
    Backend library: LWJGL version 3.3.1 SNAPSHOT
    Backend API: AMD Radeon(TM) Vega 11 Graphics GL version 3.2.0 Core Profile Context 22.20.27.09.230330, ATI Technologies Inc.
    Window size: 1920x1200
    GL Caps: Using framebuffer using OpenGL 3.2
    GL debug messages: 
    Using VBOs: Yes
    Is Modded: Definitely; Client brand changed to 'fabric'
    Type: Client (map_client.txt)
    Graphics mode: fancy
    Resource Packs: vanilla, file/3D-Noteblock-Displays-1.19.3-V2.3.zip (incompatible), fabric, continuity:default, continuity:glass_pane_culling_fix, file/EBE_v1.1_1.19.4.zip (incompatible), file/axolotl_bucket_variants-1.19.4.zip (incompatible), Supplementaries Generated Pack
    Current Language: en_us
    CPU: 8x AMD Ryzen 5 PRO 3350G with Radeon Vega Graphics

Mod Version

both "1.7.0-beta.1+1.20" and "1.6.0+1.20" (both on mc version 1.20.1 modrinth says its compatible)

Controller

switch pro controller (using wire) https://store.nintendo.co.uk/en/nintendo-switch-pro-controller-000000000002510466 it gets detected as 8bitdo in game even if i use a program to make the computer think it is an xinput device

Bluetooth

Operating System

Windows

ARM

Additional Information

i have tried with and without betterjoy for cemu which masks the switch controller as an xinput controller to make it function with non steam games however i get the same result either way i must use version 1.20.1 as the server im playing on is modded and only works with 1.20.1 so i am using the latest version of minecraft that is possible for me to use

Just to make sure...

whoiamwhy commented 4 months ago

Same

isXander commented 4 months ago

You are using a super old version of YACL. Please update it!

whoiamwhy commented 4 months ago

You are using a super old version of YACL. Please update it!

3.4.2 latest for 1.20.1, please update YACL for 1.20.1