Jump to content

Skynet: An IADS for Mission Builders


Recommended Posts

AUTONOMUS STATE

 

Seems like you can only set the AUTONOMUS_STATE once either DCS_AI or Dark. I was trying to make the SAMs go active when a connection node was targeted, the go off once the SAM power source was targeted.

Link to comment
Share on other sites

  • 4 weeks later...

Hi,

I don't understand why when i try to put a command center, skynet doesn't work.

 

here my code:

do

--create an instance of the IADS

redIADS = SkynetIADS:create('RED')

 

---debug settings remove from here on if you do not wan't any output on what the IADS is doing by default

local iadsDebug = redIADS:getDebugSettings()

iadsDebug.IADSStatus = true

iadsDebug.samWentDark = true

iadsDebug.contacts = true

iadsDebug.radarWentLive = true

iadsDebug.noWorkingCommmandCenter = true

iadsDebug.ewRadarNoConnection = true

iadsDebug.samNoConnection = true

iadsDebug.jammerProbability = true

iadsDebug.addedEWRadar = true

iadsDebug.hasNoPower = true

iadsDebug.harmDefence = true

iadsDebug.samSiteStatusEnvOutput = true

iadsDebug.earlyWarningRadarStatusEnvOutput = true

---end remove debug ---

 

-- add all units with unit name beginning with 'EWR_RED' to the IADS:

redIADS:addEarlyWarningRadarsByPrefix('EWR_RED')

 

-- add all units with unit name beginning with 'SAM_RED' to the IADS:

redIADS:addSAMSitesByPrefix('SAM_RED')

 

-- Returns all EW radars in the IADS

--redIADS:getEarlyWarningRadars()

 

-- set this SA-6 site to act as EWR

-- RedIADS:getSAMSiteByGroupName('SAM_RED-SA6_Senaki'):setActAsEW(true)

 

local commandCenter = StaticObject.getByName("EWR_RED-9S80M1")

redIADS:addCommandCenter(commandCenter)

 

 

--activate the radio menu to toggle IADS Status output

redIADS:addRadioMenu()

 

-- activate the IADS

redIADS:activate()

 

end

 

Thanks for your help

Link to comment
Share on other sites

Is there any way of adding a border to Skynet, like you can with the Moose A2A dispatcher? Where the SAMs will only fire/activate after violation of a zone?

 

That would be quite handy indeed :thumbup:.

- Jack of many DCS modules, master of none.

- Personal wishlist: F-15A, F-4S Phantom II, JAS 39A Gripen, SAAB 35 Draken, F-104 Starfighter, Panavia Tornado IDS.

 

| Windows 11 | i5-12400 | 64Gb DDR4 | RTX 3080 | 2x M.2 | 27" 1440p | Rift CV1 | Thrustmaster Warthog HOTAS | MFG Crosswind pedals |

Link to comment
Share on other sites

It's on the backlog already:

https://github.com/walder/Skynet-IADS/projects/1#card-41230405

 

It will support many more configurable options to turn on and off a SAM site.

Link to comment
Share on other sites

  • 2 weeks later...

Hi

 

Im struggling more than 1 command centre to work. If I use just one the IADS behaves as expected and the requested degug behaves perfectly. If I add a second, the IADS seems to behave as expected by there is no debug information. The only thing that appears is the header with no further details.

 

Ive set the code out various ways. Any help greatly appreaciated.

 

Heres how, in general ive been setting it out:

 

local commandCenter = StaticObject.getByName("HQ 266th AAMB Poti")

redIADSPOTI:addCommandCenter(commandCenter)

 

local commandCenter = StaticObject.getByName("HQ- 643rd AAMB Gudauta")

redIADSPOTI:addCommandCenter(commandCenter)

 

Ive also tried:

 

local commandCenter = StaticObject.getByName("HQ 266th AAMB Poti")

local commandCenter = StaticObject.getByName("HQ- 643rd AAMB Gudauta")

redIADSPOTI:addCommandCenter(commandCenter)

 

I originally wanted to have three discrete areas (POTI, GUDAUTA and TIBLISI) but ive given up on that as muliple iterations just seem to activite the first and ignore the rest.

 

Thanks


Edited by Boosterdog
spelink

MSI Tomahawk X570 Mobo, Ryzen 5600X undervolted on Artic Freezer E34 Cooler, RTX3080 FE, 32GB (2x16GB Dual Ranked) GSkil 3600 CL16 Trident Neo RAM, 2X 4th Gen M2 SSDs, Corsair RM850x PSU, Lancool 215 Case. 

Gear: MFG Crosswinds, Warthog Throttle, Virpil T50CM gen 1 stick, TIR5, Cougar MFD (OOA), D-link H7/B powered USB 2.0 Hub all strapped to a butchered Wheel stand pro, Cushion to bang head on, wall to scream at.  

Link to comment
Share on other sites

We've got a mission where the Moskva is in, which can only be recognized by IADS as an EWR. However, it's loaded with cruise missiles and engages our CVBG.

 

I've tried writing an exception, but I think it's crossed between being a SAM and an EWR, so the SAM commands won't work on it and vice versa.

 

Any thoughts, aside from just deleting the ship?

 

[color=#B9BBBE][font=Consolas]
[/font][/color]
[font=Arial][size=2]local moskva = redIADS:getEarlyWarningRadarByUnitName ('RED EWR moskva')  
[/size][/font][font=Arial][size=2]
if moskva then 

moskva:setEngagementZone(SkynetIADSAbstractRadarElement.GO_LIVE_WHEN_IN_KILL_ZONE):setGoLiveRangeInPercent(10) 

end[/size][/font]

 

Link to comment
Share on other sites

We've got a mission where the Moskva is in, which can only be recognized by IADS as an EWR. However, it's loaded with cruise missiles and engages our CVBG.

 

I've tried writing an exception, but I think it's crossed between being a SAM and an EWR, so the SAM commands won't work on it and vice versa.

 

Any thoughts, aside from just deleting the ship?

 

[color=#B9BBBE][font=Consolas]
[/font][/color]
[font=Arial][size=2]local moskva = redIADS:getEarlyWarningRadarByUnitName ('RED EWR moskva')  
[/size][/font][font=Arial][size=2]
if moskva then 

moskva:setEngagementZone(SkynetIADSAbstractRadarElement.GO_LIVE_WHEN_IN_KILL_ZONE):setGoLiveRangeInPercent(10) 

end[/size][/font]

 

 

For the moment ships can only be used as EW radars. I use the AI on off feature to turn SAM sites on and off. Unfortunately that does not work for ships. Maybe at a later date I will add some workaround for ships.

Link to comment
Share on other sites

Hi

 

Im struggling more than 1 command centre to work. If I use just one the IADS behaves as expected and the requested degug behaves perfectly. If I add a second, the IADS seems to behave as expected by there is no debug information. The only thing that appears is the header with no further details.

 

Ive set the code out various ways. Any help greatly appreaciated.

 

Heres how, in general ive been setting it out:

 

local commandCenter = StaticObject.getByName("HQ 266th AAMB Poti")

redIADSPOTI:addCommandCenter(commandCenter)

 

local commandCenter = StaticObject.getByName("HQ- 643rd AAMB Gudauta")

redIADSPOTI:addCommandCenter(commandCenter)

 

Ive also tried:

 

local commandCenter = StaticObject.getByName("HQ 266th AAMB Poti")

local commandCenter = StaticObject.getByName("HQ- 643rd AAMB Gudauta")

redIADSPOTI:addCommandCenter(commandCenter)

 

I originally wanted to have three discrete areas (POTI, GUDAUTA and TIBLISI) but ive given up on that as muliple iterations just seem to activite the first and ignore the rest.

 

Thanks

 

Did you check possible error messages in the dcs.log? Seems like you are referencing a unit that does not exist.

Link to comment
Share on other sites

For the moment ships can only be used as EW radars. I use the AI on off feature to turn SAM sites on and off. Unfortunately that does not work for ships. Maybe at a later date I will add some workaround for ships.

 

Thanks for the response, and confirming I’m not crazy. We deleted the ship and I’ll look forward to some additional functionality at some point in the future. Thx!

Link to comment
Share on other sites

Did you check possible error messages in the dcs.log? Seems like you are referencing a unit that does not exist.

 

Im sure the unit exists as Im copy and pasting its name from the ME into the script. I think its all a little beyond my simple Mancunian brain TBH :-). Im sure there will be a dot or dash or bracket Ive stupidly missed somewhere.

 

BTW - THANK YOU for this- even in the forms I can get it to work (eg basic IAD set and with Air Dispatcher) it adds a lot to my enjoyment of DCS.

MSI Tomahawk X570 Mobo, Ryzen 5600X undervolted on Artic Freezer E34 Cooler, RTX3080 FE, 32GB (2x16GB Dual Ranked) GSkil 3600 CL16 Trident Neo RAM, 2X 4th Gen M2 SSDs, Corsair RM850x PSU, Lancool 215 Case. 

Gear: MFG Crosswinds, Warthog Throttle, Virpil T50CM gen 1 stick, TIR5, Cougar MFD (OOA), D-link H7/B powered USB 2.0 Hub all strapped to a butchered Wheel stand pro, Cushion to bang head on, wall to scream at.  

Link to comment
Share on other sites

Im sure the unit exists as Im copy and pasting its name from the ME into the script. I think its all a little beyond my simple Mancunian brain TBH :-). Im sure there will be a dot or dash or bracket Ive stupidly missed somewhere.

 

BTW - THANK YOU for this- even in the forms I can get it to work (eg basic IAD set and with Air Dispatcher) it adds a lot to my enjoyment of DCS.

 

 

You're welcome! By the way if you need support join the Skynet discord channel:

https://discord.gg/vkDfe5

 

It's easier to share missions there. It might well be that there is a bug in the command center part. I am currently rewriting the radar coverage code to get rid of micro stutters in large multiplayer issues. And some where on the backlog is the command center code.

 

I'm 1/2 Mancunian and was able to write an IADS, im sure you will be able to wrap your head around the more advanced setup features :thumbup:


Edited by tigair
Link to comment
Share on other sites

I saw some error logs with that bug. The dll crash is something that not should happen via LUA scripting. If it is indeed due to a partially damaged radar I might be able to work around that in LUA. I will check if the error is consistently reproducible as WRL11 described.

Link to comment
Share on other sites

I saw some error logs with that bug. The dll crash is something that not should happen via LUA scripting. If it is indeed due to a partially damaged radar I might be able to work around that in LUA. I will check if the error is consistently reproducible as WRL11 described.

 

Thanks, this is a show stopper as it's a hard server crash and the mission must be restarted (which is doomed to crash again) with enough folks gunning and HARMing SAMS this is almost guaranteed to crash at some point during a heavy sam/iads mission.

 

OTHERWISE...

This script is awesome, the SAMS are way better behaved and make better decisions to destroy us, which we love! thanks for the hard work on this script!!!:thumbup:

[sIGPIC][/sIGPIC]

Link to comment
Share on other sites

@Jeffdude: thanks for the nice words! Just wait until the new features I am working on are released.

 

I have published an update to Skynet:

https://github.com/walder/Skynet-IAD...ses/tag/v1.1.2

 

Let me know if that resolves the issue.

Link to comment
Share on other sites

Since ED has fixed the underlying bug, I have published a updated version of Skynet:

https://github.com/walder/Skynet-IADS/releases/tag/v1.1.3

Link to comment
Share on other sites

Since ED has fixed the underlying bug, I have published a updated version of Skynet:

https://github.com/walder/Skynet-IADS/releases/tag/v1.1.3

 

Awesome! Just put it back into my missions. It's a pleasure to watch the SAMs lurk in the darkness until the A-10s get close and the pilot's screams echo through the teamspeak. Bonus points if his speakers are loud enough to hear the RWR go nuts :helpsmilie::megalol::megalol::megalol:

 

In all seriousness though, this makes Wild Weasel ops really, really fun. Typically one of our boys is the bait while the rest throws in HARMs and CBUs.

Link to comment
Share on other sites

  • 2 weeks later...

First of all, thank you for the great work on this. It's awesome and I see amazing longevity and potential in it. I would like to discuss an issue and proposed enhancements.

 

Background:

 

We tried using skynet in the context of a persistently maintained mission and found some code & architecture issues.

 

We are using a modified version of SGS.lua (Pikey's). How this works (for background on the issue) is that at a certain time after start, it wipes all the units off the map, and then replaces them from a saved file, which is periodically written to record the units that are still alive.

 

The basic skynet config works 100% with this off the bat. "-ish." It has all the SAM systems in autonomous mode all the time, which is not what we wanted.

 

So we added connection nodes, and other arch-specific attributes to build out a system. The process of doing this is by manually referring to the group name in the script. Okay, all good so far...

 

Then the mission runs a bit, and stuff starts getting killed. The mission is shut down, and restarted. The SGS script restores what was alive at the last save. Some SAM systems are not there anymore. Others are "partially" not there.

 

(nota bene: the methods for including nodes, power sources, etc. refers by name to groups)

 

If those groups don't exist (anymore), or the group is partially destroyed to some extent, it's fatal to the skynet script.

 

Reproduce:

 

1 - Define a SA-6 site with the radar and 3 launchers.

 

2 - Add it by prefix to skynet.

 

3 - Add a connection node to it.

 

4 - Now go back and destroy (remove) all but one launcher.

 

5 - Restart the mission and observe the log.

 

 

 

What I think is needed:

 

1 - Prefix based approaches to the ":add" methods (node, power, etc) to remove the need to manually maintain group names. Or an approach by boolean that unless told not to, automatically adds the system to the nearest node & power source if they exist alive within a given distance.

 

2 - Error handling to account for a partially or totally destroyed system so that it's not fatal to the script.

 

 

These are basically automation requests that obviate the need to maintain lists of the site's group names by hand if that's undesirable or oppressive.

 

---

 

I realize that what we're doing may not fall completely inside the targeted use case of skynet, but there is a campaign engine in development and odds are this circumstance would exist there too.


Edited by fargo007

 

Banner EDForum2020.jpg

Have fun. Don't suck. Kill bad guys. 👍

https://discord.gg/blacksharkden/

Link to comment
Share on other sites

Thanks for your Feedback Frago007.

 

Skynet stumbles when Units are removed or added in the manner you described. I have put some thought in to adding an autogenerate that would behave similar to as you described.

 

But it may take some time until I am at that point. There is still al ot of stuff in the backlog I want to add first, see:

https://github.com/walder/Skynet-IADS/projects/1

 

 

If you want to be up to date on Skynet, join the discord Server:

https://discord.gg/CgwJnt

Link to comment
Share on other sites

  • 1 month later...

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

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