I had Richard42 create a svn branch for me to use to make improvements to the blight_input plugin. Here is a list of the changes I'd like to make:
#2 is to address the fact that multiple inputs (joystick button, keyboard key, mouse button, etc), can be mapped to a single n64 controller input at the same time. This seems confusing and not user-friendly. The input profile system (#3) is meant to be a better way to provide this kind of flexibility.
#3 is to allow the user more flexibility in defining their inputs. You'll be able to save a certain set of mappings as an input profile. There's also been discussion of creating profiles that can be assigned to certain joysticks (not everyone has an n64 controller w/ adaptoid), or profiles that can be assigned to certain games. I'm going to start simple and make it so you can setup a config similar to today's blight_input config and then save it as a profile. Then, ideally, mapping input profiles to games would be done via the rom browser. Mapping input profiles to different joysticks might require a change in the config dialog interface...I'll post more on this when I get there.
For #4, now that I think about it...I'm not sure if this function is something that really belongs in blight_input. I don't want to change the Controller plugin API for something that seems specific to mupen64plus and not the n64 itself, so maybe it'd be better to make this part of the general mupen64plus config dialog. The only downside to this is then the code can't prevent a user from mapping the same controller input to both a emu hotkey and a n64 controller input, which could be kind of annoying for the user, but maybe it's not a huge problem. I'm sure they'd figure it out quickly.
Any feedback on these ideas would be appreciated. Are there additional items you'd like added to the list?
- Create gtk version of the config dialog.
- Change config so only one input is mapped to each N64 controller button/axis.
- Add support for different input mapping profiles.
- Allow mapping of emulator hotkeys (exit, pause, fullscreen, etc) to joystick buttons.
#2 is to address the fact that multiple inputs (joystick button, keyboard key, mouse button, etc), can be mapped to a single n64 controller input at the same time. This seems confusing and not user-friendly. The input profile system (#3) is meant to be a better way to provide this kind of flexibility.
#3 is to allow the user more flexibility in defining their inputs. You'll be able to save a certain set of mappings as an input profile. There's also been discussion of creating profiles that can be assigned to certain joysticks (not everyone has an n64 controller w/ adaptoid), or profiles that can be assigned to certain games. I'm going to start simple and make it so you can setup a config similar to today's blight_input config and then save it as a profile. Then, ideally, mapping input profiles to games would be done via the rom browser. Mapping input profiles to different joysticks might require a change in the config dialog interface...I'll post more on this when I get there.
For #4, now that I think about it...I'm not sure if this function is something that really belongs in blight_input. I don't want to change the Controller plugin API for something that seems specific to mupen64plus and not the n64 itself, so maybe it'd be better to make this part of the general mupen64plus config dialog. The only downside to this is then the code can't prevent a user from mapping the same controller input to both a emu hotkey and a n64 controller input, which could be kind of annoying for the user, but maybe it's not a huge problem. I'm sure they'd figure it out quickly.
Any feedback on these ideas would be appreciated. Are there additional items you'd like added to the list?
Last edited: