Throughout much of Diep.io's history, curious statisticians and pro players have asked: Will Body Damage or Max Health let me ram better with the fewest points? After all, you can do more damage with Body Damage, but you also need Max Health to stay in the fight and keep doing damage. So which one will let you deal the most damage to another tank before having to retreat from low health? Through multiple calculations, I've found the answer. The stat arrangements below will provide equal or greater power when ramming other tanks than any other stat arrangement. Follow them while upgrading, and your performance may even improve!
|Level 5 & below: Max Health should be 2 or 3 points more than Body Damage|
|Level 6: Max Health should be 1, 2, or 3 points more than Body Damage|
|Level 7–15: Max Health should be 1 or 2 points more than Body Damage (unless maxed out)|
|Level 16: Max Health should be 1 or 2 points more or equal to Body Damage (unless maxed out)|
|Level 17–25: Max Health should be 1 point more or equal to Body Damage (unless maxed out)|
|Level 26: Max Health should be 1 point more/less or equal to Body Damage (unless maxed out)|
|Level 27–35: Max Health should be 1 point less or equal to Body Damage (unless maxed out)|
|Level 36: Max Health should be 1 or 2 points less or equal to Body Damage (unless maxed out)|
|Level 37 & up: Max Health should be 1 or 2 points less than Body Damage (unless maxed out)|
In light of these facts, I recommend alternating Max Health and Body Damage, but upgrading Body Damage twice around Level 26, then going back to regular alternating, then upgrading Body Damage twice yet again around Level 36, then going back to regular alternating again until you max out.
This was a complex analysis of Diep.io statistics, and took hours of work, but I can assure you to the best of my knowledge that these facts are precise. For more information on how I obtained these numbers, read on.
Essentially, I used dev figures for Health and Body Damage* (not to be confused with the stat points, I mean the actual numbers, including stuff like the base HP a tank without upgrades has) using the console command to show health values, and multiplied them together to get a measurement of overall ramming power, whether against tanks or bullets (since bullets are much like tanks that can't shoot).† Then, I calculated the figures for every permutation of stat upgrades and level upgrades and put them in a table using a Python script I wrote.‡ Finally, I analysed all the different figures by hand to discover these relationships in relative ramming strength for different levels.
*Body Damage was achieved by measuring the damage to a polygon dealt by a tank after one collision, which was achieved by keeping the tank static and letting the polygon naturally collide with the tank due to its own movement, as the knockback would prevent further collisions.
†There is a scientific basis for doing this, as the number of shots a tank can take versus another object depends on the floor of the tank's health divided by the enemy damage, and cross-multiplying notwithstanding the floor function gives a good approximation of the relative strengths — mathematical analysis shows that an entity with a higher number in Body Damage times Max Health ("Rampower") will never lose against an entity with a lower number, although they may tie.
‡I did not account for the Spike and its base body damage in these calculations, though I can easily calculate specific figures for the Spike later on. In any case, it's only that specific tank that is affected.