AoSmiles 0 Posted October 14, 2019 (edited) I just got the stream deck, but I am having issues with Il-2 recognizing the hotkeys. For example: If I make the hotkey "Lshift + F" the game will sometimes get both the combination "Lshift + F" and also the "F" key. I've used the stream deck with DCS World also, but don't have the same problem. I am wondering if anyone here has the same problem and has any fix. thanks! Edited October 14, 2019 by AoSmiles Share this post Link to post Share on other sites
jamison01 10 Posted October 17, 2019 I have a streamdeck, but I haven't gotten enough into programming for il2, but what I have done, I haven't had this problem. Question for you though, are you using the modifier function for the key press, or are you using the multi key input? Share this post Link to post Share on other sites
Tom25briklebritt 42 Posted March 8, 2020 Same problem here. Have you solved it? Hope I can get an answer on how to get rid of it.. Share this post Link to post Share on other sites
AoSmiles 0 Posted March 8, 2020 I never solved the underlying issue with the keybinds. I just ended up rebinding the keys I wanted to use on the stream deck as single key presses (no modifier keys). It was the only way I could use the streamdeck. It worked out, but rebinding all those keys was what i was trying to avoid in the first place. Share this post Link to post Share on other sites
Tom25briklebritt 42 Posted March 10, 2020 After a lot of testing.. It is working now. There is a plugin called "Supermacro". I used it to create new actions. https://github.com/BarRaider/streamdeck-supermacro Share this post Link to post Share on other sites
The_Jug 7 Posted June 9, 2020 (edited) OK, how do i install that supermacro into my streamdeck xl software? Im new at the streamdeck as of today lol. nevermind i figured it out lol Edited June 25, 2020 by The_Jug Share this post Link to post Share on other sites
KStyle 3 Posted June 14, 2020 (edited) Can't say I've noticed this issue but I will keep an eye out for it. Edited June 14, 2020 by KStyle Share this post Link to post Share on other sites
The_Jug 7 Posted July 1, 2020 What supermacro did you use? Share this post Link to post Share on other sites
josephine 5 Posted September 17, 2020 Umm, I am experiencing the same issue with Streamdeck and IL2 - whenever there are more actions on one key (1-switch to gunner position, Ctrl+1 Flare), modifiers do not work most of the time. In this example I bound Hotkey Ctrl+1 on a streamdeck button and out of 10 tries 8x was thrown to a gunner position and only 2x the pilot actually draw the flare pistol. I even tried this supermacro plugin mentioned by Tom25briklebritt, but neither {{LCONTROL}{VK_1}} nor {{CTRL}{VK_1}} worked (all is good in Chrome where Ctrl+1 switches to the first tab). The keyboard layout in Windows is EN, if it makes any difference. IL2 is the only app where I am experiencing this, so I guess the problem is in the game and not in the Streamdeck. Any help? Share this post Link to post Share on other sites
AoSmiles 0 Posted December 27, 2020 On 9/17/2020 at 9:32 AM, josephine said: I even tried this supermacro plugin mentioned by Tom25briklebritt, but neither {{LCONTROL}{VK_1}} nor {{CTRL}{VK_1}} worked (all is good in Chrome where Ctrl+1 switches to the first tab). After getting tank crew I thought I'd try figuring this out again. At first I had no luck with the super-macros, but after testing for a while I think I found the solution. Using the KeyDown:xxx and KeyUp:xxx commands I got this to work: {{KeyDown:RSHIFT}} {{KeyDown:l}} {{KeyUp:l}} {{KeyUp:RSHIFT}} I couldn't get it to work any other way. The letter key between the modifier also has to use the key down/up commands. I also have the "don't treat new line as enter" option on, but it worked with it off so i don't know if that is necessary or will cause any issues. This works! However, if you mistype or forget to add the keyUp command your computer will think that the key is still down and will cause problems. For this reason I might not use this method because it is a hassle to fix sometimes. I'm still hoping that there is a better way. It is weird that IL-2 is the only program that I have this issue with. Share this post Link to post Share on other sites
KpaxBos 45 Posted December 27, 2020 Hello, If I remember correctly the problem is due to the way IL2 reads inputs from keyboard (combination of several keystroke). Some times key combination will work, sometime not. In another software to fix the problem is to introduce a small delay between the two keys exemple for ctrl + a -> LCTL + delay + A Hope it helps. Share this post Link to post Share on other sites
splat_cat_au 0 Posted January 14 (edited) G'day guys. I was having the same issue with Stream Deck not functioning well with IL-2. I eventually decided that I was approaching the problem from the wrong direction, so I decided to go back to my old friend AHK, vJoy and the vJoy library by evilC. I created a simple script that presses a virtual joystick button (1-128) on a virtual joystick. It first creates 128 files whose contents are exactly the same, allowing for future individual customisation of buttons, then it uses the number after the dash in the filename to determine which button to press. Each script is launched using BarRaiders Advanced Launcher. The advantage with this is that you can set 128 buttons (with a little work also include 4 x POV/hat and 8 axes) on 16 possible virtual devices...that's 2048 possible unique buttons and not a single modifier key used. You can name the file vJoy2-1.ahk initially and it will create the scripts needed. Hope it helps. Quote #SingleInstance, force #include <CvJoyInterface> IfNotExist, vJoy2-2.ahk Loop, 128 { FileCopy, vJoy2-1.ahk, vJoy2-%A_Index%.ahk, Overwrite } ; Create an object from vJoy Interface Class. vJoyInterface := new CvJoyInterface() ; Was vJoy installed and the DLL Loaded? if (!vJoyInterface.vJoyEnabled()){ ; Show log of what happened Msgbox % vJoyInterface.LoadLibraryLog ExitApp } ButStr := SubStr(A_ScriptName, 7) StringTrimRight, button_array, ButStr, 3 myStick := vJoyInterface.Devices[2] myStick.SetBtn(1,button_array) sleep 50 myStick.SetBtn(0,button_array) Return ExitApp Edited January 14 by splat_cat_au clarification Share this post Link to post Share on other sites
splat_cat_au 0 Posted January 15 (edited) Actually, this one is easier. ;Filename is "IL2_vJoy.ahk" #SingleInstance, force #include <CvJoyInterface> ; Create an object from vJoy Interface Class. vJoyInterface := new CvJoyInterface() ; Was vJoy installed and the DLL Loaded? if (!vJoyInterface.vJoyEnabled()){ ; Show log of what happened Msgbox % vJoyInterface.LoadLibraryLog ExitApp } myStick := vJoyInterface.Devices[A_Args[1]] myStick.SetBtn(1,A_Args[2]) sleep 50 myStick.SetBtn(0,A_Args[2]) AHK, vJoy and the vJoy library by evilC are required - see AutoHotKey site. BarRaiders Advanced Launcher is also required - see Stream Deck application. Run the single script file from BarRaiders Advanced Launcher and use arguments "[vJoy device #] [button #]" in the field required, eg "1 2" would denote vJoy device 1 and button 2. A space is required between both of the arguments. The example bellow shows arguments for virtual device 2 and button 128. If anyone wants a third argument to control button press duration, first the line with "sleep 50" needs to be changed to "sleep A_Args[3]" and then add the third argument as the amount of time to pause (in milliseconds) between 0 and 2147483647 (24 days) in the arguments field...don't use max value! Have fun. Edited January 15 by splat_cat_au More options Share this post Link to post Share on other sites