PrettyPrinny icon indicating copy to clipboard operation
PrettyPrinny copied to clipboard

Ability to use both DPad + Left Stick

Open ZeekDaGeek opened this issue 8 years ago • 6 comments

It would be nice if you were able to configure it so that you can use both the DPad and the Left Analog Stick for control, at the moment it seems to be one or the other.

I'm aware that you only inject and edit a few things I don't know if it's possible.

Also it does seem like the newest Game patch breaks some controllers compared to your controller method, thank you for that, I've rolled back to your -X version.

ZeekDaGeek avatar Mar 18 '16 18:03 ZeekDaGeek

Actually it would also be nice to have Arrow keys work as well as WASD. It's odd that it's one or the other.

ZeekDaGeek avatar Mar 18 '16 18:03 ZeekDaGeek

It definitely would be nice. There might be some wiggle room, because when the game is going natively through DirectInput (pre-patch) rather than XInput, the D-Pad and analog stick work together. I believe when they get the latest patch squared away this issue is just going to take care of itself.

It's really only Steam controllers that need the XInput stuff. If you've got an Xbox or PlayStation controller you can disable it. If you _do_ have a Steam controller, just bind the D-Pad to WASD :)

Kaldaien avatar Mar 19 '16 02:03 Kaldaien

I have Arrow Key --> WASD aliasing implemented now, but I need to know what sort of controller you are using for the other part. I may be able to do something about that.

Kaldaien avatar Mar 19 '16 15:03 Kaldaien

I'm an edge case when it comes to the controller I'm using. I'm using a PS3 controller through SCPToolkit with XInput seeing as my 360 controller refuses to work even after the update.

Something for configurations would be nice.

ZeekDaGeek avatar Mar 20 '16 00:03 ZeekDaGeek

I see, do you have XInput emulation support? It's easiest for me just to go through XInput than add a secondary DirectInput codepath.

You would not believe the archaic way this game works, it uses something from the Win 3.x era for joystick input... I found it easier to adapt XInput's simpler interface to what the game uses than DirectInput, so I'd rather go through XInput :)

I am thinking the D-Pad can be made to fire WASD key events, which is basically how it works with Steam controllers with this mod (only that's something that can be done with first-party tools).

Kaldaien avatar Mar 20 '16 03:03 Kaldaien

For ultimate customization would it be possible to make it so in the Config file there's a section of secondary/additional binds? Each option would allow multiple comma separated key binds. For example you have something like this:

[PrettyPrinny.AdditionalBinds]
Up=UpArrow,IHAxis 2
Down=DownArrow,HAxis 2
Right=RightArrow,HAxis 1
Left=LeftArrow,IHAxis 1
...

Or if separating XInput from Keyboard buttons is more favorable then something like:

[PrettyPrinny.AdditionalBinds]
Up=UpArrow
Down=DownArrow
Right=RightArrow
Left=LeftArrow
...

[PrettyPrinny.AdditionalXInputBinds]
Up=IHAxis 2
Down=HAxis 2
Right=HAxis 1
Left=IHAxis 1
...

I don't know what the real keys would be registered as, this is just an example, probably best to use whatever C++ API names the keys have. Also probably would be best to make it so every single button can have additional binds.

Edit: Actually might be better to have the Left Stick bound by the game and allow the DPad to be the suggested thing to rebind?

ZeekDaGeek avatar Mar 20 '16 04:03 ZeekDaGeek