[Bug] Self-Damage does not work in a UEFN project

Please select what you are reporting on:

Unreal Editor for Fortnite

What Type of Bug are you experiencing?

Devices

Summary

Setting the Island Settings to cause self-damage to the player does not seem to work. Using the Team Settings & Inventory Device does not work either.

Steps to Reproduce

  1. Use Island Settings to edit the parameters:
    Self-Damage on Hit Amount to 2.0
    Self-Damage Only on Non-Zero Damage to False
    Self-Damage Target filter to Non-Players
    Self-Damage Weapon Filter to Ranged

  2. Use the Epic “Pistol” weapon to test damage on objects to see if damage is caused.

  3. No damage occurs.

  4. Repeat settings on corresponding team for a Team Settings Device and note that this also does not change the outcome.

Expected Result

The expected result is for damage to be caused to the player when shooting objects- this works on an old Creative 1.0 map.

Observed Result

No damage is inflicted upon the player as expected, even with devices copy-pasted from a working 1.0 map. Either UEFN has broken this function or the Device conversion has.

Platform(s)

PC

Additional Notes

I did try to delete the converted device and set it up again, but this led to no change in the result. This is unfortunate for the Prop Hunt map I am trying to make.

Also not seeing results here.
I wish they’d just grey out options that aren’t implemented or at least answer these threads.

Same here. It seems there is no possibility to disable self-damage 


UCB-1351 incident has been created. Status is ‘Awaiting Validation’.

6 months later, I just ended up using a Verse script to do it for me
 not sure if it’s perfect but I got it to work in most cases.

using { /Fortnite.com/Characters }
using { /Fortnite.com/Devices }
using { /Fortnite.com/Game }
using { /Verse.org/Simulation }
using { /Verse.org/Simulation/Tags }

#Make a custom tag for my prop manipulators
prop_manip_tag := class(tag){}

self_damage_device := class(creative_device):
    
    #Get my array of Spawners belonging to the Hunters.
    @editable
    HunterSpawners : []player_spawner_device = array{}
    #Get my array of Spawners belonging to the Props.
    @editable
    PropSpawners : []player_spawner_device = array{}
    #Get a teleporter device used to switch teams on the first round.
    @editable
    Round1TeamSwitch : teleporter_device = teleporter_device{}

    #Is this Player a Hunter? Should this be in a custom player script?
    var IsHunter : logic = false

    OnBegin<override>()<suspends>:void=
        #For every Hunter Spawner, subscribe to (OnHunterSpawn)
        for(HunterSpawner : HunterSpawners):
            HunterSpawner.SpawnedEvent.Subscribe(OnHunterSpawn)

        #For every Hunter Spawner, subscribe to (OnPropSpawn)
        for(PropSpawner : PropSpawners):
            PropSpawner.SpawnedEvent.Subscribe(OnPropSpawn)
        
        #If a prop decides to switch teams using the teleporter, make them a Hunter.
        Round1TeamSwitch.TeleportedEvent.Subscribe(OnHunterSpawn)

    OnHunterSpawn(Agent : agent) : void=
        set IsHunter = true
        Print("IsHunter = true")
        #Get all objects tagged with prop_manip_tag
        TaggedList := GetCreativeObjectsWithTag(prop_manip_tag{})
        for (TaggedActor : TaggedList):
            if(PropManip := prop_manipulator_device[TaggedActor]):
                #Prop manipulator can check if a prop has been damaged, so subscribe to that.
                PropManip.DamagedEvent.Subscribe(OnPropDamage)

    OnPropSpawn(Agent : agent) : void=
        Print("IsHunter = false")
        set IsHunter = false

    OnPropDamage(Agent : agent) : void =
        if (Player := Agent.GetFortCharacter[]):
            if(IsHunter = true):
                #An Agent has a FortCharacter attached, where the Damage method can be called! Adjust as needed.
                Player.Damage(0.5)

If anyone has tips or feedback please let me know.

Ended up consolidating my self damage script into a game manager which initialized custom players to control variables on a per player basis.

Hi All,

I just noticed this bullet point in the 29.20 release notes

“The Self-Damage island setting now works correctly.”

Just wanted to update you here incase you missed it.

2 Likes

Doesn’t seem to actually be working though

Has anyone solved this problem yet?