Skip to main content

Native Emulator Controller Mapping Management šŸŽ®šŸ§©

šŸ“‹Summary

Introduce a robust controller mapping system within LaunchBox that allows users to configure and manage button layouts per emulator and platform—right from LaunchBox itself. This would make controller setup more visual, more intuitive, and more centralized across different emulators.


ā—Problem

One of the most frustrating parts of setting up emulators is configuring consistent, accurate controller mappings—especially for users with multiple types of controllers (e.g. DualSense, arcade sticks, Xbox controllers). Each emulator handles configuration differently, often requiring manual editing of config files or navigating clunky UI tools. It’s time-consuming, error-prone, and difficult to maintain across platforms.


šŸ’”Proposal

Allow LaunchBox to manage controller configurations across supported emulators with the following capabilities:

  • Associate each controller with a visual reference image (e.g., DualSense, Xbox, arcade stick)

  • Configure button mappings visually by dragging/dropping or selecting between the emulator/controller layout and the original platform layout (e.g., SNES, Genesis, etc.)

  • Store and apply these mappings in the background by editing emulator config files

  • Display a real-time mapping diagram during gameplay, accessible from the pause menu via a new ā€œControlsā€ option

  • Support output of control diagrams to a secondary screen (perfect for cabinet or dual-display setups)

This wouldn’t replace emulators’ native input settings but would act as a unified layer on top, streamlining the process.


āœ…Benefits

  • Provides a visual, user-friendly method for setting up controller inputs

  • Ensures consistency across emulators without needing separate setup per platform

  • Greatly reduces setup time and improves accessibility for newer users

  • Makes it easy to manage multiple controllers with unique layouts

  • Enhances the in-game experience with quick-reference control maps, especially helpful for retro games with unfamiliar button schemes

  • Perfectly complements multi-screen setups or arcade builds by showing mappings in real-time šŸ•¹ļøšŸ–¼ļø

Status: Open To Community3 comments

Log in to comment and vote

Comments3

  • AstroBob changed status to Open To Community
    Team•

    Apr 20, 2025

    Pinned

    Hi there!

    Thanks so much for submitting this request and for taking the time to explain your use-case — that context is always super helpful. I’ve gone ahead and fleshed out the main idea using the info you provided, and I’m opening it up to the community for further discussion and feedback.

    Note, that this would compliment Individual Controller Mappings for LaunchBox & Big Box Navigation , although this request is more focused on having LaunchBox manage controller profiles for specific emulators, rather than LaunchBox Navigation

    Feel free to chime in with any extra thoughts, examples, or edge cases you think might be relevant!

    Cheers,
    The LaunchBox team

    • gboava

      •

      Apr 20, 2025

      That is perfect! Thanks!!

  • gboava

    •

    Apr 20, 2025

    Controller and Button Mapping Management

    One of the most challenging aspects of configuring emulators is setting up good button mappings for controllers, especially when the user owns more than one type of controller. I'm thinking of a new functionality for LaunchBox that may be complex to implement, but would be a dream for many users. I'll try to explain it in steps:

    1. In LaunchBox, the user could associate a default image for each of their controllers (for example, LaunchBox could include images of the DualSense, a generic XInput controller, an arcade stick, etc.).

    2. LaunchBox would offer the ability to configure button mappings for each Emulator and Platform association. For instance, when configuring the Super Nintendo platform, LaunchBox would display both the SNES controller layout and the user's controller, allowing for an easy visual mapping process. LaunchBox would manage these mappings within the emulator's config files. While this may not be as necessary for Retroarch — which already handles controller mapping well — it would be extremely valuable for other emulators (like MAME).

    3. When launching a game, LaunchBox could generate in real-time an image showing the mapping between the user's controller and the system's original controller layout. This image would be accessible through the pause menu via a new option called "Controls".

    4. Combined with the multi-screen management feature, the control layout image could be displayed on a secondary screen.