Random Poison Ability

hopy

Active Member
Reaction score
64
I was Trying to make a ability based on Shadow Strike wich gives the target 10% to get stunned every 3 seconds.
I got a trigger ... wich I realy think should work ... but it doesn't xD
I think there is a problem that makes that it doesn't work ... but I can't find it :D
Code:
Events
     Units - A unit Starts the effect of an ability
Conditions
     (Ability being cast) Equal to Poison Strike
Actions
     Set P_Caster_Point = (Position of Triggering unit)
     Set P_target = (Target unit of ability being cast)
     For each (Integer A) from 1 to (5 + (Level of Poison Strike for (Triggering unit))), do (Actions)
          Loop - Actions
               Wait 3.00 game-time seconds
               If (All Conditions are True) than do (Then Actions) else do (Else Actions)
                    If - Conditions
                         (Random integer number between 1 and (11 - (Level of Poison Strike for (Triggering unit)))) Equal to 1
                    Then - Actions
                         Unit - Create 1 Dummy Unit for (Owner of (Triggering unit)) at P_Caster_Point facing Default building facing degrees
                         Unit - Add Poison Strike [Dummy] to (Last created unit)
                         Unit - Order (Last created unit) to Human Mountain King - Storm Bolt P_target
                         Wait 0.20 game-time seconds
                         Unit - Remove (Last created unit) from the game
                    Else - Actions
                         Do nothing

Plz help :D
(I don't think I will be able to reply in a ... lots of hours ... (Sleep/School/Work -,- so much))
 

Cold

New Member
Reaction score
4
The way you have it set up now it simply loops 5 times so it waits 3 seconds and then runs the chance to stun 5 times.

Edit: I'll just rewrite it for you... This should work, I haven't tested it but I cleared up your memory leak and fixed the potential unit loss after the .20 second wait.

Also don't use the Do Nothing action as it literally does nothing except take up space.

Code:
Events
     Units - A unit Starts the effect of an ability
Conditions
     (Ability being cast) Equal to Poison Strike
Actions
     Set P_Caster_Point = (Position of Triggering unit)
     Set P_Caster = (Triggering Unit)
     Set P_target = (Target unit of ability being cast)
     Trigger - Turn on (Trigger 2)
     Wait X seconds
     Trigger - Turn off (Trigger 2)
     Custom Script: call RemoveLocation(udg_P_Caster_Point)

Code:
Trigger 2:
Events

Periodic Event - Every 3 seconds

Condition

Boolean - P_Target is alive equal to (True)

Actions
               If (All Conditions are True) than do (Then Actions) else do (Else Actions)
                    If - Conditions
                         (Random integer number between 1 and (11 - (Level of Poison Strike for (P_Caster)))) Equal to 1
                    Then - Actions
                         Unit - Create 1 Dummy Unit for (Owner of (P_Caster)) at P_Caster_Point facing Default building facing degrees
                         Unit - Add Poison Strike [Dummy] to (Last created unit)
                         Set Variable - (P_Dummy) = Last Created Unit
                         Unit - Order (P_Dummy) to Human Mountain King - Storm Bolt P_target
                         Add a 5 second expiration timer to (P_Dummy)
                    Else - Actions
 

LightChaosma

New Member
Reaction score
60
lemme clean that for ya

Code:
Events
     Units - A unit Starts the effect of an ability
Conditions
     (Ability being cast) Equal to Poison Strike
Actions
     Set P_Caster_Point = (Position of Triggering unit)
     Set P_target = (Target unit of ability being cast)
     [COLOR="Red"]set P_caster = (triggering unit)[/COLOR]
     For each (Integer A) from 1 to (5 + (Level of Poison Strike for ([COLOR="red"]P_caster[/COLOR]))), do (Actions)
          Loop - Actions
               Wait 3.00 game-time seconds
               If (All Conditions are True) than do (Then Actions) else do (Else Actions)
                    If - Conditions
                         (Random integer number between 1 and (11 - (Level of Poison Strike for ([COLOR="red"]P_caster[/COLOR])))) Equal to 1
                    Then - Actions
                         Unit - Create 1 Dummy Unit for (Owner of ([COLOR="Red"]P_caster[/COLOR])) at P_Caster_Point facing Default building facing degrees
                         Unit - Add Poison Strike [Dummy] to (Last created unit)
                         Unit - Order (Last created unit) to Human Mountain King - Storm Bolt P_target
                         [COLOR="red"]add a 1 second experation timer to last created unit[/COLOR]
                    Else - Actions
                         [COLOR="Yellow"]Do nothing > unnecesary[/COLOR]

make sure the dummyskill has 9999999 range, and 0 mana cost, no tech reqs

Cold, why split it in 2 triggers. like that you have 1 trigger that sets the vars, and 1 trigger that ehm, every three seconds, it exeecutes something that also checks every 3 seconds, so say after 3 sec you have 10% chance, after 5 sec you have 5 * 10% chance...
 

Trithilon-V2

New Member
Reaction score
20
Last i checked waits dont work in loops.....

Use a repeating timer..... have a counter that counts the number of times the timer has expired. everty time the timer expires there is a 10% chance of the stun ability being cast.
 
General chit-chat
Help Users
  • No one is chatting at the moment.

      The Helper Discord

      Members online

      Affiliates

      Hive Workshop NUON Dome World Editor Tutorials

      Network Sponsors

      Apex Steel Pipe - Buys and sells Steel Pipe.
      Top