Feature Request: Expose Hit Bone Information in Verse damage_result struct
Summary
Currently, the Verse API’s damage_result
struct does not expose hit bone information, making it impossible to detect headshots or other location-based damage in UEFN. This is a critical limitation for creators wanting to implement skill-based gameplay mechanics.
Current Problem
When subscribing to a character’s DamagedEvent()
, the damage_result
struct only provides:
Target: damageable
- The damaged objectAmount: float
- Damage amountInstigator: ?game_action_instigator
- Who caused the damageSource: ?game_action_causer
- What caused the damage (but not accessible as weapon type)
There is no way to determine:
- Which bone was hit (head, body, limbs)
- The exact hit location coordinates
- The weapon type used
Use Cases Blocked
- Headshot detection systems for competitive gameplay
- Location-based damage (leg shots slow movement, arm shots affect aim)
- Weak point systems for boss battles
- Skill-based scoring systems
- Realistic damage models
Proposed Solution
Add one or more of the following to the damage_result
struct:
verse
damage_result := struct:
Target: damageable
Amount: float
Instigator: ?game_action_instigator
Source: ?game_action_causer
# NEW FIELDS:
HitBone: string # "head", "body", "leftarm", etc.
HitLocation: vector3 # World coordinates of impact
WeaponType: string # "assault_rifle", "sniper_rifle", etc.
IsCriticalHit: logic # true if hit a weak point/head
Current Workarounds (All Inadequate)
- Damage pattern matching - Fails due to weapon overlap (assault body damage = SMG headshot damage)
- Physical detection zones - Impossible with creature spawners
- Weapon tracking - No reliable way to know which weapon a player is currently using
Example Code That Should Work
verse
OnDamaged(Args: damage_result): void =
if (Args.HitBone = “head”):
Print(“Headshot detected!”)
AwardBonusPoints(Player, 100)
else if (Args.HitBone = “leg”):
ApplySlowEffect(Target)
Community Impact
This feature has been requested multiple times in the forums:
- Detect headshots via Verse in UEFN
- Getting the game_action_causer from DamagedEvent
- Many creators are blocked from implementing core gameplay features
Priority
HIGH - This is fundamental functionality that exists in regular Unreal Engine but is missing in UEFN. It blocks entire categories of gameplay mechanics that Fortnite players expect.
Additional Notes
- This data already exists in Fortnite’s engine (kill feed shows headshot icons)
- The information is available in regular Unreal Engine’s damage events
- Adding this would enable much more sophisticated gameplay without performance concerns
Please upvote if you need this feature for your islands!