Skip to content

Added controller settings#48

Open
HashimHS wants to merge 10 commits intoandrew-ld:masterfrom
HashimHS:controller_settings
Open

Added controller settings#48
HashimHS wants to merge 10 commits intoandrew-ld:masterfrom
HashimHS:controller_settings

Conversation

@HashimHS
Copy link
Copy Markdown

@HashimHS HashimHS commented Apr 3, 2026

This pull request adds controller settings to the system menu. The controller settings window is simple. It lists all detected controllers and allows the user to test the controller in an interactive window. It also allow the user to use Xinput by creating a virual xbox 360 controller.

@HashimHS
Copy link
Copy Markdown
Author

HashimHS commented Apr 4, 2026

I have (with the help of AI) rewrote the gamepad tester and tried to make it more modular to add more gamepad models. The gamepads are identified using the SDL database, then a the relevant controller is visualized. I think the controller settings and the Xinput option adds a big quality of life improvement to this project.

@andrew-ld
Copy link
Copy Markdown
Owner

andrew-ld commented Apr 4, 2026

I don't understand why it's necessary to run Python instead of implementing it entirely in JavaScript.

In general, though, the code seems too specific to me; it should be made more abstract. The database should be a JSON file, and all the GUIs for mapping the controllers should be generated and rendered at runtime from a separate JSON file.

@andrew-ld
Copy link
Copy Markdown
Owner

However, I’m not sure I want to add this feature because I’m certain it would be a hassle to maintain, and I don’t fully understand why it needs to be implemented within this software.

@HashimHS
Copy link
Copy Markdown
Author

HashimHS commented Apr 4, 2026

@andrew-ld Well, the point is, if I have to hop on to another software to change my controller settings for every game, it would defeat the point of having a couch experience.

@andrew-ld
Copy link
Copy Markdown
Owner

@HashimHS The two aspects that concern me the most are:

Having a custom program that reads inputs and maps them to another virtual controller:

In my opinion, this risks becoming an entire sub-project that requires ongoing updates and constant support for new controllers and input systems. For example, I’ve noticed that you often need to set custom SDL environment variables, and I’m sure every few weeks someone will want another variable for a different use case.

The GUI seems too specialized and would require continuous maintenance. Surely, someone will want to add new controllers and customizations, which will further increase its complexity.

@andrew-ld
Copy link
Copy Markdown
Owner

If the GUI can be generalized, and lutris-gamepad-ui is limited to configuring a third-party input mapper, I could accept the PR. However, I don’t want to introduce this functionality if it implements low-level input remapping within this program itself.

@HashimHS
Copy link
Copy Markdown
Author

HashimHS commented Apr 4, 2026

@andrew-ld fair point. Maybe I can look into integrating an API of a third-party tool for remapping the option.

@andrew-ld
Copy link
Copy Markdown
Owner

seems that lutris support antimicrox

@HashimHS
Copy link
Copy Markdown
Author

HashimHS commented Apr 5, 2026

Antimicrox maps only Controller -> mouse and keyboard

I am looking into input-remapper which can do both controller -> mouse/keyboard and controller -> virtual controller.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants