Anonymous edits have been disabled on the wiki. If you want to contribute please login or create an account.

Difference between revisions of "PCGamingWiki:Editing guide/Input"

From PCGamingWiki, the wiki about fixing PC games
m (reworded controller support)
(simplifying the wording of two notes)
(34 intermediate revisions by 4 users not shown)
Line 1: Line 1:
The Input settings section deals with all input related features and options available for a game.
+
The Input section deals with all input related features and options available for a game.{{#vardefine:steam appid|yes}}
  
==The table==
+
{{ii}} See {{T|Input}} for the condensed template documentation.
{{ii}} [[Template:Input_settings|Template documentation]]
 
  
 
'''Syntax'''
 
'''Syntax'''
 
<pre><nowiki>
 
<pre><nowiki>
{{Input settings
+
{{Input
 
|key remap                = unknown
 
|key remap                = unknown
 
|key remap notes          =  
 
|key remap notes          =  
Line 17: Line 16:
 
|invert mouse y-axis      = unknown
 
|invert mouse y-axis      = unknown
 
|invert mouse y-axis notes =  
 
|invert mouse y-axis notes =  
 +
|touchscreen              = unknown
 +
|touchscreen notes        =
 
|controller support        = unknown
 
|controller support        = unknown
 
|controller support notes  =  
 
|controller support notes  =  
Line 27: Line 28:
 
|invert controller y-axis  = unknown
 
|invert controller y-axis  = unknown
 
|invert controller y-axis notes=  
 
|invert controller y-axis notes=  
|touchscreen               = unknown
+
|xinput controllers        = unknown
|touchscreen notes        =  
+
|xinput controllers notes  =
|button prompts           = unknown
+
|xbox prompts              = unknown
|button prompts notes     =  
+
|xbox prompts notes        =
 +
|impulse triggers          = unknown
 +
|impulse triggers notes    =
 +
|dualshock 4               = unknown
 +
|dualshock 4 notes        =
 +
|dualshock prompts        = unknown
 +
|dualshock prompts notes  =
 +
|light bar support        = unknown
 +
|light bar support notes  =
 +
|dualshock 4 modes        = unknown
 +
|dualshock 4 modes notes  =
 +
|tracked motion controllers= unknown
 +
|tracked motion controllers notes =
 +
|tracked motion prompts    = unknown
 +
|tracked motion prompts notes =
 +
|other controllers         = unknown
 +
|other controllers notes  =  
 +
|other button prompts     = unknown
 +
|other button prompts notes=  
 
|controller hotplug        = unknown
 
|controller hotplug        = unknown
 
|controller hotplug notes  =  
 
|controller hotplug notes  =  
Line 37: Line 56:
 
|simultaneous input        = unknown
 
|simultaneous input        = unknown
 
|simultaneous input notes  =  
 
|simultaneous input notes  =  
|steam controller api      = unknown
+
|steam input api          = unknown
|steam controller api notes=  
+
|steam input api notes    =
|light bar support        = unknown
+
|steam hook input          = unknown
|light bar support notes   =  
+
|steam hook input notes    =
 +
|steam input presets      = unknown
 +
|steam input presets notes =
 +
|steam controller prompts  = unknown
 +
|steam controller prompts notes =  
 +
|steam cursor detection    = unknown
 +
|steam cursor detection notes =  
 
}}
 
}}
 
</nowiki></pre>
 
</nowiki></pre>
  
 
'''Example'''
 
'''Example'''
{{Input settings
+
{{Input
 
|key remap                = true
 
|key remap                = true
 
|key remap notes          =  
 
|key remap notes          =  
Line 56: Line 81:
 
|invert mouse y-axis      = true
 
|invert mouse y-axis      = true
 
|invert mouse y-axis notes =  
 
|invert mouse y-axis notes =  
 +
|touchscreen              = hackable
 +
|touchscreen notes        = Requires a fan patch.
 
|controller support        = true
 
|controller support        = true
|controller support notes  = XInput only.
+
|controller support notes  =  
 
|full controller          = true
 
|full controller          = true
 
|full controller notes    =  
 
|full controller notes    =  
 
|controller remap          = false
 
|controller remap          = false
|controller remap notes    = Can only switch between pre-defined layouts.
+
|controller remap notes    = Limited to predefined layouts.
 
|controller sensitivity    = true
 
|controller sensitivity    = true
 
|controller sensitivity notes=  
 
|controller sensitivity notes=  
 
|invert controller y-axis  = true
 
|invert controller y-axis  = true
 
|invert controller y-axis notes=  
 
|invert controller y-axis notes=  
|touchscreen               = hackable
+
|xinput controllers        = true
|touchscreen notes        = Requires fan patch
+
|xinput controllers notes  =
|button prompts           = Xbox, DualShock
+
|xbox prompts              = true
|button prompts notes     = Use PlayStation Button Mod for DualShock buttons.
+
|xbox prompts notes        =
 +
|impulse triggers          = false
 +
|impulse triggers notes    =
 +
|dualshock 4               = true
 +
|dualshock 4 notes        =  
 +
|dualshock prompts         = hackable
 +
|dualshock prompts notes   = Use PlayStation Button Mod for DualShock buttons.
 +
|light bar support        = hackable
 +
|light bar support notes  = Requires a replacement DLL.
 +
|dualshock 4 modes        = unknown
 +
|dualshock 4 modes notes  =
 +
|tracked motion controllers= unknown
 +
|tracked motion controllers notes =
 +
|tracked motion prompts    = unknown
 +
|tracked motion prompts notes =
 +
|other controllers        = true
 +
|other controllers notes  =
 +
|other button prompts      = generic
 +
|other button prompts notes=
 
|controller hotplug        = false
 
|controller hotplug        = false
 
|controller hotplug notes  = Controller is only detected at startup.
 
|controller hotplug notes  = Controller is only detected at startup.
 
|haptic feedback          = true
 
|haptic feedback          = true
|haptic feedback notes    = Enabled by default
+
|haptic feedback notes    = Enabled by default.
 
|simultaneous input        = true
 
|simultaneous input        = true
 
|simultaneous input notes  =  
 
|simultaneous input notes  =  
|steam controller api      = unknown
+
|steam input api          = false
|steam controller api notes=  
+
|steam input api notes    =
|light bar support        = hackable
+
|steam hook input          = true
|light bar support notes   = Requires replacement DLL
+
|steam hook input notes    =
 +
|steam input presets      = unknown
 +
|steam input presets notes =
 +
|steam controller prompts  = unknown
 +
|steam controller prompts notes =  
 +
|steam cursor detection    = unknown
 +
|steam cursor detection notes =  
 
}}
 
}}
  
The table holds all the relevant information for the section. It is split up into 4 distinct sub-sections:
+
The table holds all the relevant information for the section. It is split up into five distinct sub-sections:
  
 
* Keyboard and Mouse
 
* Keyboard and Mouse
Line 88: Line 139:
 
* Touchscreen support
 
* Touchscreen support
 
* Additional information
 
* Additional information
 +
* Steam Input
  
 
'''Field breakdown'''
 
'''Field breakdown'''
Line 95: Line 147:
 
! Field !! Definition !! How to find || Notes
 
! Field !! Definition !! How to find || Notes
 
|-
 
|-
| Remapping || Ability to reassign or remap keyboard key to other commands/abilities. || Can normally be found in the in-game options menus. They can also be found externally via config files. ||
+
| Remapping || Ability to reassign or remap keyboard key to other commands/abilities. || Normally found in the in-game options menus or externally in config files. || If some bindings can't be changed (no full remapping) or the keyboard layout used by operating system is not respected, set the field to {{code|limited}} and describe the keys or game actions that can't be changed or which keyboard layout is enforced by the game. If the game only has pre-configured layouts instead of allowing player remapping, set the field to {{code|false}} and mention the layouts.
 
|-
 
|-
| Mouse acceleration || Option where the cursor distance increases if the mouse is moved quickly. Also loosely called Mouse smoothing. || Can normally be found in the in-game options menus. It can also be found externally via config files. In some cases, the option is already on by default. || Mouse acceleration is a somewhat complicated setting to determine. See the [[Glossary:Mouse_acceleration|glossary page]] for techniques and full definitions. Also, it the game has no mouse support in regular gameplay, leave the field "n/a".
+
| Mouse acceleration || Option where the cursor distance increases if the mouse is moved quickly. Also loosely called Mouse smoothing. || Can normally be found in the in-game options menus. It can also be found externally via config files. In some cases, the option is already on by default. || Mouse acceleration is a somewhat complicated setting to determine. See the [[Glossary:Mouse_acceleration|glossary page]] for techniques and full definitions. If acceleration is active but has no option, set this field to {{code|always on}}. If the game has no mouse support in regular gameplay, set this field to {{code|n/a}}.
 
|-
 
|-
 
| Mouse sensitivity || The ability to adjust the speed of in-game mouse movement. || Can be found in the in-game options menu. It can also be found externally via config files. Sometimes listed as "Camera sensitivity" or "Sensitivity". || Almost all games with mouse support also have this functionality available. Some games use a single option/slider for both mouse and controller sensitivity.
 
| Mouse sensitivity || The ability to adjust the speed of in-game mouse movement. || Can be found in the in-game options menu. It can also be found externally via config files. Sometimes listed as "Camera sensitivity" or "Sensitivity". || Almost all games with mouse support also have this functionality available. Some games use a single option/slider for both mouse and controller sensitivity.
 
|-
 
|-
| Mouse input in menus || Having mouse input (either movement, scroll wheel, or full cursor) in the in-game menus. || A mouse cursor should be available in-game and can select menu items. If a cursor is not available, check the scroll wheel for menu selection. If the scroll wheel is not available, check physical mouse movement (normally vertical) for menu selection. List the field "false" only if all 3 input methods fail. || Almost all modern games come with this feature built-in. Only certain indie titles and DOS-era games do not have such support.
+
| Mouse input in menus || Having mouse input (either movement, scroll wheel, or full cursor) in the in-game menus. || A mouse cursor should be available in-game and can select menu items. If a cursor is not available, check the scroll wheel for menu selection. If the scroll wheel is not available, check physical mouse movement (normally vertical) for menu selection. List the field {{code|false}} only if all 3 input methods fail. || Almost all modern games come with this feature built-in. Use {{code|true}} if a usable mouse cursor is available, or {{code|limited}} if menus can only be moved with the scroll wheel (no visible cursor).
 
|-
 
|-
| Mouse Y-axis inversion || Vertical (or Y-axis) mouse movement can be inverted (i.e. moving the mouse up will make the in-game camera go down).|| Can be found in the in-game options menu. It can also be found externally via config files. || Reserved for games with 3D movement or camera systems. If a game is 2D-based or does not have mouse support in regular gameplay, leave the field "n/a".
+
| Mouse Y-axis inversion || Vertical (or Y-axis) mouse movement can be inverted (i.e. moving the mouse up will make the in-game camera go down).|| Can be found in the in-game options menu. It can also be found externally via config files. || Reserved for games with 3D movement or camera systems. If a game is 2D-based or does not have mouse support in regular gameplay, set this field to {{code|n/a}}.
 
|-
 
|-
| Controller support || Support for game controllers, gamepads, and/or joysticks. || Normally included either built-in to the game/engine or available as a toggle in-game. Can also be found externally via config files. [http://community.pcgamingwiki.com/files/file/588-directinputxinput-test-tools/ A toolkit is also available] to further narrow down the extent of the support (DirectInput or XInput). || Most games include some level of controller support. If this field is set to "false", the other controller related fields are hidden (leave the other fields "unknown"). Motion controllers are specified in the [[PCGamingWiki:Editing guide/VR support|VR support section]] instead.
+
| Touchscreen optimized || Support for touchscreen monitors. || Can be found in the in-game options menu. Sometimes built into the game. || Very rare feature in desktop-grade games. Common in mobile-based games. The field will be visible only if it is set to either {{code|true}} or {{code|hackable}}.
 
|-
 
|-
| Full controller support || An extension of the previous field, the ability to navigate all in-game menus with a controller without requiring extra keyboard or mouse input. If the game is available on Steam, it should also support Big Picture mode. || Normally built-in to the game/engine. With a controller (preferably XInput-based) navigate through the game and menus. If a menu (excluding keyboard and mouse specific menus) cannot be navigated, leave the field "false". || Most modern games that include controller support also have this functionality included. Some games require a toggle to be activated before controller support is enabled. Regardless of level of support, set the field "false" and state that the toggle requires to be activated via keyboard/mouse input.
+
| Controller support || Support for traditional game controllers, gamepads, and/or joysticks. || Normally included either built into the game/engine or available as a toggle in-game. Can also be found externally via config files. [http://community.pcgamingwiki.com/files/file/588-directinputxinput-test-tools/ A toolkit is also available] to further narrow down the extent of the support (DirectInput or XInput). || Most games include some level of controller support. If this field is set to {{code|false}}, the other controller related fields are hidden (leave the other fields {{code|unknown}}). Motion controllers are specified in the controller type below.
 
|-
 
|-
| Controller remapping || Ability to reassign or remap controller buttons to other commands/abilities. || Can normally be found in the in-game options menus. They can also be found externally via config files. || If a game has pre-configured layouts instead of full remapping, set the field to "false" and mention the layouts.
+
| Full controller support || An extension of the previous field, the ability to navigate all in-game menus with a controller without requiring extra keyboard or mouse input. If the game is available on Steam, it should also support Big Picture mode. || Normally built into the game/engine. With a controller (preferably XInput-based) navigate through the game and menus. If a menu (excluding keyboard and mouse specific menus) cannot be navigated, set the field to {{code|false}}. || Most modern games that include controller support also have this functionality included. Some games require a toggle to be activated before controller support is enabled. Regardless of level of support, set the field {{code|false}} and state that the toggle requires to be activated via keyboard/mouse input.
 +
|-
 +
| Controller remapping || Ability to reassign or remap controller buttons to other commands/abilities. || Can normally be found in the in-game options menus. They can also be found externally via config files. || If some bindings can't be changed (no full remapping), set the field to {{code|limited}} and describe the buttons or game actions that can't be changed. If the game only has pre-configured layouts instead of allowing player remapping, set the field to {{code|false}} and mention the layouts.
 
|-
 
|-
 
| Controller sensitivity || The ability to adjust the speed of in-game joy/analog stick movement. || Can be found in the in-game options menu. It can also be found externally via config files. Sometimes listed as "Camera sensitivity" or "Sensitivity". || Most games with controller support also have this functionality available. Some games use a single option/slider for both mouse and controller sensitivity.
 
| Controller sensitivity || The ability to adjust the speed of in-game joy/analog stick movement. || Can be found in the in-game options menu. It can also be found externally via config files. Sometimes listed as "Camera sensitivity" or "Sensitivity". || Most games with controller support also have this functionality available. Some games use a single option/slider for both mouse and controller sensitivity.
 
|-
 
|-
| Controller Y-axis inversion || Vertical (or Y-axis) controller movement can be inverted (ex. moving the right analog stick up will make the in-game camera go down). || Can be found in the in-game options menu. It can also be found externally via config files. || Reserved for games with 3D movement or camera systems. If a game is 2D-based, leave the field "n/a".
+
| Controller Y-axis inversion || Vertical (or Y-axis) controller movement can be inverted (ex. moving the right analog stick up will make the in-game camera go down). || Can be found in the in-game options menu. It can also be found externally via config files. || Reserved for games with 3D movement or camera systems. If a game is 2D-based, set this field to {{code|n/a}}.
 
|-
 
|-
| Touchscreen optimized || Support for touchscreen monitors. || Can be found in the in-game options menu. Sometimes built-in to the game. || Very rare feature with desktop-grade games. Common with mobile-based games. The field will only be visible if it is set to either "true" or "hackable".
+
| XInput-compatible controllers || Support for XInput controllers such as the [[Controller:Xbox 360 Controller|Xbox 360 Controller]] and [[Controller:Xbox One Controller|Xbox One Controller]] or compatible models. ||
 
|-
 
|-
| Button prompts || Prompts for specific controller buttons are available in-game. || Normally built-in to the game/engine. With a controller, navigate through the game and menus. If support is available, prompts for controller buttons will replace relevant interface elements and/or prompts for keyboard keys. || See the [[#Button prompts legend|Button prompts legend]] for details on accepted values. If a game can support multiple controller family prompts, separate each value with a comma ({{Key|,}}).
+
| Xbox button prompts || Xbox prompts are available in-game. || Normally built into the game/engine. With a controller, navigate through the game and menus. If supported, prompts for controller buttons will replace relevant interface elements and/or prompts for keyboard keys.
 
|-
 
|-
| Controller hotplugging || Whether a controller can be connected while the game is running. || Normally built-in to the game/engine. Try connecting a controller while in-game. If the game automatically detects it and allows it to be used immediately, then support is available. || Most modern games with controller support also have this functionality.
+
| Impulse Trigger vibration || Support for the [[Controller:Xbox One Controller|Xbox One Controller]]'s Impulse Triggers || Support may vary between stores. If trigger vibration is active but has no option, set this field to {{code|always on}}.
 
|-
 
|-
| Haptic feedback || Support for [[Wikipedia:Haptic_technology|haptic feedback]] with compatible controllers. || Normally included either built-in to the game/engine and/or available as a toggle in-game. Check the in-game options menu for a setting along the lines of "Vibration", "Rumble support", or "Force feedback". Can also be tested by doing actions in-game that would trigger a haptic response (ex. firing a weapon, accelerating in a vehicle, etc.) || Some games will come with more advanced options and support for haptic feedback. If the game has support for "exotic" haptic feedback (any type of haptic feedback not supported by most major controller families), note the controllers required to access it.
+
| DualShock 4 controllers || Support for the [[Controller:DualShock 4|DualShock 4]]. || Use {{code|true}} for native support only. If the game requires a third-party wrapper or another approach, set this to {{code|hackable}} and specify the details. {{code|limited}} can be used in situations where '''official developer-confirmed support''' is provided through a third-party solution (e.g. Steam Input), which should also be noted.
 +
|-
 +
| DualShock button prompts || DualShock prompts are available in-game. || Normally built into the game/engine. With a controller, navigate through the game and menus. If supported, prompts for controller buttons will replace relevant interface elements and/or prompts for keyboard keys.
 +
|-
 +
| DualShock 4 light bar support || Support for the light bar component of the [[Controller:DualShock 4|DualShock 4]] controller. || Normally built into the game/engine. Check the official game website or store page for details on DualShock 4 support (specifically regarding the light bar). || Very rare feature to be found natively. In most cases, light bar support usually requires a community-created workaround. The field will only be visible if it is set to either {{code|true}} or {{code|hackable}}.
 +
|-
 +
| DualShock 4 connection modes || Supported connection modes (comma-separated). || Some games will not work with certain modes natively. For these cases specify the solution in the notes.
 +
|-
 +
| Tracked motion controllers || Support for motion controllers. || Mostly found in games with VR support.
 +
|-
 +
| Motion controller button/gesture prompts || Prompts are available in-game. ||
 +
|-
 +
| Generic/other controllers || Support for other types of traditional controllers ||
 +
|-
 +
| Other button prompts || Prompts for specific controller buttons are available in-game. || Normally built into the game/engine. With a controller, navigate through the game and menus. If support is available, prompts for controller buttons will replace relevant interface elements and/or prompts for keyboard keys. || See the [[#Button prompts legend|Button prompts legend]] for details on accepted values. If a game can support multiple controller family prompts, separate each value with a comma ({{Key|,}}).
 +
|-
 +
| Controller hotplugging || Whether a controller can be connected while the game is running. || Normally built into the game/engine. Try connecting a controller while in-game. If the game automatically detects it and allows it to be used immediately, then support is available. || Most modern games with controller support also have this functionality.
 +
|-
 +
| Haptic feedback || Support for [[Wikipedia:Haptic_technology|haptic feedback]] with compatible controllers. || Normally built into the game/engine and/or available as a toggle in-game. Check the in-game options menu for a setting along the lines of "Vibration", "Rumble support", or "Force feedback". Can also be tested by doing actions in-game that would trigger a haptic response (ex. firing a weapon, accelerating in a vehicle, etc.) || Some games will come with more advanced options and support for haptic feedback. If the game has support for "exotic" haptic feedback (any type of haptic feedback not supported by most major controller families), note the controllers required to access it. If haptic feedback is active but has no option, set this field to {{code|always on}}.
 
|-
 
|-
 
| Simultaneous input || Whether controller inputs can be used alongside keyboard/mouse. || Enable controller support (if applicable), then try to use together with mouse/keyboard. || Many games disable most keyboard/mouse functions when a controller is enabled.
 
| Simultaneous input || Whether controller inputs can be used alongside keyboard/mouse. || Enable controller support (if applicable), then try to use together with mouse/keyboard. || Many games disable most keyboard/mouse functions when a controller is enabled.
 
|-
 
|-
| Steam Controller API support || Support for the [[Controller:Steam Controller|Steam Controller API]]. || Games with proper support can bind special functions and gestures. || The field will only be visible if it is set to either "true" or "hackable" and the game has a Steam ID specified in [[PCGamingWiki:Editing guide/The Infobox|The Infobox]].
+
| Steam Input API support || Native support for the [[Store:Steam#Steam Input API|Steam Input API]]. || Games with [[Store:Steam#Supported games|native support]] can bind special functions and gestures. || Set this to {{code|false}} if the game does not feature native support for the [[Store:Steam#Steam Input API|Steam Input API]].
 +
 
 +
The field will only be visible if it is set to either {{code|true}} or {{code|hackable}} and the game has a Steam ID specified in [[PCGamingWiki:Editing guide/The infobox|The Infobox]].
 +
|-
 +
| Steam hook input || Indicates whether Steam is capable of hooking the input at all. || Having a controller configured in Steam's Controller settings, launch the game and make sure that the settings profile for the controller propagates from Steam Big Picture into the game. || In most cases, settings are propagated only if Steam manages to hook its overlay into the game. In some cases additional steps are required - in such cases set the property to {{code|hackable}} and further explain the required steps in either '''Steam hook input notes''' or by creating a subsection below the table. Note that this relates to controller profile propagation and it can be {{code|true}} even if the game does not natively support the controller.
 +
|-
 +
| Steam Input presets || Developer supplies official [[Store:Steam#Supported games|Steam Input]] presets. || Open Big Picture Mode of Steam > [select the game] > Manage Game > Controller Configuration > Browse Configs > Recommended > Show other controller types. See if there is a developer-created configuration listed for one or more controllers. || Note that the default Steam-provided generic controller configurations do not have any author listed below the profile name, and use generic names such as "Gamepad" or "Gamepad with Camera Controls". These are generic templates created by Valve and shown instead of developer-created template(s).
 +
|-
 +
| Steam Controller prompts || [[Controller:Steam Controller|Steam Controller]] prompts are displayed in the game. || Normally built into the game/engine. Use a Steam Controller to navigate through the game and menus. If supported, prompts for the controller buttons will replace the relevant interface elements and/or prompts for keyboard keys.
 
|-
 
|-
| DualShock 4 light bar support || Support for the light bar component of the [[Controller:DualShock 4|DualShock 4]] controller. || Normally built-in to the game/engine. Check the official game website or store page for details on DualShock 4 support (specifically regarding the light bar). || Very rare feature to be found natively. In most cases, light bar support usually requires a community-created workaround. The field will only be visible if it is set to either "true" or "hackable".
+
| Steam cursor detection || Indicates whether Steam properly detects when mouse cursor is visible in-game, allowing for automatic switching between controller layouts. || This option only applies when the game doesn't have Steam Input API support but Steam still manages to hook game's input using a legacy mode (see Steam hook input). For testing, set up a controller profile inside of Steam Big Picture, with 2 different action sets. Then configure the switching between them by opening Manage Action sets menu (generally by pressing Select Key on the controller) and assigning one action set to be used when cursor is shown and the other when cursor is hidden. || In majority of cases, a property will either be set to {{code|true}} or {{code|false}}, depending on whether the Steam detects cursor appearing in-game and switching to a proper action set. Sometimes additional steps may be required in such cases set it to {{code|hackable}}. If the game never displays the cursor or always displays the cursor, set this field to {{code|n/a}}.
 
|}
 
|}
  
 
==Button prompts legend==
 
==Button prompts legend==
The Input settings table has a field ({{code|Button prompts}}) that does not follow the normal rating system (as described [[PCGamingWiki:Editing_guide/Section_Table_legend|earlier in the guide]]). These are the possible values it can accept:
+
The Input table has a field ({{code|other button prompts}}) that does not follow the normal rating system (as described [[PCGamingWiki:Editing_guide/Section table legend|earlier in the guide]]). These are the possible values it can accept:
  
 
<gallery>
 
<gallery>
 
File:Input_settings_icon_-_Xbox_Controller.svg|Xbox: This game has Xbox controller button prompts available.
 
File:Input_settings_icon_-_Xbox_Controller.svg|Xbox: This game has Xbox controller button prompts available.
File:Input_settings_icon_-_DualShock_Controller.svg|DualShock: This game has Playstation controller button prompts available.
+
File:Input_settings_icon_-_DualShock_Controller.svg|DualShock: This game has PlayStation controller button prompts available.
 
File:Input_settings_icon_-_Nintendo_Controller.svg|Nintendo: This game has Nintendo controller button prompts available.
 
File:Input_settings_icon_-_Nintendo_Controller.svg|Nintendo: This game has Nintendo controller button prompts available.
 
File:Input_settings_icon_-_Steam_Controller.svg|Steam: This game has Steam Controller button prompts available.
 
File:Input_settings_icon_-_Steam_Controller.svg|Steam: This game has Steam Controller button prompts available.
Line 148: Line 228:
 
<div class="editing-guide-list-item editing-guide-previous">
 
<div class="editing-guide-list-item editing-guide-previous">
 
<div class="editing-guide-icon">
 
<div class="editing-guide-icon">
[[File:Editing Guide - Video settings.svg|link=PCGamingWiki:Editing guide/Video settings]]
+
[[File:Editing Guide - Video settings.svg|link=PCGamingWiki:Editing guide/Video]]
 
</div>
 
</div>
[[PCGamingWiki:Editing guide/Video settings|Video settings]]
+
[[PCGamingWiki:Editing guide/Video|Video]]
 
</div>
 
</div>
  
 
<div class="editing-guide-list-item editing-guide-next">
 
<div class="editing-guide-list-item editing-guide-next">
 
<div class="editing-guide-icon">
 
<div class="editing-guide-icon">
[[File:Editing Guide - Audio settings.svg|link=PCGamingWiki:Editing guide/Audio settings]]
+
[[File:Editing Guide - Audio settings.svg|link=PCGamingWiki:Editing guide/Audio]]
 
</div>
 
</div>
[[PCGamingWiki:Editing guide/Audio settings|Audio settings]]
+
[[PCGamingWiki:Editing guide/Audio|Audio]]
 
</div>
 
</div>
 
</div>
 
</div>

Revision as of 01:06, 10 April 2021

The Input section deals with all input related features and options available for a game.

See {{Input}} for the condensed template documentation.

Syntax

{{Input
|key remap                 = unknown
|key remap notes           = 
|acceleration option       = unknown
|acceleration option notes = 
|mouse sensitivity         = unknown
|mouse sensitivity notes   = 
|mouse menu                = unknown
|mouse menu notes          = 
|invert mouse y-axis       = unknown
|invert mouse y-axis notes = 
|touchscreen               = unknown
|touchscreen notes         = 
|controller support        = unknown
|controller support notes  = 
|full controller           = unknown
|full controller notes     = 
|controller remap          = unknown
|controller remap notes    = 
|controller sensitivity    = unknown
|controller sensitivity notes= 
|invert controller y-axis  = unknown
|invert controller y-axis notes= 
|xinput controllers        = unknown
|xinput controllers notes  = 
|xbox prompts              = unknown
|xbox prompts notes        = 
|impulse triggers          = unknown
|impulse triggers notes    = 
|dualshock 4               = unknown
|dualshock 4 notes         = 
|dualshock prompts         = unknown
|dualshock prompts notes   = 
|light bar support         = unknown
|light bar support notes   = 
|dualshock 4 modes         = unknown
|dualshock 4 modes notes   = 
|tracked motion controllers= unknown
|tracked motion controllers notes = 
|tracked motion prompts    = unknown
|tracked motion prompts notes = 
|other controllers         = unknown
|other controllers notes   = 
|other button prompts      = unknown
|other button prompts notes= 
|controller hotplug        = unknown
|controller hotplug notes  = 
|haptic feedback           = unknown
|haptic feedback notes     = 
|simultaneous input        = unknown
|simultaneous input notes  = 
|steam input api           = unknown
|steam input api notes     = 
|steam hook input          = unknown
|steam hook input notes    = 
|steam input presets       = unknown
|steam input presets notes = 
|steam controller prompts  = unknown
|steam controller prompts notes = 
|steam cursor detection    = unknown
|steam cursor detection notes = 
}}

Example

The table holds all the relevant information for the section. It is split up into five distinct sub-sections:

  • Keyboard and Mouse
  • Controllers
  • Touchscreen support
  • Additional information
  • Steam Input

Field breakdown

Field Definition How to find Notes
Remapping Ability to reassign or remap keyboard key to other commands/abilities. Normally found in the in-game options menus or externally in config files. If some bindings can't be changed (no full remapping) or the keyboard layout used by operating system is not respected, set the field to limited and describe the keys or game actions that can't be changed or which keyboard layout is enforced by the game. If the game only has pre-configured layouts instead of allowing player remapping, set the field to false and mention the layouts.
Mouse acceleration Option where the cursor distance increases if the mouse is moved quickly. Also loosely called Mouse smoothing. Can normally be found in the in-game options menus. It can also be found externally via config files. In some cases, the option is already on by default. Mouse acceleration is a somewhat complicated setting to determine. See the glossary page for techniques and full definitions. If acceleration is active but has no option, set this field to always on. If the game has no mouse support in regular gameplay, set this field to n/a.
Mouse sensitivity The ability to adjust the speed of in-game mouse movement. Can be found in the in-game options menu. It can also be found externally via config files. Sometimes listed as "Camera sensitivity" or "Sensitivity". Almost all games with mouse support also have this functionality available. Some games use a single option/slider for both mouse and controller sensitivity.
Mouse input in menus Having mouse input (either movement, scroll wheel, or full cursor) in the in-game menus. A mouse cursor should be available in-game and can select menu items. If a cursor is not available, check the scroll wheel for menu selection. If the scroll wheel is not available, check physical mouse movement (normally vertical) for menu selection. List the field false only if all 3 input methods fail. Almost all modern games come with this feature built-in. Use true if a usable mouse cursor is available, or limited if menus can only be moved with the scroll wheel (no visible cursor).
Mouse Y-axis inversion Vertical (or Y-axis) mouse movement can be inverted (i.e. moving the mouse up will make the in-game camera go down). Can be found in the in-game options menu. It can also be found externally via config files. Reserved for games with 3D movement or camera systems. If a game is 2D-based or does not have mouse support in regular gameplay, set this field to n/a.
Touchscreen optimized Support for touchscreen monitors. Can be found in the in-game options menu. Sometimes built into the game. Very rare feature in desktop-grade games. Common in mobile-based games. The field will be visible only if it is set to either true or hackable.
Controller support Support for traditional game controllers, gamepads, and/or joysticks. Normally included either built into the game/engine or available as a toggle in-game. Can also be found externally via config files. A toolkit is also available to further narrow down the extent of the support (DirectInput or XInput). Most games include some level of controller support. If this field is set to false, the other controller related fields are hidden (leave the other fields unknown). Motion controllers are specified in the controller type below.
Full controller support An extension of the previous field, the ability to navigate all in-game menus with a controller without requiring extra keyboard or mouse input. If the game is available on Steam, it should also support Big Picture mode. Normally built into the game/engine. With a controller (preferably XInput-based) navigate through the game and menus. If a menu (excluding keyboard and mouse specific menus) cannot be navigated, set the field to false. Most modern games that include controller support also have this functionality included. Some games require a toggle to be activated before controller support is enabled. Regardless of level of support, set the field false and state that the toggle requires to be activated via keyboard/mouse input.
Controller remapping Ability to reassign or remap controller buttons to other commands/abilities. Can normally be found in the in-game options menus. They can also be found externally via config files. If some bindings can't be changed (no full remapping), set the field to limited and describe the buttons or game actions that can't be changed. If the game only has pre-configured layouts instead of allowing player remapping, set the field to false and mention the layouts.
Controller sensitivity The ability to adjust the speed of in-game joy/analog stick movement. Can be found in the in-game options menu. It can also be found externally via config files. Sometimes listed as "Camera sensitivity" or "Sensitivity". Most games with controller support also have this functionality available. Some games use a single option/slider for both mouse and controller sensitivity.
Controller Y-axis inversion Vertical (or Y-axis) controller movement can be inverted (ex. moving the right analog stick up will make the in-game camera go down). Can be found in the in-game options menu. It can also be found externally via config files. Reserved for games with 3D movement or camera systems. If a game is 2D-based, set this field to n/a.
XInput-compatible controllers Support for XInput controllers such as the Xbox 360 Controller and Xbox One Controller or compatible models.
Xbox button prompts Xbox prompts are available in-game. Normally built into the game/engine. With a controller, navigate through the game and menus. If supported, prompts for controller buttons will replace relevant interface elements and/or prompts for keyboard keys.
Impulse Trigger vibration Support for the Xbox One Controller's Impulse Triggers Support may vary between stores. If trigger vibration is active but has no option, set this field to always on.
DualShock 4 controllers Support for the DualShock 4. Use true for native support only. If the game requires a third-party wrapper or another approach, set this to hackable and specify the details. limited can be used in situations where official developer-confirmed support is provided through a third-party solution (e.g. Steam Input), which should also be noted.
DualShock button prompts DualShock prompts are available in-game. Normally built into the game/engine. With a controller, navigate through the game and menus. If supported, prompts for controller buttons will replace relevant interface elements and/or prompts for keyboard keys.
DualShock 4 light bar support Support for the light bar component of the DualShock 4 controller. Normally built into the game/engine. Check the official game website or store page for details on DualShock 4 support (specifically regarding the light bar). Very rare feature to be found natively. In most cases, light bar support usually requires a community-created workaround. The field will only be visible if it is set to either true or hackable.
DualShock 4 connection modes Supported connection modes (comma-separated). Some games will not work with certain modes natively. For these cases specify the solution in the notes.
Tracked motion controllers Support for motion controllers. Mostly found in games with VR support.
Motion controller button/gesture prompts Prompts are available in-game.
Generic/other controllers Support for other types of traditional controllers
Other button prompts Prompts for specific controller buttons are available in-game. Normally built into the game/engine. With a controller, navigate through the game and menus. If support is available, prompts for controller buttons will replace relevant interface elements and/or prompts for keyboard keys. See the Button prompts legend for details on accepted values. If a game can support multiple controller family prompts, separate each value with a comma (,).
Controller hotplugging Whether a controller can be connected while the game is running. Normally built into the game/engine. Try connecting a controller while in-game. If the game automatically detects it and allows it to be used immediately, then support is available. Most modern games with controller support also have this functionality.
Haptic feedback Support for haptic feedback with compatible controllers. Normally built into the game/engine and/or available as a toggle in-game. Check the in-game options menu for a setting along the lines of "Vibration", "Rumble support", or "Force feedback". Can also be tested by doing actions in-game that would trigger a haptic response (ex. firing a weapon, accelerating in a vehicle, etc.) Some games will come with more advanced options and support for haptic feedback. If the game has support for "exotic" haptic feedback (any type of haptic feedback not supported by most major controller families), note the controllers required to access it. If haptic feedback is active but has no option, set this field to always on.
Simultaneous input Whether controller inputs can be used alongside keyboard/mouse. Enable controller support (if applicable), then try to use together with mouse/keyboard. Many games disable most keyboard/mouse functions when a controller is enabled.
Steam Input API support Native support for the Steam Input API. Games with native support can bind special functions and gestures. Set this to false if the game does not feature native support for the Steam Input API.

The field will only be visible if it is set to either true or hackable and the game has a Steam ID specified in The Infobox.

Steam hook input Indicates whether Steam is capable of hooking the input at all. Having a controller configured in Steam's Controller settings, launch the game and make sure that the settings profile for the controller propagates from Steam Big Picture into the game. In most cases, settings are propagated only if Steam manages to hook its overlay into the game. In some cases additional steps are required - in such cases set the property to hackable and further explain the required steps in either Steam hook input notes or by creating a subsection below the table. Note that this relates to controller profile propagation and it can be true even if the game does not natively support the controller.
Steam Input presets Developer supplies official Steam Input presets. Open Big Picture Mode of Steam > [select the game] > Manage Game > Controller Configuration > Browse Configs > Recommended > Show other controller types. See if there is a developer-created configuration listed for one or more controllers. Note that the default Steam-provided generic controller configurations do not have any author listed below the profile name, and use generic names such as "Gamepad" or "Gamepad with Camera Controls". These are generic templates created by Valve and shown instead of developer-created template(s).
Steam Controller prompts Steam Controller prompts are displayed in the game. Normally built into the game/engine. Use a Steam Controller to navigate through the game and menus. If supported, prompts for the controller buttons will replace the relevant interface elements and/or prompts for keyboard keys.
Steam cursor detection Indicates whether Steam properly detects when mouse cursor is visible in-game, allowing for automatic switching between controller layouts. This option only applies when the game doesn't have Steam Input API support but Steam still manages to hook game's input using a legacy mode (see Steam hook input). For testing, set up a controller profile inside of Steam Big Picture, with 2 different action sets. Then configure the switching between them by opening Manage Action sets menu (generally by pressing Select Key on the controller) and assigning one action set to be used when cursor is shown and the other when cursor is hidden. In majority of cases, a property will either be set to true or false, depending on whether the Steam detects cursor appearing in-game and switching to a proper action set. Sometimes additional steps may be required in such cases set it to hackable. If the game never displays the cursor or always displays the cursor, set this field to n/a.

Button prompts legend

The Input table has a field (other button prompts) that does not follow the normal rating system (as described earlier in the guide). These are the possible values it can accept: