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


Warning for game developers: PCGamingWiki staff members will only ever reach out to you using the official press@pcgamingwiki.com mail address.
Be aware of scammers claiming to be representatives or affiliates of PCGamingWiki who promise a PCGW page for a game key.

Glossary:Controller

From PCGamingWiki, the wiki about fixing PC games
Revision as of 14:04, 23 July 2015 by RaTcHeT302 (talk | contribs) (MEH)
This page may require cleanup to meet basic quality standards. You can help by modifying the article. The discussion page may contain useful suggestions.
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.

Setting Up (Windows)

Select the desired controller from the following list in order to find instructions on how to set it up.

Logitech controllers

Microsoft controllers

Xbox

PC

Nintendo controllers

Sony controllers

Miscellaneous

Windows Wrappers

JoyToKey

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 dinput, 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. Look for XInput Plus section bellow, it includes dinput>xinput wrapper that may solve this problem.
Instructions
Instructions
Instructions

Pinnacle Game Profiler

Official site and 30 day trial ($25 USD, lifetime license)
Games/application profile downloads

DirectInput and XInput

For using a non-Xbox 360 Controller with games that require an Xbox 360-compatible controller

Xpadder

Xpadder official site ($10 USD, lifetime license. Versions up to 5.3 are free.)

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

Durazno

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

XInput Plus

Has rect correction to solve square\cirlce issue (limited diagonal range that caused characters to stop whenever diagonal direction pressed).
Has many advanced features none of other xinput\dinput wrappers has.
Pretty easy to use and see result right in UI, thanks to understandable input\output graphs and internal testing tool.
The only dinput\dinput8 wrapper around that allows to use xinput LT\RT as separate axes or buttons and fix other problems in old games - force deadzone, rebind POV to extra Buttons, etc.
Very easy and intuitive INI tweaking with self-explaining names of features and buttons.
Has option to combine itself with x360ce to work even with Dinput-only pads.
Allows to avoid usages of unofficial drivers such as XBCD and Japanese XInput and FFB drivers.
Allows to turn 16 physical buttons into 32 virtual buttons.
Official site and instruction in Japanese, site provides google translation to any language, but machine translation may be not very accurate and understandable.
Button rebind UI logic reversed and does opposite of what you expect.
Dinput rebind UI limited to very few common button combinations (it only allows to bind LT\RT as B11-12 or B12-13 adn as separate Z and rZ axes), does not show all of the features wrapper can provide, manual INI tweaking is necessary to fully rebind any dinput buttons and axes, and after manual editing usage UI is not recommended since it will override manual tweaks.
WinMM gamepad API that was used in very old games and even in some modern games, such as Deadly Premonition, not supported yet, however author promised to add it in the feature.
Perfect mix between x360ce, Durazno and XBCD. Allows to tweak many xinput settings that named tools does not allow to do, with good visual aid (shows input and output corrected difference) and built in testing tools, has rect correction (circle<>square), linearity, saturation, response and dead zone tweaking, allows to invert or disable any axis, allows full rebind of any button, has togglable rapid fire and hold features, easy controller number rebinds (can map single controller as two different, or two as one).
Most important feature - it is the one and only tool, that allows to fix xinput \ Xbox 360 Controller issues in old games that used dinput.dll and dinput8.dll, without messing with XBCD. Included dinput>xinput wrapper does exactly opposite thing x360ce does, it receives games calls to dinput and translate them to xinput calls, allowing to use LT and RT at the same time as two separate axes. Dinput wrappers allows to rebind any button and axis in any combination, so that LT and RT can be bound as digital buttons, and DPAD\POV can be bound as extra regular buttons, allowing to use them in games that never recognized POV. Layout of any classic gamepad such as Logitech RumblePad 2 can be simulated with dinput rebinds, allowing to play any old dinput game with default gamepad binds.
More than this, this is the only tool that allows to utilize up to 32 buttons in dinput games, using shift mode bound to any button. For example GUIDE button can be used as shift, that will turn all regular 12 buttons from button 1-12 to 13-25 while shift as pressed, and any physical button will virtually act as two buttons. Rect correction will help to fix problem with diagonal movements in dinput games that expected square rect and cant be performed with circle rect of Xbox 360\ONE controllers. Wrapper also translates dinput rumble\FFD calls to xinput calls and restores vibration in any dinput game without any third party driver.
This wrapper is ultimate solution of all of xinput problems, however it can be combined with x360ce to fix some issues even with dinput pads, like rebind of pov to buttons, addition of virtual extra 12+ buttons, rect correction and few more issues that x360ce and other wrappers can not correct. In such case old game would call for XI+ dinput wrapper, which will call for x360ce xinput wrapper, that will call for original dinput, creating dinput>xinput>dinput chain.
Dinput wrapper was tested in Silent Hill 2-4, MGS 2, Manhunt, GTA 3, Need For Speeds, Splinter Cell Chaos Theory, Prince of Persia Sands of Time and other dinput games, and it works like a charm.

Force feedback driver

Some games will still not see the controller as force feedback-compatible even with this driver installed.

OS X

Xbox 360 Driver

ControllerMate

Linux

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

QJoyPad

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

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.


References