• 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.

[Trigger] DoT Trigger spell isn't properly working

Status
Not open for further replies.
Level 2
Joined
Jul 12, 2011
Messages
25
  • Envenomed Weapons
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Envenomed Weapons
    • Actions
      • Set EnvWepPlayer = (Triggering unit)
  • Envenomed Weapons Bonus
    • Events
      • Time - Every 3.00 seconds of game time
    • Conditions
    • Actions
      • Set EnvWepGroup = (Units in (Playable map area) matching (((Matching unit) has buff Envenomed Weapons ) Equal to True))
      • Unit Group - Pick every unit in EnvWepGroup and do (Actions)
        • Loop - Actions
          • Unit - Cause EnvWepPlayer to damage (Picked unit), dealing ((Real((Agility of EnvWepPlayer (Include bonuses)))) x 3.00) damage of attack type Normal and damage type Universal
I don't quite understand what could be acting up?
 
Level 2
Joined
Jul 12, 2011
Messages
25
Not working properly

I've followed the sample. I don't know if i'm not doing something wrong or if i'm just retarded, but here is what I got.
  • Envenomed Weapons
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Envenomed Weapons
    • Actions
      • Set DTA_Target = (Target unit of ability being cast)
      • Set DTA_DmgDealer = (Triggering unit)
      • Set DTA_TotalDamageDealt = (3.00 x (Real((Agility of DTA_DmgDealer (Include bonuses)))))
      • Set DTA_Time = 15.00
      • Set DTA_Interval = 3.00
      • Set DTA_SpecialEffect = <Empty String>
      • Set DTA_EffectAttachmentPoint = origin
      • Set DTA_Attacktype = Normal
      • Set DTA_DamageType = Normal
      • Trigger - Run Get DOT <gen> (checking conditions)
  • Get DOT
    • Events
    • Conditions
    • Actions
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • DT_Integers[1] Equal to 0
        • Then - Actions
          • Trigger - Turn on Deal DOT <gen>
        • Else - Actions
      • Set DT_Integers[1] = (DT_Integers[1] + 1)
      • Set DT_Integers[2] = (DT_Integers[2] + 1)
      • Set DT_Targets[DT_Integers[2]] = DTA_Target
      • Set DT_Dealers[DT_Integers[2]] = DTA_DmgDealer
      • Set DT_Damage[DT_Integers[2]] = DTA_TotalDamageDealt
      • Set DT_DamagePerInterval[DT_Integers[2]] = (DTA_TotalDamageDealt / (DTA_Time / DTA_Interval))
      • Set DT_Attacktype[DT_Integers[2]] = DTA_Attacktype
      • Set DT_DamageTypes[DT_Integers[2]] = DTA_DamageType
      • Set DT_IntervalReals[DT_Integers[2]] = (DTA_Interval / 0.01)
      • Special Effect - Create a special effect attached to the DTA_EffectAttachmentPoint of DTA_Target using DTA_SpecialEffect
      • Set DT_Effects[DT_Integers[2]] = (Last created special effect)
  • Deal DOT
    • Events
      • Time - Every 0.03 seconds of game time
    • Conditions
    • Actions
      • For each (Integer DT_Integers[3]) from 1 to DT_Integers[2], do (Actions)
        • Loop - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • DT_Targets[DT_Integers[3]] Not equal to No unit
            • Then - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • (DT_Targets[DT_Integers[3]] is dead) Equal to True
                • Then - Actions
                  • Set DT_ReachedInterval[DT_Integers[3]] = 0.00
                  • Set DT_ReachedDamage[DT_Integers[3]] = 0.00
                  • Special Effect - Destroy DT_Effects[DT_Integers[3]]
                  • Set DT_Targets[DT_Integers[3]] = No unit
                  • Set DT_Integers[1] = (DT_Integers[1] - 1)
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • DT_Integers[1] Equal to 0
                    • Then - Actions
                      • Set DT_Integers[2] = 0
                      • Trigger - Turn off (This trigger)
                    • Else - Actions
                • Else - Actions
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • DT_ReachedInterval[DT_Integers[3]] Greater than or equal to DT_IntervalReals[DT_Integers[3]]
                    • Then - Actions
                      • Set DT_ReachedInterval[DT_Integers[3]] = 0.00
                      • Set DT_ReachedDamage[DT_Integers[3]] = (DT_ReachedDamage[DT_Integers[3]] + DT_DamagePerInterval[DT_Integers[3]])
                      • Unit - Cause DT_Dealers[DT_Integers[3]] to damage DT_Targets[DT_Integers[3]], dealing DT_DamagePerInterval[DT_Integers[3]] damage of attack type DT_Attacktype[DT_Integers[3]] and damage type DT_DamageTypes[DT_Integers[3]]
                      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                        • If - Conditions
                          • DT_ReachedDamage[DT_Integers[3]] Greater than or equal to DT_Damage[DT_Integers[3]]
                        • Then - Actions
                          • Set DT_ReachedDamage[DT_Integers[3]] = 0.00
                          • Special Effect - Destroy DT_Effects[DT_Integers[3]]
                          • Set DT_Targets[DT_Integers[3]] = No unit
                          • Set DT_Integers[1] = (DT_Integers[1] - 1)
                          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                            • If - Conditions
                              • DT_Integers[1] Equal to 0
                            • Then - Actions
                              • Set DT_Integers[2] = 0
                              • Trigger - Turn off (This trigger)
                            • Else - Actions
                        • Else - Actions
                    • Else - Actions
                      • Set DT_ReachedInterval[DT_Integers[3]] = (DT_ReachedInterval[DT_Integers[3]] + 1.00)
            • Else - Actions
Help is appreciated.
 
Level 2
Joined
Jul 12, 2011
Messages
25
Trigger help

The damage isn't being done to the target. Would i have to change anything to cause it to trigger off a buff? The base ability is a passive - Envenomed Weapons.
 
A passive skill doesn't work with the event "Starts the effect of an ability". If you wish an active one, so that the trigger actually works, you can use Chain Lightning with targets set to 0 and damage set to 0 as well. Otherwise, you will need a Damage Detection System to check when the attacked unit receives damage from a source with Envenomed Weapons learned or you can add the hero in a unit group once the ability is learned (Unit - A unit learns a skill event) and check if the damage source is in that unit group (boolean comparison).
 
Status
Not open for further replies.
Top