• Listen to a special audio message from Bill Roper to the Hive Workshop community (Bill is a former Vice President of Blizzard Entertainment, Producer, Designer, Musician, Voice Actor) 🔗Click here to hear his message!
  • Read Evilhog's interview with Gregory Alper, the original composer of the music for WarCraft: Orcs & Humans 🔗Click here to read the full interview.

Trying to create custom aura, Need help

Status
Not open for further replies.
Level 1
Joined
Jun 30, 2017
Messages
6
So, I was trying to create a custom aura passively dealing X amounts of damage and healing friendly units standing near hero for YZ% of damage taken by hero using aura, I don't have much experience in doing such things so I got stuck at this. ( there should be screenshot uploaded with post ).
Zrzut ekranu (30).png Any help?
 
Level 14
Joined
Nov 4, 2006
Messages
1,241
if you want to use % of damage taken you will also need a damage detection system. while of course possible, you have chosen sth pretty difficult to learn things like that ;)

If you want x amount damage taken you can maybe use a modified unholy aura as base and add a hidden aura for your friendly units
 

ISL

ISL

Level 14
Joined
Nov 7, 2014
Messages
242
Usually I do auras using Periodic Events in my triggers, and I do it in good old MUI.
Just make it deal damage to enemies every X seconds (1 sec most likely).

Damage Engine is easy to use, and it will allow you to get that instance of Hero receiving damage.

When a hero who has this aura receives damage - heal all nearby allies for a percentage of that damage taken.
This way the spell won't heal allies every second, but instead it will heal them every time the hero gets damaged.

Another option is to store that damage being taken in a special variable, and when the loop trigger ticks - all allies are healed by a percentage of that variable.


I'll probably make this spell and post it here some time in the future.
 
Level 1
Joined
Jun 30, 2017
Messages
6
I've tried to do this according to what Tasyen, UreDe4D and xlSLx posted here and managed to do that.Zrzut ekranu (34).png Zrzut ekranu (35).png
Current issues are :
I Can't add aura to hero skillsm,
I don't know did trigger dealing damage is working ( due to first problem )
Any help?
 
Last edited:
I would let the grafic effect be played by real aura skills or at dmg/healing.
This solution works only if you give this skill to only 1 hero, for multiple units an other way of approaching is appropriated.

As soon learned enable the enter and loop trigger.
  • Learn
    • Events
      • Unit - A unit Erlernt eine Fertigkeit
    • Conditions
      • (Learned Hero Skill) Equal Your skill
      • (Learned skill level) Equal 1
    • Aktionen
      • Trigger - Turn on Enter <gen>
      • Trigger - Turn on Loop <gen>
  • Enter
    • Events
      • Unit - A unit comes within 800.00 of hero
    • Conditions
    • Actions
      • Einheitengruppe - Add (Triggering unit) to Affected
  • Loop
    • Events
      • Time - Every 1.00 seconds of game time
    • Conditions
    • Actions
      • Set Loc = (Position of Hero)
      • Set Damage = 40.00
      • Set Damagedealt = 0.00
      • Einheitengruppe - Pick every unit in Affected and do (Actions)
        • Schleifen - Aktionen
          • Set Loc2 = (Position of (Picked unit))
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • (Hero is alive) Equal True
              • ((Picked unit) is alive) Equal True
              • (Distance between Loc and Loc2) Smaller Equal 800.00
            • Then - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • ((Picked unit) belongs to an enemy of (Owner of Hero)) Equal True
                • Then - Actions
                  • Spezialeffekt - Create a special effect at Loc2 using Abilities\Weapons\RedDragonBreath\RedDragonMissile.mdl
                  • Spezialeffekt - Destroy (Last created special effect)
                  • Set OldLife = (Leben of (Picked unit))
                  • Unit - Cause Hero to damage (Picked unit), dealing Damage damage of attack type Spell and damage type Magie
                  • -------- Oldlife - current life = damage dealt --------
                  • Set Damagedealt = (Damagedealt + (OldLife - (Leben of (Picked unit))))
                • Else - Actions
            • Else - Actions
              • Einheitengruppe - Remove (Picked unit) from Affected
          • Custom script: call RemoveLocation(udg_Loc2)
      • Custom script: call RemoveLocation(udg_Loc)
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • Damagedealt Greater as 0.00
        • Then - Actions
          • -------- Overall dmg dealt -> 5% healing for each ally around --------
          • Set Healing = (Damagedealt x 0.05)
          • Einheitengruppe - Pick every unit in Affected and do (Actions)
            • Schleifen - Aktionen
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • ((Picked unit) belongs to an ally of (Owner of Hero)) Equal True
                • Then - Actions
                  • Unit - Set life of (Picked unit) to ((Leben of (Picked unit)) + Healing)
                  • Spezialeffekt - Create a special effect attached to the chest of (Picked unit) using Abilities\Spells\Undead\VampiricAura\VampiricAuraTarget.mdl
                  • Spezialeffekt - Destroy (Last created special effect)
                • Else - Actions
        • Else - Actions

How To Post Your Trigger
 
Level 1
Joined
Jun 30, 2017
Messages
6
I would let the grafic effect be played by real aura skills or at dmg/healing.
This solution works only if you give this skill to only 1 hero, for multiple units an other way of approaching is appropriated.

As soon learned enable the enter and loop trigger.
  • Learn
    • Events
      • Unit - A unit Erlernt eine Fertigkeit
    • Conditions
      • (Learned Hero Skill) Equal Your skill
      • (Learned skill level) Equal 1
    • Aktionen
      • Trigger - Turn on Enter <gen>
      • Trigger - Turn on Loop <gen>
  • Enter
    • Events
      • Unit - A unit comes within 800.00 of hero
    • Conditions
    • Actions
      • Einheitengruppe - Add (Triggering unit) to Affected
  • Loop
    • Events
      • Time - Every 1.00 seconds of game time
    • Conditions
    • Actions
      • Set Loc = (Position of Hero)
      • Set Damage = 40.00
      • Set Damagedealt = 0.00
      • Einheitengruppe - Pick every unit in Affected and do (Actions)
        • Schleifen - Aktionen
          • Set Loc2 = (Position of (Picked unit))
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • (Hero is alive) Equal True
              • ((Picked unit) is alive) Equal True
              • (Distance between Loc and Loc2) Smaller Equal 800.00
            • Then - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • ((Picked unit) belongs to an enemy of (Owner of Hero)) Equal True
                • Then - Actions
                  • Spezialeffekt - Create a special effect at Loc2 using Abilities\Weapons\RedDragonBreath\RedDragonMissile.mdl
                  • Spezialeffekt - Destroy (Last created special effect)
                  • Set OldLife = (Leben of (Picked unit))
                  • Unit - Cause Hero to damage (Picked unit), dealing Damage damage of attack type Spell and damage type Magie
                  • -------- Oldlife - current life = damage dealt --------
                  • Set Damagedealt = (Damagedealt + (OldLife - (Leben of (Picked unit))))
                • Else - Actions
            • Else - Actions
              • Einheitengruppe - Remove (Picked unit) from Affected
          • Custom script: call RemoveLocation(udg_Loc2)
      • Custom script: call RemoveLocation(udg_Loc)
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • Damagedealt Greater as 0.00
        • Then - Actions
          • -------- Overall dmg dealt -> 5% healing for each ally around --------
          • Set Healing = (Damagedealt x 0.05)
          • Einheitengruppe - Pick every unit in Affected and do (Actions)
            • Schleifen - Aktionen
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • ((Picked unit) belongs to an ally of (Owner of Hero)) Equal True
                • Then - Actions
                  • Unit - Set life of (Picked unit) to ((Leben of (Picked unit)) + Healing)
                  • Spezialeffekt - Create a special effect attached to the chest of (Picked unit) using Abilities\Spells\Undead\VampiricAura\VampiricAuraTarget.mdl
                  • Spezialeffekt - Destroy (Last created special effect)
                • Else - Actions
        • Else - Actions

How To Post Your Trigger
Thank you Taysen, aura is now working finally, the only issue that left is that it doens't require from hero to learn unholy aura and just deals damage since map is being launched.
Zrzut ekranu (36).pngThis is how it looks, I've did everything as you pointed yet I still have the problem that there is no way to make learning unholy aura a requirement.
What shall I try to fix this now?
( I was trying to post trigger but Polish letters in trigger text were bugging code editor so I decided to upload ( another ) screenshot instead ).
 
Status
Not open for further replies.
Top