![]() |
Technical Question - GameController IDs
Dear Members of Team Daidalos,
as you have access to the sourcecode of IL-2: How does IL-2 determine the 4 supported game controllers and how are ID1 through 4 assigned? And how does IL-2 remember these assignments between sessions - or does it? Background to my question: I have 6 game controllers and, as we all know, IL-2 supports only 4. I am looking for a way to move my game controller No 5 into the first four IL-2 recognizes (I feed the two exceeding ones via YaDeLi into IL-2, but e.g. the new Mixture-axis is not supported in DeviceLink). Supporting ForceFeedback, afaik IL-2 must use DirectInput (the old multimedia joystick API with JOYINFOEX structure, joyGetPosEx, etc. didn't). That's why such tools as PJP's JoyIDs do not help (which work on that deprecated API). Using DirectInput, the devices are usually identified by GUIDs, which I cannot find anywhere inside IL-2 configurations. I tried everything[1] short of reinstalling Windows and reconnecting the controllers in a different order. Without some insight I'm now stuck. Artist [1] "Everything" includes, amongst others, such tools as USBDeview from http://www.nirsoft.net |
I think you can use a program like joy to key to combine some of those controllers into on virtual unit and assign that to IL2. Sokol would be better equipped to explain that to you.
|
Hi Bearcat,
thanks, but I know about all these workarounds/possibilities/tools. Hell and damnation, I've even developed one of my own (YaDeLi). Those are neither the problem nor the solution. I need to understand what is going on inside IL-2, hence the "Dear Members of Team Daidalos" Artist |
Quote:
|
Thank you, FC99! That's what I needed to know - now I can write me a tool and experiment.
Artist |
Quote:
|
Windows includes a setting for legacy applications that only support one controller.
in the list of game controllers, click the advanced button, you'll get a drop down menu to select the controller that is always assigned the first ID. Note: Only devices that are plugged in show up in the list, even if a device that isn't plugged in is set as preferred. |
Thanks, but have tried that already. The VRinsight yoke and Razer Nostromo alway hog first listings, shuffling everything up the order. Only by removing the drivers (And my settings for these devices) can I get the order as needed for 1946.
There needs to be some programming with the interface to get this problem sorted. Which is what I am hoping Artist is going to be doing. Or TD will address. Came across this on another forum. For reference... Quote:
|
Hi BrassEm,
thanks for that source. It nicely sums up the problem, tallies with my knowledge as described in the opening post, and (with what FC99 wrote) throws a light on what Oleg's team did not consider, when they implemented DirectInput: The code just takes the first four controllers and does not save/remember their GUID. So any additionally connected controller which messes up that window's internal sequence will in consequence mess up the assignments within IL-2. There are two solutions: Change IL-2's behaviour from using controller one through four identified by their places in the sequence returned by DirectInput->EnumDevices() to identification by GUID. But, and this is a substantial "but", this means quite a lot internal reorganization. And I doubt that there are that many IL-2 pilots out there which do have a problem with a fifth, sixth, or nth controller which cannot be solved with YaDeLi and Autohotkey (except for the new mixture axis, see my signature, TD, will you please?) to merit that effort. The other solution you already expressed hopes in and I in fact had in mind is: Programatically influence the sequence in which DirectInput->EnumDevices() returns the devices, therefore controlling which devices IL-2 'discovers' and in which order. I'll investigate the possibilities, but it will take some time, spare time that is. Artist |
Quote:
|
All times are GMT. The time now is 06:54 PM. |
Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Copyright © 2007 Fulqrum Publishing. All rights reserved.