fifty-six / Scarab

An installer for Hollow Knight mods written in Avalonia.
GNU General Public License v3.0
615 stars 163 forks source link

Mod API breaks controller support on steam deck #108

Closed calebmeyer closed 2 years ago

calebmeyer commented 2 years ago

Scarab Version

v1.19.0.0

Hollow Knight Version

v1.5.78.11833

Steps to Reproduce

  1. Install Hollow Knight on steam deck
  2. Go to desktop mode
  3. Download the latest release of Scarab
  4. Extract it
  5. Double click Scarab
  6. Click okay after it correctly auto-detects the HK directory
  7. Enable Mod API
  8. Exit desktop mode (to gaming mode)
  9. Launch Hollow Knight

Expected Behaviour

Controller buttons/joysticks work

Actual Behaviour

Controller buttons/joysticks don't work

Logs

Logs are in this Gist

Notes

I tried with different combinations of mods (eventual goal is to play multiplayer with my wife), and none of them let me use the controller built into the steam deck. That's including zero mods enabled, only the modding API.

I haven't tried an external controller, but I could if that would help. Edit: I also tried an xbox wireless controller via bluetooth, and it also does not work if the mod api is enabled.

BadMagic100 commented 2 years ago

This is not a scarab problem, this is a steam problem. Here's a workaround:

Mods/Controller not working correctly on Steam Deck Issue: Steam Deck installs the Windows version of HK, then runs it in proton. This would be fine except that you install Linux Scarab, which replaces the Assembly-Csharp with the Linux version, and then it doesn't like to work correctly on "Windows" anymore

Solution: Go to the HK Library page, select Properties -> Compatibility, check "Force the use of a specific steam play compatibility tool", and select "Steam Linux Runtime" (Note: not the sniper or soldier versions)

This will reinstall the Linux version of the game, and move some files around, so you'll need to select "Change Paths" in Scarab and change it to the new install path, then reinstall your mods. After this, everything should be working.



Not sure if there's something that could/should be done on scarab side, perhaps allowing the installation of windows MAPI through linux scarab (that feels a bit hacky though, and it's not clear it would even work)
calebmeyer commented 2 years ago

Thank you! That's what I wanted to know.