The latest Steam client update added native controller support for many of today's most used controllers, making the task of playing non-controller games much simpler.
Valve is continuing its push to offer more options for those playing PC games with things other than mouse and keyboard. The latest Steam client update, currently available in beta, is another step towards that goal.
The biggest new feature allows Steam to natively read and recognise Xbox 360, Xbox One, and generic X-Input controllers. This means any of these controllers can use the same mapping features available to Valve's own Steam Controller, and as of November last year, the DualShock 4 controller.
In simpler terms, this essentially lets Steam to emulate keyboard and mouse input on a gamepad, enabling games that never officially had controller support, or ones with outdated libraries, to work on a gamepad. Though not every game will play nice, the vast majority should - in theory - work without the need of third-party apps.
The implications for this are massive, such as what developer @larsiusprime managed to do with a Wiimote using a custom driver. The developer is now able to use the controller, albeit in limited fashion, with PC titles.
The update also added support for third-party PS4 controllers, such as those from HORI, MadCatz, and other popular fight sticks. All this only recently rolled out in beta, so it should go live for everyone some weeks from now. You can, however, opt-into the beta from your Steam client.
For the full list of changes, see below:
- Made the error clearer when you fail to install a game and don't have enough disk space due to user quotas
- Added support for using the overlay keyboard for games that have launchers
- Improved display when running on retina enabled devices under macOS
- Improved interactions between the Steam runtime and host distribution libraries, which should let Steam work out of the box with open-source graphics drivers on modern distributions. If using an older distribution or running into problems, use STEAM_RUNTIME_PREFER_HOST_LIBRARIES=0 to revert to previous behavior.
- Unify close-to-tray behavior with other platforms. If using a distribution that doesn't have proper compatible tray support, use STEAM_FRAME_FORCE_CLOSE=0
- Added idle detection, friend status will now automatically switch to Away/Snooze
- Fixed Steam not obeying SIGTERM, Steam will now gracefully exit when logging out of a session
- Fixed keyboard input and cursor switching in overlay for Vulkan applications
- Update Vulkan loader in the Steam runtime to enable Xlib support
- Updated libxcb in the runtime with a fix for DRI3-related crashes on open-source graphics drivers
- Added XBox 360, Xbox One, and Generic X-Input controller configurator support. This allows all recognized controller types to use the advanced mapping features of the Steam Controller Configurator. Note that because X-Input currently lacks per-controller means of unique identification, all controllers of that type will share personalization and configuration settings. As they share the same inputs, Xbox 360/One/Generic controllers will all see each-others configurations when browsing. Automatic conversion will be attempted when loading configurations from other controller types.
- Unrecognized Generic X-Input gamepad style controllers will be recognized by the Steam Controller Configurator once their buttons have been assigned to match a generic gamepad layout.
- Recommended configurations specified for a game by the developer will now attempt to assign based on Controller Type.
- Added option to disable Guide Button issuing a Steam focus change. This is available through the Big Picture controller options menu. This allows better interoperability with other applications which use the Guide Button, such as PSNow.
- Added Single Button simple button mode for trackpads. This allows a trackpad to be treated as a single giant button.
- Fix for free-floating On Screen Keyboard running very slowly if a game was open but did not have focus or was running windowed.
- Added independent horizontal/vertical scaling to joystick move and joystick mouse.
- Joystick Move mode no longer shows mouse sensitivity option unless mouse output is selected.
- Added additional support for third party PS4 controllers, including some HORI, MadCatz, and Armor pads and fight sticks.
- Fixed a bug with PS4 triggers where they were being scaled incorrectly, leading to maxing out of the value too soon.
- Added ability to change x-input controller order from the Controller Options menu - so in multi-controller setups of x-input games, the mapping of phyiscal controller to x-input index can be swapped around. Note that this currently only applies to controllers that have opted into Steam Controller Configurator support.
- Fixed Configurator Switch Controller interface not showing controller icons.
- Re-enabled Gamepad outputs for desktop configurations for users of third party programs which hook into applications via the desktop configuration.
- Fixed incorrect colors in screenshots and In-Home Streaming for Vulkan applications on AMD hardware