Jump to content

DCS-ExportScripts for Stream Deck Community Github Library


Recommended Posts

Hey guys, I noticed the F-15E script crashed midway through, which made some exports unavailable. Fixed it, PR opened. Problem was located in the UFC functions, called a method on a nil object.

On another topic, for those who would want some StreamDeck icons for the Strike Eagle's master modes, I quickly made some. The archive is attached, and here is a screenshot of how they look:

image.png

F-15E master mode SD icons.zip

  • Like 1
Link to comment
Share on other sites

2 hours ago, ExoLight said:

Hey guys, I noticed the F-15E script crashed midway through, which made some exports unavailable. Fixed it, PR opened. Problem was located in the UFC functions, called a method on a nil object.

Thanks.
You may also want to change the index (for the UFC screen data) to 9 instead of 8, as in 

PILOT_UFCa(ExportScript.Tools.getListIndicatorValue(9))

I've done it in my fork.

Zip - VEAF :pilotfly:

 

If you want to learn, talk and fly with french-speaking friends, the Virtual European Air Force is here for you ! Meet us on our Discord and our forum

If you're a mission creator, you may want to check the VEAF Mission Creation Tools (and its GitHub repository) a set of open-source scripts and tools that make creating a dynamic mission a breeze !

Link to comment
Share on other sites

12 hours ago, davidp57 said:

You may also want to change the index (for the UFC screen data) to 9 instead of 8, as in 

Thanks, fixed. Also adjusted the WSO UFC's indicator index from 20 to 18, although I don't think there's ever a case where pilot and WSO's UFC have different states, so having a second export for that might be useless?

Link to comment
Share on other sites

The "legacy" Git repositories for DCSExportScripts are now almost dead - they rarely update - and the one I chose to fork (S-D-A) has not seen any updates for 4 years.

Don't you think it's time to start a new repo, or designate one (maybe ExoLight's, which seems on the bleeding edge) as the "master of masters"? 

Is there a more up-to-date "official" repo?

Zip - VEAF :pilotfly:

 

If you want to learn, talk and fly with french-speaking friends, the Virtual European Air Force is here for you ! Meet us on our Discord and our forum

If you're a mission creator, you may want to check the VEAF Mission Creation Tools (and its GitHub repository) a set of open-source scripts and tools that make creating a dynamic mission a breeze !

Link to comment
Share on other sites

Oh my, sorry Bailey I forgot that we were hijacking your thread ^^

Your repository should be the master, you're the one who reignited this torch. I don't know why I chose to fork S-D-A as your repo is more active. I'll change this.

Zip - VEAF :pilotfly:

 

If you want to learn, talk and fly with french-speaking friends, the Virtual European Air Force is here for you ! Meet us on our Discord and our forum

If you're a mission creator, you may want to check the VEAF Mission Creation Tools (and its GitHub repository) a set of open-source scripts and tools that make creating a dynamic mission a breeze !

Link to comment
Share on other sites

@Bailey I submitted a PR for the F15E UFC changes.

Zip - VEAF :pilotfly:

 

If you want to learn, talk and fly with french-speaking friends, the Virtual European Air Force is here for you ! Meet us on our Discord and our forum

If you're a mission creator, you may want to check the VEAF Mission Creation Tools (and its GitHub repository) a set of open-source scripts and tools that make creating a dynamic mission a breeze !

Link to comment
Share on other sites

And I made another one to optimize the AH64D export (changed my life, this one); see this post by my friend Ian.

Zip - VEAF :pilotfly:

 

If you want to learn, talk and fly with french-speaking friends, the Virtual European Air Force is here for you ! Meet us on our Discord and our forum

If you're a mission creator, you may want to check the VEAF Mission Creation Tools (and its GitHub repository) a set of open-source scripts and tools that make creating a dynamic mission a breeze !

Link to comment
Share on other sites

@Bailey and @davidp57 are you able to help with Ka50_3.lua? I suspect there is some very trivial issue with the lua-file. KA50 Streamdeck profile works. However, the buttons don't populate in the streamdeck-plugin, just like in F-15E. Thus, modifying the profile is impossible due to not knowing Device ID and Button ID.

With F-15E I managed to make streamdeck profile using the F-15ESE.lua -file. Whoever did the file did a great job by adding both Device ID and Button ID as comments to the lua-file. Using these numbers it is possible to make profile without streamdeck-plugin populating the data.

Unfortunately, in ka50.lua there is only device ID and the button ID is missing. Therefore, creating a profile is impossible.

I would fix the lua-file myself but it's just slightly beyond me since I don't know how to get logs whats happening and what is not. I wonder how people created these lua-files in the first places? I suspect they used some code snippet that fetches the data from devices.lua, mainpanel_init.lua, and clickabledata.lua. And not putting together all lines manually.

Link to comment
Share on other sites

46 minutes ago, Eraseri said:

Unfortunately, in ka50.lua there is only device ID and the button ID is missing. Therefore, creating a profile is impossible.

I don't have BS3 installed, so I can't do it for you, but you could probably just copy paste command_defs.lua in a Lua interpreter and get the number associated to whatever command you need. Something like "print(device_cmds[your_cmd])". You could also dump all of the table, if I remember correctly:

for key, value in pairs(device_cmds) do
	print(key.." => "..value)
end

Of course, having the StreamDeck plugin fixed would be best, but I have no idea how to do that, and that bug seems to have existed for a while.

  • Like 1
Link to comment
Share on other sites

1 hour ago, Eraseri said:

@Bailey and @davidp57 are you able to help with Ka50_3.lua? I suspect there is some very trivial issue with the lua-file. KA50 Streamdeck profile works. However, the buttons don't populate in the streamdeck-plugin, just like in F-15E. Thus, modifying the profile is impossible due to not knowing Device ID and Button ID.

Assuming you're working with the XL profile (DCS site down for me rn for some reason) - would you be willing to move things around to 5x3 pages? Doesn't have to be in any sort of order, I can tidy it up into something functional for myself and maybe even others. 

Really wish SD would give a storage area, or even allow XL size on the phone app. I've asked them a dozen times.

  • Like 1
Link to comment
Share on other sites

3 hours ago, davidp57 said:

@Bailey I submitted a PR for the F15E UFC changes.

Can you do that again? I have been away from git for a while so 2 changes to the same file from different people got me confused. (Thank you)

2 hours ago, Eraseri said:

@Bailey and @davidp57 are you able to help with Ka50_3.lua? I suspect there is some very trivial issue with the lua-file. KA50 Streamdeck profile works. However, the buttons don't populate in the streamdeck-plugin, just like in F-15E. Thus, modifying the profile is impossible due to not knowing Device ID and Button ID.

With F-15E I managed to make streamdeck profile using the F-15ESE.lua -file. Whoever did the file did a great job by adding both Device ID and Button ID as comments to the lua-file. Using these numbers it is possible to make profile without streamdeck-plugin populating the data.

Unfortunately, in ka50.lua there is only device ID and the button ID is missing. Therefore, creating a profile is impossible.

I would fix the lua-file myself but it's just slightly beyond me since I don't know how to get logs whats happening and what is not. I wonder how people created these lua-files in the first places? I suspect they used some code snippet that fetches the data from devices.lua, mainpanel_init.lua, and clickabledata.lua. And not putting together all lines manually.

Not impossible. Would have to put them in by hand as a workaround. Yes, there is code to interpret those files. Modules with multiple versions (C101, F1, etc) tend to break this feature. 

  • Like 1
Link to comment
Share on other sites

9 minutes ago, Bailey said:

Not impossible. Would have to put them in by hand as a workaround. Yes, there is code to interpret those files. Modules with multiple versions (C101, F1, etc) tend to break this feature. 

Do we know where the problem comes from in StreamDeck DCS Interface exactly? Is it getting confused somewhere in parsing, and if so, isn't there a way to patch it so it handles these edge-cases rather than hard-coding them?

Link to comment
Share on other sites

36 minutes ago, Bailey said:

Can you do that again? I have been away from git for a while so 2 changes to the same file from different people got me confused. (Thank you)

Not impossible. Would have to put them in by hand as a workaround. Yes, there is code to interpret those files. Modules with multiple versions (C101, F1, etc) tend to break this feature. 

Done; I merged the conflicting file and did a new commit.

https://github.com/asherao/DCS-ExportScripts/pull/13/

Zip - VEAF :pilotfly:

 

If you want to learn, talk and fly with french-speaking friends, the Virtual European Air Force is here for you ! Meet us on our Discord and our forum

If you're a mission creator, you may want to check the VEAF Mission Creation Tools (and its GitHub repository) a set of open-source scripts and tools that make creating a dynamic mission a breeze !

Link to comment
Share on other sites

4 hours ago, ExoLight said:

I don't have BS3 installed, so I can't do it for you, but you could probably just copy paste command_defs.lua in a Lua interpreter and get the number associated to whatever command you need. Something like "print(device_cmds[your_cmd])". You could also dump all of the table, if I remember correctly:

for key, value in pairs(device_cmds) do
	print(key.." => "..value)
end

Of course, having the StreamDeck plugin fixed would be best, but I have no idea how to do that, and that bug seems to have existed for a while.

Thank you for nudging me in the right direction. The code snippet didn't help me a bit. However, it got me to open VSCode and worked my way with ChatGPT to extract the data.

2 hours ago, Bailey said:

Can you do that again? I have been away from git for a while so 2 changes to the same file from different people got me confused. (Thank you)

Not impossible. Would have to put them in by hand as a workaround. Yes, there is code to interpret those files. Modules with multiple versions (C101, F1, etc) tend to break this feature. 

Sounds great! I spent hours with ChatGPT to extract the data from clickabledata.lua and devices.lua. It's not a pretty extract but it can be used to find all the required data for buttons to use with Streamdeck. My only question remains regarding the format of the data. Here is an example output I have:

[262] = "%0.1f",        -- ENERG-AER-RIT-PTRdefault_2_position_tumb(DCgroundPowerHint, devices.ELEC_INTERFACE, device_commands.Button_1, 262) Button ID: 3001, DCS ID: 262, Device ID: 2

So what is the formula for the output. How can I know whether its floating or decimal or something else "%0.1f" ?


Edited by Eraseri
clarification
Link to comment
Share on other sites

Hello all, could I please ask for some help: I installed and configured DCS SD interface and the SD is receiving from DCS correctly (I can see switches moving) but it’s not sending commands to DCS. I am using the default port and not running DCS in admin mode. 
is there anything in particular I should check? 

Kaby Lake @ 4.6Ghz - Gigabyte Z170-D3H - 16Gb DDR4 - Gigabyte GTX 1080 G1 OC - Samsung EVO 250Gb SSD - Seagate 1 Tb HDD - HTC Vive - Rift CV1

Link to comment
Share on other sites

2 hours ago, AstroEma said:

Hello all, could I please ask for some help: I installed and configured DCS SD interface and the SD is receiving from DCS correctly (I can see switches moving) but it’s not sending commands to DCS. I am using the default port and not running DCS in admin mode. 
is there anything in particular I should check? 

Port in particular. Follow this video: 

Additionally, check that you are using Bailey's fork of the DCS Interface. Also, test with another module if one is not working.

https://github.com/asherao/DCS-ExportScripts/tree/master

 

Link to comment
Share on other sites

Thank you, I'll get back to you on this other fork. I have also checked with the A10C II and Apache and still no joy.

Kaby Lake @ 4.6Ghz - Gigabyte Z170-D3H - 16Gb DDR4 - Gigabyte GTX 1080 G1 OC - Samsung EVO 250Gb SSD - Seagate 1 Tb HDD - HTC Vive - Rift CV1

Link to comment
Share on other sites

Hi all,

A while back I made myself a Mirage 2000C profile. It occured to me that this project doesn't seem to have a M-2000C StreamDeck profile, so I thought I'd clean it up a little and upload it to the repo.

It handles PCA, Green V/UHF control panel, some radar controls, and 4-state lamps (instead of just 2-state) for AP & master caution/warning operations.

PR opened. In the meantime, here's how it looks like:

image.png

  • Like 4
Link to comment
Share on other sites

11 minutes ago, Phoenix FR said:

On Github, you wrote you use a custom lua script. I think that we need it for your profile. Where  can we download it ?

On GitHub too, my changes have been integrated in the main branch. I just modified the M-2000C.lua file to add what I needed. If you haven't modified your own export scripts, you can just download the whole repo and update all export scripts. Otherwise, just download the latest script at "Scripts/DCS-ExportScript/ExportsModules"

Link to comment
Share on other sites

On 1/20/2024 at 10:32 AM, Eraseri said:

Port in particular. Follow this video: 

Additionally, check that you are using Bailey's fork of the DCS Interface. Also, test with another module if one is not working.

https://github.com/asherao/DCS-ExportScripts/tree/master

 

Thank you so much! The new repository worked! 🙂

Kaby Lake @ 4.6Ghz - Gigabyte Z170-D3H - 16Gb DDR4 - Gigabyte GTX 1080 G1 OC - Samsung EVO 250Gb SSD - Seagate 1 Tb HDD - HTC Vive - Rift CV1

Link to comment
Share on other sites

13 hours ago, ExoLight said:

On GitHub too, my changes have been integrated in the main branch. I just modified the M-2000C.lua file to add what I needed. If you haven't modified your own export scripts, you can just download the whole repo and update all export scripts. Otherwise, just download the latest script at "Scripts/DCS-ExportScript/ExportsModules"

Thank you, i didn't have that repository.

Link to comment
Share on other sites

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...