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

Lightning Field V 1.0

This bundle is marked as useful / simple. Simplicity is bliss, low effort and/or may contain minor bugs.
What does it do
After Targeting a point, a lightning aura will be created then will be separated into 7 other lightning auras: on in the air, one on the target point and 5 around the target point. Lightning will be created linking all the auras.
The auras will spin around the target damaging enemy units and paralyzing them, they will spin faster and faster till they explode in a massive lightning strike heavily damaging and paralyzing enemy units


Special Notes
SPELL IS NOT MUI
Screenshot is not one of the spell, again, screenshots are not working for me


Credits
The only credits is for the effects and sorry i don't remember names:
Credits for whomever made :
-Naked Lightning Elemental
-Orb of Lightning
-Lightning Aura

Triggers
  • Lightning Field Cast
    • Events
      • Unit - A unit Begins casting an ability
    • Conditions
      • (Ability being cast) Equal to Lightning Field
    • Actions
      • Set Lightning_Field_Caster = (Triggering unit)
      • Set Lightning_Field_Target = (Target point of ability being cast)
      • Set Lightning_Field_AngleSpeed = 0.02
      • Set i = 600
      • For each (Integer x) from 1 to 6, do (Actions)
        • Loop - Actions
          • Unit - Create 1 Lightning Field dummy for (Owner of Lightning_Field_Caster) at Lightning_Field_Target facing Default building facing degrees
          • Set Lightning_Field_dummy[x] = (Last created unit)
      • Unit - Create 1 Lightning Field dummy high for (Owner of Lightning_Field_Caster) at Lightning_Field_Target facing Default building facing degrees
      • Set Lightning_Field_dummy[7] = (Last created unit)
      • Wait 1.00 seconds
      • Trigger - Run Lightning Field Unit Move <gen> (ignoring conditions)
  • Lightning Field Unit Move
    • Events
    • Conditions
    • Actions
      • For each (Integer x) from 1 to 5, do (Actions)
        • Loop - Actions
          • Set temp_location = (Lightning_Field_Target offset by 500.00 towards ((360.00 / 5.00) x (Real(x))) degrees)
          • Unit - Order Lightning_Field_dummy[(x + 1)] to Move To temp_location
          • Set Lightning_Field_Angle[x] = ((360.00 / 5.00) x (Real(x)))
          • Custom script: call RemoveLocation(udg_temp_location)
      • Animation - Change Lightning_Field_dummy[7] flying height to 600.00 at 600.00
      • Wait 1.00 seconds
      • Trigger - Run Lightning Field Lightnings <gen> (ignoring conditions)
  • Lightning Field Lightnings
    • Events
    • Conditions
    • Actions
      • For each (Integer x) from 2 to 2, do (Actions)
        • Loop - Actions
          • Lightning - Create a Forked Lightning lightning effect from source (Position of Lightning_Field_dummy[x]) to target (Position of Lightning_Field_dummy[(x + 1)])
          • Set Lightning_Field_lightning[(x - 1)] = (Last created lightning effect)
      • Wait 0.01 seconds
      • For each (Integer x) from 3 to 3, do (Actions)
        • Loop - Actions
          • Lightning - Create a Forked Lightning lightning effect from source (Position of Lightning_Field_dummy[x]) to target (Position of Lightning_Field_dummy[(x + 1)])
          • Set Lightning_Field_lightning[(x - 1)] = (Last created lightning effect)
      • Wait 0.01 seconds
      • For each (Integer x) from 4 to 4, do (Actions)
        • Loop - Actions
          • Lightning - Create a Forked Lightning lightning effect from source (Position of Lightning_Field_dummy[x]) to target (Position of Lightning_Field_dummy[(x + 1)])
          • Set Lightning_Field_lightning[(x - 1)] = (Last created lightning effect)
      • Wait 0.01 seconds
      • For each (Integer x) from 5 to 5, do (Actions)
        • Loop - Actions
          • Lightning - Create a Forked Lightning lightning effect from source (Position of Lightning_Field_dummy[x]) to target (Position of Lightning_Field_dummy[(x + 1)])
          • Set Lightning_Field_lightning[(x - 1)] = (Last created lightning effect)
      • Wait 0.01 seconds
      • Lightning - Create a Forked Lightning lightning effect from source (Position of Lightning_Field_dummy[6]) to target (Position of Lightning_Field_dummy[2])
      • Set Lightning_Field_lightning[5] = (Last created lightning effect)
      • Wait 0.01 seconds
      • For each (Integer x) from 1 to 6, do (Actions)
        • Loop - Actions
          • Set p = Lightning_Field_Target
          • Set p1 = (Position of Lightning_Field_dummy[x])
          • Custom script: set udg_Lightning_Field_lightning[udg_x+5] = AddLightningEx("FORK", true , GetLocationX(udg_p), GetLocationY(udg_p), GetLocationZ(udg_p) + 600, GetLocationX(udg_p1), GetLocationY(udg_p1), GetLocationZ(udg_p1) + 0)
      • Custom script: call RemoveLocation(udg_p)
      • Custom script: call RemoveLocation(udg_p1)
      • Wait 0.50 seconds
      • Animation - Change Lightning_Field_dummy[7] flying height to 100.00 at 100.00
      • Trigger - Turn on Lightning Field move <gen>
  • Lightning Field move [OFF]
    • Events
      • Time - Every 0.01 seconds of game time
    • Conditions
    • Actions
      • Set i = (i - 1)
      • For each (Integer x) from 1 to 5, do (Actions)
        • Loop - Actions
          • Set Lightning_Field_Angle[x] = (Lightning_Field_Angle[x] + Lightning_Field_AngleSpeed)
          • Set temp_location = ((Position of Lightning_Field_dummy[1]) offset by 500.00 towards Lightning_Field_Angle[x] degrees)
          • Unit - Move Lightning_Field_dummy[(x + 1)] instantly to temp_location
          • Lightning - Move Lightning_Field_lightning[x] to source (Position of Lightning_Field_dummy[(x + 1)]) and target (Position of Lightning_Field_dummy[(x + 2)])
          • Custom script: call RemoveLocation(udg_temp_location)
      • For each (Integer x) from 1 to 6, do (Actions)
        • Loop - Actions
          • Set p = (Position of Lightning_Field_dummy[1])
          • Set p1 = (Position of Lightning_Field_dummy[x])
          • Custom script: call MoveLightningEx(udg_Lightning_Field_lightning[udg_x+5], true , GetLocationX(udg_p), GetLocationY(udg_p), GetLocationZ(udg_p) + udg_i, GetLocationX(udg_p1), GetLocationY(udg_p1), GetLocationZ(udg_p1) + 0)
          • Custom script: call RemoveLocation(udg_p)
          • Custom script: call RemoveLocation(udg_p1)
      • Lightning - Move Lightning_Field_lightning[5] to source (Position of Lightning_Field_dummy[2]) and target (Position of Lightning_Field_dummy[6])
      • Set Lightning_Field_AngleSpeed = (Lightning_Field_AngleSpeed + 0.02)
      • Unit - Order Lightning_Field_dummy[7] to Orc Tauren Chieftain - War Stomp
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • Lightning_Field_AngleSpeed Greater than or equal to 10.00
        • Then - Actions
          • Trigger - Turn off (This trigger)
          • Trigger - Run Lightning Field End <gen> (ignoring conditions)
        • Else - Actions
  • Lightning Field End
    • Events
    • Conditions
    • Actions
      • Unit - Create 1 Lightning Field effect for (Owner of Lightning_Field_Caster) at (Position of Lightning_Field_dummy[1]) facing Default building facing degrees
      • Unit - Add Lightning_Field_Ability[(Level of Lightning Field for Lightning_Field_Caster)] to (Last created unit)
      • Unit - Order (Last created unit) to Orc Tauren Chieftain - War Stomp
      • Animation - Change (Last created unit)'s animation speed to 30.00% of its original speed
      • Unit - Add a 3.00 second Generic expiration timer to (Last created unit)
      • Unit - Create 1 Lightning Field effect for (Owner of Lightning_Field_Caster) at (Position of Lightning_Field_dummy[1]) facing Default building facing degrees
      • Animation - Change (Last created unit)'s animation speed to 20.00% of its original speed
      • Unit - Add a 3.00 second Generic expiration timer to (Last created unit)
      • Unit - Create 1 Lightning Field effect for (Owner of Lightning_Field_Caster) at (Position of Lightning_Field_dummy[1]) facing Default building facing degrees
      • Animation - Change (Last created unit)'s animation speed to 10.00% of its original speed
      • Unit - Add a 3.00 second Generic expiration timer to (Last created unit)
      • -------- nulling --------
      • For each (Integer x) from 1 to 7, do (Actions)
        • Loop - Actions
          • Unit - Remove Lightning_Field_dummy[x] from the game
          • Custom script: set udg_Lightning_Field_dummy[udg_x] = null
      • For each (Integer x) from 1 to 11, do (Actions)
        • Loop - Actions
          • Lightning - Destroy Lightning_Field_lightning[x]
          • Custom script: set udg_Lightning_Field_lightning[udg_x] = null
      • Custom script: set udg_Lightning_Field_Caster = null
      • Custom script: set udg_Lightning_Field_UG = null
      • Custom script: call RemoveLocation(udg_Lightning_Field_Target)
      • Trigger - Turn on Lightning Field Cast <gen>
Keywords:
GUI, Not MUI, Lightning, Mega Effect, Rotate, Explosion
Contents

Lightning Field V 1.0 (Map)

Reviews
12th Dec 2015 IcemanBo: Too long as NeedsFix. Rejected. Lightning Field V 1.0 | Reviewed by Maker | 23rd Feb 2013 NEEDS FIX The spell won't work correctly if more than one unit cast it at the same time There are lots of...
Level 16
Joined
Jul 31, 2012
Messages
2,217
Waits are bad for spells before they're -very- inconsistent, an alternative is here http://www.hiveworkshop.com/forums/...279/mui-spells-using-artificial-waits-223315/ to get that delay you want with it always being consistent

Needs an ingame screenshot for a spell
Your loop trigger should run every 0.03 seconds as well, 0.01 is just too fast
I also get the feeling that this isn't MUI

thx for the link
if you read the description: my screenshots don't save for a reason i don't know and i specified that the spell is not MUI
 
Level 20
Joined
Jun 27, 2011
Messages
1,864
one thing, can somone explain me clearly what mui means cuz i think i have a bad idea about what it is
|
|
v
you wanna know ?
Do you really wanna know ?
Are you prepare ?

Okay, put 2 faceless void in that map and order them to cast any same ability at the same time (like if you order unit a cast time warp, order unit b to cast time warp too), the last cast would bug out.
What kind of bug ?
You will find out.

Mui stands for multi-unit instanceability, it's a property for a trigger that is able to support certain spells/systems for more than 1 unit casting it at a time.
Now your spell will bug if there's more than 1 unit cast this spell at a time.

And yes, all your spells are not mui.
 
sorry man but this spell is way better than the pack you made [ no offense ]


I'll try to improve the spell to make it MUI

lol i again got insulted, my sistem even if it is bad is much more usefull and better then this, i wont say a word anymore untill u learn what is mui

EDIT: When time comes u will see how bad things you were making
 
Level 17
Joined
Nov 13, 2006
Messages
1,814
oh sorry i was too busy when you gave me the link and i forgot then


One thing, can somone explain me clearly what MUI means cuz i think i have a bad idea about what it is

MUI = multiple unit instance if i am right, and its mean more unit can cast the spell without problem (same time), if something not mui then if 2 unit on map cast it in same time then 2nd caster screw up/make bad the spell what dont work well after 2nd cast

so overall, the uploaded spell must be mui, so its must work well if more unit cast it same time

about leak that also must fix else its cause laggy game what also bad thing :/
 

Wrda

Spell Reviewer
Level 25
Joined
Nov 18, 2012
Messages
1,864
  • Lightning Field Unit Move
  • Events
  • Conditions
  • Actions
    • For each (Integer x) from 1 to 5, do (Actions)
      • Loop - Actions
        • Set temp_location = (Lightning_Field_Target offset by 500.00 towards ((360.00 / 5.00) x (Real(x))) degrees)
        • Unit - Order Lightning_Field_dummy[(x + 1)] to Move To temp_location
        • Set Lightning_Field_Angle[x] = ((360.00 / 5.00) x (Real(x)))
        • Custom script: call RemoveLocation(udg_temp_location)
    • Animation - Change Lightning_Field_dummy[7] flying height to 600.00 at 600.00
    • Wait 1.00 seconds
    • Trigger - Run Lightning Field Lightnings <gen> (ignoring conditions)
Well, the custom script should be before the wait action, else if you leave it as it is now, the dummy will move to the center of the map, (temp_location is removed after the first dummy goes to the location.)
 
Level 16
Joined
Jul 31, 2012
Messages
2,217
Triggering unit will only be overwritten if you cast the spell another time. So if you cast it again on another unit, the triggering unit and the variable will change.

i made two units that have this spell, they caste it at the same time
it worked perfectly until it reashed the second trigger

wich means don't focus about the first trigger focus on the second :angry:
 
Last edited:

Wrda

Spell Reviewer
Level 25
Joined
Nov 18, 2012
Messages
1,864
Why you are using: Hashtable - Save something as 1/2/3/4/5/6/7/8/9 of Hashtable_Value in Hashtable? :vw_wtf:
You don't need to save it like that, you could just save it as 0, but you made an effort to make this spell MUI, so let it be like it is.
 
Level 15
Joined
Dec 19, 2007
Messages
1,233
This is absolutly good BUT you should REALLY remove all of those waits, the wait action is terribly known for its bugs for not being very accurate and by that cause skips and order failure of actions / triggers. Instead, you should aim for using Hashtables that handle the caster, holding all the lightning effects and the dummies as a saved data inside the Hash, and really avoid using any wait at all. As the spell is right now, I belive it can handle only one single caster and is using a known for its bugged action. Fix those and you get +1. The spell looks awesome visually and it does't look like its creating needless points without removing them.
I give it 4/5 and recommand it for use of maps who don't need more than a single caster for this ability.
 
Level 16
Joined
Jul 31, 2012
Messages
2,217
This is absolutly good BUT you should REALLY remove all of those waits, the wait action is terribly known for its bugs for not being very accurate and by that cause skips and order failure of actions / triggers. Instead, you should aim for using Hashtables that handle the caster, holding all the lightning effects and the dummies as a saved data inside the Hash, and really avoid using any wait at all. As the spell is right now, I belive it can handle only one single caster and is using a known for its bugged action. Fix those and you get +1. The spell looks awesome visually and it does't look like its creating needless points without removing them.
I give it 4/5 and recommand it for use of maps who don't need more than a single caster for this ability.

thx, look at this thread http://www.hiveworkshop.com/forums/triggers-scripts-269/mui-spell-help-231939/index2.html
 
Top