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 talk:Controller

About this board

Not editable


DirectInput tinkering

1
Mirh (talkcontribs)

So.. I was mumbling over Omkiron and the no deadzones problem.

After a hint of one of the ReactOS contributor, I realized: there's nothing actually broken.

Controllers with analog sticks just weren't a thing back then (only a year after Sony started to bundle Dualshocks with PS1).

In March 1999 Microsoft had no kind of recommendation on this side, even if some of their own products had built-in accelerometers that could hardly be kept to 0.

After checking dx3, dx5, dx6, dx7, dx8, dx9 documentation I realized that if any, the CLSID drop made in the latest update DI ever got could explain why Xinput Plus (dinput8.dll, remember?) doesn't work. Older interfaces aren't accessed.

So... I just guess we need a tool that can work with that. And I wonder if the mapper introduced in dx8 also supported remapping in older versions.

trivia: dead zones support was present in the API starting from dx1

EDIT: I wonder why XInput+ claims to support DInput5 and newer (which Omikron indeed is).. but it doesn't work
EDIT2: Ok, it seems there are precisely 4 main version of DirectInput interface: 0x0300, 0x0500 (aforementioned), 0x0700 and 0x0800. And 7 sub-versions, with some caveats
EDIT3: other possibly relevant info
EDIT 4: other hacks

Marioysikax (talkcontribs)

So, basically the "spinning camera" issue is pretty universal thing, but because it's so universal and is 99% of cases caused by controller of some sort, that's why I put it into controller article and simply linked from game specific articles and steam community discussions to controller article. And that is why first note was "if not used, unplug" as that's the most easiest way to fix the issue if you weren't going to use to controller to play that particular title. (though now that the title is changed, all those links are broken)

In some scenarios it would also make menus scroll the menu items automatically (if assumed right stick is also used for menu item selection) or if game had literally zero deadzone on controller, that's why only calibrating may not help. That's why so specific titling as well as it's not exactly controller acting randomly, it's controller acting correctly but showing really specific behaviour with camera because of games controller detection and bindings. This however is problem with many many many titles and usually descriped as camera spinning issue (just google "steamcommunity camera spin" and you can get tons of results for tons of differend games) so that's why I also used it as SEO thing.

Jims video was first one that came to mind to demonstrate the issue clearly without need to record footage myself, latest game that has tons and tons of complaings about camera spinning is Dr. Langeskov, The Tiger, and The Terribly Cursed Emerald: A Whirlwind Heist.

I also somwhat disagree on removing points that why the issue happens and having x360ce mentioned as primarily fix (won't work at all in most scenarios, that's why it was last fixbox). Reason why I think wiki is good place for this kind of thing is for users to actually aknowledge why the issue is happening. "Do it exactly like this" is the youtube video/blogger approach which only leads to user relying on that singlurar, maybe worse/outdated fixing methods they saw/read about, instead of knowing why the thing happens, what the fix does and what to do if it gets broken/outdated. "Do it like this" is also the reason why so many sites and people still recommend MotionInJoy for PS3 controllers.

E: Overall article does seem bit cleaner, even though first reaction to 100+ edits in couple days will be really intimidating.

RaTcHeT302 (talkcontribs)

This is not really related to the post above, but just an editing related thingy.


I'll just add that I simply cleaned it up, I really don't know everything about every single issue so just add back anything which needs to be added back, and move what's bad somewhere else, or remove anything that's bad. I was simply trying to remove those walls of text and I was trying to give a real purpose to the page, I often cannot really test everything in these pages seeing as it would take me too long, or I don't have what I need to, so I simply re-write the existing contents of the pages for the most part, which other users have left behind. I don't have time to read this post right now seeing as I have to do a thingy but I'll read it tomorrow.


Also I only made that general section at the top seeing as I didn't know where to place it, and I called it General seeing as I didn't know how to split up the Windows\Linux thingy so I just added them togheter. So like any other utilities which are available on multiple OSs can be placed under the General section, anything OS specific on the specific OS sections, I wrote this in a rush so idk if it's clear.


TL:DR: I just cleaned the page up, I don't really know what you are talking about, you'd have to speak to the other editors who added these infos I gathered after cleaning the pages, if not then just fix whatever bothers you. I mean I do understand, but I just wish people would stop blaming me for all this stuff, it happens way too often when I cleanup pages, but I kinda expect people to help me a little bit, sorry, I'd like to correct any bad infos but I don't have what I need for some stuff.

RaTcHeT302 (talkcontribs)

-Snip- Wait no I got it wrong, ehh the formatting on these pages sucks.

RaTcHeT302 (talkcontribs)
I also somwhat disagree on removing points that why the issue happens and having x360ce mentioned as primarily fix (won't work at all in most scenarios, that's why it was last fixbox). Reason why I think wiki is good place for this kind of thing is for users to actually aknowledge why the issue is happening. "Do it exactly like this" is the youtube video/blogger approach which only leads to user relying on that singlurar, maybe worse/outdated fixing methods they saw/read about, instead of knowing why the thing happens, what the fix does and what to do if it gets broken/outdated. "Do it like this" is also the reason why so many sites and people still recommend MotionInJoy for PS3 controllers.

I really do not remember what I removed, and that X360CE thing was mentioned by someone else so I left it in, the page was a clusterfuck so I kinda got lost while cleaning it up, so add, whatever needs to be added back. Some other editors left other conflicting infos.

RaTcHeT302 (talkcontribs)

Okay I understand why I'm so god damn confused. I'm sorry but these fixboxes are way too vague and general to anyone else but you. You really need to improve them a little bit, if I didn't find them clear then other users will most certainly not find them clear either. http://i.imgur.com/dhN7CXP.png

RaTcHeT302 (talkcontribs)

Right now I am extremely confused about most of the things you said, I really thing you kinda get sometimes too lengthy with your wiki explanations in the articles, and to the average guy and even me "see game-specific article" is extremely vague, I literally have no idea what to look for if you tell me that, that's a god awful solution\fixbox, I thought that was supposed to be a link originally. The sections are also really weird, I still have no idea how you even wish to approach this, the way you explained it is really confusing to me.

Mirh (talkcontribs)

In 100% of causes it's caused by "whatever thing a game is reading inputs from".

Aside of this, as I was saying here it all depends on what you consider "norm". Game being pedantic or controllers being off-center?

...

Ok, I'm kidding, of course the problem is game working unexpectedly (and while you can play deadzone-aware games with digital controllers, the contrary is awful).
And having no care of deadzones is game-specific then, so absolutely it should be mentioned in each page.

And in Controller page too. For as much as probably no XInput game suffers of this issue (given testing happened with X360 controller).
Still mentioning x360ce (or Durazno, or omikron fix, or this, or whatever) is worth. And same, and even more, in the DirectInput case.

Mirh (talkcontribs)

Ladies and gentlemen, if you could please test this allegedly universal (and for once, open) DirectInput fix, while I'm convicted to this away-from-desktop time... thank you.

RaTcHeT302 (talkcontribs)

Open source controller remapper for keyboard only games

3
Mirh (talkcontribs)

antimicro
What do you think? It's quite good imo and it works even under linux.

Hopefully one day, we'll have just one definitive solution, better than all the others

EDIT: TIL that Joy2Key and JoyToKey are not necessairly the same thing

RaTcHeT302 (talkcontribs)

Does anyone read these talk pages other than me? :v

If it works better than the rest already then cool.

RaTcHeT302 (talkcontribs)

I didn't even notice the "Today I learned I learnt".

RaTcHeT302 (talkcontribs)

Does anyone know what those two thingies do, I have no idea what to write under them seeing as I don't have OS X or an Xbox 360 Controller. Also I can't add propers instructions for the HOTAS thing, no walls of text in the page anymore please, add a fixbox.

Garrett (talkcontribs)

Controller Mate seems to be a usual mouse/keyboard to controller program. I have already moved the Xbox 360 Controller driver to the controller's page.

There probably isn't much to say about HOTAS beyond the limitations that were previously described in the multiple controllers section (which would also apply to other situations like mixing wheels and pedals). A HOTAS controller has standard controller inputs (buttons, axes, hat switches) so will function as expected (there are even some XInput models).

Annoyances with Scarlet's drivers

1
Mirh (talkcontribs)

Emulating Controller input on a Keyboard

5
RaTcHeT302 (talkcontribs)

What's the cleanest and easiest way of doing that. For games such as Metal Gear Rising, where you need a controller to input the Konami Code.

Garrett (talkcontribs)

I used vJoy last time I wanted to do something like this for Windows games.

For DOS games the DOSBox mapper is fine (you'll need to set joysticktype= manually--on auto it will only report a controller if one is actually detected).

RaTcHeT302 (talkcontribs)

From what I understood vJoy needs to install a driver though, I was hoping for something a little bit more portable, I mean if I could remove it on the fly then that would be cool.

Garrett (talkcontribs)

Any normal method would involve a driver or something to have a controller show up. AutoHotkey can send controller inputs but it probably also needs an actual controller to be present for this.

RaTcHeT302 (talkcontribs)

Sorry I was being silly at the time, I was afraid it might be incomptible with some other stuff, I'll have to try this eventually.

"Keyboard to controller input"?

2
Marioysikax (talkcontribs)

What is the point of this section? Was some of it deleted or something? All I see is mention that controller program needs to be elevated if game is elevated, but no info what program we are talking about.

Mirh (talkcontribs)

Check the notes of the edit I did yesterday. You'll see where everything went crazy.

Anyway, indeed, it's just stupid to mention, considering that's one of the things that should be taken for granted.

Fixing the R2/L2 triggers not working in certain games?

5
RaTcHeT302 (talkcontribs)

How could I do that?

Mirh (talkcontribs)

Oh cmon.
Read the other ton of stuff I wrote here.

I guess they are DI games and your XI controller can't pass both. Use XInput+

RaTcHeT302 (talkcontribs)

I tried Xinput plus already, I don't know what I'm doing wrong. The game is Bugs Bunny: Lost in Time. And I can barely read what you write, it's a big mess.

Garrett (talkcontribs)

You need to set up the triggers to work as buttons rather than axes (I don't know which wrappers have this). Another option is to use a controller program (e.g. Xpadder) for the buttons that don't work and the native support for everything else.

Mirh (talkcontribs)

XInput+ can already map triggers as buttons. And even remap them to other axis (as it would be preferable), with none of the normal limitations you would expect from something with "XInput" in the name

DirectInput or Xinput?

5
Mirh (talkcontribs)

How to check?
There are 2 methods:

  • Log game loaded dlls with tools such as process monitor (then check if the game is loading dinput8.dll or/and Xinput_**.dll)
  • Navigate to HKEY_CURRENT_USER\Software\Microsoft\DirectInput and check if the game is listed there (only valid to check dinput though)

Ok, no dice. This is the right way.

EDIT: SpecialK might be more orthodox.

Garrett (talkcontribs)

Games using the XInput API have to call one of its DLLs. Some games/engines use other methods, e.g. Raw Input (as with the Unity engine), so the absence of XInput does not always equal use of the DirectInput API.

Cyanic (talkcontribs)

Perhaps checking imports is better. I use CFF Explorer. See whether xinput*.dll or dinput*.dll is being imported.

Mirh (talkcontribs)

Funnily, even DirectInput only games can have xinput imports. And I guess viceversa too.

Mirh (talkcontribs)

After much, very much philosophical thinking I came out with this.

What do you think?