MBot Posted June 1, 2013 Posted June 1, 2013 (edited) DCS Artillery Enhancement Script is a script addon for the DCS Mission Editor to enable fully autonomous AI indirect fire support. A ground AI change in the 1.24 patch has had a negative effect of the very foundation of this script, making this a "as is" release with reservations. Key features are: -Spotter units that autonomously detect and prioritize targets for engagement with indirect fire support weapons. -Counterfire radar units that autonomously detect and prioritize hostile artillery fire and direct counter battery fire. -Artillery groups that autonomously change position when under indirect fire or perform preemptive survivability moves after each firemission. -Hierarchy levels to allow for centralized or decentralized indirect fire support. -Tactical nuclear artillery. The premise is that the mission designer adds units to his mission as usual. Then he has to define which of his units will fulfill certain tasks in the fire support effort. He can define groups containing artillery unit as Firing Batteries. These groups will then provide indirect fire to anyone that asks for it. He can define individual units as spotters. These will detect (nearly) stationary enemy units, group them together, prioritize them and send fire support request to firing batteries. The batteries will then answer request based on chain of command and target priority. Spotters can be any units, including helicopters and aircraft. And they will even request artillery fire on landed or low hovering hostile helicopters. The mission designer can also define individual units as counterfire radars. These units will detect enemy artillery shells with a certain chance of detection and position error, based on range, azimuth and shell type. They will then proceed to request artillery fire on the hostile firing artillery position. Counterfire radars can be initialized to represent specific radar types. The AN/TPQ-36 and AN/TPQ-37 Firefinder attributes are base on fairly specific data from US army field manuals. A Soviet type is also present in the form of the ARK-1M Rys (although not based on as solid data as the US types). 3 artillery units in DCS are capable to fire nuclear shells, the M109, 2S3 and 2S19. This is modeled in this script. The M109 can launch the W48 warhead with a yield of 0.072kt. The 2S3 and 2S19 can launch the ZBV3 with a yield of 1 kt. Artillery units do not carry nuclear shells by default, they have to be added to a battery by script line. This can be done at mission start or with a trigger, simulating delivery of nuclear shells from a special weapons depot to the firing battery mid-mission (for example by truck or with a helicopter *cough* Huey *cough*). Nuclear weapons are also controlled by a priority rating, which is configurable by the mission designer. A firing battery could be set to engage every target conventionally, but only targets of high priority (for example a group of minimum 10 tanks) with nuclear warheads. When a nuclear firemission is performed, the battery will fire a single shell, which will airburst above the target with the respective yield. The W48 of the M109 will usually destroy up to company sized targets. The implementation of the script is fairly easy. The mission designer first has to initialize the script using "do script", "do script file" or through initialization script. Then he has to run some simple lines of code with "do script" in order to set the basic configuration of the script for the mission. The most basic code lines are: AddFiringBattery("Name of Group") AddSpotter("Name of Unit") AddCounterfireRadar("Name of Unit") More advanced options of the script can be controlled with extended or additional script lines. More details are in the supplied instructions pdf. Note: This script is supplied "as is" and will not work under all circumstances as intended. Until recently, artillery units in DCS would attack enemy units in line of sight with direct fire at close ranges up to 4 km. This script was designed and build under this premise. In the final week of the development of this script, DCS 1.24 was released, which features a drastic increase of this direct fire range, under some circumstances up to 10 km (the exact characteristics are still unclear to me, it is somehow fluent). When attacking units with direct fire, higher AI routines take over the artillery units, removing them from script control. The increase of this range above basic self-defense range means that artillery units will now quite frequently engage enemies on their own, making them uncontrollable. This has broken this script on a very fundamental level. The problem can be avoided by placing artillery groups in a way that they will never be in LOS with enemy ground units. Another workaround is to set the ROE of artillery groups to hold fire manually in the ME. But when firing their first firemission, these artillery groups will still be reset to ROE open fire automatically and will then start to have their own, uncontrollable mind. I have started this script one month ago as an exercise in programming. This was the first time I ever programmed anything. I read a LUA tutorial on a Sunday afternoon and then jumped into writing code. In 5 weeks I put 100 hours into this project (yes, I kept records). Last week I was basically done, when I updated DCS to 1.24 and discovered this small change (or is it a bug? I don't know) that put my whole script into question. This project was primary a programming exercise, so has achieved its goal. Still I was very frustrated. After having taken a week off from it I now feel it would be a shame to let it rot on my hard drive. I decided to release it "as is", even though I am very unhappy to release something that is not fit for flawless use. Still many parts work as intended and with careful use, it could still be of value for mission designers and fun for those that play these missions. --------------------------------------------- Version 1.1 Update 23. June 2013 The script is updated to version 1.1. This includes a fix to the bug that spotters would detect unactivated units, making sure that the script handles destroyed units and groups, as well as some bug fixes related to displacing under fire.DCSArtilleryEnhancementScript_v1.1.zip Edited June 23, 2013 by MBot 3
gunterlund21 Posted June 2, 2013 Posted June 2, 2013 I must say for a first time scriptor you did a fantastic job on these. I watched the demo missions and that counter battery mission went on for ever. I love the way the vehicles shoot and skoot. Even the JAAT mission worked great. I was playing cat and mouse with the recon helo and they kept zeroing in on me where ever I drove around. Great job and dont give up on this. I was in Art of the Kill D#@ it!!!!
RagnarDa Posted June 2, 2013 Posted June 2, 2013 Impressive! I had a look and it worked well for me. I am sure there is a way around the LOS-problem, for example did you try adding a loop that will set the ROE of the artillery system to Hold Fire if there isnt a script-initiated fire-mission started? On the other hand, this might be a "problem" most users wont see, only you the developer ;) DCS AJS37 HACKERMAN There will always be bugs. If everything is a priority nothing is.
shelt Posted June 3, 2013 Posted June 3, 2013 Very nice work! Thanks for sharing this with the community Intel i7-3770K,Windows 10 64,Noctua NH-U12S ,ASRock Z77 Extreme4 ,G.Skill 32GB DDR3 2400,EVGA GTX 1080,ADATA XPG900x2 RAID 0, CM HAF XB Case,Thrustmaster Warthog,Combat Rudder Pedals,Logitech G930 with wireless TrackIR 5, 39" Insignia LED 120Hz Monitor, Oculus Rift
Joyride Posted June 10, 2013 Posted June 10, 2013 Mbot - impressive work, and indeed thanks for sharing!
Ranger79 Posted June 11, 2013 Posted June 11, 2013 Good stuff man! [sIGPIC][/sIGPIC] Ranger79 OEF/OIF Veteran YouTube Channel Twitch Channel Mods, Missions, & Tutorials: Operation Piercing Fury Campaign Ranger79's Object Pack ISIS CrisIS Campaign Mission Editing Video Series
Menessis Posted June 13, 2013 Posted June 13, 2013 Hi M Bot. What tutorials did you read? Thanks Menenssis
MBot Posted June 13, 2013 Author Posted June 13, 2013 I read the first couple of these (till Scope): http://lua-users.org/wiki/TutorialDirectory That should already be enough to get you going.
Highwayman-Ed Posted June 17, 2013 Posted June 17, 2013 Great work MBot, what I really like is that you've painstakingly added descriptions and explanations to the script to help 'hacks' like me figure out what does what and make simple adjustments! Intel i9-9900KF @5.2GHz MSI Z390 Gaming Pro Carbon 32GB G.Skill Trident Z DDR3200 RAM MSI RTX 2080 Ti Gaming X Trio 40" Panasonic TH-40DX600U @ 4K Pimax Vision 8K Plus / Oculus Rift CV1 / HTC Vive Gametrix JetSeat with SimShaker Windows 10 64 Bit Home Edition [sIGPIC][/sIGPIC]
MBot Posted June 23, 2013 Author Posted June 23, 2013 Thank you for all the encouraging comments I received. The script in the original post is updated to version 1.1 This includes a fix to the bug that spotters would detect unactivated units, making sure that the script handles destroyed units and groups, as well as some bug fixes related to displacing under fire.
Supersheep Posted June 23, 2013 Posted June 23, 2013 Where did you find the DCS scripting reference to interface the scripts with DCS? Thanks! Super- The PVC Pipe Joystick Stand How to thread
Grimes Posted June 23, 2013 Posted June 23, 2013 Where did you find the DCS scripting reference to interface the scripts with DCS? http://en.wiki.eagle.ru/wiki/Simulator_Scripting_Engine_Documentation The right man in the wrong place makes all the difference in the world. Current Projects: Grayflag Server, Scripting Wiki Useful Links: Mission Scripting Tools MIST-(GitHub) MIST-(Thread) SLMOD, Wiki wishlist, Mission Editing Wiki!, Mission Building Forum
gunterlund21 Posted June 26, 2013 Posted June 26, 2013 Its too bad about the direct fire of arty. I tried to make a mission using nonas as the battery but I think they are firing on their own regardless of the spotter. Its hard to prove though as the battery wont fire unless the nme is within its max range. I was in Art of the Kill D#@ it!!!!
gunterlund21 Posted September 9, 2013 Posted September 9, 2013 Mbot have you revisited this since 1.2.6? Did it fix the 10km issue? I was in Art of the Kill D#@ it!!!!
Silver_Dragon Posted October 27, 2013 Posted October 27, 2013 Any new update? For Work/Gaming: 28" Philips 246E Monitor - Ryzen 7 1800X - 32 GB DDR4 - nVidia RTX1080 - SSD 860 EVO 1 TB / 860 QVO 1 TB / 860 QVO 2 TB - Win10 Pro - TM HOTAS Warthog / TPR / MDF
MBot Posted October 27, 2013 Author Posted October 27, 2013 I just ran a small test and the direct fire range for arty is still up to 8 km. That means that any artillery unit with a enemy within 8 km and line of sight will be uncontrollable. Then a ran the counterfire demo mission (man I love this thing :) ) and it fortunately still worked perfectly. So if you take care about artillery placement and LOS (putting them behind hills), the script is ok for use. 1
Home Fries Posted October 27, 2013 Posted October 27, 2013 MBot, You're a man after my own heart with that PDF write-up! Great job. -Home Fries My DCS Files and Skins My DCS TARGET Profile for Cougar or Warthog and MFDs F-14B LANTIRN Guide
CAT_101st Posted October 31, 2013 Posted October 31, 2013 MBot thank you for your hard work. :thumbup: Home built PC Win 10 Pro 64bit, MB ASUS Z170 WS, 6700K, EVGA 1080Ti Hybrid, 32GB DDR4 3200, Thermaltake 120x360 RAD, Custom built A-10C sim pit, TM WARTHOG HOTAS, Cougar MFD's, 3D printed UFC and Saitek rudders. HTC VIVE VR. https://digitalcombatmercenaries.enjin.com/
vicx Posted June 23, 2014 Posted June 23, 2014 Thanks for sharing this great script (thanks also for documentation). I got my Scout Manpad guy to peek around a building at the enemies with his binoculars and the tactical nuke blew them up just as it should. Now that is some Combined Arms. I did get some error messages pop up though. When the enemy tanks took pot shots at me and hit the building I was hiding behind in first person view. Because the building didn't have a coalition value the event.target code caused an error.
Ripcord Posted August 8, 2016 Posted August 8, 2016 Ok so it has been 3 years, and I have just now discovered this (haven't really been delving much into ME for a variety of reasons). MBOT, this is brilliant! I tried it out last night but I got an error, so I didn't get the really play with it myself. But this is exactly what I am looking for. In fact, DCS should just implement it and built it right into the ME. I wonder, do you have this little gem working now in 1.5.3 or 1.5.4 or whatever we have these days? [sIGPIC][/sIGPIC]
gunterlund21 Posted January 26, 2017 Posted January 26, 2017 (edited) MBOT have you relooked at this since someone discovered how to change detection through obstacles? Tried running it and it crashes when trying to read the parameters in the scriptfile. Edited January 26, 2017 by gunterlund21 I was in Art of the Kill D#@ it!!!!
gunterlund21 Posted February 4, 2017 Posted February 4, 2017 ED please review this and change spotting ranges back to 4km or allow it as a parameter. I was in Art of the Kill D#@ it!!!!
Dave317 Posted April 13, 2017 Posted April 13, 2017 I've only just found this. It looks amazing but I can't get it to work. Is it broken for this 1.56?
feefifofum Posted April 13, 2017 Posted April 13, 2017 Yes, the script's creator has not updated the script in 3+ years...in bold, in the first post, you'll see he says that the script was broken by 1.24 as he was preparing to release it...it has not been updated since then...three years later, a bunch of people wandered in and said "hey this doesn't work." :lol: THE GEORGIAN WAR - OFFICIAL F-15C DLC
Dave317 Posted April 14, 2017 Posted April 14, 2017 I was hoping that there may have been a work around but hasn't been updated.
Recommended Posts