Emulator Issues #11192
Steam Input no longer detects when dolphin is running a game
Super Mario Galaxy
Game ID? (right click the game in the game list, properties, info tab)
MD5 Hash? (right click the game in the game list, properties, info tab, MD5 Hash: Compute)
What's the problem? Describe what went wrong.
Steam no longer detects when the game is running. The problem is prevalent in dolphin-emu-master(Dolphin 5.0-fcae279-dirty) in the ubuntu PPA but not in the dolphin-emu build. I don't know if this a problem with dolphin or if Steam is lagging behind in some new feature so I'll wait for the next stable release before reporting this to Valve.
What steps will reproduce the problem?
Launch dolphin-emu from steam
Launch a game
The steam input Dolphin config doesn't get applied when the game is open
Is the issue present in the latest development version? For future reference, please also write down the version number of the latest development version.
Yes Dolphin 5.0-fcae279-dirty
Is the issue present in the latest stable version?
If the issue isn't present in the latest stable version, which is the first broken version? (You can find the first broken version by bisecting. Windows users can use the tool https://forums.dolphin-emu.org/Thread-green-notice-development-thread-unofficial-dolphin-bisection-tool-for-finding-broken-builds and anyone who is building Dolphin on their own can use git bisect.)
What are your PC specifications? (CPU, GPU, Operating System, more)
#1 Updated by JMC4789 over 2 years ago
- Status changed from New to Questionable
For us to look into this, you'd need to find the exact revision of Dolphin that this issue happens in.
We're not into maintaining third party software, but, if it's an easy enough change to restore functionality, we'd happily make it work again. In order to narrow down what changed, we'd definitely need a proper bisect.
#2 Updated by mbouchar over 1 year ago
I also have the same problems for several months now since I was forced to upgrade to the master branch because dolphin was crashing after a couple of seconds after a game was loaded when I upgraded my OS to Ubuntu 18.04.
So I did just did a bisect of the code and the problem appeared with this commits:
Was merged to the master branch in the following pull request:
Now, this is where Dolphin was switched from the WxWidgets GUI to the new Qt one, so that's a pretty big change. I could see two reasons why the Steam Controller would not work : either the input handling is completely different between the old WxWidget and new Qt code or the way the game window is created is incompatible with Steam game detection.
The second part is probably what happens. For the Steam Controller to work correctly, Dolphin must be launched by the Steam client. By default, when we are in the main Gui, the Steam Controller is in an "emulated" mode where it simulates XInput Mouse and Keyboard. The controller is only switched to gamepad mode when Steam detects a fullscreen window.
#3 Updated by mbouchar over 1 year ago
Following my findings, I did a couple more tests with the controller configuration. I was able to get the controller working correctly with Dolphin by modifying the "Desktop Configuration" of the controller to the "Gamepad" template (must use Big Picture Mode to modify that configuration).
That means that the Steam Controller is always recognized as a Gamepad, so no more mouse and keyboard emulation. This is a documented issue with buggy games that do not handle correctly the fact that the Steam Controller is both a gamepad and a mouse / keyboard at the same time.
#5 Updated by PinballWizzrobe 9 months ago
Confirming that this issue still persists as of 5.0-c484276-dirty within Ubuntu 18.04.3 The Steam Controller is read as a Keyboard device (Specifically XInput2/0/Virtual core pointer) unless specified as a Gamepad in the Desktop Configuration within Steam, per mbouchar's suggestion. Compared with a Logitech F310 which is read properly without configuration. A similar issue was present in Windows and circumvented by booting the game, which allowed the controller to be read as a gamepad; this same method did not work in Ubuntu on the same hardware. Can also confirm the Libretro core version (1fbd599) works as intended. Will continue testing, but somebody please investigate a fix.