Jump to content
Game-Labs Forum

Datamined damage model


Evil4Zerggin

Recommended Posts

I started looking at decompiled code.

General

  • This is from v68.
  • Most constants have the capability to be overridden from their defaults via a configuration file, and many are.
  • It's always possible I've misinterpreted something in the code, if you see something you think is off, let me know and I'll take another look.

Armor/Penetration

  • Fire control has armor equal to the main deck for both side and top hits. Turrets have side and top armor for side and top hits respectively. Secondaries and conning tower have the designed armor for both side and top hits. Towers and funnels have no armor.
  • Penetration has a random factor, currently +/- 16%.
  • HE shells have 33% of the penetration of AP shells, but don't suffer from azimuthal angling or ricochets. AFAICT they are affected by range/fall-of-shot effects to penetration though, which is a bit odd.
  • The listed belt/deck penetration already takes into account angle of fall, so only the azimuthal angle further increases the line-of-sight armor thickness for side hits.
    • This only applies to hits to hull sections. Part hits (turrets etc.) do not benefit from azimuthal angle.
  • If penetration is 4x the armor thickness after angling, the AP shell will never ricochet.
  • Otherwise, ricochet chance is nearly linear with azimuthal angle up to 70 degrees off normal, at which point 60% of AP shells will ricochet.
  • Turret hits have 40% chance to ricochet regardless of angle.
  • There is no such thing as athwartship armor, all side hits are assumed to be literally side hits, so it is impossible to penetrate the central belt sections with AP at extreme angles. However, bow and stern hits don't benefit from the full angle (only 30% for the very ends and 70% for the sections second from the end), so with enough raw penetration they can always be penetrated even at perfect bow/stern aspect.
  • If penetration is 5x or more the armor thickness after angling (but not less than a certain small value), the shell does an overpenetration for 55% damage.
  • Otherwise, if penetration is greater than armor thickness after angling, the shell does a full penetration for 100% damage.
  • Otherwise, if penetration is greater than 77.5% armor thickness after angling, the shell does a partial penetration for 37.5% damage.
  • Otherwise, the shell is blocked.

Ammo detonations

  • If a section with a turret or secondary takes a penetration, overpen, or torpedo, and penetration is greater than 150% of the turret or secondary armor thickness, there is a chance of ammo detonation. Azimuthal angle is not counted.
  • Bigger shells are more likely to detonate, reaching a maximum at 13" shells.
  • Base detonation chance for large shells is 1 in 5.
  • An ammo detonation is equal to 1350 shells' worth of damage; this can be reduced by up to 40% by number of bulkheads.

Taking damage

  • Hull sections appear to have "hit points" dependent only on displacement. (Internally hull section damage is stored as a percentage, and these "hit points" divide the percentage of health taken, but this is functionally equivalent to hit points.) If my math is correct, the hit points of each section are equal to (1 + displacement / 5000) * 134.2 in terms of gun damage units as seen in the ship designer. Internally, 20000 t displacement is used as the baseline, or 671.1 hit points per section.
  • If a part (turret etc.) is destroyed, remaining damage spills over to the parent hull section.
  • If the damage exceeds the section's starting hit points, it will spill over to another section.
    • Damage is only 85% as effective outside the original section.
    • The spillover damage travels from section to section, selecting randomly from the closest unvisited sections at each step.
    • Each section visited subtracts its entire starting hit points from the remaining spillover damage. In other words, a fully destroyed section absorbs just as much spillover damage as a pristine one. This tends to greatly limit the range of spillover unless the ship is very small or an ammo detonation is involved.
  • Displayed damage is expressed in terms of percentage of hull sections, so e.g. 350 damage = 3.5 hull sections destroyed. Though part hits might have some double-counting in the display.
  • Ships are sunk if any of the following are true:
    • 80% of total hull hit points are depleted.
    • 77.5% of hull sections are on fire.
    • 65% of total floodable volume is flooded.
Edited by Evil4Zerggin
  • Like 11
  • Thanks 2
Link to comment
Share on other sites

Special effects

  • A section is either on fire or not, and either holed or not. Modules are either damaged or not. There are no degrees in-between.
  • All sections damaged by a hit roll for fire/holing at the specified chances.
  • Larger ships are less likely to suffer from these effects; chance is multiplied by 5 / (1 + displacement / 5000), i.e. inversely proportional to hit points.
  • Chances depend on the size of the shell, but not damage directly. Generally this means that the shell base damage will matter, but not modifiers such as super-heavy shells, explosive type, etc. The chances specified lie somewhere between 9" and 10" shells. This is also the chance for torpedoes regardless of size.

Fire

  • The following hit types have a chance of starting fires:
    • Shell pens and overpens (10% base chance).
    • Deck hits (12.5% base chance).
    • Torpedo hits (15% base chance).
    • Ammo detonations (2000% base chance).
  • HE shells have 25x (!) chance of fire.
  • Sections on fire take 0.2% of the baseline hit points per second, or 1.34 damage per second. This can be reduced by up to 65% by bulkhead slider.
    • Comments in the source imply this is supposed to be 0.2% of the actual hit points rather than of the baseline hit points, but I'm not convinced. If I'm right, larger ships will take longer to burn down. 
    • Destroyed sections can be on fire, but fire damage does not spread directly to other sections, though the fire itself can.
  • Fires last at least 15 seconds. After this, they go out immediately if the section is at least 80% full of water, or with ~2.2% base chance per second otherwise. This is not affected by bulkhead slider.
    • The mean fire duration without modifiers is thus just over 60 seconds.
  • Fires have a ~2% chance to spread per second. This can be reduced by up to 65% by bulkhead slider.
    • The middle setting for bulkhead slider is the minimum necessary to clearly put out fires faster than they spread on average (in the absence of additional modifiers). Below this, your best hope is that you only suffered a single fire and it was put out before it could spread.

Flooding

  • Only underwater sections can be holed.
  • The following hit types have a chance of holing:
    • Shell pens and overpens (0.25% chance).
    • Torpedo hits (10% chance).
    • Ammo detonations (1500% chance).
  • Damaged sections are up to 5.75x times more likely to be holed depending on their damage level (after any damage from the hit is applied).
  • Holed sections take in 1.99 units of water per second, where the water capacity of a section is proportional to its hit points and a 20000 t ship's section has 100 capacity, but tracked independently from damage proper. This can be reduced by up to 48% by the bulkhead slider.
    • Similar to fire, comments in the source imply this is supposed to be 1.99% of the actual capacity rather than an absolute 1.99 but again I'm not convinced.
  • Holing lasts at least 40 seconds. After this, the hole is patched with ~0.3% chance per second, with bulkhead slider providing up to 2.5% chance more. Other bonuses only multiply the base 0.3% chance and not the additional chance from bulkhead slider.
  • Holed sections that are at least 20% full of water start adding water to adjacent underwater sections that are less full than they are. This happens at 7/8 of the rate of the primary flooding. This additional water is not subtracted from the holed section. Only the water is added; the holing itself does not spread.
  • Pumps remove ~0.28 water from each section per second. This can be increased by up to 40% by the bulkheads slider. Holed sections can be pumped, but completely destroyed sections cannot be pumped.

Module damage

  • These are engines (x3), rudder, conning tower, fire control.
  • Chances of module damage are as follows:
    • Shell pens and overpens: 50%
      • Pens and overpens to main tower: 1.35% chance of damaging conning tower, else 1.35% chance of damaging fire control
    • Torpedo hits: 75%
    • Ammo detonation: 160%
    • Rudder is only 0.8x as likely to be damaged.
  • Larger ships are less likely to suffer from module damage; chance is multiplied by 5 / (1 + displacement / 5000), i.e. inversely proportional to hit points.
  • Engines and rudder have a ~0.5% chance per second each to be repaired.
  • Modules in completely destroyed or flooded sections cannot be repaired.
Edited by Evil4Zerggin
  • Like 7
  • Thanks 4
Link to comment
Share on other sites

21 hours ago, Evil4Zerggin said:

Most constants have the capability to be overridden from their defaults via a configuration file, and many are.

This part interest me to the highest degree. You see I have been thinking about ways for us to help the dev with balance and stuff. I like modding, but I an aware that modding that early in alpha would make developement really difficult for them. But there might be ways for us to do it in a fashion that do not make it a nightmare for them. If we can have a config file and play with balance on our end then we could come up with better informed suggestion to pass to the dev and implemented into the game.

What do you think?

 

Edited by RedParadize
  • Like 4
Link to comment
Share on other sites

You could try unpacking and repacking the Unity resources if you really want. Though that is kind of a pain.

Shell hit location

  • First, determine whether it is a side or deck hit. Whether a shell hit strikes the side or deck is determined as if the shell were hitting a "L" shape made of a vertical section and a horizontal section, with the horizontal (deck) being twice as large as the vertical (belt).
  • Then, determine whether it hits a part (tower, funnel, turret, etc.) or the hull. For parts, the weight is proportional to the Target Signature contributed by the part. Each hull has an effective Target Signature for this purpose.
  • If the shell hits the hull, it will hit one of the top row of sections if it is a deck hit, and one of the other two rows if it is a side hit.
  • The azimuthal aspect determines the likelihood of sections being hit fore to aft.
    • The three center columns are most likely to be hit when broadside with a weight of 1. When end-on they have a weight of 0.5.
    • The two columns outside of that are most likely to be hit when 22.5 degrees off the closest end. When hit from end-on they have a weight of 0.857 on the close end and 0 from the far end. On the broadside they have a weight of 0.571.
    • The two most extreme columns are most likely to be hit from end-on, with a weight of 1 there on the close end. Their weight drops to zero when within 30 degrees of the far end. On the broadside they have a weight of 0.4.
Edited by Evil4Zerggin
  • Like 4
  • Thanks 1
Link to comment
Share on other sites

well i cant read code at all so, its great someone was able to do this regardless. The HE fire chance is mental there should be a percentage based for each shell and also filler taken so for example heavy HE shell fire chance equals 5% and tnt equals 12% totalling 17% fire chance in total instead of like 500% or something mental. Also i thought the pen threshold would of been x3 more than the armour needed but eh.

not sure why all side hits are blanket hits but im guessing they add to the complexity later. also regarding values for ships sinking i've never seen a ship sink under those circumstances with in-game values which means they aren't mirrored and probably should be so people do not get confused (80% hull damage needed to 'sink' a ship but requires 100% in game to do so).

also 40% pumped water is a bit mental as well considering how maximum bulkheads makes you almost immune to flooding death of any kind unless a ungodly amount of high caliber torpedoes hits yer chonk of a ship.

also regarding ammorack detonations because of the way the AI can crank everything north of a 100 and armour there ship out like made makes getting 1.5x pen almost impossible on big ships even when using the highest caliber avaliable and probs even highest pen buffs as well.

i mean as the game progresses hopefully some of that can be minimilised, but im guessing the devs are going for extremes atm and then finding the middle ground for now.

Link to comment
Share on other sites

18 hours ago, akd said:

What do you see odd about this, or did a “not” get left out?

Actually, now that you mention it, it's more complicated than I first thought. Most games seem to model HE shells as being contact fused and creating an isotropic explosion when they hit something. However, now that I think about it more, this doesn't make much sense physically:

  • I'm told that even relatively modest thicknesses of armor can block "pure" explosions in air.
  • The bursting charge is only perhaps 10-25% of the weight of even a HE shell, so a large fraction of the shell's energy is kinetic rather than explosive, and would still be directed along the direction of travel.
  • A shell doesn't simply vanish when it explodes, the shell body becomes fragments, and those fragments will primarily be traveling in the original direction.
  • Even HE shells can penetrate some armor, and they could be equipped with timed fuses rather than contact fuses.

So perhaps modeling a HE shell more like an AP shell with more damage but less penetration is actually more accurate, though in this case I would expect penetration to be affected by azimuthal angle as well. On the other hand, I would still expect some penetration lateral to the direction of travel due to the explosive charge, assuming it fuzes at least close to the ship.

11 hours ago, Skeksis said:

Is this regardless of armour thickness? e.g. if pen is 400mm but armour is 600mm, will the shell still do damage.

Fires/holing only applies to penetrations, overpenetrations, torpedo hits, and ammo detonations. The one exception is that non-penetrating deck hits can still cause deck fires.

Edited by Evil4Zerggin
Link to comment
Share on other sites

17 hours ago, DougToss said:

Brilliant work. Paging @RAMJB, @Steeltrap, @arkhangelsk

(TL;DR? Let's see where they go with it.)

@DougToss LOL

I read it when it was first posted (at ~4am here in Australia when I dropped a 'thanks' on it; it's now 6:11pm).

Haven't devoted any time to considering it in depth, thus haven't commented.

I will say at a high level it does more or less appear to work as I suspected it did when I wrote the thread about the different 'processes' that make up the tactical combat we see.

Without going into specifics, it's also fairly clear why in its present iteration it produces results that IMO aren't acceptable were they to remain in the finished product, which I'm sure they won't.

That last bit's rather important.

They needed a base system in order to have something we can play. They can alter it.

In fact I don't particularly mind how they model things, strange though that might seem. The results their chosen model creates are what matter.

I get interested in the model only after I continue to see results that I have every reason to believe, based on many years of reading plus posts from others containing applicable FACTS, are simply not acceptable to me. Things such as plunging fire HE being proving devastating against a well-armoured target as a means of crippling/sinking it when AP fired from the same gun and same range bounces off; that is nonsense, no matter how you got there. As is a 50mm AP round devastating a CL or CA at 4km.

Having seen those happening over and over, the model is worth seeing as it explains how that can happen. Which means it can also be developed to prevent them happening.

If their system continues to produce those clearly incorrect results all the way to release, I'll just have to deal with the fact that their version of "simulating the realities of these ships and weapons in combat", which let's face it is what the game is all about, will vary from how I would like to see it done. Depending on the nature of those results and their consequences on game play will determine whether I'm likely to continue to play.

That is, incidentally, along with the player base, the reason I quit WoWS having started in Alpha testing, too. Just so much more BS than I could stomach; the less you knew, the more likely you were to enjoy that game, lol.

Cheers

====================================

Any game is a bunch of processes. I'm a contract business consultant specialising in "business process improvement". I get hired by very large financial services corporations to work on a project or series of projects, always in a senior role focussed entirely on processes. Studying, pulling apart, changing and reassembling, or designing from scratch, or often mixing changing existing and designing new ones as the project requires.

That's why I've said several times any process needs to include a list of "MUST NEVER HAPPEN" results as part of its testing, as that's exactly what I've learned and include in my own work. We had a scandal here recently where two of the 4 largest banks fell foul of anti-money laundering regulation. Having worked for both of those organisations in the last 10 years, I could have a good guess how that happened. While you obviously have a long list of results you expect to see as you go through testing, both technical AND user acceptance, it's possible for them to produce all those results yet contain potentially terrible faults. That usually happens because something gets skipped/forgotten in the testing design (which let's face it can be a very long list of results to check) and thus CANNOT get discovered by the testing (if something isn't included as a required element, a test isn't going to be made for it).

Hence I always have a list of "MUST NOTS" in my pocket. Having been a compliance manager helps; I tend to ask myself "How could I break/cheat this if I wanted?" and design controls accordingly. In this case, I'd have the two examples I gave as illustrations of "must not" conditions. At some point, as I think I'm getting close to a product I'm ready to sell to the general public as 'complete and fit for purpose', I'm going to check that my "must nots" indeed "do not", lol. (I've an amusing story that shows some of the odd things that can happen in the corporate world, but this isn't supposed to be a post about me).

I've mentioned all this to encourage others to think of their "MUST NOTS" for this game, too. I try my best to limit them to things I can point to as 'fact', or at least "everything I've seen or read suggests that is not correct".

While it's trickier with a game in that some of the things we think must not happen could be based on personal preference as opposed to fact or need, but that doesn't mean it's not worth doing.

Plus this isn't anything to do with suggesting things that you'd LIKE to happen, or are prepared to accept compromising from strict reality in the interests of game play (such as inflated hit rates).

  • Thanks 1
Link to comment
Share on other sites

On 2/24/2020 at 2:54 PM, Evil4Zerggin said:

Actually, now that you mention it, it's more complicated than I first thought. Most games seem to model HE shells as being contact fused and creating an isotropic explosion when they hit something. However, now that I think about it more, this doesn't make much sense physically:

  • I'm told that even relatively modest thicknesses of armor can block "pure" explosions in air.
  • The bursting charge is only perhaps 10-25% of the weight of even a HE shell, so a large fraction of the shell's energy is kinetic rather than explosive, and would still be directed along the direction of travel.
  • A shell doesn't simply vanish when it explodes, the shell body becomes fragments, and those fragments will primarily be traveling in the original direction.
  • Even HE shells can penetrate some armor, and they could be equipped with timed fuses rather than contact fuses.

So perhaps modeling a HE shell more like an AP shell with more damage but less penetration is actually more accurate, though in this case I would expect penetration to be affected by azimuthal angle as well. On the other hand, I would still expect some penetration lateral to the direction of travel due to the explosive charge, assuming it fuzes at least close to the ship.

Fires/holing only applies to penetrations, overpenetrations, torpedo hits, and ammo detonations. The one exception is that non-penetrating deck hits can still cause deck fires.

Yes, HE in game seems to behave more like Common or Semi-AP shell, not like thin-cased, quick-fuzed HE shell.  Generally the latter was reserved for shore bombardment as it applicability to naval combat was limited.  If it is common shell or Semi-AP, then it should behave like AP just with less penetration and more post-penetration damage.

Splinter damage is a complex topic that is handled poorly in game.  I don’t think there is any accounting of secondary effects from splinters beyond hit point damage.  No splinters are generated by near misses and hits don’t seem to ever have splinter effects like you might see generated in the log during an RTW game.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...