Yellow-Dog-Man / Resonite-Issues

Issue repository for Resonite.
https://resonite.com
140 stars 2 forks source link

Deleting a locomotion module's slot prevents switching to any other locomotion module with a higher index #3156

Closed JackTheFoxOtter closed 1 week ago

JackTheFoxOtter commented 2 weeks ago

Describe the bug?

When deleting a locomotion module's slot, the corresponding entry in the LocomotionController becomes null, but isn't removed from the list. This causes all following locomotion modules to no longer be accessible, which includes any locomotion modules installed afterwards. Removing the null entry from the component restores the correct behavior.

To Reproduce

Destroy a locomotion module's slot and check the LocomotionController component on your user, you'll see that there is now a "null" entry. If there are locomotion modules with higher indices, those aren't selectable anymore.

Expected behavior

Only the destroyed locomotion should become inaccessible.

Screenshots

https://github.com/user-attachments/assets/bd3b3109-3ec1-4b02-97b1-5fe6188fa9cb

Resonite Version Number

Beta 2024.10.29.1229

What Platforms does this occur on?

Windows

What headset if any do you use?

Valve Index

Log Files

J4-C - 2024.10.29.1229 - 2024-11-02 18_07_26.log

Additional Context

Currently destroying slots is the only way to "uninstall" a specific locomotion module.

Reporters

Andromeda (Discord: 3x1t_5tyl3) & Myself

shiftyscales commented 2 weeks ago

Fixing the component so a null entry in the list doesn't prevent the remaining locomotion modules from being read would be good- but perhaps it would also be worthwhile to have a corresponding Uninstall Locomotion Modules ProtoFlux node / a proper mechanism to remove locomotions rather than just deleting the slot.

Would you care to make a separate feature request requesting such, @JackTheFoxOtter? I could envision that node could be useful- particularly in the context of worlds / items that wish to temporarily grant a locomotion change to the user without making it a permanent addition.

3x1t-5tyl3 commented 2 weeks ago

Fixing the component so a null entry in the list doesn't prevent the remaining locomotion modules from being read would be good- but perhaps it would also be worthwhile to have a corresponding Uninstall Locomotion Modules ProtoFlux node / a proper mechanism to remove locomotions rather than just deleting the slot.

Would you care to make a separate feature request requesting such, @JackTheFoxOtter? I could envision that node could be useful- particularly in the context of worlds / items that wish to temporarily grant a locomotion change to the user without making it a permanent addition.

Made them myself. #3156 #3160 #2600 as direct neighbours.

Frooxius commented 1 week ago

Fixed in 2024.11.12.1329, reporting!