• 🏆 Texturing Contest #33 is OPEN! Contestants must re-texture a SD unit model found in-game (Warcraft 3 Classic), recreating the unit into a peaceful NPC version. 🔗Click here to enter!
  • It's time for the first HD Modeling Contest of 2024. Join the theme discussion for Hive's HD Modeling Contest #6! Click here to post your idea!

Venom stomp, nice and simple spell.

This bundle is marked as useful / simple. Simplicity is bliss, low effort and/or may contain minor bugs.
Stomp the ground, stunning nearby enemies and expel poison from the depths of the earth to the enemy, causing a temporary illness.

Level: 1•2•3•4

Stun: 0.6•1.2•1.8•2.4 seconds
Initial damage: 15•30•45•60
Temporal Damage: 7.5•15•22.5•30
Poison duration: 15•15•15•15 seconds
Cast range: 250•300•350•400

Cooldown: 0•0•0•0
Mana cost: 0•0•0•0




  • Venom stomp Variables
    • Events
      • Map initialization
    • Conditions
    • Actions
      • -------- The max range for cast the venom --------
      • Set VS_Range[1] = 300.00
      • Set VS_Range[2] = 350.00
      • Set VS_Range[3] = 400.00
      • Set VS_Range[4] = 450.00
      • -------- The duration off the effect --------
      • Set VS_EffectDuration[1] = 0.15
      • Set VS_EffectDuration[2] = 0.30
      • Set VS_EffectDuration[3] = 0.45
      • Set VS_EffectDuration[4] = 0.60
      • -------- Scale of the effect --------
      • Set VS_EffectScale[1] = 100.00
      • Set VS_EffectScale[2] = 200.00
      • Set VS_EffectScale[3] = 300.00
      • Set VS_EffectScale[4] = 400.00
      • -------- Turn on/off the effect --------
      • Set VS_EffectOnOff = True


  • Venom stomp Cast
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Venom stomp
    • Actions
      • Set VS_Caster = (Triggering unit)
      • Set VS_Level = (Level of Venom stomp for VS_Caster)
      • Set VS_Group = (Units within VS_Range[VS_Level] of (Position of VS_Caster) matching (((((Matching unit) is A structure) Equal to False) and (((Matching unit) is Magic Immune) Equal to False)) and ((((Matching unit) is alive) Equal to True) and (((Matching unit) belongs to a
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • VS_EffectOnOff Equal to True
        • Then - Actions
          • Unit - Create 1 Venom stomp [Effect] for (Owner of VS_Caster) at (Position of VS_Caster) facing Default building facing degrees
          • Set VS_Effect = (Last created unit)
          • Animation - Change VS_Effect's size to (VS_EffectScale[VS_Level]%, VS_EffectScale[VS_Level]%, VS_EffectScale[VS_Level]%) of its original size
          • Unit - Add a VS_EffectDuration[VS_Level] second Generic expiration timer to VS_Effect
        • Else - Actions
      • Unit Group - Pick every unit in VS_Group and do (Actions)
        • Loop - Actions
          • Unit - Create (Number of units in VS_Group) Venom stomp [Dummy] for (Owner of VS_Caster) at (Position of VS_Caster) facing (Angle from (Position of VS_Caster) to (Position of (Picked unit))) degrees
          • Set VS_Dummy = (Last created unit)
          • Unit - Set level of Venom stomp [Dummy] for VS_Dummy to VS_Level
          • Unit - Order VS_Dummy to Night Elf Warden - Shadow Strike (Picked unit)
          • Unit - Add a 0.50 second Generic expiration timer to VS_Dummy
      • Set VS_Caster = No unit
      • Set VS_Dummy = No unit
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • VS_EffectOnOff Equal to True
        • Then - Actions
          • Set VS_Effect = No unit
        • Else - Actions
      • Custom script: call DestroyGroup(udg_VS_Group)



Keywords:
venom, stomp, nice, spell, simple, blizz, like, war, craft, 3, for, hivework, hiveworkshop, beautiful, interrupts, cast, channeling
Contents

Venom stomp (Map)

Reviews
12th Dec 2015 IcemanBo: For long time as NeedsFix. Rejected. 11:34, 1st Jun 2011 Bribe: This has enough leaks to sink the Titanic! Oh, wait.

Moderator

M

Moderator

12th Dec 2015
IcemanBo: For long time as NeedsFix. Rejected.

11:34, 1st Jun 2011
Bribe:

This has enough leaks to sink the Titanic! Oh, wait.
 
Level 16
Joined
Jun 24, 2009
Messages
1,409
Too simple
  • Venom stomp Variables
  • Events
  • Map initialization
  • Conditions
  • Actions
  • -------- The max range for cast the venom --------
  • Set VS_Range[1] = 300.00
  • Set VS_Range[2] = 350.00
  • Set VS_Range[3] = 400.00
  • Set VS_Range[4] = 450.00
  • -------- The duration off the effect --------
  • Set VS_EffectDuration[1] = 0.15
  • Set VS_EffectDuration[2] = 0.30
  • Set VS_EffectDuration[3] = 0.45
  • Set VS_EffectDuration[4] = 0.60
  • -------- Scale of the effect --------
  • Set VS_EffectScale[1] = 100.00
  • Set VS_EffectScale[2] = 200.00
  • Set VS_EffectScale[3] = 300.00
  • Set VS_EffectScale[4] = 400.00
  • -------- Turn on/off the effect --------
  • Set VS_EffectOnOff = True
Can be done inside the spell trigger.
 
Level 10
Joined
Apr 25, 2009
Messages
296
Can be done inside the spell trigger.
That's called configuration.



======================================================

Instead of making 'Venom Group' just use the normal 'pick every unit in range matching condition' and put
  • Custom script: set bj_wantDestroyGroup = true
before the 'Unit Group' action.

'Position of VS_Caster' leaks, set it to a variable and destroy it when done via:

  • Custom script: call RemoveLocation(udg_(YOURVARIABLE))
===================================================

  • Set VS_Caster = No unit
    • Set VS_Dummy = No unit
is uneeded.

===================================================

The caster is not dealing the damage, the dummy units are. This can mess up systems - I suggest you change that.

===================================================

Instead of using arrays to make your spell level, create a formula like (250 + (50 x Level)) and it'll scale with the spell's level indefinitely.
 
  • Set VS_Range[1] = 300.00
  • Set VS_Range[2] = 350.00
  • Set VS_Range[3] = 400.00
  • Set VS_Range[4] = 450.00
  • -------- The duration off the effect --------
  • Set VS_EffectDuration[1] = 0.15
  • Set VS_EffectDuration[2] = 0.30
  • Set VS_EffectDuration[3] = 0.45
  • Set VS_EffectDuration[4] = 0.60
  • -------- Scale of the effect --------
  • Set VS_EffectScale[1] = 100.00
  • Set VS_EffectScale[2] = 200.00
  • Set VS_EffectScale[3] = 300.00
  • Set VS_EffectScale[4] = 400.00
These can all be done inside the spell trigger with a configurable formula.

  • Set VS_Range = (250 + (50 x Level))
  • Set VS_EffectDuration = (0.15 x Level)
  • Set VS_EffectScale = (100 x Level)
 
Level 16
Joined
Apr 4, 2011
Messages
995
  • Unit - Create (Number of units in VS_Group) Venom stomp [Dummy] for (Owner of VS_Caster) at (Position of VS_Caster) facing (Angle from (Position of VS_Caster) to (Position of (Picked unit))) degrees
  • //
Look at the part that says "create (number of units in VS_Group)" You are creating as many extra dummy units as there are in the group. Since you only add an expiration timer to one of them, you create a shit storm of extra units based on how many units are targetted. Here's an example, if you have 5 units that are targetted, five picked units times 5 created units equals 25 dummy units, but only 5 of those are destroyed. That means 20 extra units are floating around, taking up RAAM (basically the equation is x^2-x). Not only is this terrible, these extra units aren't even DOING anything. Only the last created unit performs any function.

Also, you have memory leaks in the form of points and groups, but I think archangel covered all of them.

EDIT: Change the group so it isn't in a variable, then use set bj_wantDestroyGroup = true right before the group to clear the leak. Also, you are just using position of the casting unit instead of assigning a variable to it. You need that variable for position so you can clear the memory leak. On an endnote, this spell seems like a bad rip-off of Venomancers ultimate from DotA
 
Last edited:
Top