No announcement yet.

Layout/scheme customization for generic controllers

  • Filter
  • Time
  • Show
Clear All
new posts

  • Layout/scheme customization for generic controllers

    Sorry for lengthy post ... tried to make it as short as possible ... this is best i could come up with

    Gamepad commonly used with PC are either:
    * X-input
    * Switch
    * DualShock4
    * DualShock3

    and ReWASD supports them all. If you have licensed/official controllers for these, then ReWASD handle them beautifully.

    The problem are third party controllers that support several of those protocols so that they can be used with multiple consoles and PCs. Those controllers have one physical button layout/label ... yet they can connect with protocols that have different button layout/label. For example controller with X-Box layour/label connects to PC as Switch controller. Manufacturers can do this in 2 ways

    1. can map buttons according to label
    xy becomes Y(y) X
    ab becomes B(b) A(a)

    2. can map buttons according to physical location
    xy becomes Y X(y)
    ab becomes B(a) A(b)

    Case 1 is easily corrected with "Advance Mapping" feature of ReWASD where you can swap buttons.

    As it stand now, Case 2 cannot be handled by ReWASD. While functionally controller still works and ReWASD can still do its magic, this renders overlay for mapping and description pretty much useless for this case.

    But this should not stop ReWASD. After all it can RePresent controller as Virtual Controllers. It can ReMap buttons to any other input or combination of inputs. It can ReLayer controller in game with Shift and Slots.

    So here is first suggestion, why not ReLabel buttons so we can label our buttons to match our controllers ... whether if label mismatch is due to different protocol we choose to connect to PC or choice of manufacturer (here is 1234 layout or simply because we like to customize our buttons the way we like (here is DS4 with ABXY

    Simply allow us to change Label similarly to how we change Description ... then use that Label on controller picture and remap/description overlays.

    Some controllers have Left Stick and D-pad same as Dualshock ... yet connect as X-input ( So here is second suggestion, why not give us option to ReSwap Left Stick and D-pad.

    With above ... you basically can cover most third party controllers that connect to PC with X-Input, Switch, or DualShock (without having those controllers physically with you ... assuming manufacturers correctly implemented those protocols). There are two more common controller layouts:

    1. Saturn/Genesis style (,

    2. Fight sticks (

    So here is third suggestion, why not add these 2 layouts to what you have now (Steam, DS3 , DS4, Switch, XBox) and give us option to switch between them. As long as controllers do proper X-Input, Switch, or DualShock ... it does not matter how manufacturer choose controller "labeling scheme" ... with "Advance Mapping" and suggested ReLabel feature ... we can easily match ReWASD represenation of controller with actual controller.

    And this pretty much will cover all controllers that do X-Input, Switch, or DualShock (what's left are steering wheels and flight sticks ... for which there are no real common layouts)

    Thank you for your time reading this

  • #2
    Hey there!

    Thank you for your suggestion. Yes, if reWASD could change the labeling on our pictures, it should make the usage of your GameSir controller much better. Interesting idea, and we will certainly discuss it with a team and let you do some customization in the GUI. Not sure if it happens soon, stay tuned for the updates


    • #3
      Thank you for considering ... if it makes any difference ... i dont mind paying for this feature separately.

      I have also 8bitdo m30 ... and plan to get fighting sticks ... for my complete man cave gaming experience ... while i can certanly make them work with ReWASD... overlay for mapping and description will not work with them ... thats why at the moment i am not getting "Advance Mapping" ... it does not completely solve problem i have (rapid fire and slots are on my list to test though to see how it can fit into what i want)

      Whethet this is implemented or not (hopefully it will ... maybe with some time) ... i will still use ReWASD ... its great ... so continue good work


      • #4
        We do our best for our users with every update.

        Your suggestion has been taken into account in any case, thanks again for that.

        Keep for updates!


        • #5
          Did some testing with "Advance Mapping" to see if can swap button A with button B when connecting Switch style controller as X-Input. This is how it connects:

          Click image for larger version

Name:	Switch-as-X-Input.jpg
Views:	618
Size:	58.1 KB
ID:	228965

          This is what I wanted to end up with

          Click image for larger version

Name:	desired-result.jpg
Views:	620
Size:	55.3 KB
ID:	228966

          Gamepad mapping (part of Advance Mapping) able to do this but mapping overlay was not something i expected

          Click image for larger version

Name:	Gamepad-Mapping.jpg
Views:	571
Size:	163.6 KB
ID:	228967

          Then I realize this was not the feature I was looking for. This features was more for mapping buttons to controllers' own buttons for personal preference. If I tried to use this feature to adjust layout/scheme in ReWASD for one weird X-Input pad, I would screw up layout/scheme of real X-Box controller too.

          So I guess the features I am looking for is ... configuring each controller layout separately from current ReWASD functions ... then use that configured layout with ReWASD functions


          • #6
            Yes, I agree that the new layout (the ability to choose the labeling for the physical button) will do the trick. Hope we will be able to implement it in one of the next releases, but I can't promise anything right now.


            • #7
              This is example of my intended use case so hopefully you understand better what I hope to achieve.

              Referring to attached picture. I have 8bitDo M30. Got it for emulating Sega Genesis/Saturn.

              M30 can connect to PC as either Nintendo Switch or X-Input. In X-Input M30 does following:

              [Physical] -> (X-Input)
              [ABXY] -> (ABXY)
              [Z] -> (RB)
              [C] -> (RT)
              [L] -> (LB)
              [R] -> (LT)

              For Case 1, this is actually perfect for Genesis/Saturn emulator ... as it is how I would map real XBOX controller to Genesis/Saturn emulator (incidentally this is also perfect for 6-button fighting games like Street Fighter, Killer Instinct 1/2).

              M30 can be not too bad for Nintendo SNES emulation too - Case 2. However, M30 [Physical] -> [X-Input] does not really match how i would [X-Input] -> {Emulator}

              (X-Input) -> {Emulator}
              (ABXY) -> {ABXY}
              (RB) -> {R}
              (LB) -> {L}

              So I need to change M30 [Physical] -> (X-Input) ... [R] -> (RB) ... and probably change [L], [C], [Z] to something useful too

              As mention earlier, doing it with "ReWASD mapping" or "Gamepad mapping" will affect and screw up layout/scheme of all other controllers.

              So changing [Physical] -> (X-Input/Switch/DS) needs to be done per controller ... and per "Choose game" ... such that mapping and description overlay stay relevant for each controller

              Click image for larger version

Name:	use-case.jpg
Views:	685
Size:	174.7 KB
ID:	228999


              • #8
                Thanks for the detailed description. We'll see what we can do.


                • #9
                  Actually ... after carefully considering what ReWASD can do ... i think I came up with solution (unless you can point shortcoming of this solution).

                  My problem was - using "ReWASD mapping" or "Controller mapping" for one controller caused this "mappings" to apply to other controllers (aka fixing one controller screw up with other controllers).

                  The solution was obvious - using "ReWASD mapping" or "Controller mapping" so it did not affect other controllers. And thats what I suggested. Except ReWASD already has this feature in Slots.

                  So I left my normal configuration on Slot 1 and had my normal controllers apply Slot 1 by default. I then put my weird Saturn/Genesis configuration on Slot 2 and had it apply Slot 2 by default. Disabling hotkey for slot switching made sure I don't accidently jump between slots.

                  Only thing that is left is "the ability to choose the labeling for the physical button" so I can assign actual labels on my controllers ... and it would be reflected in "Description Overlay" (something like "Z - Heavy Kick", "C - Heavy Punch")

                  PS. on Trial for Slots ... if no problem during trial - its shopping time


                  • #10
                    Originally Posted by tij View Post
                    (unless you can point shortcoming of this solution)
                    I didnt understand how ReWASD works ... dont even need to use 2 slots:

                    1. create config file for generic controllers ... create config file for 8bitDo M30
                    2. then assign those config file to appropriate controllers

                    WOW ... functional, simple, and elegant

                    PS. Only thing that is left is "the ability to choose the labeling for the physical button" so I can assign actual labels on my controllers ... and it would be reflected in "Description Overlay"

                    Click image for larger version

Name:	wow1.jpg
Views:	605
Size:	57.4 KB
ID:	229038
                    Click image for larger version

Name:	wow2.jpg
Views:	536
Size:	58.7 KB
ID:	229039


                    • #11
                      That is truly an elegant solution, and it is enough to use different configs for the different devices, yes Great to know that the part of your request could be achieved already!

                      I would recommend that you take a look at Autodetect feature (it is a part of basic license too). Once it is adjusted, reWASD applies a certain config to the certain slot of the certain device when some app is in focus. Even if you have one game and you want to play it using different devices, you could adjust it so each time the game is in focus, all the controllers have the right config applied. Hope it will be useful!

                      As for the button labeling — the feature is added to our to-do list. Will do our best


                      • #12
                        It's two years later, but I still see no option to do a simple re-labeling of the buttons? Do I miss something?


                        • #13
                          Originally Posted by Earthrise View Post
                          It's two years later, but I still see no option to do a simple re-labeling of the buttons? Do I miss something?
                          Unfortunately, as far as I know, you still can`t do that.