How does one add weakspots to a vehicle?

Hi, you already got a couple of working solutions described in the posts above =)

(1) Add scene components (or anything that can be referenced) to your tank where you want the weakspots. So each scene component would be a weakspot. Then when the tank gets hit get the distance between the hit location and each scene component. If the hit location is closer than X distance to a scene component, then you’ve hit a weakspot. You could create a map that maps from the weakspot to the distance X, so each weakspot could have a different radius

-easy to setup
-you basically got spheres as weakspots then

(2) Add collision boxes/shapes or custom meshes as collision to your tank and use those for collision with projectiles (or whatever it is you use to do the damage). Then depending on which collision object you’ve hit, you deal different damage to the tank.

-can be more accurate since you can also place other shapes than spheres, might be a bit heavier on performance though
-you will then need to setup a system that maps from the collision object that has been hit to the damage/damage factor

Import your custom meshes, add them to your tank blueprint and then use them for collision with your projectiles (Hit Component inside the Hit Result).

(3) Use a skeletal mesh and add physics assets as collision to it (something similar to (2)). Then when you hit the tank get the bone name and deal different damage based on what bone you’ve hit.

-similar to (2), but you can directly get the bone name in the hit result, so no need to implement that manually you can directly read the damage/damage fac from a map you’ve made once

(4) Use a physical material mask (I never done this). If you hit something then you can get the physical material in the hit result. Seems that with a physical material mask you can apply several physical materials to your material. Then based on what physical material you’ve hit, you can deal different damage.

-you will need to create the textures for the mask, so setting this up will need some work
-will be most accurate in combination with complex traces
[HR][/HR]
Keep in mind you don’t need to make this too accurate, only as accurate that the player does not has the feeling that something is wrong.