[GH-ISSUE #3847] [GAME BUG]: Keyboard/mouse inputs bound to one controller button won't work in Bloodborne as intended when there're more than one (ShadPS4 version: Pre-release) #1152

Open
opened 2026-02-27 21:10:13 +03:00 by kerem · 14 comments
Owner

Originally created by @theholywalkingcamel on GitHub (Dec 1, 2025).
Original GitHub issue: https://github.com/shadps4-emu/shadPS4/issues/3847

Checklist (we expect you to perform these steps before opening the issue)

  • I have searched for a similar issue in this repository and did not find one.
  • I am using an official build obtained from releases or updated one of those builds using its in-app updater.
  • I have re-dumped the game and performed a clean install without mods and the issue is still present.
  • I have disabled all patches and cheats and the issue is still present.
  • I have all the required system modules installed.

Describe the Bug

As the title suggests. The Help document of ShadPS4 informed me that I can bind more than one (that is, two or three) inputs (keyboard/mouse included) to one controller button via text editor, yet When playing Bloodborne I confirmed that this wouldn't work as neither of the bound inputs would react. The syntax is correct, there're no input conflicts, the patches and mods are removed when I test, and I even tried the example in Help document of "#Heavy attack (in BB) r2 = leftbutton, lshift;" yet none of the solutions are effective.

Reproduction Steps

Step 1. Bind two to three keyboard/mouse inputs to one controller via keyboard Configure Controls - Text Editor (eg: r2 = leftbutton, lshift;)

Step 2. Run Bloodborne (I don't know whether other games would have this matter or not as I only own Bloodborne)

Step 3. Try the according inputs, none would do anything

Specify OS Version

Windows 11

CPU

AMD Ryzen 7 5800H with Radeon Graphics

GPU

NVIDIA GeForce RTX 3060 Laptop GPU

Amount of RAM in GB

16 GB

Amount of VRAM in GB

5.86 GB

Log File

shad_log.txt

Originally created by @theholywalkingcamel on GitHub (Dec 1, 2025). Original GitHub issue: https://github.com/shadps4-emu/shadPS4/issues/3847 ### Checklist (we expect you to perform these steps before opening the issue) - [x] I have searched for a similar issue in this repository and did not find one. - [x] I am using an official build obtained from [releases](https://github.com/shadps4-emu/shadPS4/releases) or updated one of those builds using its in-app updater. - [x] I have re-dumped the game and performed a clean install without mods and the issue is still present. - [x] I have disabled all patches and cheats and the issue is still present. - [x] I have all the required [system modules](https://github.com/shadps4-emu/shadPS4/wiki/I.-Quick-start-%5BUsers%5D#4-dumping-firmware-modules) installed. ### Describe the Bug As the title suggests. The Help document of ShadPS4 informed me that I can bind more than one (that is, two or three) inputs (keyboard/mouse included) to one controller button via text editor, yet When playing Bloodborne I confirmed that this wouldn't work as neither of the bound inputs would react. The syntax is correct, there're no input conflicts, the patches and mods are removed when I test, and I even tried the example in Help document of "#Heavy attack (in BB) r2 = leftbutton, lshift;" yet none of the solutions are effective. ### Reproduction Steps Step 1. Bind two to three keyboard/mouse inputs to one controller via keyboard Configure Controls - Text Editor (eg: r2 = leftbutton, lshift;) Step 2. Run Bloodborne (I don't know whether other games would have this matter or not as I only own Bloodborne) Step 3. Try the according inputs, none would do anything ### Specify OS Version Windows 11 ### CPU AMD Ryzen 7 5800H with Radeon Graphics ### GPU NVIDIA GeForce RTX 3060 Laptop GPU ### Amount of RAM in GB 16 GB ### Amount of VRAM in GB 5.86 GB ### Log File [shad_log.txt](https://github.com/user-attachments/files/23846648/shad_log.txt)
Author
Owner

@kalaposfos13 commented on GitHub (Dec 1, 2025):

as neither of the bound inputs would react

As in you tried pressing them separately?

<!-- gh-comment-id:3594802907 --> @kalaposfos13 commented on GitHub (Dec 1, 2025): > as neither of the bound inputs would react As in you tried pressing them separately?
Author
Owner

@theholywalkingcamel commented on GitHub (Dec 1, 2025):

as neither of the bound inputs would react

As in you tried pressing them separately?

Yes and unfortunately does nothing

<!-- gh-comment-id:3594807825 --> @theholywalkingcamel commented on GitHub (Dec 1, 2025): > > as neither of the bound inputs would react > > As in you tried pressing them separately? Yes and unfortunately does nothing
Author
Owner

@kalaposfos13 commented on GitHub (Dec 1, 2025):

Well I'm pretty sure I tried to be as clear as possible in the help text, writing

r2 = leftbutton, lshift

means that r2 gets activated on pressing both leftbutton and lshift, and writing

r2 = lshift
r2 = leftbutton

means that r2 gets activated on pressing either leftbutton or lshift by themselves.

<!-- gh-comment-id:3594821919 --> @kalaposfos13 commented on GitHub (Dec 1, 2025): Well I'm pretty sure I tried to be as clear as possible in the help text, writing ``` r2 = leftbutton, lshift ``` means that r2 gets activated on pressing both leftbutton and lshift, and writing ``` r2 = lshift r2 = leftbutton ``` means that r2 gets activated on pressing either leftbutton or lshift by themselves.
Author
Owner

@theholywalkingcamel commented on GitHub (Dec 1, 2025):

Well I'm pretty sure I tried to be as clear as possible in the help text, writing

r2 = leftbutton, lshift

means that r2 gets activated on pressing both leftbutton and lshift, and writing

r2 = lshift
r2 = leftbutton

means that r2 gets activated on pressing either leftbutton or lshift by themselves.

Maybe I need to illustrate clearer: Take your example, I need to activate r2 with either lshift or leftbutton separately instead of with both lshift and leftbutton. After further experimentation I confirmed that writing something like:

r2 = lshift
r2 = leftbutton

would result in one of these strings being ignored upon saving, thus I'm able to activate r2 with one button, or two buttons together, but not two buttons separately. Is this working as intended?

Anyway thanks for informing me of the pressing both buttons thing

<!-- gh-comment-id:3595136467 --> @theholywalkingcamel commented on GitHub (Dec 1, 2025): > Well I'm pretty sure I tried to be as clear as possible in the help text, writing > > ``` > r2 = leftbutton, lshift > ``` > > means that r2 gets activated on pressing both leftbutton and lshift, and writing > > ``` > r2 = lshift > r2 = leftbutton > ``` > > means that r2 gets activated on pressing either leftbutton or lshift by themselves. Maybe I need to illustrate clearer: Take your example, I need to activate r2 with either lshift or leftbutton separately instead of with both lshift and leftbutton. After further experimentation I confirmed that writing something like: > r2 = lshift > r2 = leftbutton would result in one of these strings being ignored upon saving, thus I'm able to activate r2 with one button, or two buttons together, but not two buttons separately. Is this working as intended? Anyway thanks for informing me of the pressing both buttons thing
Author
Owner

@GHU7924 commented on GitHub (Dec 1, 2025):

@theholywalkingcamel Could you please clarify which file exactly you are configuring?

Because I once wrote, but it seems no one could confirm or anything like that, but if I configure CUSA03173.ini, then this input is not recognized in any way, but if I change the default.ini (Common config), then everything in the game is applied.

I added line r2 = leftbutton, lshift and pressed F8 to update the configuration and everything works.

@kalaposfos13 I can also confirm the issue described here: for some reason, one of the lines gets deleted. You're entering two commands for one controller key, but then one of them gets deleted. This happens after you update (F8) in the game.

https://github.com/user-attachments/assets/dce59aba-2d16-4623-a09c-749b5f6560b2

<!-- gh-comment-id:3596250537 --> @GHU7924 commented on GitHub (Dec 1, 2025): @theholywalkingcamel Could you please clarify which file exactly you are configuring? Because I once wrote, but it seems no one could confirm or anything like that, but if I configure CUSA03173.ini, then this input is not recognized in any way, but if I change the default.ini (Common config), then everything in the game is applied. I added line `r2 = leftbutton, lshift` and pressed `F8` to update the configuration and everything works. @kalaposfos13 I can also confirm the issue described here: for some reason, one of the lines gets deleted. You're entering two commands for one controller key, but then one of them gets deleted. This happens after you update (F8) in the game. https://github.com/user-attachments/assets/dce59aba-2d16-4623-a09c-749b5f6560b2
Author
Owner

@theholywalkingcamel commented on GitHub (Dec 2, 2025):

@theholywalkingcamel Could you please clarify which file exactly you are configuring?

Because I once wrote, but it seems no one could confirm or anything like that, but if I configure CUSA03173.ini, then this input is not recognized in any way, but if I change the default.ini (Common config), then everything in the game is applied.

I added line r2 = leftbutton, lshift and pressed F8 to update the configuration and everything works.

@kalaposfos13 I can also confirm the issue described here: for some reason, one of the lines gets deleted. You're entering two commands for one controller key, but then one of them gets deleted. This happens after you update (F8) in the game.

2025-12-01.15-40-12.mp4

I'm configuring CUSA03023.ini, not common config though. With the help of @kalaposfos13 I now recognized that something like line "r2 = leftbutton, lshift" needs to be activated with both keys pressed, however the second issue you've mentioned is exactly what I need to report further, that whenever I bind two keys to one controller button with two seperate lines one of them would always be deleted, for example:

r2 = lshift
r2 = leftbutton

<!-- gh-comment-id:3599628603 --> @theholywalkingcamel commented on GitHub (Dec 2, 2025): > [@theholywalkingcamel](https://github.com/theholywalkingcamel) Could you please clarify which file exactly you are configuring? > > Because I once wrote, but it seems no one could confirm or anything like that, but if I configure CUSA03173.ini, then this input is not recognized in any way, but if I change the default.ini (Common config), then everything in the game is applied. > > I added line `r2 = leftbutton, lshift` and pressed `F8` to update the configuration and everything works. > > [@kalaposfos13](https://github.com/kalaposfos13) I can also confirm the issue described here: for some reason, one of the lines gets deleted. You're entering two commands for one controller key, but then one of them gets deleted. This happens after you update (F8) in the game. > > 2025-12-01.15-40-12.mp4 I'm configuring CUSA03023.ini, not common config though. With the help of @kalaposfos13 I now recognized that something like line "r2 = leftbutton, lshift" needs to be activated with both keys pressed, however the second issue you've mentioned is exactly what I need to report further, that whenever I bind two keys to one controller button with two seperate lines one of them would always be deleted, for example: > r2 = lshift > r2 = leftbutton
Author
Owner

@kalaposfos13 commented on GitHub (Dec 2, 2025):

It works on my machine. :catsuffering: The only other thing I can think of is that you already have something bound to either lshift or leftbutton, which takes priority?

<!-- gh-comment-id:3600633477 --> @kalaposfos13 commented on GitHub (Dec 2, 2025): It works on my machine. :catsuffering: The only other thing I can think of is that you already have something bound to either lshift or leftbutton, which takes priority?
Author
Owner

@kalaposfos13 commented on GitHub (Dec 2, 2025):

I checked your original log, and it has this line:

[Input] <Warning> input_handler.cpp:399 operator(): Invalid format at line: 29, data: "r2=leftbutton,lshift", skipping line.

This is clearly valid, and my computer does agree with me, so maybe there's some Windows bullshit going on yet again? If you can test it on Linux, that'd be appreciated, but if not, that's fine too. Also, if you can send a log with the two separate inputs with the log filter being Input:Debug, that'd be useful too.

<!-- gh-comment-id:3600699410 --> @kalaposfos13 commented on GitHub (Dec 2, 2025): I checked your original log, and it has this line: ``` [Input] <Warning> input_handler.cpp:399 operator(): Invalid format at line: 29, data: "r2=leftbutton,lshift", skipping line. ``` This is clearly valid, and my computer does agree with me, so maybe there's some Windows bullshit going on yet again? If you can test it on Linux, that'd be appreciated, but if not, that's fine too. Also, if you can send a log with the two separate inputs with the log filter being `Input:Debug`, that'd be useful too.
Author
Owner

@theholywalkingcamel commented on GitHub (Dec 2, 2025):

I checked your original log, and it has this line:

[Input] <Warning> input_handler.cpp:399 operator(): Invalid format at line: 29, data: "r2=leftbutton,lshift", skipping line.

This is clearly valid, and my computer does agree with me, so maybe there's some Windows bullshit going on yet again? If you can test it on Linux, that'd be appreciated, but if not, that's fine too. Also, if you can send a log with the two separate inputs with the log filter being Input:Debug, that'd be useful too.

I don't have Linux so unfortunately this's all I get, maybe it's Windows or something else😂Can you teach me how to create a log with the log filter "Input: Debug"?

<!-- gh-comment-id:3601124562 --> @theholywalkingcamel commented on GitHub (Dec 2, 2025): > I checked your original log, and it has this line: > > ``` > [Input] <Warning> input_handler.cpp:399 operator(): Invalid format at line: 29, data: "r2=leftbutton,lshift", skipping line. > ``` > > This is clearly valid, and my computer does agree with me, so maybe there's some Windows bullshit going on yet again? If you can test it on Linux, that'd be appreciated, but if not, that's fine too. Also, if you can send a log with the two separate inputs with the log filter being `Input:Debug`, that'd be useful too. I don't have Linux so unfortunately this's all I get, maybe it's Windows or something else😂Can you teach me how to create a log with the log filter "Input: Debug"?
Author
Owner

@kalaposfos13 commented on GitHub (Dec 2, 2025):

It's in Settings -> Log.

<!-- gh-comment-id:3601135038 --> @kalaposfos13 commented on GitHub (Dec 2, 2025): It's in Settings -> Log.
Author
Owner

@theholywalkingcamel commented on GitHub (Dec 2, 2025):

It's in Settings -> Log.

shad_log.txt

Okay, done😁

<!-- gh-comment-id:3601192730 --> @theholywalkingcamel commented on GitHub (Dec 2, 2025): > It's in Settings -> Log. [shad_log.txt](https://github.com/user-attachments/files/23878180/shad_log.txt) Okay, done😁
Author
Owner

@GHU7924 commented on GitHub (Dec 2, 2025):

v 0.12.5

CUSA03173.log

<!-- gh-comment-id:3602030541 --> @GHU7924 commented on GitHub (Dec 2, 2025): v 0.12.5 [CUSA03173.log](https://github.com/user-attachments/files/23881715/CUSA03173.log)
Author
Owner

@55TeMeR55 commented on GitHub (Jan 5, 2026):

same

<!-- gh-comment-id:3709262012 --> @55TeMeR55 commented on GitHub (Jan 5, 2026): same
Author
Owner

@Kurenos commented on GitHub (Jan 21, 2026):

For me this problem started around the time the UI for keyboard mapping was added, if it helps. It's still persisting to latest release.

<!-- gh-comment-id:3775509819 --> @Kurenos commented on GitHub (Jan 21, 2026): For me this problem started around the time the UI for keyboard mapping was added, if it helps. It's still persisting to latest release.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/shadPS4#1152
No description provided.