• 🏆 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!

Static field v0.02

This bundle is marked as useful / simple. Simplicity is bliss, low effort and/or may contain minor bugs.
A lighting spell that shock,knockback and damages all units in 500 AOE over caster.
Every unit get random 1.00 - 2.00 real damage every knockback unit.When he is shocked by lighting,he is knockbacking for (distance between caster and the shocked unit - 500).So if the shocked unit is closer to caster,he gets more damage.

>>>Spell can using only one caster yet<<<

>IF YOU WILL USE THIS SPELL PLEASE CREATE CREDITS FOR ME<
>RATE AND COMMENT<

Keywords:
shock, cause, damage, knock, back, knockback, lighting, pole, AOE, static, field,
Contents

Static field (Map)

Reviews
12th Dec 2015 IcemanBo: Too long time as NeedsFix. Rejected. 12:03, 20th Feb 2010 TriggerHappy: You are destroying the group inside knockback while the group is being enumerated. That's a very bad idea, move it outside the group enumeration...

Moderator

M

Moderator

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

12:03, 20th Feb 2010
TriggerHappy:

You are destroying the group inside knockback while the group is being enumerated. That's a very bad idea, move it outside the group enumeration. Also, temppoint leaks inside knockback because you set it to something else before destroying it.
 
Level 37
Joined
Mar 6, 2006
Messages
9,240
  • static field
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
    • Actions
      • Set TempPoint = (Position of (Triggering unit))
      • Set TempGroup = (Units within 200.00 of TempPoint matching (((Triggering unit) belongs to an enemy of (Owner of (Matching unit))) Equal to True))
      • Special Effect - Create a special effect at TempPoint using Abilities\Spells\Human\Thunderclap\ThunderClapCaster.mdl
      • Special Effect - Destroy (Last created special effect)
      • Custom script: call RemoveLocation(udg_TempPoint)
      • Unit Group - Pick every unit in TempGroup and do (Actions)
        • Loop - Actions
          • Custom script: call DestroyGroup(udg_TempGroup)
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • ((Picked unit) is alive) Equal to True
            • Then - Actions
              • Unit - Set life of (Picked unit) to ((Percentage life of (Picked unit)) - 15.00)%
              • Special Effect - Create a special effect attached to the origin of (Picked unit) using Abilities\Weapons\Bolt\BoltImpact.mdl
              • Special Effect - Destroy (Last created special effect)
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • (Custom value of (Picked unit)) Equal to 0
                • Then - Actions
                  • Set GameValue = (GameValue + 1)
                  • Unit - Set the custom value of (Picked unit) to GameValue
                • Else - Actions
              • Set TempValue = (Custom value of (Picked unit))
              • Set kb_bolean[TempValue] = True
              • Set kb_distance[TempValue] = 30.00
              • Set kb_caster[TempValue] = (Triggering unit)
              • Set TempPoint = (Position of (Triggering unit))
              • Set TempPoint2 = (Position of (Picked unit))
              • Set kb_angle[TempValue] = (Angle from TempPoint to TempPoint2)
              • Lightning - Create a Chain Lightning - Primary lightning effect from source TempPoint to target TempPoint2
              • Set kb_lighting[TempValue] = (Last created lightning effect)
              • Custom script: call RemoveLocation(udg_TempPoint)
              • Custom script: call RemoveLocation(udg_TempPoint2)
              • Unit - Turn collision for (Picked unit) Off
            • Else - Actions
  • knockback
    • Events
      • Time - Every 0.03 seconds of game time
    • Conditions
    • Actions
      • Set TempGroup = (Units in (Playable map area))
      • Unit Group - Pick every unit in TempGroup and do (Actions)
        • Loop - Actions
          • Custom script: call DestroyGroup(udg_TempGroup)
          • Set TempValue = (Custom value of (Picked unit))
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • kb_bolean[TempValue] Equal to True
            • Then - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • kb_distance[TempValue] Greater than 0.00
                • Then - Actions
                  • Set kb_distance[TempValue] = (kb_distance[TempValue] - 1.00)
                  • Set TempPoint = (Position of (Picked unit))
                  • Set TempPoint2 = (TempPoint offset by kb_distance[TempValue] towards kb_angle[TempValue] degrees)
                  • Unit - Move (Picked unit) instantly to TempPoint2
                  • Custom script: call RemoveLocation(udg_TempPoint)
                  • Custom script: call RemoveLocation(udg_TempPoint2)
                  • Set TempPoint = (Position of kb_caster[TempValue])
                  • Set TempPoint2 = (Position of (Picked unit))
                  • Lightning - Move kb_lighting[TempValue] to source TempPoint and target TempPoint2
                  • Custom script: call RemoveLocation(udg_TempPoint)
                  • Custom script: call RemoveLocation(udg_TempPoint2)
                • Else - Actions
                  • Set kb_bolean[TempValue] = False
                  • Unit - Turn collision for (Picked unit) On
                  • Lightning - Destroy kb_lighting[TempValue]
            • Else - Actions
1) You should have this as a condition in the cast trigger:
  • (Ability being cast) Equal to Static field
2) This should be at the endo of the first trigger, not inside the loop:
  • Custom script: call DestroyGroup(udg_TempGroup)
3) Don't use custom value of unit. It can interfere with other spells/systems. IMO, just about any resource that uses custom value of unit shouldn't be approved.

4) You need to trun on/off the knockback trigger when it's needed/not needed. Turn it on when the ability is cast (checking wheter it is on or not) and turn it off when there are no units to be knocked back.

5) Create a static group for the knockback, do not pick every unit in the map every 0,03 seconds. That's bad.

6) IMO, spells that are not v1.0 or higher should not be uploaded. Only upload finished spells. If you need feedback, post the spell in Triggers and Scipts section, or you can ask some forum member to take a look at your spell over a PM.

7) The spell is not easily customizeable and the documentation could be a bit better.

8) The idea is not that original, just a knockback with percentage of life damage.

9) In the knockbac trigger, you set position of picked unit to a variable twice. Make it so that it's only set once.

10) The spell is not MUI.

On a positive note, I didn't spot any leaks and the spell works as intended.

However at it's current state I can only rate it 0/5 and vote for rejection. Fix these issues and you'll get higher rating.
 
Level 21
Joined
Aug 9, 2006
Messages
2,384
Please, dude, judging from this spell "your spell system" is NOT good at all, please, before you upload spells, read some tutorials, or just trial and error around, and compare them to GUI spells currently uploaded on this site, so you can see what you do wrong. Check my signature (the resources stuff) for a few informations.
 
Level 1
Joined
Oct 2, 2011
Messages
4
You should stop being strict, as we all know his spell isnt good but you should encourage him to do better and help him not being mean. Because if your putting down on him, he will just give up... -_- so maby you should tell him the leaks and help him step by step without being strict? its just a idea.
 
Level 7
Joined
Dec 19, 2009
Messages
249
You should stop being strict, as we all know his spell isnt good but you should encourage him to do better and help him not being mean. Because if your putting down on him, he will just give up... -_- so maby you should tell him the leaks and help him step by step without being strict? its just a idea.

I'm against this... seriously, this sections has rules and it clearly says all spells must be MUI and leakless so... yeah, plus, maybe you havn't go once on the forum or tutorial but, it has alot of tutorial how to remove leaks and how to acheive MUI so yeah, it's not like spell's maker were hiding their way to make good spells. If they actually read, things like this would not happen
 
Top