Hollow Knight

Hollow Knight

54 ratings
Button Prompt Switcher
By tintingaroo
Mod: Select the type of button prompts the game will display + solutions for other gamepad issues
4
   
Award
Favorite
Favorited
Unfavorite
Description
This modification allows you to:
- choose which button prompt type will be displayed for controllers
- remove cast action from focus button/key
- make the game only read from "Xbox 360" input

- fixes intermittent control
- fixes control issues if you have wheels/pedals/flight sticks etc connected
(This stuff: https://gtm.steamproxy.vip/app/367520/discussions/2/3105763714509031039/)

It applies to HK ver 1.5.78 Win/Mac/Linux

Discussion topic: https://gtm.steamproxy.vip/app/367520/discussions/0/3109153465662565530/
If something doesn't function, let me know!

!!!! SCARAB / MOD INSTALLER USERS !!!!!
From the work carried out by Mulhima the mod is also available for download on SCARAB / other mod installers!

STEPS
Look for the mod 'Controller Fixes' (was previously called 'Button Prompt Switcher')
Change the prompt type in-game via Options > Mods > Controller Fix > Button Skin Type

Use that process rather than the Setup in the guide (unless you're wanting to use it for the vanilla game)

notes from Mulhima outlining the benefits of the mod:
1) compatible with modding API and hence all other mods
2) doesn't require manually replacing Assembly-CSharp.dll
3) doesn't require setting stuff as launch settings (instead its done in modmenu)
The link to the repo: https://github.com/TheMulhima/Button-Prompt-Switcher
Thanks Mulhima!
!!!!!
Setup
  1. Right-click Hollow Knight in Steam Library > Manage > Browse local files. Then in the folder that opens:

    WIN:
    hollow_knight_Data\Managed\

    MAC:
    RIght-click 'hollow_knight' or 'Hollow Knight' > Show Package Contents > Contents/Resources/Data/Managed/

    LINUX:
    hollow_knight_Data/Managed/

  2. Make a backup of Assembly-CSharp.dll

  3. From the link, open the folder for your OS and download the Assembly-CSharp.dll file it contains.

    https://drive.google.com/drive/folders/1siu3cyZJwGfN-VJCO05tCW3tIrondoSv?usp=sharing

  4. Paste the .dll file into the Managed folder, so it overwrites/replaces the original version
Usage
Right-click Hollow Knight in the Steam Library > Properties.
At the bottom of the Properties window you'll see the Launch Options field.

Selecting Button Prompt Type
Enter the command --icons= followed by one of these options:
{ 1 ¦ 2¦ 3 ¦ 4 ¦ 5 ¦ 6 }


1 : Joy-Cons image, Nintendo prompts
2 : DS4, PS prompts (Prompt for Inventory: Touchpad)
3 : DS4, PS prompts (Prompt for Inventory: Share button)
4 : DS4, PS prompts (Prompt for Inventory: Back/Select button)
5 : Xbox One, XB prompts (Prompt for Inventory: View)
6 : Xbox 360, XB prompts (Prompt for Inventory: Back/Select)

e.g. --icons=1
https://gtm.steamproxy.vip/sharedfiles/filedetails/?id=2920862653


Delete the command from Launch Options if you want the game to select prompts in its regular manner.


Removing Cast Action from Focus Button/Key
Use the command --nocast

If entering multiple arguments, just separate them with a space e.g. --icons=2 --nocast.
Removal
Replace modded Assembly-CSharp.dll with original version. You can also do this by verifying the game files.
Extras
There is also the command --exo, standing for emulated xb360 only. This forces the game to only use the 360 controller.

An example use case:
For functional usability, a wired Switch Pro Controller must be used with an input mapper (e.g. Steam Input) (if you don't have the drivers for it - just searched and they've been created...). If the input mapper doesn't hide the physical controller, the game can still receive the commands its outputting.
So if you have uncontrollable controls with a wired Pro Controller, the following steps detail one process of gaining usability:
  1. Get the prompt switcher file
  2. Enter the --exo command
  3. Enable Steam Overlay*
  4. Enable Steam Input
  5. Enable Native Controller Input via game menu

* If you don't wan't the Steam Overlay enabled, change the Desktop Configuration to a gamepad config or map it to the keyboard controls the game uses.

Buuut this stuff is for another guide... At another time...
Thanks
Thanks Mulhima, thanks Krawe :D
37 Comments
1337yn 27 Sep @ 6:53am 
is there same fix for silksong?
asdsqdadadqw 24 Mar @ 6:17am 
thank you!
its really help me
i broke my head and spent many hours in trying to fix it before found your solution

my problem was:
dualsense ps5 + macbook m2 + steam input
jerryfudd 5 Apr, 2024 @ 6:34am 
thanks - this just helped my solve the controller issue for my son.... been hitting my head against this one for half the day swapping out batteries, BT dongles, controllers :steamthumbsup:
jacoblee0502 11 Dec, 2023 @ 7:29am 
I tried the method you mentioned several times, but I don’t know what went wrong. I still can’t use the handle on my device. The Xbox Elite II controller was recognized before, but now I can't even recognize the controller according to your method.
(——icons=5)
Emili 6 Jul, 2023 @ 10:22am 
It helps me with my Macbook Pro M1 and XBOX controller, thank you very much
Hussain Aziz 12 Apr, 2023 @ 4:30am 
If possible could you mention that it's available for download on scarab / other mod installers. Since that's:
1) compatible with modding API and hence all other mods
2) doesn't require manually replacing Assembly-CSharp.dll
3) doesn't require setting stuff as launch settings (instead its done in modmenu)

Heres the link to the repo: https://github.com/TheMulhima/Button-Prompt-Switcher
tintingaroo  [author] 1 Feb, 2023 @ 8:21pm 
or had you been using any commands? or could try with the version here https://gtm.steamproxy.vip/app/367520/discussions/0/3194740972131550134/#c3194740972131867524
It has MFi controller profiles enabled (doesn't have the button prompt stuff attached though)
tintingaroo  [author] 1 Feb, 2023 @ 8:14pm 
Sup Doukiwi :) Hmm, been trying to think what the cause could be..

Which Shaks controller is it? If you go to gamepad-tester.com is it reading it as an Xbox One controller and inputs are all good?

Steam Input is disabled? (Right-click HK in Steam Library > Properties > Controller > select Disable Steam Input). I'm thinking you'd want Native Controller Input enabled but try with it on/off (HK main menu > Options > Controller)

Also at that Controller menu, what controller is it showing you?
And if you go to Remap Controls, reset controls to default, any help?

Able to remap X to another action? What about other face buttons, shoulders, triggers?
Doukiwi 1 Feb, 2023 @ 2:13pm 
Edit: pads work "X" (left) button works, but not the others buttons... ^^'
Doukiwi 1 Feb, 2023 @ 2:09pm 
Hey, thank you for this fix, it worked for me during a game session. But not any more. Not sure why. I use a generic Shaks gamepad and it is recognized on MacOS as a Xbox one controller. If you have any tips, it will be welcome. Thank you ! to note: the gamepad works fine for every other games.