Basically, SaMatra was fooling around with Arma 2 in Pascal, trying to make an extension to read parts damage on vehicles. I asked him to let me have a look at the code (not that I know anything about Pascal, lol) and then spent a day figuring out how to make it work with Arma 3. Not sure why, since Arma 3 has getHitPointDamage command already, but it is interesting to see what hit points are available and how damage propagates as well as this is the first extension which can reference the actual game object. Also, oh dear, Arma 2… I forgot how awkward it was.

The extension expects debug name of an object, str _obj basically. It won’t return anything for units, just vehicles and objects with hit points. Result is an array [[hitpoint1,hitpoint2,...],[damage1,damage2,...]]. You can use the following script to show real time damage information:

onEachFrame { _veh = str cursorTarget; _arr = call compile ("getHitPointDamage" callExtension _veh); _str = ""; { _str = _str + format [ "<t align='left'>%1</t><t align='right'>%2</t><br/>", _x, _arr select 1 select _forEachIndex ]; } forEach (_arr select 0); hintSilent parseText _str; };

Some hit points have no names, no idea why. Also Arma 3′s getHitPointDamage returns damage only for the 1st hit point it found. As you might find there are hit points with identical names, so when using getHitPointDamage command in Arma 3, it will only read 1st one. The extension also works with Arma 2:

This extension is not 100% crash proof, even though I have tried to cover many angles. Download