If you want to detect a damage then you need to create a Child Actor Component inside of your BP and add the BP_PenetrationZone class. After that, you will be able to setup this blueprint. You can change some values:
Chance of Breaking Through – this variable was designed to control a change of breaking through. You can see how it works here:
bImmediatelyDestroy – if this is true, then the machine will be destroyed if something causes any damage
• E_Part - This variable can help you control the part of the vehicle that can be damaged. For example, if you want to update our system and create a system that can stop the damaged part from working (for example, if someone destroys the cannon, the tank will not be able to fire), you can use this variable to get the destroyed component.
ShouldHasImpact – you can set this variable in ‘true’ to see effects when the BP_PenetrationZone will be damaged. The next variable will help you to control WHICH effect you will see.
PhysOverridenMat – setup this variable and open the DT_Impacts. Here you can control a particle that will be activated when someone will damage the BP_PeentrationZone.
ListOfWeakness is an array variable. It solve apply damage or not. Our damage system is based on a different damage types. Each shell, manpads, bullet has its own damage type. For example, let’s take look on the BP_TankShell.
If you want to detect damage from the BP_TankShell, then you need to do like that:
If you want to apply damage from a tank shell and weapon bullet (for example) then just add a new damage type in the array.
Degree of protection is designed to decrease applied damage. It is like an armor that help you to avoid full damage.