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

Difference between revisions of "Glossary:Controller"

From PCGamingWiki, the wiki about fixing PC games
(→‎Other information: put an extreme ELI5 bit about hotplugging)
Line 60: Line 60:
 
====[https://sites.google.com/site/0dd14lab/xinput-plus XInput Plus]====
 
====[https://sites.google.com/site/0dd14lab/xinput-plus XInput Plus]====
 
{{ii}} XBCD and Japanese XInput and FFB drivers don't have to be used.
 
{{ii}} XBCD and Japanese XInput and FFB drivers don't have to be used.
{{++}} Features a wide array of advanced options, tweaks, features and some major fixes other wrappers do not have, such as rect correction for square and circle, good visual aid.  
+
{{++}} Features a wide array of advanced options, tweaks, features and some major fixes other wrappers do not have, such as rect correction for square and circle, axis center offset, good visual aid.
 
{{++}} Can translate DirectInput calls into XInput and back which solves some other issues. It can also be used on older games using dinput.dll and dinput8.dll.
 
{{++}} Can translate DirectInput calls into XInput and back which solves some other issues. It can also be used on older games using dinput.dll and dinput8.dll.
 
{{--}} Unintuitive button rebinding stuff.
 
{{--}} Unintuitive button rebinding stuff.

Revision as of 20:55, 22 November 2015

This page may require cleanup to meet basic quality standards. You can help by modifying the article. The discussion page may contain useful suggestions.

General information

DirectInput (and XInput) on Wikipedia
Xbox 360 Controller (XInput) on Wikipedia

Controllers are an alternative to keyboard and mouse input. Almost all recently released PC games support controllers, although many only support the newer XInput controllers by default.

List of controllers

For complete list of controller articles, see.

Logitech

Microsoft

Xbox

PC

Nintendo

Sony

Miscellaneous

Windows

XInput wrapping

Windows should be able to detect and use all standard DirectInput and XInput controllers. However games released after 2006 usually opt to use XInput only. In these cases it's still possible to use DirectInput controller by translating inputs to XInput in some manner.
If the game doesn't feature any kind of controller support, usually older titles or games with engine limitations, see Wrappers for keyboard only games.

Durazno

Customize XInput controller settings. Adjust axis inversion, vibration strength and various other settings.

XInput Plus

XBCD and Japanese XInput and FFB drivers don't have to be used.
Features a wide array of advanced options, tweaks, features and some major fixes other wrappers do not have, such as rect correction for square and circle, axis center offset, good visual aid.
Can translate DirectInput calls into XInput and back which solves some other issues. It can also be used on older games using dinput.dll and dinput8.dll.
Unintuitive button rebinding stuff.

Xbox 360 Controller Emulator

Can be used to force DirectInput controllers to be detected as XInput ones (Microsoft's API used for Xbox 360 Controllers).
Does not work with games using the Unity engine due to implementation differences.[1]
Instructions

Force feedback driver for XInput

A version for Xbox One Controllers is also available.
Some games will still not see the controller as force feedback-compatible even with this driver installed.
For this driver to be fully uninstalled you also have to download xi.etc.zip from the website, right-click on each .ini file and select Install

Wrappers for keyboard only games

These utilities allow buttons to be bound to keyboard keys. This allows games without any or really poor controller support to be played with controller.
In theory allows playing all of PC games with almost any controller.
With majority of cases this also means that button prompts are for keyboard only, losing analog/axis movement because keys are bind into digital keyboard keys and possibly losing on haptic feedback.
Requires profiles to be created to match games used keyboard and mouse controls.

antimicro

JoyToKey

Not to be confused with the Linux-only Joy2Key
Completely portable, with multiple configurations at once.
Up to four multiple keys can be set per trigger.
Might appear complicated to use at first.
Does not support XInput, polls Xbox 360 Controller via DirectInput, which leads to inability to use LT an RT simultaneously, any attempt to press one trigger while other pressed leads to both getting unpressed due of usage of same axis. See XInput Plus, it includes DirectInput > XInput wrapper that may solve this problem.
Instructions
Instructions
Instructions

OS X

ControllerMate

Linux

Most distributions come with the xpad driver already. If you're experiencing problems with using controllers in your game, or want to bind your keyboard to the controller, you may want to try xboxdrv.

Joy2Key

QJoyPad

QJoyPad allows you to create profiles for different games and switch between them via the interface or system tray icon.

Dualshock 4 Lightbar

See FNA: DualShock 4 Light Bar Support.

Issues fixed

Spinning camera, menus scrolling automatically

If you weren't going to use specific or any controller, then simply unplug or disable unused controllers and it should fix the issue.
If movement is slow/minor, this may be caused by stuck stick (which could be caused by worn out loose sticks) combined with low deadzones in game.
Instructions
Instructions
Instructions
If movement is fast, then game detects plugged controllers axis wrongly (e.g. racing wheel pedals, controller shoulder triggers, flightstick) and detects negative axis as stick being used.
This is because with DirectInput, axis can start from zero value (individual values for pedals, triggers, etc.) where in XInput they are always centered and combined (other trigger uses axis negative value, other one positive).[2]
Instructions
Instructions

Other information

DirectInput

DirectInput is Microsoft's older controller API (used with nearly all games until 2006). XInput controllers operate in DirectInput mode for these games. Logitech's F310 and F710 gamepads have a physical switch which should be set to "D" for these games.

XInput

XInput is Microsoft's API for Xbox 360-compatible controllers such as the official Xbox 360 Controller.

Multiple controllers

Some older games do not allow you to select which controller to use, instead using the first controller reported by Windows; if you have multiple controllers the one you want may not be selected. To set the first controller open Game Controllers (joy.cpl) and click the Advanced button, then choose the controller you want. This setting is only relevant if you have multiple controllers connected; if you only connect one controller at a time it will always be reported as the first controller.

Some special controllers (e.g. certain HOTAS setups) report the separate physical pieces as individual controllers, making it difficult to use the entire controller with games that can only see a single controller. For these controllers you will need to set the main portion of the controller as the preferred device and then use another method to set up controls for the other parts (see controller with keyboard-only game).

Keyboard to controller input

If the game runs as an administrator, the controller program must also be run as an administrator otherwise it can't interact with the game.

Controller hotplugging

Controller hotplugging is the ability to switch controllers without restarting a game.


References