Page MenuHomeFeedback Tracker

Add 6th parameter to HandleDamage event to indicate direct hit
Feedback, WishlistPublic

Description

It would be very great if we had a 6th parameter in the HandleDamage event that would indicate if the damage was inflicted from a direct hit by a physical object. A boolean would suffice. Falling damage should ideally return false.

Details

Legacy ID
2404996638
Severity
None
Resolution
Open
Reproducibility
N/A
Operating System
Windows 7
Category
Feature Request

Event Timeline

AgentRev edited Steps To Reproduce. (Show Details)Nov 8 2014, 4:14 PM
AgentRev edited Additional Information. (Show Details)
AgentRev set Category to Feature Request.
AgentRev set Reproducibility to N/A.
AgentRev set Severity to None.
AgentRev set Resolution to Open.
AgentRev set Legacy ID to 2404996638.May 7 2016, 7:47 PM

It would still be really useful to have this, as well as adding the other interesting params from the HitPart EH to HandleDamage. It would make damage adjustments and special interactions a lot easier.

Tenshi changed the task status from New to Reviewed.Jan 16 2023, 12:14 PM
Tenshi set Ref Ticket to Internal Ref.: AIII-55497.
Tenshi edited Steps To Reproduce. (Show Details)
Tenshi edited Additional Information. (Show Details)
Tenshi set Operating System to Windows 7.
Tenshi added a subscriber: Tenshi.Jan 16 2023, 12:38 PM

Thank you for requesting the feature.
Due to the current phase of Live Ops development in Arma 3, we cannot commit to any new features,
though we will try to consider them.

dedmen changed the task status from Reviewed to Feedback.Jan 17 2023, 11:25 AM
dedmen added a subscriber: dedmen.

Hand grenade hit is direct, fall damage isn't. I guess that's right
dev-branch

We talked about this in Discord and I'm just summarising it here for posterity.

The important part of the isDirect flag from the hitPart EH is detecting explosive splash damage. Apparently, the way this is done is hard-coded in a way that's specific to hitPart, and the engine isDirect check that Dedmen would prefer to use here can only distinguish fall damage. Explosive splash damage is registered as a direct hit. That's the version that was sent to dev branch at the time of this comment.

Since fall damage is already detectable by checking if the projectile type is "", and this wouldn't actually add a way to detect splash damage, the solution as implemented doesn't fulfil the core purpose and is mostly useless. Dedmen said he would prefer to revert the change rather than leave a mostly useless flag in the EH. [Note: I am recording that he said that, not whether it was removed.]

I still hope for a flag that correctly reports indirect damage in the future, but it seems like that's a much more complex task and may not be practical.

There is another useful use case for an isDirect flag.

Or perhaps renaming it to "isResidual" or something like that.

You see, when a projectile hits a body part depending on the body part the damage could be "duplicated" as "residual" damage to another body part.

An example could be that you get shot in the leg but also causes some damage to the torso.

In my particular use case sometimes torso hits would also register as head damage (or was it the other way around?)

Anyway, if one wanted to eliminate residual damage such as that, the only way to do it would be via a flag such as the one I am suggesting.

Residual damage seems to be in place to ensure that no lethal body parts can also cause death due to their residual damage to adjacent lethal body parts.

But such mechanic could be easily scripted anyway and forcing that mechanic limits what we can do via scripting with the HandleDamage EH.