So, in the discord we were discussing the tank drone, and how extremely tiny it must be despite its name. It's tonnage would probably make it much smaller than a person, if it has a similar density to real-world Unmanned Ground Vehicles. I was curious if this was true, and started looking into the weights of various weapons and designs, but most noticeable was the 120mm tank gun.
To my surprise, I found that in-game 120mm tank cannons weigh about 3-10% what modern guns of the same caliber weigh. Which makes sense when you consider loading and firing a cannon of that size ideally requires multiple strong adults. _(Side note: A player can reload and fire these guns about as well as a fully manned, fully trained gun crew. Or for autoloader variants, reload them several times faster than trained crews. Nevermind 155mm cannons.)_ Given how close much of the weapons technology is to modern weapons, I find it hard to believe CDDA materials are many times lighter than what exists now, otherwise soldiers would be running around with 30mm autocannons.
So these heavy weapons are grossly unrealistic in their weight and performance. I suppose the real issue here would be: does the community care? Is this a "problem" that people would rather hand-wave away for gameplay enjoyment, or should heavy armaments be balanced as realistically as possible like firearms are?
The Tanks mod is not well maintained. I'm sort of taking over maintenance of it, but it's low on a long lit of priorities.
If you want to calculate realistic volumes and weights for stuff in the Tanks mod, I certainly think that's a good idea and would support your PRs. If that means that someone's midget deathmobile no longer works well because it went from being a 7 ton armored car with a 120mm cannon to a 15 ton armored car and the engines aren't sufficient, I don't consider that to be a bad thing.
I do think there is space in CDDA for 100mm short howitzers, mounted on medium sized vehicles, to clear wreckage on roads. The Germans put a 1.5 ton, 75mm L40 PaK40 on the SdKfz 234/4 armored cars, and those only weigh ~12 tons with a 300 hp engine, and that's a perfectly reasonable design for CDDA.
If you want to change the weight of the tank bot, you're going to run into the problem that the sizes are hard coded in the vehicle collision code. The vehicle collision code isn't going to change any time soon, but those numbers are not good numbers, need to change for the butchery code anyway, and are fairly well contained so I think there's space to redefine them. You'll want to co-ordinate with nexusmrsep on it, though.
Just to clarify, this isn't primarily about the tank drone itself; it may be a problem, but how much a corpse weighs doesn't really affect the player much since it's already an immovable weight. (I do find anything with the "tank" prefix having armor so thin it cannot stop small arms problematic, but that deserves a separate issue post.) Right now I think the tank gun weight and performance is the primary issue since it affects players much more directly.
Concerning gun caliber, since there's been a tendency to up-gun literally everything after WW2 showed the relatively inadequacy of lightly armed vehicles. As such I believe the 105mm is the smallest American light tank "main gun" style armament still active in latest generation use. (Maybe it could go as low as ~75mm if there are some antique Walker Bulldogs, T92s, or the like in a boneyard somewhere).
There's already a 30mm IFV cannon in the totally-not-Bradley IFV, but I've noticed it's probably the rarest military vehicle by far, if it even spawns at all. It might need to be added to the map generation table if it's not already.
Looking at the Tanks mod, it seems the IFV is significantly less common than both tanks and howitzers, which seems completely backwards, if you consider how common they are in any kind of normal army. I've seen it once in-game though.
In the mainline military.json, there's two vehicles called Mechanized Infantry Carrier, one with an M60, and another with a Mk19. I don't think I've ever seen either of these in-game. The machine gun variant is listed in the "military_vehicles" group in vehicle_groups.json, the grenade launcher one seems to have been typoed against the APC with grenade launcher. Also, I don't know where this group shows up.
Back on topic of weapon systems, I'm proposing the following concrete changes:
120mm (manually-loaded) tank gun
120mm autoloading tank gun
120mm remote weapons system
Applies to all of the above weapons
Ammo changes
Other notes: I would like to see a 3rd caliber of weapon for lighter vehicles (tank drone, light tanks), possibly the 105mm used on lighter modern US vehicles. But I'm not yet as experienced with vehicle modification to be comfortable enough to do that, so I won't attempt that myself.
I don't want just the 120mm guns fixed. There's 155mm howitzers bouncing around, too, and I'd like to avoid a situation where only 120mm guns have realistic weights. Still, your proposed changes look good.
Apparently the US army handed out surplus 105mm howitzers to ski lodges for avalanche control. New England has some ski country in upper New York and Maine, so 105mm howitzers wouldn't be unreasonable.
I don't have time to write a lot of json, but vehicle modifications aren't too hard. What did you have in mind that isn't covered by the light tank?
I was just testing the waters, so to speak, seeing if the community would be amenable to a more realistic weapon stats. It was my plan to do 155mm alongside, or immediately after, the 120mm changes if there were no outstanding objections with it.
As for the 105 mm, I was hesitant because introducing a new vehicle weapon is a very thorough process:
Though I suppose much of the above could be achieved easier by simply copying the 120mm entries and re-naming them, then modifying the values.
I really like these numbers, it felt immensely silly to be able to pick up a 155mm howitzer and walk away with it. (Don't forget to include the barrel weight in your numbers.)
I would prefer to start with the 155mm weapons and work down.
All of them could be cleaned up and consolidated by using copy-from, possibly of an abstract "heavy cannon". Certainly if you're going to copy the 120mm entries to 105mm, it should be done via copy-from.
ChaosVolt (original author of Tanks) said that the underweight guns were an intentional balancing factor, because vehicles were too heavy and slow. I would prefer to fix the underlying issues instead of adding bandages.
Suggested values for the manual guns:
155mm - 6750 kg ( roughly 155/125^3 * 3000 kg )
120mm - 3000 kg
105mm - 2000 kg ( M101 howitzer on mount weighs 2260 kg)
81mm mortar - 41 kg (M252 Mortar, mounted as a direct fire gun for now)
60mm mortar - 21 kg (M224 Mortar, mounted as a direct fire gun for now)
30mm autocannon - 120 kg (M242)
Put the 105mm on the light tank and atomic mini-tank.
Relative weights:
tank_light: 3
tank_medium: 2
sp_howitzer: 1
mobile_gun_system: 3
ifv: 12
tank_atomic: 2
military_cargo_truck: 50
humvee: 25
humvee_gl: 25
apc: 20
apc_gl: 20
aapc-mg: 16
aapc-gl: 16
Scale according to vehicle group (ie, all those values should be x20 for the military_vehicles group) but about half of all military vehicles should be trucks or humvees (split evenly between the two chassis), apcs/aapcs/ifvs are most of the rest, and about 1 in 16 military vehicles will be heavy armor, with SP howitzers being very rare.
The 155-mm M1 Gun is listed as being only ~4350 kg (per TM 9-350). So 6 tons might be a bit excessive for the gun itself. The AP and HE rounds all fall in the 43-45kg range, so I think that would be a good value for the 155mm ammo's new weight.
I'd possibly tone down the number of supply trucks given the zombie apocalypse is more a "wartime" scenario, which would mean fewer non-combat vehicles would found in the field compared to combat vehicles.
Here's a list that should provide some inspiration. I'll confess there's a lot more tanks than I thought there'd be. And holy hell that's a lot of Humvees!
https://en.wikipedia.org/wiki/List_of_currently_active_United_States_military_land_vehicles
Also, the GL versions should probably be a lot less common than the MG versions. Those Mk19s are a pretty specialized weapon.
Your proposal gets a big +1 from me, fix the weights, then fix the vehicle code. If we leave values out of whack, that blocks the vehicle code fixes.
I couldn't find a source for the 155mm so I just scaled up the 120mm numbers. I can believe the "short" barreled, relatively low velocity howitzers weigh less than a scaled up 120mm long barrel high velocity tank gun. Go with HeadWar's numbers.
I thought the US Army was planning on replacing most M2s with Mk19s, but I'm not as up on current deployment patterns. If the ratio should be 4:1 or so, that's fine, too. I'd stick with 50% of the vehicles being support - even in a wartime deployment, you still have a 1:1 ratio of logistical tail to fighting tooth, and that's pretty generous for the tooth.
Has been resolved by https://github.com/CleverRaven/Cataclysm-DDA/pull/25037
Most helpful comment
The Tanks mod is not well maintained. I'm sort of taking over maintenance of it, but it's low on a long lit of priorities.
If you want to calculate realistic volumes and weights for stuff in the Tanks mod, I certainly think that's a good idea and would support your PRs. If that means that someone's midget deathmobile no longer works well because it went from being a 7 ton armored car with a 120mm cannon to a 15 ton armored car and the engines aren't sufficient, I don't consider that to be a bad thing.
I do think there is space in CDDA for 100mm short howitzers, mounted on medium sized vehicles, to clear wreckage on roads. The Germans put a 1.5 ton, 75mm L40 PaK40 on the SdKfz 234/4 armored cars, and those only weigh ~12 tons with a 300 hp engine, and that's a perfectly reasonable design for CDDA.
If you want to change the weight of the tank bot, you're going to run into the problem that the sizes are hard coded in the vehicle collision code. The vehicle collision code isn't going to change any time soon, but those numbers are not good numbers, need to change for the butchery code anyway, and are fairly well contained so I think there's space to redefine them. You'll want to co-ordinate with nexusmrsep on it, though.