Giter Club home page Giter Club logo

Comments (6)

IstanbulRed avatar IstanbulRed commented on July 30, 2024

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.

briankendall avatar briankendall commented on July 30, 2024

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.

IstanbulRed avatar IstanbulRed commented on July 30, 2024

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.

briankendall avatar briankendall commented on July 30, 2024

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.

woshiagan avatar woshiagan commented on July 30, 2024

Hello, I have a question. If I am running multiple games, can I use different controllers to control different windows

from devreorder.

briankendall avatar briankendall commented on July 30, 2024

@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)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.