Help with a Hero ability (should be easy)

Deathtrex

New Member
Reaction score
2
I'm about to make a undead hero and i want an ability a bit like War stomp but instead of dealing damage and stun, i want it to do damage over time.
 

Necrach

You can change this now in User CP.
Reaction score
62
Use any ability putting a buff on nearby units, could be Warstomp, Roar, etc. Make it affect enemies only. Put the AoE, the effect displayed, etc to whatever you wish. Then make a periodic event damaging all units with that buff every second.

Trigger:
  • DPS
    • Events
      • Time - Every 1.00 seconds of game time
    • Conditions
    • Actions
      • Set tempgroup = (Units in (Entire map) matching (((Matching unit) has buff Your Buff) Equal to True))
      • Unit Group - Pick every unit in tempgroup and do (Actions)
        • Loop - Actions
          • Unit - Cause YOURCASTER to damage (Picked unit), dealing 5.00 damage of attack type Spells and damage type Normal
      • Custom script: call DestroyGroup(udg_tempgroup)


you also need an event that is putting the caster into a unit variable used for "YOURCASTER"

Note that this is NOT a MUI trigger. If you want it MUI, I recommend creating dummy units owned by the casting player, casting a DPS spell on all units affected by the "stomp". Shout if you need help with that :eek:
 

Deathtrex

New Member
Reaction score
2
I tried to make this dummy with an ability, but i can't make it "cast" the ability at target buff enemies.
 

Necrach

You can change this now in User CP.
Reaction score
62
I tried to make this dummy with an ability, but i can't make it "cast" the ability at target buff enemies.

What goes wrong is often the Issue Order action. Maybe show us the trigger?
 

Deathtrex

New Member
Reaction score
2
I done this:

Dps stomp
Events
Unit - A unit Starts the effect of an ability
Conditions
(Ability being cast) Equal to Thunder Clap
Actions
Set DpsStomp_Caster = (Casting unit)
Set Tempgroup = (Units in (Entire map) matching (((Matching unit) has buff Thunder Clap) Equal to True))
Unit Group - Pick every unit in Tempgroup and do (Actions)
Loop - Actions
Set Stomp_Point = (Position of (Picked unit))
Unit - Create 1 DpsStomp Dummy for (Owner of DpsStomp_Caster) at Stomp_Point facing Default building facing degrees
Unit - Set level of Shadow Strike for (Last created unit) to (Level of Thunder Clap for DpsStomp_Caster)
Unit - Order (Last created unit) to Night Elf Warden - Shadow Strike (Picked unit)
Custom script: call RemoveLocation(udg_Stomp_Point)
Custom script: call DestroyGroup(udg_Tempgroup)

But it dosen't work :(
 

NBalfa

New Member
Reaction score
10
create a dummy ability for a unit based on shadow strike
the dummy unit must be a unit!!!
doesn't need to have the ability
there is a trigger which is like: add ability to (triggering unit)
don't dorget to add a specific time exparation to the dummy like 5 sec
are you sure the ability adds the buff thunderclap?
also shadow strike does dps per sec
do you want to have domage being dealt eg per 0.10 sec
(I thing that with a first look these are all your mistakes!)


(do you wan't me to create this ability for you?)
 

Inflicted

Currently inactive
Reaction score
63
I think he know's how to do it, is just having a few problems.

Possible problems:
-dummy units do not have enough mana.
-ordered ability is of a different type to that the unit has been given
-cast range could be a problem
-cast time (set the animation and cast times)
-perhaps the targets arent targetable (check the Targets Allowed under the ability)

and note that it does not remove the dummy units.
add an expiration timer to them.

---

EDIT: at the above post.

also shadow strike does dps per sec

yes that is what he wants. Read the first post.
and DPS means damage per second. What you said was 'damage per second per second' lol.

also

there is a trigger which is like: add ability to (triggering unit)

would give the ability to the casting unit. What he has is fine, he just has some small error, don't confuse him.
 

NBalfa

New Member
Reaction score
10
I suggest him sth
also
adding ability's to a no ability dummy is better than creating thousands of invisible dummys with the same stats with only difference that the units have different ability's
 

Deathtrex

New Member
Reaction score
2
I tried to fix what you guys said but can't make it work, i'm not that great at triggers yet. But sure :) if you want to create it for me it could be nice.
 

RangerX

I am justice!
Reaction score
69
here is a quick system [kind of] that i made that deal DPS using abilities. you have the one that you need + an slow that gives DPS [all the abilities will stack and you can have 1000/Numbers of spell that will dps units that will get dps ]

Edit: can someone check this triggers if they are leaking [there are the triggers from map]
Trigger:
  • AoeDPS
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Roar
    • Actions
      • Set TempPoint = (Position of (Triggering unit))
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • Dps_Integer Less than or equal to 1000
        • Then - Actions
          • Set Dps_Integer = (Dps_Integer + 1)
          • Set DPS_Ability[Dps_Integer] = Roar
          • Set DPS_Caster[Dps_Integer] = (Triggering unit)
          • Set DPS_Damage[Dps_Integer] = 10.00
          • Set DPS_Group[Dps_Integer] = (Units within 550.00 of TempPoint matching (((((Matching unit) is A structure) Equal to False) and (((Matching unit) is Mechanical) Equal to False)) and ((((Matching unit) is A ground unit) Equal to True) and ((((Matching unit) belongs to an enemy of (Owner o
        • Else - Actions
          • Set Dps_Integer = 1
          • Set DPS_Ability[Dps_Integer] = Roar
          • Set DPS_Caster[Dps_Integer] = (Triggering unit)
          • Set DPS_Damage[Dps_Integer] = 10.00
          • Set DPS_Group[Dps_Integer] = (Units within 550.00 of TempPoint matching (((((Matching unit) is A structure) Equal to False) and (((Matching unit) is Mechanical) Equal to False)) and ((((Matching unit) is A ground unit) Equal to True) and ((((Matching unit) belongs to an enemy of (Owner o
      • Custom script: call RemoveLocation(udg_TempPoint)

Trigger:
  • SlowAndDPS
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Slow
    • Actions
      • Set TempPoint = (Position of (Triggering unit))
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • Dps_Integer Less than or equal to 1000
        • Then - Actions
          • Set Dps_Integer = (Dps_Integer + 1)
          • Set DPS_Ability[Dps_Integer] = Slow
          • Set DPS_Caster[Dps_Integer] = (Triggering unit)
          • Set DPS_Damage[Dps_Integer] = 5.00
          • Set DPS_Group[Dps_Integer] = (Units within 750.00 of TempPoint matching (((((Matching unit) is A structure) Equal to False) and (((Matching unit) is Mechanical) Equal to False)) and ((((Matching unit) is A ground unit) Equal to True) and ((((Matching unit) belongs to an enemy of (Owner o
          • Custom script: call DestroyGroup(udg_Temp_Group)
        • Else - Actions
          • Set Dps_Integer = 0
          • Set DPS_Caster[Dps_Integer] = (Triggering unit)
          • Set DPS_Ability[Dps_Integer] = Slow
          • Set DPS_Damage[Dps_Integer] = 5.00
          • Set DPS_Group[Dps_Integer] = (Units within 750.00 of TempPoint matching (((((Matching unit) is A structure) Equal to False) and (((Matching unit) is Mechanical) Equal to False)) and ((((Matching unit) is A ground unit) Equal to True) and ((((Matching unit) belongs to an enemy of (Owner o
      • Custom script: call RemoveLocation(udg_TempPoint)

Trigger:
  • DpsDMGTrigger
    • Events
      • Time - Every 1.00 seconds of game time
    • Conditions
    • Actions
      • For each (Integer A) from 1 to 1000, do (Actions)
        • Loop - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • (Number of units in DPS_Group[(Integer A)]) Equal to 0
            • Then - Actions
              • Custom script: call DestroyGroup(udg_DPS_Group[bj_forLoopAIndex])
            • Else - Actions
              • Unit Group - Pick every unit in DPS_Group[(Integer A)] and do (Actions)
                • Loop - Actions
                  • Unit Group - Pick every unit in DPS_Group[(Integer A)] and do (Actions)
                    • Loop - Actions
                      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                        • If - Conditions
                          • DPS_Ability[(Integer A)] Equal to Roar
                          • ((Picked unit) has buff dps ) Equal to False
                        • Then - Actions
                          • Unit Group - Remove (Picked unit) from DPS_Group[(Integer A)]
                        • Else - Actions
                      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                        • If - Conditions
                          • DPS_Ability[(Integer A)] Equal to Slow
                          • ((Picked unit) has buff Slow 2) Equal to False
                        • Then - Actions
                          • Unit Group - Remove (Picked unit) from DPS_Group[(Integer A)]
                        • Else - Actions
              • Unit Group - Pick every unit in DPS_Group[(Integer A)] and do (Actions)
                • Loop - Actions
                  • -------- add to if contions the bufs you want to deal dmg --------
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • Or - Any (Conditions) are true
                        • Conditions
                          • ((Picked unit) has buff dps ) Equal to True
                          • ((Picked unit) has buff Slow 2) Equal to True
                    • Then - Actions
                      • Unit - Cause DPS_Caster[(Integer A)] to damage (Picked unit), dealing DPS_Damage[(Integer A)] damage of attack type Chaos and damage type Normal
                    • Else - Actions
 

Attachments

  • DPS-Demomap.w3x
    26.5 KB · Views: 132

Deathtrex

New Member
Reaction score
2
Danm long trigger, i also need it MUI? i Also! need a buff on enemy target for a later ability i alryde made, but i like that you made a map to show it <3
 

RangerX

I am justice!
Reaction score
69
it's full mui that spell from my map ... just copypaste it edit: and it's only gives damage if it pass the buff check
 
General chit-chat
Help Users
  • No one is chatting at the moment.

      The Helper Discord

      Members online

      No members online now.

      Affiliates

      Hive Workshop NUON Dome World Editor Tutorials

      Network Sponsors

      Apex Steel Pipe - Buys and sells Steel Pipe.
      Top