Comments (6)
I do apologise. Your code works brilliantly. It works for everything except Retrobat - Retrobat (using EmulationStation) seems to totally ignore DEVREORDER for some reason. I am trying to get to the bottom of it. I have no idea why it does this. But DEVREORDER is working very well on everything except Retrobat - thank you for this excellent piece of code.
from devreorder.
Thanks for the complement, and sorry to hear it's not working in one critical app on your system. Many users have reported the odd app or game not being affected by devreorder, even after installing it system-wide, and so far I haven't been able to find a method to support them.
Just to get simple explanations out of the way, Is it possible that Retrobat / EmulationStation is trying to read your controllers using XInput instead of DirectInput? I know that's unlikely for PS4 controllers, since they usually don't appear as XInput controllers without extra software such as DS4Windows, but I thought it would be good to eliminate that possibility first.
from devreorder.
Hi Brian, thank you for the help. This is something I will look into. I confess to not knowing much, but I am eager to learn. I believe Retrobat/Emulation station uses SDL2 to manage inputs? Does that make any sense?
I have also posted here on the Retrobat forum if this is any help; https://retrobat.forumgaming.fr/t947-retrobat-emulation-station-overriding-retroarch-controller-settings#5399
Retro gamers love having a million different controllers and inputs to make everything feel that little bit more authentic, so I think DevReorder and Retrobat would almost be the killer app for retro gaming if I can get it working together. Add in the emergence of Windows based handhelds like the Steamdeck and it becomes even more important, especially if the user wishes to deploy those devices as 'home console' type devices as well.
from devreorder.
It using SDL2 makes sense, yes, and I took a quick peak at the source code for EmulationStation to see if I could gleam anything from it, but from a cursory glance I'm not sure if it's using DirectInput or XInput. SDL2 supports both, but I think it's DirectInput, and I believe other games that use SDL have worked with devreorder before.
Since you're eager to learn, I can add that DirectInput and XInput are the two main ways that games read input from a controller. DirectInput is the older way that's still supported by Microsoft, and it allows reading buttons, joysticks, d-pads and such from a very wide variety of controllers with any number of layouts. XInput is meant specifically for controllers that have the same kind of layout as an Xbox controller, and not every controller supports it. XInput tends to work better with controllers that do support it, since their order is usually easy to predict -- the first controller that gets turned on is controller 1 consistently. DirectInput is the one that has the issue with everything always getting mixed up and out of order.
Hopefully someone in the forums can give you some good advice on how to get things working. If you do find something, I encourage you to share it here since I'm hoping the issues here can double as a sort of knowledge base, for when others have the same problem as you.
from devreorder.
Hello, I have a question. If I am running multiple games, can I use different controllers to control different windows
from devreorder.
@woshiagan If you have a question that's unrelated to this issue, please open a new issue. I think what you want is possible and I'd be happy to discuss it in the appropriate place.
from devreorder.
Related Issues (20)
- XInput Reordering HOT 2
- Tried system wide approach, but still not having any effect? HOT 2
- Easy Anti-Cheat dislikes devreorder's dinput8.dll (in both the game directory and system-wide) HOT 5
- Alternative to minhook HOT 2
- NFS: Porsche Unleashed crashes on race load HOT 4
- Usage with other wrappers HOT 2
- Shuffle order with the same VID and PID numbers devices HOT 16
- DeviceLister doesn't work HOT 1
- Programs that used to, now won't start with System-Wide Installation HOT 7
- Using with Star Citizen HOT 1
- feature request: custom path for config file HOT 3
- Razer Huntsman V2 Analog HOT 5
- TP issues HOT 1
- Feature Request: Device Lister output to stdout or txt file HOT 1
- I must be doing something wrong HOT 18
- Less invasive alternative to a system-wide installation HOT 7
- Stopped working on Windows 11 HOT 1
- Does not work to hide joystick from Steam/Rocksmith2014 HOT 2
- Support ASI loader HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from devreorder.