MorMund / FO2-Splitscreen

A mod/hack for Flatout 2 adding splitscreen multiplayer.
48 stars 7 forks source link

Problem with steer by keyboard and xbox one controller / FO2-Splitscreen #30

Open AeroSmiter opened 3 years ago

AeroSmiter commented 3 years ago

Hello, i have installed FO2-Splitscreen. I have a mod set up for 2 players (windows) and 2 controllers: 1st window - Keyboard 2nd window - Xbox ONE pad If i click / focus mouse on one of two windows with running FlatOut 2, then only one window can receive information from cotroller that was selected (assigned) for this place (window). How can we steer both windows using assigned controllers?

This same problem when we try to play with 2 xbox one controllers.

MorMund commented 3 years ago

Hi, thanks for reporting this issue. It seems this problem only happens with Xbox One controllers. I can reproduce it with my Xbox One controller, but my 360 controller still works fine. Apparently it is a known issue with the controller drivers https://stackoverflow.com/questions/48748313/using-directinput-with-xbox-one-controller-and-window-focus-on-windows-10 . Using XInput should be possible but not sure how difficult an interop implementation to DirectInput will be.
In short, I wouldn't count on it being fixed soon, unfortunately.

MorMund commented 3 years ago

@R4lco provided a potential workaround in this issue:

Here's the solution for said problem: "open up Device Manager, expand "Human Interface Devices", right click "XINPUT compatible HID device", "Update driver", "Browse my computer", "Let me pick". should be three options, I tested "HID-compliant game controller". if you want to undo the change, same thing but update "HID-compliant game controller" and pick the XINPUT one"

I haven't confirmed this workaround myself and long-term I would like to implement XINPUT support, but maybe it will help you.

R4lco commented 3 years ago

@MorMund I'm not an expert but, doing that process again, I wasn't able to find "xinput compatible HID device" anymore. It may change name for some reason related to drivers, so the new "name" should be something like "xbox controller". The rest of the process is right the same, by the way.