libretro / RetroArch

Cross-platform, sophisticated frontend for the libretro API. Licensed GPLv3.
http://www.libretro.com
GNU General Public License v3.0
10.43k stars 1.84k forks source link

Allow user to map physical to virtual controller ports. #1140

Open vaguerant opened 10 years ago

vaguerant commented 10 years ago

I brought this up on IRC last night and there didn't seem to be a solution, so here it is on the issue tracker.

This is an issue which probably primarily concerns the Wii and is probably best explained using a practical example.

A user owns a single GameCube controller and a single Wii Remote. The GameCube controller's physical slot is mapped by RetroArch to a virtual slot, so plugging the controller into slot 2 on the Wii allows the GameCube controller to be used as the player two input by selecting it as the Device on the Input Settings screen. Same goes for slot 1 and player one input, etc.

The Wii Remote, however, poses a problem. Without any physical connection, the Wii Remote is automatically assigned a "slot" when it connects to the Wii. Since there's only one Wii Remote being connected, it's always assigned to "slot 1". If the player wants to use a GameCube controller in slot 1 and a Wii Remote in slot 2, they'll just have to go buy another Wii Remote, sync it in the slot 1 position, then sync the second one in the slot 2 position.

That is to say, if the player wants to use a Wii Remote for a higher slot, they need to own exactly that many Wii Remotes, and if they don't need to actually use those extra Wii Remotes (e.g. because the other slots are filled by GameCube controllers) then the extras literally just have to sit there for the purpose of maintaining sync order.

Ideally, after selecting the Player # in RetroArch, the user would be able to select which slot to associate with that RetroArch player, so the settings page would look like:

Player     #1
Slot       #1
Device     GameCube Controller
Player     #2
Slot       #1
Device     Wiimote Controller

Without this functionality, I'm not really sure how or if 8-player games are expected to work on Wii, since there's no way for a controller to be in a slot higher than 4. As a bonus, it will probably mean players could map Wiimote slot #1 and Classic Controller slot #1 separately, allowing twice as many players per Wii slot. It'd probably be pretty uncomfortable to be tethered to another player, but eh.

--- Want to back this issue? **[Post a bounty on it!](https://www.bountysource.com/issues/5252948-allow-user-to-map-physical-to-virtual-controller-ports?utm_campaign=plugin&utm_content=tracker%2F296058&utm_medium=issues&utm_source=github)** We accept bounties via [Bountysource](https://www.bountysource.com/?utm_campaign=plugin&utm_content=tracker%2F296058&utm_medium=issues&utm_source=github).
orbea commented 5 years ago

@vaguerant Is this still an issue?