Devember project, From The Depths PyTorch

So anyone familiar with From The Depths (FTD) would know that the difference between a weapon system that works and one that is optimized is pretty night and day. However the characteristics of the custom ammunition and advanced cannon configurations are terrifyingly hard to find definitive solutions.

In particular the CIWIS (close in weapon system for killing missiles and small targets) a very hard problem to solve. They need high muzzle velocity and fire rate so small caliber kinetic rail gun rounds sound optimal but also flak rounds seem so promising for their ability to damage multiple targets and not need to hit the target to damage but optimal flak is larger caliber.

Small calibers are easy to propel at high speeds and fast to reload yet pack little punch. Adittionally there are sever kinetic segments like Sabot, Hollow Point, and Armor Piercing. There are too many variables. Having some experience messing around in python I’m fairly sure I can run some regression to find optimal damage per min of a few shell types and will investigate further from there . Will need to learn a lot in order to weight things like muzzle velocity, recoil, barrel cooldown for gunpowder ammo and rail use. Also if I look at larger caliber ammo space efficiency as you need to switch from 1 block auto loaders and clips to as larger as 8 block beams.

I know I’m a bit late but letttssss go, I’m in between full time jobs doin gig work so I’ll have some time. I love feedback and can handle criticism well, I want to improve so let me know if my code for this project could use improvement.

Will post tomorrow with first stab at the CIWIS problem

Having peeled away at this problem in spread sheets, as any good data science begins, I’ve come to the conclusion that for solving a specific issue I can probably do it solely with spreadsheets and graphs. Have another project I will hopefully have a post on tomorrow as the spirit of devember continues.

For anyone interested the solution to the ciwis problem looks like a ~42 mm Heavy Head, exact caliber and ammunition design tdb. This is mainly determined by exponential returns to rpm at smaller calibers with an inflection around 40mm as well as a logarithmic increase in dpm as you increase from minimum caliber.

Alright, Problem Solved, but first, I need to properly state the problem don’t I?

CIWIS, needs to be able to acquire fast moving targets and dispense accurate high velocity rounds. For killing missiles the rounds need to have an AP of 20 or better to not waste kinetic. The health of the smallest targets will be about 250hp.
Most high fire rate kinetic cannons end up being big, and therefore the turret turn rate is lowered and large amounts of time is lost acquiring new targets. The large volume also means that you cant have many of them on a craft. No matter how big and scary a CIWIS gets one is never enough due to target acquisition times.

What I didn’t realize at first is that even with laser accurate and extreme velocity ammo there is still detection error so you cant rely on the AI to ever be 100% accurate. So while it seems tempting to chuck a shell that does 250dmg that is actually really wasteful as the first shot is the most likely to miss.

After finding that with smaller caliber it is easy to have an accurate shell as well as a high velocity one then the fact that fire rate scales exponentially is just icing on the cake.

Solution: Have multiple, small-volume minimum gauge railgun turrets.
Shell: Follow the following formula using as many railgun casings as needed to reach 1500-1800 m/s
[Heavy Head] for efficient kinetic damage, its draw back is low AP value but at CIWIS velocity it will have plenty of AP to do full damage to missiles.

[Stabilizer Fin Body] x2 The gains in accuracy are worth it, also increases weight and therefore kinetic damage

[Super-cavitation Base] To fly through water for those pesky torpedoes, extra weight and kinetic

[Railguncasing] Increases the amount of velocity the rails can add to the tiny shell without increasing reload time much

[Gunpowder Casing] When building a cannon you will have some amount of barrel cooling, itd be a waste to not take advantage of such cheap propellant. Saves space dedicated to rail charging and is tuned to the gun to prevent low fire rate due to overheated barrel.

If you already have a couple of small min gauge CIWIS’ they will be able to clear small missiles effectively. Adding more of the same size would yield diminishing returns, so there should be a secondary CIWIS design of larger volume and caliber as returns from fire rate drop off past 1000rpm (and that is easy to reach at min gauge). Increasing caliber with the same shell will keep your firerate from becoming game breathtakingly extreme and take advantage of higher dps of larger shells. The fact they will occasionally miss will be countered by the small turrets and its high dps will kill the bigger missiles faster to allow small turrets more focus on small targets.

Because the CIWIS problem has to be solved on targets detected at only about 1000m and that some are moving in excess of 500m/s while others have over 20k health means mixed sized caliber and multiple turrets are required for a perfect solution. And particularly for small missiles the turret design of the CIWIS is a battle of diminishing returns.

I do have another project I have some python for I will be posting about soon. There will be pretty pictures to come!

Top Left is the new CIWIS Casemate nothing below deck) which is better than the much larger old design on the right. This new small design uses the two small railguns shown close to the camera. With their small size and weight the turret turns fast and the mantles chosen increase horizontal field of fire to decrease target acquisition time. Each gun is on a spinblocks of their own to allow gun elevation and thanks the ftd spinblock child mechanics it allows them to overlap.

I have stepped the caliber up to 19 mm on one and 20mm on the other as I had some extra absorption and rail charge to spare. The barrels being offset creates overlapping fields of fire and the mismatched calibers create staggered fire both leading to wasting fewer shells,

At 18mm each cannon is
484 rpm loader limit
264 rpm ammo intake
664 rpm barrel cooling
Enough rail charge for 347 rpm sustained
Enough absorption for 228 rpm sustained

Due to the burst fire then wait nature of CIWIS there is no point in spending the materials, volume and weight on a cannon that can do prolonged sustained fire. Ammo clips, rails and absorbers act as capacitors to sustain long bursts.

flying at 1665m/s @ 0.03 degrees inaccuracy (basically a laser) this tiny thing delivers ~140 dmg at 30 ap but more importantly, at 18mm each block of loader can do 44rpm

Also thanks to a mega update over the weekend I am now able to write a breadboard to control my main battle tank properly. The thing wants to drift and the AI could not steer the thing when moving above 50% throttle before I wrote this control system.

Pics of next project to come