isXander / Controlify

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

[Bug] Controlify Fabric. Hard crash when pressing either bumper in controller settings, on Steam Deck. #370

Closed PsYchitOut closed 1 week ago

PsYchitOut commented 1 week ago

Current Behaviour

If I press either LB or RB in the controller menu on my Steam Deck my instance hard crashes out. I can click through the tabs just fine so its not like anythings failing to load. It is specifically pressing those buttons, in that menu.

Expected Behaviour

Probably not hard crash. 😂

Screenshots

17203665762983059396603023379495

Reproduction Steps

Add Controlify onto your 1.21 instance of minecraft on Prism. Along with Fabric API

Load up and go through calibration.

Go to settings, controls, controller settings,

press either bumper button.

Logs

---- Minecraft Crash Report ----
// Would you like a cupcake?

Time: 2024-07-07 10:51:38
Description: Ticking current controller

java.lang.ClassCastException: class dev.isxander.yacl3.gui.OptionListWidget cannot be cast to class net.minecraft.class_350$class_351 (dev.isxander.yacl3.gui.OptionListWidget and net.minecraft.class_350$class_351 are in unnamed module of loader net.fabricmc.loader.impl.launch.knot.KnotClassLoader @531be3c5)
at net.minecraft.class_350.method_25336(class_350.java:86)
at net.minecraft.class_4265.method_25395(class_4265.java:78)
at dev.isxander.controlify.compatibility.yacl.screenop.YACLScreenProcessor.onTabChanged(YACLScreenProcessor.java:44)
at dev.isxander.controlify.screenop.ScreenProcessor.lambda$handleTabNavigation$3(ScreenProcessor.java:229)
at java.base/java.util.Optional.ifPresent(Optional.java:178)
at dev.isxander.controlify.screenop.ScreenProcessor.handleTabNavigation(ScreenProcessor.java:219)
at dev.isxander.controlify.screenop.ScreenProcessor.onControllerUpdate(ScreenProcessor.java:57)
at dev.isxander.controlify.Controlify.tickController(Controlify.java:564)
at dev.isxander.controlify.Controlify.lambda$tick$41(Controlify.java:513)
at dev.isxander.controlify.utils.ControllerUtils.wrapControllerError(ControllerUtils.java:28)
at dev.isxander.controlify.Controlify.lambda$tick$42(Controlify.java:512)
at java.base/java.util.Optional.ifPresent(Optional.java:178)
at dev.isxander.controlify.Controlify.tick(Controlify.java:511)
at net.fabricmc.fabric.api.client.event.lifecycle.v1.ClientTickEvents.lambda$static$0(ClientTickEvents.java:34)
at net.minecraft.class_310.handler$zik000$fabric-lifecycle-events-v1$onStartTick(class_310.java:7178)
at net.minecraft.class_310.method_1574(class_310.java)
at net.minecraft.class_310.method_1523(class_310.java:1246)
at net.minecraft.class_310.method_1514(class_310.java:882)
at net.minecraft.client.main.Main.main(Main.java:256)
at net.fabricmc.loader.impl.game.minecraft.MinecraftGameProvider.launch(MinecraftGameProvider.java:470)
at net.fabricmc.loader.impl.launch.knot.Knot.launch(Knot.java:74)
at net.fabricmc.loader.impl.launch.knot.KnotClient.main(KnotClient.java:23)
at org.prismlauncher.launcher.impl.StandardLauncher.launch(StandardLauncher.java:100)
at org.prismlauncher.EntryPoint.listen(EntryPoint.java:129)
at org.prismlauncher.EntryPoint.main(EntryPoint.java:70)

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

-- Head --
Thread: Render thread
Stacktrace:
at net.minecraft.class_350.method_25336(class_350.java:86)
at net.minecraft.class_4265.method_25395(class_4265.java:78)
at dev.isxander.controlify.compatibility.yacl.screenop.YACLScreenProcessor.onTabChanged(YACLScreenProcessor.java:44)
at dev.isxander.controlify.screenop.ScreenProcessor.lambda$handleTabNavigation$3(ScreenProcessor.java:229)
at java.base/java.util.Optional.ifPresent(Optional.java:178)
at dev.isxander.controlify.screenop.ScreenProcessor.handleTabNavigation(ScreenProcessor.java:219)
at dev.isxander.controlify.screenop.ScreenProcessor.onControllerUpdate(ScreenProcessor.java:57)
at dev.isxander.controlify.Controlify.tickController(Controlify.java:564)
at dev.isxander.controlify.Controlify.lambda$tick$41(Controlify.java:513)
at dev.isxander.controlify.utils.ControllerUtils.wrapControllerError(ControllerUtils.java:28)
at dev.isxander.controlify.Controlify.lambda$tick$42(Controlify.java:512)
at java.base/java.util.Optional.ifPresent(Optional.java:178)
at dev.isxander.controlify.Controlify.tick(Controlify.java:511)
at net.fabricmc.fabric.api.client.event.lifecycle.v1.ClientTickEvents.lambda$static$0(ClientTickEvents.java:34)
at net.minecraft.class_310.handler$zik000$fabric-lifecycle-events-v1$onStartTick(class_310.java:7178)

-- Affected controller --
Details:
Controller name: Steam Deck
Controller identification: Steam Deck
Controller type: dev.isxander.controlify.controller.ControllerEntity
Stacktrace:
at dev.isxander.controlify.utils.ControllerUtils.wrapControllerError(ControllerUtils.java:28)
at dev.isxander.controlify.Controlify.lambda$tick$42(Controlify.java:512)
at java.base/java.util.Optional.ifPresent(Optional.java:178)
at dev.isxander.controlify.Controlify.tick(Controlify.java:511)
at net.fabricmc.fabric.api.client.event.lifecycle.v1.ClientTickEvents.lambda$static$0(ClientTickEvents.java:34)
at net.minecraft.class_310.handler$zik000$fabric-lifecycle-events-v1$onStartTick(class_310.java:7178)
at net.minecraft.class_310.method_1574(class_310.java)
at net.minecraft.class_310.method_1523(class_310.java:1246)
at net.minecraft.class_310.method_1514(class_310.java:882)
at net.minecraft.client.main.Main.main(Main.java:256)
at net.fabricmc.loader.impl.game.minecraft.MinecraftGameProvider.launch(MinecraftGameProvider.java:470)
at net.fabricmc.loader.impl.launch.knot.Knot.launch(Knot.java:74)
at net.fabricmc.loader.impl.launch.knot.KnotClient.main(KnotClient.java:23)
at org.prismlauncher.launcher.impl.StandardLauncher.launch(StandardLauncher.java:100)
at org.prismlauncher.EntryPoint.listen(EntryPoint.java:129)
at org.prismlauncher.EntryPoint.main(EntryPoint.java:70)

-- Uptime --
Details:
JVM uptime: 40.237s
Wall uptime: 29.291s
High-res time: 28.140s
Client ticks: 525 ticks / 26.250s
Stacktrace:
at net.minecraft.class_310.method_1587(class_310.java:2501)
at net.minecraft.class_310.method_54580(class_310.java:949)
at net.minecraft.class_310.method_1514(class_310.java:902)
at net.minecraft.client.main.Main.main(Main.java:256)
at net.fabricmc.loader.impl.game.minecraft.MinecraftGameProvider.launch(MinecraftGameProvider.java:470)
at net.fabricmc.loader.impl.launch.knot.Knot.launch(Knot.java:74)
at net.fabricmc.loader.impl.launch.knot.KnotClient.main(KnotClient.java:23)
at org.prismlauncher.launcher.impl.StandardLauncher.launch(StandardLauncher.java:100)
at org.prismlauncher.EntryPoint.listen(EntryPoint.java:129)
at org.prismlauncher.EntryPoint.main(EntryPoint.java:70)

-- Last reload --
Details:
Reload number: 1
Reload reason: initial
Finished: Yes
Packs: vanilla, fabric, controlify, fabric-api, fabric-api-base, fabric-api-lookup-api-v1, fabric-biome-api-v1, fabric-block-api-v1, fabric-block-view-api-v2, fabric-blockrenderlayer-v1, fabric-client-tags-api-v1, fabric-command-api-v1, fabric-command-api-v2, fabric-commands-v0, fabric-content-registries-v0, fabric-convention-tags-v1, fabric-convention-tags-v2, fabric-crash-report-info-v1, fabric-data-attachment-api-v1, fabric-data-generation-api-v1, fabric-dimensions-v1, fabric-entity-events-v1, fabric-events-interaction-v0, fabric-game-rule-api-v1, fabric-item-api-v1, fabric-item-group-api-v1, fabric-key-binding-api-v1, fabric-keybindings-v0, fabric-lifecycle-events-v1, fabric-loot-api-v2, fabric-loot-api-v3, fabric-message-api-v1, fabric-model-loading-api-v1, fabric-networking-api-v1, fabric-object-builder-api-v1, fabric-particles-v1, fabric-recipe-api-v1, fabric-registry-sync-v0, fabric-renderer-api-v1, fabric-renderer-indigo, fabric-renderer-registries-v1, fabric-rendering-data-attachment-v1, fabric-rendering-fluids-v1, fabric-rendering-v0, fabric-rendering-v1, fabric-resource-conditions-api-v1, fabric-resource-loader-v0, fabric-screen-api-v1, fabric-screen-handler-api-v1, fabric-sound-api-v1, fabric-transfer-api-v1, fabric-transitive-access-wideners-v1, fabricloader, yet_another_config_lib_v3

-- System Details --
Details:
Minecraft Version: 1.21
Minecraft Version ID: 1.21
Operating System: Linux (amd64) version 6.1.52-valve16-1-neptune-61
Java Version: 21.0.3, Flathub
Java VM Version: OpenJDK 64-Bit Server VM (mixed mode, sharing), Flathub
Memory: 351260992 bytes (334 MiB) / 706740224 bytes (674 MiB) up to 4294967296 bytes (4096 MiB)
CPUs: 8
Processor Vendor: AuthenticAMD
Processor Name: AMD Custom APU 0932
Identifier: AuthenticAMD Family 23 Model 145 Stepping 0
Microarchitecture: unknown
Frequency (GHz): -0.00
Number of physical packages: 1
Number of physical CPUs: 4
Number of logical CPUs: 8
Graphics card #0 name: Device
Graphics card #0 vendor: Advanced Micro Devices, Inc. [AMD/ATI] (0x1002)
Graphics card #0 VRAM (MiB): 258.00
Graphics card #0 deviceId: 0x1435
Graphics card #0 versionInfo: unknown
Virtual memory max (MiB): 8431.19
Virtual memory used (MiB): 6295.86
Swap memory total (MiB): 1024.00
Swap memory used (MiB): 0.00
Space in storage for jna.tmpdir (MiB): <path not set>
Space in storage for org.lwjgl.system.SharedLibraryExtractPath (MiB): <path not set>
Space in storage for io.netty.native.workdir (MiB): <path not set>
Space in storage for java.io.tmpdir (MiB): available: 1478.05, total: 1481.44
Space in storage for workdir (MiB): available: 437154.38, total: 960947.13
JVM Flags: 2 total; -Xms512m -Xmx4096m
Fabric Mods: 
controlify: Controlify 2.0.0-beta.13+1.21-fabric
dev_isxander_libsdl4j: libsdl4j 3.6896c4c-38
org_hid4java_hid4java: hid4java 0.7.0
org_quiltmc_parsers_gson: gson 0.3.0
org_quiltmc_parsers_json: json 0.3.0
fabric-api: Fabric API 0.100.6+1.21
fabric-api-base: Fabric API Base 0.4.42+6573ed8cd1
fabric-api-lookup-api-v1: Fabric API Lookup API (v1) 1.6.67+b5597344d1
fabric-biome-api-v1: Fabric Biome API (v1) 13.0.28+6fc22b99d1
fabric-block-api-v1: Fabric Block API (v1) 1.0.22+0af3f5a7d1
fabric-block-view-api-v2: Fabric BlockView API (v2) 1.0.10+6573ed8cd1
fabric-blockrenderlayer-v1: Fabric BlockRenderLayer Registration (v1) 1.1.52+0af3f5a7d1
fabric-client-tags-api-v1: Fabric Client Tags 1.1.15+6573ed8cd1
fabric-command-api-v1: Fabric Command API (v1) 1.2.49+f71b366fd1
fabric-command-api-v2: Fabric Command API (v2) 2.2.28+6ced4dd9d1
fabric-commands-v0: Fabric Commands (v0) 0.2.66+df3654b3d1
fabric-content-registries-v0: Fabric Content Registries (v0) 8.0.14+b5597344d1
fabric-convention-tags-v1: Fabric Convention Tags 2.0.17+7f945d5bd1
fabric-convention-tags-v2: Fabric Convention Tags (v2) 2.4.1+86024ea6d1
fabric-crash-report-info-v1: Fabric Crash Report Info (v1) 0.2.29+0af3f5a7d1
fabric-data-attachment-api-v1: Fabric Data Attachment API (v1) 1.1.24+6a6dfa19d1
fabric-data-generation-api-v1: Fabric Data Generation API (v1) 20.2.11+16c4ae25d1
fabric-dimensions-v1: Fabric Dimensions API (v1) 4.0.0+6fc22b99d1
fabric-entity-events-v1: Fabric Entity Events (v1) 1.6.12+6fc22b99d1
fabric-events-interaction-v0: Fabric Events Interaction (v0) 0.7.10+e633f883d1
fabric-game-rule-api-v1: Fabric Game Rule API (v1) 1.0.53+6ced4dd9d1
fabric-item-api-v1: Fabric Item API (v1) 11.0.0+afdfc921d1
fabric-item-group-api-v1: Fabric Item Group API (v1) 4.1.2+78017270d1
fabric-key-binding-api-v1: Fabric Key Binding API (v1) 1.0.47+0af3f5a7d1
fabric-keybindings-v0: Fabric Key Bindings (v0) 0.2.45+df3654b3d1
fabric-lifecycle-events-v1: Fabric Lifecycle Events (v1) 2.3.11+8f3583aed1
fabric-loot-api-v2: Fabric Loot API (v2) 3.0.12+3f89f5a5d1
fabric-loot-api-v3: Fabric Loot API (v3) 1.0.0+3f89f5a5d1
fabric-message-api-v1: Fabric Message API (v1) 6.0.13+6573ed8cd1
fabric-model-loading-api-v1: Fabric Model Loading API (v1) 2.0.0+fe474d6bd1
fabric-networking-api-v1: Fabric Networking API (v1) 4.2.0+ab7edbacd1
fabric-object-builder-api-v1: Fabric Object Builder API (v1) 15.1.12+d1321076d1
fabric-particles-v1: Fabric Particles (v1) 4.0.2+6573ed8cd1
fabric-recipe-api-v1: Fabric Recipe API (v1) 5.0.10+65089712d1
fabric-registry-sync-v0: Fabric Registry Sync (v0) 5.0.24+6ced4dd9d1
fabric-renderer-api-v1: Fabric Renderer API (v1) 3.3.0+0ae0b97dd1
fabric-renderer-indigo: Fabric Renderer - Indigo 1.6.5+48fb1586d1
fabric-renderer-registries-v1: Fabric Renderer Registries (v1) 3.2.67+df3654b3d1
fabric-rendering-data-attachment-v1: Fabric Rendering Data Attachment (v1) 0.3.48+73761d2ed1
fabric-rendering-fluids-v1: Fabric Rendering Fluids (v1) 3.1.6+b5597344d1
fabric-rendering-v0: Fabric Rendering (v0) 1.1.70+df3654b3d1
fabric-rendering-v1: Fabric Rendering (v1) 5.0.4+5a8c785ed1
fabric-resource-conditions-api-v1: Fabric Resource Conditions API (v1) 4.2.1+d153f344d1
fabric-resource-loader-v0: Fabric Resource Loader (v0) 1.1.5+78017270d1
fabric-screen-api-v1: Fabric Screen API (v1) 2.0.24+b5597344d1
fabric-screen-handler-api-v1: Fabric Screen Handler API (v1) 1.3.81+b5597344d1
fabric-sound-api-v1: Fabric Sound API (v1) 1.0.23+6573ed8cd1
fabric-transfer-api-v1: Fabric Transfer API (v1) 5.1.15+3dccd343d1
fabric-transitive-access-wideners-v1: Fabric Transitive Access Wideners (v1) 6.0.12+6573ed8cd1
fabricloader: Fabric Loader 0.15.11
mixinextras: MixinExtras 0.3.5
java: OpenJDK 64-Bit Server VM 21
minecraft: Minecraft 1.21
yet_another_config_lib_v3: YetAnotherConfigLib 3.5.0+1.21-fabric
com_twelvemonkeys_common_common-image: common-image 3.10.0
com_twelvemonkeys_common_common-io: common-io 3.10.0
com_twelvemonkeys_common_common-lang: common-lang 3.10.0
com_twelvemonkeys_imageio_imageio-core: imageio-core 3.10.0
com_twelvemonkeys_imageio_imageio-metadata: imageio-metadata 3.10.0
com_twelvemonkeys_imageio_imageio-webp: imageio-webp 3.10.0
Launched Version: 1.21
Launcher name: PrismLauncher
Backend library: LWJGL version 3.3.3-snapshot
Backend API: AMD Custom GPU 0932 (radeonsi, vangogh, LLVM 17.0.6, DRM 3.54, 6.1.52-valve16-1-neptune-61) GL version 4.6 (Core Profile) Mesa 24.1.1 (git-6c377358a5), AMD
Window size: 854x480
GFLW Platform: x11
GL Caps: Using framebuffer using OpenGL 3.2
GL debug messages: 
Is Modded: Definitely; Client brand changed to 'fabric'
Universe: 400921fb54442d18
Type: Client (map_client.txt)
Graphics mode: fancy
Render Distance: 12/12 chunks
Resource Packs: vanilla, fabric, controlify, fabric-api, fabric-api-base, fabric-api-lookup-api-v1, fabric-biome-api-v1, fabric-block-api-v1, fabric-block-view-api-v2, fabric-blockrenderlayer-v1, fabric-client-tags-api-v1, fabric-command-api-v1, fabric-command-api-v2, fabric-commands-v0, fabric-content-registries-v0, fabric-convention-tags-v1, fabric-convention-tags-v2, fabric-crash-report-info-v1, fabric-data-attachment-api-v1, fabric-data-generation-api-v1, fabric-dimensions-v1, fabric-entity-events-v1, fabric-events-interaction-v0, fabric-game-rule-api-v1, fabric-item-api-v1, fabric-item-group-api-v1, fabric-key-binding-api-v1, fabric-keybindings-v0, fabric-lifecycle-events-v1, fabric-loot-api-v2, fabric-loot-api-v3, fabric-message-api-v1, fabric-model-loading-api-v1, fabric-networking-api-v1, fabric-object-builder-api-v1, fabric-particles-v1, fabric-recipe-api-v1, fabric-registry-sync-v0, fabric-renderer-api-v1, fabric-renderer-indigo, fabric-renderer-registries-v1, fabric-rendering-data-attachment-v1, fabric-rendering-fluids-v1, fabric-rendering-v0, fabric-rendering-v1, fabric-resource-conditions-api-v1, fabric-resource-loader-v0, fabric-screen-api-v1, fabric-screen-handler-api-v1, fabric-sound-api-v1, fabric-transfer-api-v1, fabric-transitive-access-wideners-v1, fabricloader, yet_another_config_lib_v3 (incompatible)
Current Language: en_us
Locale: en_US
System encoding: ANSI_X3.4-1968
File encoding: UTF-8
CPU: 8x AMD Custom APU 0932

Mod Version

2.0.0 beta 13

Controller

Steam Deck onboard controller.

Bluetooth

Operating System

Linux/SteamOS

ARM

Additional Information

First discovered it when downloading your mod along with the DeckCraft instance package. However I also installed just your mod in a fresh instance and got the same crash. The pasted crash log is from that instance.

Just to make sure...

Seshua commented 1 week ago

This is also happening on PC (Windows 11). Prism launcher. Basically everything is the same except I'm on PC and not a steam deck.

Natedagr840 commented 1 week ago

Same issue on Windows 10 Curseforge. It's not a one-off issue because I tried again and had the same behavior.

N0aW commented 1 week ago

Same issue on Ubuntu, Prism Launcher. I keep accidentally crashing my game because I forget it does that