Jump to content

Splash Damage 3.x script (now with more explosions)


Go to solution Solved by BlackFalco,

Recommended Posts

Posted (edited)

Hi all, I've forked the splash damage script from Grimm that was forked from wheelyjoe, which has had changes from Mistermann, Quéton and Kerv before I've made contributions.  I'd like to try to keep this one up to date and be active on pull requests should anyone want to contribute.  This thread will cover all 3.x versions

For those who haven't seen this before this script enhances DCS ordnance by adding extra explosions and blastwave damage. It includes a customizable weapon table, rocket multiplier, shaped charge adjustments, dynamic blast radius options, and in-game radio commands for tweaking settings like cascade explosions.

Any questions/comments/concerns feel free to ask in the thread or on Discord (stevey9062)

Splash Damage 3.0

Github: https://github.com/stephenpostlethwaite/DCSSplashDamageScript


New features:

Cargo (Ammo/Fuel) Explode and Cook Off

3.0 brings in the ability to have cargo explode and cook off if you blow up a particular vehicle (or the blast wave damages it enough).  This is controlled by cargoUnits in the script so we have to add the units in specifically.  We can have a large fire that spawns and dissipates, as well as a controllable number of cook off explosions and smaller debris explosions.

In the script, there a few fuel trucks added and a few ammo trucks added.  The fuel trucks will blow up with a fireball.  The ammo ones will have cook off explosions.

    --track_pre_explosion/enable_cargo_effects should both be the same value
    ["track_pre_explosion"] = true, --Toggle to enable/disable pre-explosion tracking
    ["enable_cargo_effects"] = true, --Toggle for enabling/disabling cargo explosions and cook-offs  
    ["cargo_damage_threshold"] = 60, --Health % below which cargo explodes (0 = destroyed only)
    ["debris_effects"] = true, --Enable debris from cargo cook-offs
    ["debris_power"] = 1, --Power of each debris explosion
    ["debris_count_min"] = 6, --Minimum debris pieces per cook-off
    ["debris_count_max"] = 12, --Maximum debris pieces per cook-off
    ["debris_max_distance"] = 10, --Max distance debris can travel (meters), the min distance from the vehicle will be 10% of this

Fuel truck
    --3) Refueler ATZ-10
    ["ATZ-10"] = {
        cargoExplosion = true,
        cargoExplosionMult = 1.8,
        cargoExplosionPower = 200,
        cargoCookOff = false,
        cookOffCount = 0,
        cookOffPower = 0,
        cookOffDuration = 0,
        cookOffRandomTiming = false,
        cookOffPowerRandom = 50,
        isTanker = true,
        flameSize = 3,
        flameDuration = 5,
    },

kW1dSbu.gif


Ammo truck
    ["ZIL-135"] = {
        cargoExplosion = true,
        cargoExplosionMult = 1,
        cargoExplosionPower = 200,
        cargoCookOff = true,
        cookOffCount = 5,
        cookOffPower = 1,
        cookOffDuration = 20,
        cookOffRandomTiming = true,
        cookOffPowerRandom = 50,
        isTanker = false,
        flameSize = 1,
        flameDuration = 30,
    },

PeCLJG8.gif
 

Ordnance Protection

To try and mitigate situations where your own bombs blow eachother up I've put in some (not always 100% effective) mitigation options.  If a bomb is blown up midair it will try to scan the local area for the larger_explosion that the script adds.  If it find it, it will snap a larger_explosion to the ground beneath it so that it was like a bomb did go off there. 

There is also     ["ordnance_protection_radius"] = 10  that will stop the additional script larger_explosion for weapons if theyre withthin this amount of meters of another weapon.  It means both bombs will drop and hit but you wont get the additional larger explosion from the first.  I had this set to 25 for a while but have it at 10 atm.

    ["ordnance_protection"] = true, --Toggle ordinance protection features
    ["ordnance_protection_radius"] = 10, --Distance in meters to protect nearby bombs
    ["detect_ordnance_destruction"] = true, --Toggle detection of ordnance destroyed by large explosions
    ["snap_to_ground_if_destroyed_by_large_explosion"] = true, --If the ordnance protection fails or is disabled we can snap larger_explosions to the ground (if enabled - power as set in weapon list) - so an explosion still does hit the ground
    ["recent_large_explosion_snap"] = true, --enable looking for a recent large_explosion generated by the script
    ["recent_large_explosion_range"] = 200, --range its looking for in meters for a recent large_explosion generated by the script
    ["recent_large_explosion_time"] = 4, --in seconds how long ago there was a recent large_explosion generated by the script

Cluster Bomb Support

This is considered in alpha and has me not really being sure how to proceed so it's set to false by default for 3.0.  When DCS releases bomblets it releases a single bomblet in the code that it tracks, as opposed to the visual tens of bomblets.  The script follows that to the ground and initiates a lot of explosions over a dispersal pattern that's very basic and inexact.  Not sure how effective it is but can look a bit better if you want to see dust clouds?  Hence why I keep it optional

    -- Cluster bomb settings
    ["cluster_enabled"] = true,
    ["cluster_base_length"] = 150,           -- Base forward spread (meters)
    ["cluster_base_width"] = 200,            -- Base lateral spread (meters)
    ["cluster_max_length"] = 300,            -- Max forward spread (meters)
    ["cluster_max_width"] = 400,             -- Max lateral spread (meters)
    ["cluster_min_length"] = 100,            -- Min forward spread
    ["cluster_min_width"] = 150,             -- Min lateral spread
    ["cluster_bomblet_reductionmodifier"] = true, -- Use equation to reduce number of bomblets (to make it look better)
    ["cluster_bomblet_damage_modifier"] = 1,  -- Adjustable global modifier for bomblet explosive power

jvrrhkS.gif
 

Full Ingame Radio Settings

This is on by default and allows you to toggle or adjust numbers on nearly all of the options in the script while in-game.  It'll be in the F10 Other section of your ingame radio
    
    ["enable_radio_menu"] = true, --enables the in-game radio menu for modifying settings

 

Discussion Point

I've changed the script to try to allow for a customisable experience, you can change damage scaling relatively easily without having to look too much into the code of things

Splash damage in this script is still more than is realistic, especially with thanks.  As per https://apps.dtic.mil/sti/pdfs/ADA329188.pdf tanks are probably good with a 1000lb hitting 10 meters away (whether the crew would be happy about it is another thought for a different day). 

Overall this script is to add some more visual and fun flair, I can't speak to the realism of the additional explosions vs standard DCS.
 

Release notes:

    09 March 2025 (Stevey666) - 3.0
      - Added ordinance protection gives a few options - stop the additional larger_explosion that tends to blow up your own bombs if theyre dropped at the same place if its within x m
      - Additional ordnance protection option that will cause a snap to ground larger_explosion if its within x meters of a recent larger explosion and within x seconds (can set in options)
      - Added vehicle scanning around a weapon to allow for..
      - Cook offs - you can set vehicles that will cook off i.e ammo trucks, number of explosions, debris explosions, power adjustable
      - Fuel/Tanker explosion and flames - when a fuel tanker blows it will through up a big flame - adjustable in the scripts
      - Added section for vehicles for the above
      - Added radio commands for everything
      - Added in cluster munitions changes (note: barely tested, its not particularly accurate or that useful at this point so leaving disabled)
      - Potential bug - testing, stacking too many units together may cause a MIST error if you're using mist
      
      - Setting this as 3.0 as I'd like to be responsive to requests, updates etc - creating a new fork to track this
    


Below is the 2.0 thread


 

 

 

Splash_Damage_3.0_withcluster.lua Splash_Damage_3.0.lua Splash_Damage_3.0_debugmode.lua

Edited by stevey666
  • Like 3
  • Thanks 2
  • Solution
Posted

Hi!

Does this mod comes without those messages spamming all day long? lol.

Now I'm still running the 2 years old version and I'm trying to see if setting messages to "false" solves the problem...

If it doesn't I'm gonna give yours a try as well! 😄

  • Like 1
Posted
6 hours ago, BlackFalco said:

Hi!

Does this mod comes without those messages spamming all day long? lol.

Now I'm still running the 2 years old version and I'm trying to see if setting messages to "false" solves the problem...

If it doesn't I'm gonna give yours a try as well! 😄

Howdy! Yes there is no spamming for me, just make sure you don't download the debugmode version.  Setting game messages and debug to false should work on the old version too

Posted
12 ore fa, stevey666 ha scritto:

Howdy! Yes there is no spamming for me, just make sure you don't download the debugmode version.  Setting game messages and debug to false should work on the old version too

awesome man thanks.

Was wondering : with your version has the splash damage got reduced a little bit from previous one? Cause as other people said on the other thread the Splash Damage script would make splash damage too much lol so basically we went from NO splash damage to TOO MUCH splash damage ahah so I was wondering if you reduced the splash radius a little bit or if with other mod there's a way to reduce the radius.

Posted
5 minutes ago, BlackFalco said:

awesome man thanks.

Was wondering : with your version has the splash damage got reduced a little bit from previous one? Cause as other people said on the other thread the Splash Damage script would make splash damage too much lol so basically we went from NO splash damage to TOO MUCH splash damage ahah so I was wondering if you reduced the splash radius a little bit or if with other mod there's a way to reduce the radius.

It was reduced by a couple of people since the original I think, the original script smashed everything in the blast radius and basically made them explode.  Mine reduces it/allows it to be reduced further.  I believe this has been changed with the settings to have a dynamic blast radius and a multiplier for cascading explosion damage and a threshold of unit health where it would blow up if the health is below a percentage.  The original script called for everything to blow up I think.

Note these settings I added to the script:

    ["overall_scaling"] = 1,    --overall scaling for explosive power

    ["use_dynamic_blast_radius"] = true,   --if true, blast radius is calculated from explosion power; if false, blast_search_radius (90) is used
    ["dynamic_blast_radius_modifier"] = 2,  --multiplier for the blast radius
    
    ["cascade_scaling"] = 1,    --multiplier for secondary (cascade) blast damage, 1 damage fades out too soon, 3 damage seems a good balance
    ["cascade_explode_threshold"] = 60,   --only trigger cascade explosion if the unit's current health is <= this percent of its maximum, setting can help blow nearby jeeps but not tanks
    ["always_cascade_explode"] = false, --switch if you want everything to explode like with the original script


You can reduce the overall damage of the script by changing overall_scaling to 0.5 for example, 50% less damage than standard.  You can change these settings temporarily while ingame with the radio commands too

-

Basically, just download the new one and try it, if it seems like its way too much for you then reduce the overall scaling down to 0.5 and try again.  Adjust other settings til you have something you like and works for you. 

Please note, if you change the settings in the script file with notepad/notepad++ then you will need to reimport the file into your mission editor again.  (I always increment the script name with a letter or number when testing to make sure I have the right script.

I've not really had any feedback on the changes I've made but they seem to improve things for me so hopefully its better overall haha


 

  • Like 2
Posted
34 minuti fa, stevey666 ha scritto:

It was reduced by a couple of people since the original I think, the original script smashed everything in the blast radius and basically made them explode.  Mine reduces it/allows it to be reduced further.  I believe this has been changed with the settings to have a dynamic blast radius and a multiplier for cascading explosion damage and a threshold of unit health where it would blow up if the health is below a percentage.  The original script called for everything to blow up I think.

Note these settings I added to the script:

    ["overall_scaling"] = 1,    --overall scaling for explosive power

    ["use_dynamic_blast_radius"] = true,   --if true, blast radius is calculated from explosion power; if false, blast_search_radius (90) is used
    ["dynamic_blast_radius_modifier"] = 2,  --multiplier for the blast radius
    
    ["cascade_scaling"] = 1,    --multiplier for secondary (cascade) blast damage, 1 damage fades out too soon, 3 damage seems a good balance
    ["cascade_explode_threshold"] = 60,   --only trigger cascade explosion if the unit's current health is <= this percent of its maximum, setting can help blow nearby jeeps but not tanks
    ["always_cascade_explode"] = false, --switch if you want everything to explode like with the original script


You can reduce the overall damage of the script by changing overall_scaling to 0.5 for example, 50% less damage than standard.  You can change these settings temporarily while ingame with the radio commands too

-

Basically, just download the new one and try it, if it seems like its way too much for you then reduce the overall scaling down to 0.5 and try again.  Adjust other settings til you have something you like and works for you. 

Please note, if you change the settings in the script file with notepad/notepad++ then you will need to reimport the file into your mission editor again.  (I always increment the script name with a letter or number when testing to make sure I have the right script.

I've not really had any feedback on the changes I've made but they seem to improve things for me so hopefully its better overall haha


 

THANKS A LOT for your infos man, really appreciate it!

I will save this thread so I can come here for some "feedback" ! 🙂

One more question if you don't mind : How do you usually set up your trigger for a script? 

I usually select "trigger :   4 | on mission start" and then on "actions" I do "script file" and all the rest.

I mean, that's the only and corrcet way right? 

  • Like 1
Posted
10 minutes ago, BlackFalco said:

THANKS A LOT for your infos man, really appreciate it!

I will save this thread so I can come here for some "feedback" ! 🙂

One more question if you don't mind : How do you usually set up your trigger for a script? 

I usually select "trigger :   4 | on mission start" and then on "actions" I do "script file" and all the rest.

I mean, that's the only and corrcet way right? 

No worries, feel free to reach out on Discord also. Yes on mission start is how I do it also so it can catch any issues, but unless I'm misunderstanding something (as I'm relatively new to DCS) I don't see why you cant trigger the script load whenever you feel like it in the mission. 

Posted

Hi!

Should this be considered a formal successor to v2.0 because it's no longer maintained and/or has become too buggy (I'm not closely following its development)?

Or is it indeed simply a fork for those who want more features?

If it's the former, should we start pestering Retribution & Liberation authors to include v3.0 support? 🙂 

Dima | My DCS uploads

Posted
Just now, Minsky said:

Should this be considered a formal successor to v2.0 because it's no longer maintained and/or has become too buggy (I'm not closely following its development)?

Indeed an important question - did you and @Grimm hash this out, or is this an initiative of your own? Will the branches perhaps merge?

 

  • Like 2
Posted (edited)

I consider it a fork, I don't know if there's anything "official" about the original 2.0 script since that was a fork as well from wheelyjoe's MIT License script.  I've not spoken to Grimm, the changes are from my own initiative in fixing up a couple of issues I had with it and it spiraled out of control. I'm calling it 3.0 since there has been no recent support of 2.0 (for example there have been pull requests on grimms repo that have not been approved) and there a number of changes that will probably cause more performance overhead.  Happy to pull it or rename it if there are any issues!

Edited by stevey666
  • Like 2
Posted

Thanks for keeping this alive, @stevey666.  I was one of those people who toned down Grimm's work by just a little bit and posted findings in the other thread.  I'll piggyback on cfrag's question and suggest that you at least contact Grimm who was already mentioned above. 

Your call, of course, but if someone took my work and forked it into something new/better, I would be happy to support the initiative IF said person reached out and asked permission or at least informed me about it.  Seems like the right thing to do.  

  • Like 2

System Specs:

Spoiler

📻Callsign:Kandy  💻Processor:13th Gen Intel(R) Core(TM) i9-13900K - 🧠RAM: 64GB - 🎥Video Card: NVIDIA RTX 4090 - 🥽 Display: Pimax 8kx VR Headset - 🕹️Accessories:  VKB Gunfighter III MCG Ultimate, VKB STECS Standard, Thrustmaster TPR Pedals, Simshaker JetPad, Predator HOTAS Mounts, 3D Printed Flight Button Box 

📹 Video Capture Software:  Open Broadcaster Software (OBS), 🎞️ Video Editing Software:  PowerDirector 365

Into The Jungle Apache Campaign - Griffins  Kiowa Campaign - Assassins  Thrustmaster TWCS Mod

 

Posted
33 minutes ago, Mistermann said:

Thanks for keeping this alive, @stevey666.  I was one of those people who toned down Grimm's work by just a little bit and posted findings in the other thread.  I'll piggyback on cfrag's question and suggest that you at least contact Grimm who was already mentioned above. 

Your call, of course, but if someone took my work and forked it into something new/better, I would be happy to support the initiative IF said person reached out and asked permission or at least informed me about it.  Seems like the right thing to do.  

Ah thanks for your work on the script too!  You are correct in the criticism here, I definitely should have reached out.  I've dropped him a forum PM.

  • Like 3
  • Thanks 1
Posted

Thank you very much, now it's working without any weird errors or apocalyptic destruction. Thank you and keep improving, it's much better than the old one.

  • Like 3
Posted

I loaded the script, but have a question:

- Is the splash damaged improved by default or I need to activate it once I enter the mission?

 

I don't understand anything in russian except Davai Davai!

Posted
12 hours ago, Stratos said:

I loaded the script, but have a question:

- Is the splash damaged improved by default or I need to activate it once I enter the mission?

 

Improved by default, you can edit the script to bump up the damage etc as needed

  • Like 1
  • Thanks 1
Posted
9 hours ago, stevey666 said:

Improved by default, you can edit the script to bump up the damage etc as needed

Thanks!

I don't understand anything in russian except Davai Davai!

Posted
6 hours ago, SaitouJaga said:

The explosion in the air provokes an explosion on the ground.

0T4Ba4bGCAk.jpg?size=1600x887&quality=95

Hmm thought I stopped this happening, what was firing there? I'll reproduce.  Do you have a replay for it i can review?  Thanks!

Posted (edited)

The Tor and Osa air defense systems shoot down anti-radar missiles.

The self-destruction of a missile does not provoke a ground explosion.

 

Edited by SaitouJaga
Posted

Thanks for passing that over @SaitouJaga.  Two issues with the code are compounding here.  The route cause is the ordnance protection feature kicking in and snapping the explosion to the ground.  There are code issues for the ordnance protection enable/disable toggle as well as an issue with the script tracking weapons that are not listed in the script (the Tor's missiles in this case).  I've fixed these and uploaded them to git:

    x x 2025 (Stevey666) - 3.1 (not yet released)

      - Added missing radio commands for Cascade Scaling
      - Adjust default cascading to 2 (from 1) 
      - Adjusted Ural-4320 to be a tanker and ammo carrier for cargo cookoff
       - Prevent weapons not in the list from being tracked
      - Moved some logging behind the debug mode flag
      - Ordnance Protection, added a max height ordnance protection will snap explosion to ground
      - Ordnance Protection, fixed enable/disable option

https://github.com/stephenpostlethwaite/DCSSplashDamageScript/blob/master/Splash_Damage_main.lua

Please download that and try again, testing with your example MIZ you kindly PM'd it worked for me.

Posted
20 minutes ago, SaitouJaga said:

I used the script "Splash_Damage_main", checked 2 times in two missions, there were no explosions on the ground.

 

 

Looks like that sorted it then, excellent

  • Like 2
Posted
Il 24/03/2025 at 11:42, stevey666 ha scritto:

Thanks for passing that over @SaitouJaga.  Two issues with the code are compounding here.  The route cause is the ordnance protection feature kicking in and snapping the explosion to the ground.  There are code issues for the ordnance protection enable/disable toggle as well as an issue with the script tracking weapons that are not listed in the script (the Tor's missiles in this case).  I've fixed these and uploaded them to git:

    x x 2025 (Stevey666) - 3.1 (not yet released)

      - Added missing radio commands for Cascade Scaling
      - Adjust default cascading to 2 (from 1) 
      - Adjusted Ural-4320 to be a tanker and ammo carrier for cargo cookoff
       - Prevent weapons not in the list from being tracked
      - Moved some logging behind the debug mode flag
      - Ordnance Protection, added a max height ordnance protection will snap explosion to ground
      - Ordnance Protection, fixed enable/disable option

https://github.com/stephenpostlethwaite/DCSSplashDamageScript/blob/master/Splash_Damage_main.lua

Please download that and try again, testing with your example MIZ you kindly PM'd it worked for me.

Hey Stevey, is there a new version out of the script? 

Posted
9 minutes ago, BlackFalco said:

Hey Stevey, is there a new version out of the script? 

I'm slowly working on 3.1 at the moment, which contains the fixes mentioned above and will give the ability to add in a giant explosion.  Splash_Damage_main.lua is usable and is updated with the latest items between version releases, you can use that if the changes are helpful to you

  • Like 2
  • Recently Browsing   0 members

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