Brett C
Frontier
Greetings Commanders,
Recently and over time, we've seen a fair amount of discussions regarding game mechanics, such as damage and defenses. Mark Allen joins us today to discuss such!
Recently and over time, we've seen a fair amount of discussions regarding game mechanics, such as damage and defenses. Mark Allen joins us today to discuss such!
There's been a fair bit of discussion and several questions/issues raised about the damage mechanics in Elite: Dangerous. Currently there's comparatively little concrete information out there about how it works, which I'd like to rectify. In this post I'm going to try and clarify how things currently work, some of the reasons why they work that way, and a brief discussion on where we're headed next. So, the core question - What actually happens when your shot hits a ship?
There's an important concept to explain first: Damage types and Defence. Elite currently uses 3 types of damage: Thermic, Kinetic and Explosive (plus technically a fourth unmodifiable one used only for collisions). Every object that can be damaged also has Defences - a multiplier for each damage type, so shields take 120% damage from Thermic weapons but are resistant to Kinetic and highly resistant to Explosive damage. Reactive and Mirrored armour will adjust the Defences of your hull to different damage types.
With that in mind, when you hit a shield the process is fairly simple - the damage is multiplied by the shields' defences and health subtracted. If damage spills over after bursting the shield it will be applied to the hull but otherwise stops there.
If you hit the hull then a much more complex process kicks off:
1) The first step is to multiply the damage dealt by the armours' defences as for shields.
2) There's a second step in damage reduction that's used only for hulls - Hardness. Each armour has a Hardness value and each weapon has a Piercing value, all damage is multiplied by:
Min(1.0 , Piercing / Hardness)
So a small pulse laser (20) would deal full damage to a sidewinder (also 20), but less than a third damage to an anaconda (65). The main intent of this mechanic is not to penalise small ships, but to make large weapons effective against large ships without one-shotting smaller vessels - they don't actually do that much more flat damage than a small weapon but by piercing much better are far more effective against the harder target.
3) Next we decide if the shot has penetrated the armour. This is a random chance that scales with current hull health. The exact values vary per weapon though a typical example is 40% chance when you have full health, 80% when close to death. If the penetration roll fails then we deal all damage to the hull and skip to step 8.
4) Every ship has a Hit Layout of internal and external modules:
View attachment 52140[An Imperial Courier with its layout being debug rendered: blue spheres indicate external objects, yellow are internal - some modules have both an internal and external sphere. Note that all the directional thrusters used to be hittable objects and are shown in this overlay, but are currently turned off as they were causing confusion when a shot at the nose of the ship hit a thruster and damaged the engines unexpectedly.]
These spheres are used in two ways, if the point you hit is inside an external (blue) sphere then that module is the one that was hit, skip to step 7. If you missed, then the internal spheres will be used in the next steps.
5) If the shot has penetrated and not hit an external module we need to know how far it went into the guts of the ship. Each ship defines a standard penetration depth (usually 75% of its height), which is then modified up and down by weapons. Aside from the ever-powerful railgun which will go all the way through any ship currently in-game (but still can't hit a second ship!).
In the current live build (1.3.07) there's a bug where this penetration distance is much larger than intended, which has been fixed internally for 1.4.
6) Given where it hit, the shot direction and how far it penetrated we can draw a ray through the ships' internal layout to check what may have been hit. This ray is compared against all the internal (yellow) spheres and any that intersect are candidates - one of which will be picked at random weighted by how dead-on the hit to its sphere was. If nothing was hit, skip to 8.
7) Whether internal or external we now know that you've hit a module. The damage dealt will be split between the hull and this module in a ratio determined by the weapon - most of them deal the majority (80%+) to the module. There are no further defences applied at this point, as the Hull armour has already done its work (even for external modules, they're assumed to have toughened outer surfaces). It's at this point the module may also malfunction if it has taken enough damage.
8) Whatever damage that wasn't dealt to a module is now dealt to the hull.
9) After dealing damage there's one final step of applying secondary effects to the ship and/or modules hit. This encompasses options like heating up the ship or forcing additional malfunctions.
Where are we going next?
In the recent Dev Update Michael already touched on some changes that are coming to the power plant in 1.4, further down the line (no ETA I'm afraid) you will see more changes. We're not intending to overhaul the mechanics described above as we think they can give us a lot of good results, but are currently not being seen at their best. To that end we're looking at adjusting the layouts of many ships to reduce the feeling of randomness in module hitting (several of them have large overlapping internal spheres which confuse matters), making more varied use of the penetration chance and distance values on weapons, plus a raft of other changes we're still discussing and I don't want spoil/overpromise!
Hope that information clears up some of the unknowns about weapon damage, and congratulations for reaching the bottom of my Wall of Text. Fly safe and shoot well Commanders.
-Mark Allen