# New Objective device DamageEvent() does not work until a function is called on the device

**URL:** <https://forums.unrealengine.com/t/new-objective-device-damageevent-does-not-work-until-a-function-is-called-on-the-device/1978422>\
**Category:** Issues and Bug Reporting\
**Tags:** fortnite-creative, unreal-editor-for-fortnite, fortnite\
**Created:** [August 16, 2024, 12:14pm UTC](https://forums.unrealengine.com/t/new-objective-device-damageevent-does-not-work-until-a-function-is-called-on-the-device/1978422 "2024-08-16T12:14:47Z")\
**Posts on this page:** 16\
**Page:** 1

<div class="post-metadata">

**Author:** ![b1gry4n](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@b1gry4n](https://forums.unrealengine.com/u/b1gry4n)\
**Post date:** [August 16, 2024, 12:14pm UTC](https://forums.unrealengine.com/t/new-objective-device-damageevent-does-not-work-until-a-function-is-called-on-the-device/1978422/1 "2024-08-16T12:14:47Z")

</div>

### Please select what you are reporting on:

Verse

### What Type of Bug are you experiencing?

Verse

### Summary

DamageEvent() on the objective device that was just added in the latest patch does not work until a function is called on the device.

### Steps to Reproduce

Place objective device, button device, and a custom verse script that subscribes to the objective DamageEvent() and the button interact event. have the button trigger a Heal() on the objective when pressed. have the damagedevent print a string showing the damage value. shoot the objective device (no print), press the button to heal the device, shoot the objective (print displayed)

### Expected Result

DamageEvent() should work without having to call a function on the device

### Observed Result

DamageEvent() does not work until function called on objective device

### Platform(s)

uefn pc

### Island Code

3770-3210-2295

### Additional Notes

Video: [https://drive.google.com/file/d/1GkBVb\_XaV0f7kXWZFbIiemPWGNvrjMj7/view](https://drive.google.com/file/d/1GkBVb_XaV0f7kXWZFbIiemPWGNvrjMj7/view)

---

<div class="post-metadata">

**Author:** ![DustinREDGames](https://d1ap1mz92jnks1.cloudfront.net/user_avatar/forums.unrealengine.com/dustinredgames/32/634988_2.png) [@DustinREDGames](https://forums.unrealengine.com/u/DustinREDGames)\
**Post date:** [September 19, 2024, 3:55pm UTC](https://forums.unrealengine.com/t/new-objective-device-damageevent-does-not-work-until-a-function-is-called-on-the-device/1978422/2 "2024-09-19T15:55:05Z")

</div>

I’m also seeing this. Here is a simple example, the DamagedEvent never triggers.

```auto
using { /Fortnite.com/Devices }
using { /Fortnite.com/Game }
using { /Verse.org/Simulation }
using { /UnrealEngine.com/Temporary/Diagnostics }

test_objective_events_device := class(creative_device):

    @editable
    Objective : objective_device = objective_device{}

    OnBegin<override>()<suspends>:void=
    {
        Objective.DamagedEvent().Subscribe(OnDamagedEvent)
        Objective.DestroyedEvent.Subscribe(OnDestroyedEvent)
    }

    OnDamagedEvent(Results:damage_result):void=
    {
        Print("hit!")
    }

    OnDestroyedEvent(Player:agent):void=
    {
        Print("destroyed!")
    }

```

---

<div class="post-metadata">

**Author:** ![Unreal\_Rider1983](https://d1ap1mz92jnks1.cloudfront.net/user_avatar/forums.unrealengine.com/unreal_rider1983/32/810194_2.png) [@Unreal\_Rider1983](https://forums.unrealengine.com/u/Unreal_Rider1983)\
**Post date:** [October 1, 2024, 8:03am UTC](https://forums.unrealengine.com/t/new-objective-device-damageevent-does-not-work-until-a-function-is-called-on-the-device/1978422/3 "2024-10-01T08:03:36Z")

</div>

Not only is `DamagedEvent()` not working, but unsubscribing it using `Cancel()` also fails to function.

```auto
# `DamagedEvent()` Not working.
test_device_1 := class(creative_device):
    
    @editable TestObj_1 : objective_device = objective_device{}

    OnBegin<override>()<suspends>:void=
        TestObj_1.DamagedEvent().Subscribe(OnTowerDamaged) # Not working.

    OnTowerDamaged(DamageResult:damage_result):void=
        gAmount := DamageResult.Amount
        Print ("Tower Damaged Amount = {gAmount}")

# `DamagedEvent()` The code is working.
# But! `.Cancel()` Not working.
test_device_2 := class(creative_device):

    @editable TestButton_1 : button_device = button_device{}
    @editable TestObj_2 : objective_device = objective_device{}

    OnBegin<override>()<suspends>:void=
        TestButton_1.InteractedWithEvent.Subscribe(OnTestButton_1)

        TestObj_2.GetHealth()
        TestObj_2.DamagedEvent().Subscribe(OnTowerDamaged)

    OnTowerDamaged(DamageResult:damage_result):void=
        gAmount := DamageResult.Amount
        Print ("Tower Damaged Amount = {gAmount}")

    OnTestButton_1(Agent:agent):void=
        getSubscription := TestObj_2.DamagedEvent().Subscribe(OnTowerDamaged)
        getSubscription.Cancel() # Not working.

```

---

<div class="post-metadata">

**Author:** ![Bug-Reporter](https://d1ap1mz92jnks1.cloudfront.net/user_avatar/forums.unrealengine.com/bug-reporter/32/997076_2.png) [@Bug-Reporter](https://forums.unrealengine.com/u/Bug-Reporter)\
**Post date:** [October 28, 2024, 10:40pm UTC](https://forums.unrealengine.com/t/new-objective-device-damageevent-does-not-work-until-a-function-is-called-on-the-device/1978422/4 "2024-10-28T22:40:54Z")

</div>

The status of FORT-812343 incident has been moved from ‘Needs Triage’ to ‘To Do’.

---

<div class="post-metadata">

**Author:** ![OohWowow](https://d1ap1mz92jnks1.cloudfront.net/user_avatar/forums.unrealengine.com/oohwowow/32/1003445_2.png) [@OohWowow](https://forums.unrealengine.com/u/OohWowow)\
**Post date:** [October 30, 2024, 6:06pm UTC](https://forums.unrealengine.com/t/new-objective-device-damageevent-does-not-work-until-a-function-is-called-on-the-device/1978422/5 "2024-10-30T18:06:33Z")

</div>

we are seeing this issue as well

---

<div class="post-metadata">

**Author:** ![ZuthoZ](https://d1ap1mz92jnks1.cloudfront.net/user_avatar/forums.unrealengine.com/zuthoz/32/901221_2.png) [@ZuthoZ](https://forums.unrealengine.com/u/ZuthoZ)\
**Post date:** [January 22, 2025, 11:29am UTC](https://forums.unrealengine.com/t/new-objective-device-damageevent-does-not-work-until-a-function-is-called-on-the-device/1978422/6 "2025-01-22T11:29:52Z")

</div>

is this fixed yet? facing similar issues

---

<div class="post-metadata">

**Author:** ![locutus](https://d1ap1mz92jnks1.cloudfront.net/user_avatar/forums.unrealengine.com/locutus/32/1093349_2.png) [@locutus](https://forums.unrealengine.com/u/locutus)\
**Post date:** [March 21, 2025, 3:25pm UTC](https://forums.unrealengine.com/t/new-objective-device-damageevent-does-not-work-until-a-function-is-called-on-the-device/1978422/7 "2025-03-21T15:25:24Z")

</div>

I’m experiencing the same issue as described above. Subscribing to DamagedEvent of Objective Device is doing nothing until it is interacted by some other Device, which is making usage of the Objective Device unnecessarily more complicated. UEFN v34.10.

---

<div class="post-metadata">

**Author:** ![locutus](https://d1ap1mz92jnks1.cloudfront.net/user_avatar/forums.unrealengine.com/locutus/32/1093349_2.png) [@locutus](https://forums.unrealengine.com/u/locutus)\
**Post date:** [May 6, 2025, 9:01pm UTC](https://forums.unrealengine.com/t/new-objective-device-damageevent-does-not-work-until-a-function-is-called-on-the-device/1978422/8 "2025-05-06T21:01:39Z")

</div>

This is still an issue after update to v35.00. Subscribing to DamagedEvent of Objective Device is doing nothing until it is interacted by some other Device or until some other function in Verse is called on it. Please, fix this soon, it already has 12 votes.

---

<div class="post-metadata">

**Author:** ![VysenaWoyka](https://d1ap1mz92jnks1.cloudfront.net/user_avatar/forums.unrealengine.com/vysenawoyka/32/1003669_2.png) [@VysenaWoyka](https://forums.unrealengine.com/u/VysenaWoyka)\
**Post date:** [May 7, 2025, 1:14pm UTC](https://forums.unrealengine.com/t/new-objective-device-damageevent-does-not-work-until-a-function-is-called-on-the-device/1978422/9 "2025-05-07T13:14:13Z")

</div>

Hello Locutus,

I’m also facing the issue.  
May I know what kind of function or “other interactions” on the objective device can fix the issue?

---

<div class="post-metadata">

**Author:** ![locutus](https://d1ap1mz92jnks1.cloudfront.net/user_avatar/forums.unrealengine.com/locutus/32/1093349_2.png) [@locutus](https://forums.unrealengine.com/u/locutus)\
**Post date:** [May 7, 2025, 1:30pm UTC](https://forums.unrealengine.com/t/new-objective-device-damageevent-does-not-work-until-a-function-is-called-on-the-device/1978422/10 "2025-05-07T13:30:50Z")

</div>

Hello, you can for example make a function to heal the objective device with a value of 0 like this: Objective.Heal(0.0)

So it will actually do nothing, but it will “activate” the device to be able to respond to DamageEvent. So after a heal will be executed, you can call different function which will contain something based on DamageEvent and it should work as it is working for me like that. Or you can try something different with Objective Device to do before DamageEvent as a separate function.

But don’t put Heal directly to a function called on a DamageEvent, because it will not work for this purpose (it needs to be “activated” by something before it could be registered).

---

<div class="post-metadata">

**Author:** ![VysenaWoyka](https://d1ap1mz92jnks1.cloudfront.net/user_avatar/forums.unrealengine.com/vysenawoyka/32/1003669_2.png) [@VysenaWoyka](https://forums.unrealengine.com/u/VysenaWoyka)\
**Post date:** [May 7, 2025, 1:40pm UTC](https://forums.unrealengine.com/t/new-objective-device-damageevent-does-not-work-until-a-function-is-called-on-the-device/1978422/11 "2025-05-07T13:40:30Z")

</div>

Indeed, using .Heal() works.  
I was using .Show() and .SetInvulnerable() and it wasn’t working.

This is still not normal though and I’ll report it too.

Thank you so much!

---

<div class="post-metadata">

**Author:** ![locutus](https://d1ap1mz92jnks1.cloudfront.net/user_avatar/forums.unrealengine.com/locutus/32/1093349_2.png) [@locutus](https://forums.unrealengine.com/u/locutus)\
**Post date:** [May 7, 2025, 1:41pm UTC](https://forums.unrealengine.com/t/new-objective-device-damageevent-does-not-work-until-a-function-is-called-on-the-device/1978422/12 "2025-05-07T13:41:27Z")

</div>

Cool. I am happy to hear that 🙂 Let’s hope that Epic will fix this soon.

---

<div class="post-metadata">

**Author:** ![YU7A](https://d1ap1mz92jnks1.cloudfront.net/user_avatar/forums.unrealengine.com/yu7a/32/1111452_2.png) [@YU7A](https://forums.unrealengine.com/u/YU7A)\
**Post date:** [October 29, 2025, 5:37pm UTC](https://forums.unrealengine.com/t/new-objective-device-damageevent-does-not-work-until-a-function-is-called-on-the-device/1978422/13 "2025-10-29T17:37:53Z")

</div>

I can confirm having the same problem. The fix is also working.

---

<div class="post-metadata">

**Author:** ![FondInstinct](https://d1ap1mz92jnks1.cloudfront.net/user_avatar/forums.unrealengine.com/fondinstinct/32/1125317_2.png) [@FondInstinct](https://forums.unrealengine.com/u/FondInstinct)\
**Post date:** [November 15, 2025, 11:51pm UTC](https://forums.unrealengine.com/t/new-objective-device-damageevent-does-not-work-until-a-function-is-called-on-the-device/1978422/14 "2025-11-15T23:51:10Z")

</div>

Can also confirm this still doesn’t work and now I have to heal my objective device 😢

---

<div class="post-metadata">

**Author:** ![Kawaguy90](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@Kawaguy90](https://forums.unrealengine.com/u/Kawaguy90)\
**Post date:** [December 29, 2025, 6:17am UTC](https://forums.unrealengine.com/t/new-objective-device-damageevent-does-not-work-until-a-function-is-called-on-the-device/1978422/15 "2025-12-29T06:17:13Z")

</div>

You’re able to get it to work by calling .Heal() on it even now?

---

<div class="post-metadata">

**Author:** ![GameDevTooGood](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@GameDevTooGood](https://forums.unrealengine.com/u/GameDevTooGood)\
**Post date:** [January 7, 2026, 5:59am UTC](https://forums.unrealengine.com/t/new-objective-device-damageevent-does-not-work-until-a-function-is-called-on-the-device/1978422/16 "2026-01-07T05:59:12Z")

</div>

@Kawaguy90 It seems to work as of 39.10. You call Objective.Heal(0.0) in your OnBegin function for example, and then you call Objective.DamagedEvent().Subscribe(OnObjectiveDamaged) and it should work as expected.

As an aside, this seems to be an alright workaround to the common problem of not being able to get the health of a creative\_prop inside verse, or not being able to tell how much damage was dealt to a creative\_prop. If you set a custom mesh for the objective device this might work well enough for some people’s use case. It did for my case.
