В последнее время сложилась не очень приятная для заядлых геймеров тенденция: у современных игр все чаще наблюдается неполная совместимость со старыми геймпадами. Связано это с внедрением Microsoft нового API – Xinput, пришедшего на смену DirectInput. Xinput создавался специально для фирменного геймпада Xbox 360 Controller и используется во всех играх, выходивших на консоли от Microsoft.
На просторах Интернета можно найти написанные народными умельцами «эмуляторы» Xinput, однако ожидать от них идеальной работы как минимум наивно – как это ни прискорбно, но единственным реальным способом избавиться от головной боли является покупка нового геймпада. Если же подобный «апгрейд» не входит в ваши планы, можно воспользоваться утилитой
Xpadder, позволяющей эмулировать клавиатуру и мышь с помощью геймпада. Таким образом удастся подружить его с играми, не распознающими ваш контроллер (и даже вообще не имеющими поддержки геймпадов), задействовать несколько устройств одновременно (например, в многопользовательском режиме), а также управлять ПК с помощью беспроводного геймпада, превратив его в своеобразный пульт ДУ. Функциональность у Xpadder очень высока, и хотя интерфейс оставляет желать лучшего, разобраться с настройкой не составит особого труда.
Можно играть в игры, где поддержки геймпада нет или она плохо оптимизирована.
Играть с помощью джойстика в эмуляторе, интернет- или DOS-играх.
Играть в многопользовательские игры, где каждый игрок использует геймпад.
Использовать геймпад как пульт управления аудио-видео плеерами с помощью горячих клавиш.
Настроить свой профиль геймпада для браузера или любого Windows-приложения.
Поддержка Windows XP, Vista и новой 7.
Поддержка 32- и 64-битных ОС семейства Windows.
Полная эмуляция всех функций клавиатуры и мыши.
Поддержка до 16 геймпадов одновременно.
Тонкая настройка нажатия любой кнопки и виброэффектов.
Возможность создания индивидуальных стилей оформления для каждого геймпада.
Поддержка игровых рулей, танцевальных ковров, гитар и прочих специфических манипуляторов.
Программа работает в Portable режиме и не прописывается в реестр.
Программа имеет маленький размер и легко поместится на Flash носителе.
Added Windows 8 and Windows Server 8 support
Added TapTime slot
Added Profile menu Recent option and changed Open to use open dialog (suggested by Reboot)
Added option for individual controller files for identical controllers
Added list scrollbar scrolling
Added "Return all windows to primary monitor" tray option
Added "Allow multi-monitor window positioning" option
Added automatic Watch edit to new AutoProfiles (thanks to Primal Fear)
Added automatic indenting of detail dialog values
Added advanced assignment time/distance value saving across advanced assignment window closes (thanks to Primal Fear)
Added program exit option from first run legal dialogs
Added "Show debug settings" option
Added Set naming
Added Set Settings window
Added Set clearing
Added menu to Stick and DPad Settings windows
Added Ok buttons to Profile Settings windows (profile, stick, dpad, trigger, set, mouse)
Added Dialog Help About text to CopyText button
Added Program icon to Dialog Watch list
Added processor debug checkboxes
Added Virtual Controller panel
Added TestAllSubWindows debug button
Added Benchmark engine and tests
Added "Show window design guides" checkbox to Debug page
Added Automatic scanning option and manual scan button
Added Escape key usage to close all windows (except Assignment ones as they depend on keypresses)
Added text entry dialog window
Added Enter key usage in text entry dialog
Added Installation and Debug pages to Settings window for future features
Added Name editing to assignment right-click menu
Added VirtualController list
Added detailed DirectInput CreateDevice error message
Added Profile and Controller version information when pasting/opening data created in a newer version
Added controller icons to Controller list (dynamic icon used if controller file has been loaded)
Added double-click function to lists (currently only enabled in Virtual Controller list to dis/connect)
Added RememberLastSettingsPage option to Debug settings page
Added Windows Game Controller control panel button to Settings>Controllers page
Added scanning help to main window help button
Added "last version run" recognition
Added "Unused" indicators to Set buttons and menus
Added Assignments based on button-hold-duration
Added Assignments on release
Added AutoProfile program selection as well as active window
Added AutoProfile system
Added clicking of AutoAdd Sequence Pauses checkbox text to toggle checkbox
Added controller hiding
Added controller ID to controller list
Added controller settings page auto-selection
Added Controller Transparency theme option
Added Copy and Paste function for controller files via the controller menu (you can now post controller files on forums without needing to zip, upload and link)
Added Copy and Paste functions for controller images
Added copy button to topright of all lists so contents can be easily copied to clipboard
Added Copy Text buttons to all dialogs and the Help and Controller Properties windows to help with debugging and reporting errors (saves having to produce screenshots)
Added CopyText button to assignment advanced schedule
Added Disabled mouse cursor to Assignment image if Editing is disabled due to sequences and the advanced assignment window is not open
Added DistanceZones so sticks and triggers can have different assignments based on distance
Added Explore button to Controller/Profile menus and Language Settings page
Added first-run legal and license dialogs
Added global AutoProfile (de)activation
Added hints to lists so all text can be seen if too long
Added internal controller image compression for future use
Added Japanese translation (thanks to Stimpy)
Added language translation credits in the About box
Added multiple controller watches (one watch autoopens different profiles onto each controller)
Added name-icon background to Controller Settings Stick and DPad direction names
Added pasted data recognition (copying a controller and pasting as profile is now not possible)
Added Pause 0 for pause-free sequences
Added QuickSave icons to controller and profile name buttons
Added rumble animation to controller tabs
Added scrollbars to all lists (they are visual only so the actual bar cannot be dragged yet)
Added support for dual stick settings windows
Added support for stick 1 to be analog if stick 2 was pov
Added support for Windows 7 and Windows Server 2008 (original and R2)
Added syncing of time slots and selected time value
Added Tap or Hold
Added theme button background to controller tab icons
Added threads error detection
Added Unicode support
Added unused language file line check
Added virtual controller option
Converted version system to YYYY.MM.DD (old files are still readable though)
Fixed a bug where tray menu did not show controller file names (reported by ace674)
Fixed a bug where starting with Hold/Release Zone 0.01s caused another to be added in schedule
Fixed a bug where adding a Pause 0.00s did not turn single stage into sequence
Fixed a bug where new cycle was not displayed on button in main window if last cycle was a sequence
Fixed a bug where title bar icon was missing when Xpadder started on Windows Vista/7 with aero theme enabled
Fixed a bug where memory was not freed when deleting a controller family
Fixed a bug where a range check error occurred if any window was off the top or left of the screen when Xpadder closed (thanks to Primal Fear)
Fixed a bug where negative desktop locations could not be saved
Fixed a bug where centering windows on the primary monitor did not take into account the taskbar
Fixed a bug where windows could reappear across multiple monitors
Fixed a bug where irregular multi-monitor positions were not handled correctly
Fixed a bug where restoring minimized window after resolution change did not use last position correctly
Fixed a bug where opening a subwindow on a different monitor to the main window caused the subwindow to use the main window monitor
Fixed a bug where automatic AutoProfile deactivation did not work if Settings window was not open (thanks to Primal Fear)
Fixed a bug where Set Settings window remembered its position using Profile Settings window location (thanks to Primal Fear)
Fixed a bug where Set Settings window used Profile Settings window location when being displayed (thanks to Primal Fear)
Fixed a bug where main window appeared in the bottom-right of screen if previous session started minimized and did not show main window (thanks to mattg568 and Primal Fear)
Fixed a bug where automatic AutoProfile de/reactivation occurred when default profile was non-existant or deactivated (thanks to Primal Fear)
Fixed a bug where virtual controllers could be edited while connected
Fixed a bug where Xpadder sometimes caused an unnecessary shell refresh on startup
Fixed a bug where SetSettings window was not checked when checking for any subwindow being open
Fixed a number of small text bugs
Fixed a bug where tray icon sometimes failed to appear when starting Windows/did not reappear if explorer crashed (thanks to Reboot)
Fixed a bug where new controllers opened command line profiles in order of detection and not in user-defined controller order (thanks to rob)
Fixed a bug where right-clicking tray icon with no controller tabs caused a range check error (thanks to kribby)
Fixed a bug where DisplayNames button did not update status when changing sets (thanks to Mobeeuz)
Fixed a bug where taskbar button did not appear during first-run dialogs
Fixed a bug where running Xpadder while a different Xpadder was showing first-run dialogs did nothing instead of showing error message
Fixed a bug where running Xpadder while a different Xpadder was running and 64bitExplorer was in an Xpadder folder did nothing instead of showing error message
Fixed a bug where running Xpadder while a different Xpadder was running and 32bitExplorer was in an Xpadder folder showed running location as Explorer location
Fixed a bug where INI file saved on program exit even if no changes had been made
Fixed a bug where changing associate files option did not trigger an INI save
Fixed a bug where detecting axis in Controller Settings window caused temporary white boxes to appear at the top of the controller image
Fixed a bug where changing order of tabbed controllers did not refresh tabs if selected controller did not change position
Fixed a bug where copying a controller image immediately after pasting it could cause an error
Fixed a bug where hardware message did not return a value
Fixed a bug where PrintScreen and Pause responded to assignment keypressing (thanks to Primal Fear)
Fixed a bug where closing a dialog window returned focus to main Xpadder window and not top-most subwindow
Fixed a bug where BMP saving header filesize was fixed and not based on size parameters (exported theme images had header errors)
Fixed a bug where pasting controller data displayed [Opening controller] instead of [Pasting controller]
Fixed a bug where Virtual Controller edit button showed Properties icon instead of Edit icon
Fixed a bug where some controller elements (3dconnexion Space Navigator puck for example) could cause an error in Controller Settings window when detecting a stick
Fixed a bug where some drivers reported raw data that caused an error in the Controller Properties window (thanks to kris)
Fixed a bug where selecting another Controller Settings page from the Buttons page while holding a button caused an error (thanks to Primal Fear)
Fixed a bug where automatic scanning did not use the space left by manual scan button for tab usage
Fixed a bug where AdvancedAssignment ScheduleText was listed twice
Fixed a bug where cyan sequence highlight on buttons did not extend when buttontext was displayed (thanks to MadMouse)
Fixed a bug where MouseSpeed "Move Together" checkbox label did not toggle checkbox
Fixed broken dynamic component error system with new dialog display
Fixed a bug where some buttons were 24 high, some 25, some 26
Fixed a bug where Language list did not highlight current language in use when first selecting Language page
Fixed a bug where copying an empty list caused a range check error (thanks to Primal Fear)
Fixed a bug where Controller control names and directions were not checked for excessive length when loading the data
Fixed a bug where Controller list was too wide so it did not end above Properties button
Fixed a bug where CompilerDirectives were not included in DirectX headers (affected exe size)
Fixed unnecessary "Do not clear", "Do not delete", "Do not overwrite" buttons from prompts as "Cancel" provides the same function
Fixed a bug in assignment window where Shift could be constantly added
Fixed a bug in Stick settings windows where stick 2 auto-assign caused an error
Fixed a bug where 2 or more controllers and a higher number of matching AutoProfiles caused an error (thanks to ron5001)
Fixed a bug where a bad device driver that caused an enumdevices exception was assumed to be the result of a debug version of DirectInput (thanks to Andy M)
Fixed a bug where Advanced Assignment Clear button remained in focus after clear dialog was displayed
Fixed a bug where Advanced Assignment Insert, Delete and Clear buttons did not disable when they had no effect (thanks to hiryu)
Fixed a bug where Advanced Assignment window started with focus on a button
Fixed a bug where assignment repeat system could trigger unnecessary profile changed prompt
Fixed a bug where assignment was not shown on button if it was not in the first holdzone
Fixed a bug where AutoProfile recent window list was positioned badly (thanks to Primal Fear)
Fixed a bug where AutoProfiles sorted Profiles with identical watches unnecessarily (thanks to Primal Fear)
Fixed a bug where Chinese text in dialog caused English text on remainder of line to use wrong font
Fixed a bug where closing an Xpadder subwindow triggered the default AutoProfile
Fixed a bug where closing sub-windows via a button was not handled correctly
Fixed a bug where closing sub-windows was not handled correctly
Fixed a bug where Controller and Profile name buttons lost yellow "changes made" highlight if controller was disconnected
Fixed a bug where Controller Image clear button did not update controller tab icon
Fixed a bug where Controller properties axis list had end bracket if axis list was empty
Fixed a bug where CopyText button was badly placed in Advanced Assignment schedule
Fixed a bug where CoreDisplayRefresh thread was not set to highest priority (may have caused slow animations)
Fixed a bug where coreloop read DirectInput for all XInput controllers instead of only current one when dual raw data required (thanks to Primal Fear)
Fixed a bug where coreloop stick angles were not 100% accurate
Fixed a bug where cursor mouse mode no longer worked (sets stick mode and stick diagonals so look/camera filters are either on or off) (thanks to Cable)
Fixed a bug where deleting controllers from controller list caused Range Check Error (thanks to MadMouSe)
Fixed a bug where disabling XInput could cause an error if a controller was using XInput at the time
Fixed a bug where display could flicker on dual-core systems
Fixed a bug where Gradient button style created random colours in some areas (thank to Antonio)
Fixed a bug where Help did not explain missing options in mouse settings window if no mouse assignments are currently assigned
Fixed a bug where instructions to disable debug version of DirectInput were not correct
Fixed a bug where invalid controller files or pasted controller data used the word "profile" instead of "controller" in the error message
Fixed a bug where logging off/shutting down windows was not handled correctly
Fixed a bug where main Assignment Group help described old right-click method (thanks to Cable)
Fixed a bug where main dialog window text was too wide
Fixed a bug where mouse settings window did not update with new options when single mouse direction was assigned
Fixed a bug where pasting a copied Controller image from Chrome did not process magenta Transparency correctly (thanks to Oke_Doke)
Fixed a bug where pasting a profile showed "Opening profile" instead of "Pasting profile" while animation occurred
Fixed a bug where pasting some international text caused a Range Check Error
Fixed a bug where pressing the DPad while scanning for a stick caused an error problems (thanks to Danny)
Fixed a bug where Profile KeyTapTime slider value was hidden (thanks to Cable)
Fixed a bug where Profile Settings button in main window was treated as Profile Name click
Fixed a bug where release type text appeared in language, controller and profile files and in boot exename check dialog
Fixed a bug where save profile dialog showed "opening" text instead of "pasting" when pasting a profile over unsaved profile
Fixed a bug where saving controller file with a new name when controller settings window was open did not update its titlebar with new name
Fixed a bug where selecting item off the bottom of a list caused the list to jump to the top
Fixed a bug where selecting the default location as My Documents was ignored if files were not actually saved to it on the first run
Fixed a bug where simulated keypresses were not released on non-minimized animated exit of program
Fixed a bug where some devices (notably Logitech webcam) caused error when detected (big thanks to blinkFRO for extensive testing)
Fixed a bug where some false lines were processed when creating/checking a language file
Fixed a bug where some international text could be lost when saving a file
Fixed a bug where some language lines were inefficient multiple sentences
Fixed a bug where sorting AutoProfiles reversed entries with matching watches after a watch had been altered (thanks to Primal Fear)
Fixed a bug where stick settings status image diagonals were inaccurate
Fixed a bug where tabbed application (IE for example) tab changes did not appear in AutoProfile watch list (thanks to TBD2009)
Fixed a bug where the associate files option did not remain disabled across restarts
Fixed a bug where the tab image did not resize when more controllers were connected
Fixed a bug where the trigger deadzone value did not update as the trackbar moved
Fixed a bug where tray icon menu showed windows version of controller name instead of user-defined controller file name
Fixed a bug where unlinked controllers did not retain order
Fixed a bug where Update and Windows 2000 XInput help remained from v5.3
Fixed a bug where white parts of the tab icon were transparent
Fixed a bug where Windows options were badly arranged and help did not match order
Fixed a bug where XInput device type listed "GamePad Gamepad" when it should be "GameController Gamepad"
Fixed a profile update memory leak
Fixed an update bug for Dpad, Stick and Trigger images and improved visuals
Fixed other minor bugs
Fixed some English mistakes (thanks to Terrence Hill)
Fixed some slot scheduling bugs
Fixed some theme clashing bugs
Fixed stick settings window layout
Improved core loop memory pointers
Improved Hold and Release Zone scheduling
Improved sequence time mapping
Improved slot type detection
Improved cycle and schedule access in CoreLoop
Improved sequence detection
Improved debug settings page (split into subpages and moved keyboard test here)
Improved file open/save dialog handling
Improved language translation storage and integration
Improved Polish language storage
Improved AutoProfile Edit Watch dialog text (suggested by Primal Fear)
Improved slot bitmap creation
Improved popup menu creation
Improved timing slot visuals
Improved slot edit icons
Removed incomplete Dutch translation
Improved starting while minimized method
Improved boot dialog display method
Improved window positioning prior to starting minimized
Improved controller family linking
Improved controller file change detection
Improved dialog window size
Improved some DirectX structures
Improved dialog schedule when running another version in same location as older/newer INI
Improved DirectX definitions
Improved popupmenu handling
Improved controller naming
Improved tray icons and creation
Improved all window captions that show controller names
Improved dialog details display
Improved Edit Watch dialog caption
Improved screen resolution error text
Improved debuglog time and entry text
Improved exe size by removing built-in help text (the information is now on the forum)
Improved application programming interface
Improved boot and startup sequence
Improved Windows version detection by removing Windows 2000 and earlier detection and fallback code
Improved boot sequence to check Windows version, resolution and DirectX before instance checking
Improved message handling
Improved command line parameter reading
Improved command line help switch processing (handled by new instance only and is not passed to any previous instance)
Improved image locking system
Improved empty set indicators in popup menus (replaced "Unused" text with empty set icon)
Improved controller loop value handling
Improved selected tab display code
Improved subwindow processing to allow easier future subwindow addition without creating bugs
Improved subwindow close method
Improved subwindow existence checking
Improved list creation to prevent future width bugs
Improved stick, dpad, trigger status label updating
Improved compiler directives
Improved panel creation
Improved application manifest
Improved environment variable retrieval
Improved controller image down/upload dialog text
Improved subwindow footer creation
Improved controller data axis loading
Improved BMP header saving
Improved INI window location saving of centered windows by saving blank value instead of 65535,65535
Improved INI window location loading
Improved assignment window footer component locations
Improved subwindow layouts
Improved executable compilation via code optimization, automatic inlining and debug information removal
Improved DLL linking
Improved file access (replaced very old file access code with shiny new file object system)
Improved newer data handling (pasting or opening newer profile or controller data prompts to continue instead of giving an error)
Improved subwindow creation and destruction
Improved dialog window creation
Improved dynamic checkbox and label creation internally
Improved DLL error messages
Improved list selection processing after list contents update
Improved virtual controller detection (uses physical controller detection system for accuracy)
Improved virtual controller capacity (was 1 now 16)
Improved Delete AutoProfile dialog details
Improved INI reading for single numbers
Improved scrollbar visuals for future dragging function
Improved icon handling for future dynamic icons
Improved accessibility of disconnected controller settings and profile
Improved advanced assignment buttons layout
Improved advanced assignment testzone
Improved advanced assignment time value entry
Improved AutoProfile executable watch sort criteria from full path to executable name for a neater list
Improved blank translation handling (reduced exe size)
Improved compiler directives to produce a smaller and faster executable
Improved CoreLoop SubWindow update determinations
Improved coreloop to fill input array faster
Improved cycle handling
Improved flag support for future language re-ordering and addition/removal
Improved internal icon compression (reduced exe size)
Improved key press/release emulation
Improved keyboard scanning system
Improved keyboard test timing, and display
Improved language file rating check
Improved language line id length (reduced exe size)
Improved language list ordering (based on popularity instead of alphabetically by English)
Improved language loading memory usage
Improved language update system (reduced exe size)
Improved main settings window closure event
Improved new language file creation
Improved screen update system
Improved set selection handling
Improved slot processor
Improved slot scheduler
Improved slot time selection
Improved stick deadzone main display (red buttons only appear when relevant stick subwindow is open)
Improved timings (process and threads now run in real-time)
Improved window dimensions (new minimum resolution is 600x400)
Improved Windows service pack detection on non-English systemsAdded "installation" language selection and instant language selection
Improved Windows version information layout (in About box)
Improved XInput version descriptions (in About box)
Increased maximum automatic controller links from 32 to 255
Increased maximum languages from 16 to 255
Optimized Advanced Assignment Cycle help
Optimized all sub-windows
Optimized executable code by using latest compiler
Optimized for Windows XP and higher
Optimized Xbox 360 properties text display
Replaced "Download v?" for binary files with conversion email instruction
Replaced all "Details" buttons with the more conventional "Properties" text
Replaced capital letters in settings help windows with square brackets (not all alphabets have case distinction)
Replaced confusing save icons with traditional disk icons
Replaced external language files with built-in versions - Zip distribution is no longer needed
Removed Language Update button to promote editing archived language file not own local copy
Removed old binary recognition for controller and profile files
Removed update system and all internet-related code