shiiion / dolphin

Dolphin fork intended to give Metroid Prime Trilogy mouselook controls
Other
466 stars 43 forks source link

[Request] Please make Morph Ball Bomb remappable. #61

Open DarkLink1996 opened 3 years ago

DarkLink1996 commented 3 years ago

When using a controller with A set to Jump and B set to fire through Trilogy's built in swap, trying to set Spring Ball to A results in Bomb and Spring Ball. I have no idea why Nintendo didn't attach Bomb to Fire when swapping the inputs, but it makes fire and bomb inconsistent. If there's a way to patch in a code to set Bomb to B when Trilogy's internal A & B swap is turned on, or otherwise make the bomb button directly remappable, that would be highly appreciated.

EDIT: Somehow, I forgot about Boost Ball. That muddies things even further.

nveleven22 commented 2 years ago

I got around this by not using the Swap Button feature in-game and rather just swapping whatever buttons I needed to change in the Controller Configuration for PrimeHack.

I have

This seems to work pretty well.

But I agree it would be better if there was a separate customizable option for mapping morph ball bomb instead of tying to "fire".

Formedras commented 2 years ago

Using ASM hacks to directly activate Bomb or Boost, while disabling the normal button press method, would be an interesting idea. I'm betting it would be very low priority, though, because the game works fine without doing this. (Alternatively, you could detect whether Samus is in normal or Ball mode, or the menus, and dynamically change controls based on that.)

SirMangler commented 2 years ago

Using ASM hacks to directly activate Bomb or Boost, while disabling the normal button press method, would be an interesting idea. I'm betting it would be very low priority, though, because the game works fine without doing this. (Alternatively, you could detect whether Samus is in normal or Ball mode, or the menus, and dynamically change controls based on that.)

We already do something similar for SpringBall, where we alter the conditional branch for executing the springball function to depend on a primehack flag instead of one supplied by a game. It's a simple patch, the issue is just supporting the patch for 16 revisions of the engine, which is just time consuming. That chore is one of the main reasons no developer has added this feature as of yet.