[Log in / Register]
| News | Chat | Pastebin | Donations | Tutorials | Rules | Forums |
| Maps | Skins | Icons | Models | Spells | Tools | Jass | Packs | Hosted Projects | Starcraft II Modding | Starcraft II Resources | Galaxy Wiki |
(Keeps Hive Alive)
Go Back   The Hive Workshop > Spells > Filtered Listing


Reply
 
Thread Tools
The Hive Workshop Spells:
Frost Giant Spellpack v1.3
Images
Highslide JS
Details
Uploaded:23:16, 20th Jul 2012
Last Updated:18:06, 21st Jul 2012
Keywords:Frost, Giant, Frostgiant, Cold, Ice, Slow, freeze
Type:Pack
Category:GUI / Triggers

A spellpack from a map I'm working on. Decided I'd share my resources with the public. It has been updated to make Mag happy. I would redownload if you have any version besides 1.3, as it is the most efficient and most customizable.

Descriptions
Arctic Blast

Throws a ball of ice at target units. Deals area of effect damage within 250 range of the unit.

Ice Tomb

Marks a unit with a sigil of frost. If the unit doesn't move 600 units away within 3.6 seconds, it will be frozen for a short duration.

Chilling Touch

Adds a slowing effect to all spells cast by the Frost Giant. Lasts 4 seconds at all levels.

Glacial Surge

Rides a glacier forwards, causing immense damage to enemies within hit by the glacier.


Triggers
Hashtable And Configurables
Events
Map initialization
Conditions
Actions
Hashtable - Create a hashtable
Set hashtable = (Last created hashtable)
-------- --------------- --------
-------- --------------- --------
-------- PLEASE READ --------
-------- In order to edit the duration of power of the slow from Chilling Touch, you must edit the ability named Slow in the object editor --------
-------- Values such as cast range, cooldown, manacost and all that can be edited in the object editor --------
-------- If you make the spells go to a higher level you need to extend these arrays up to the maximum level. Otherwise the spell will malfunction --------
-------- --------------- --------
-------- --------------- --------
-------- ARCTIC BLAST --------
-------- --------------- --------
-------- Edit the damage --------
Set chillingblastdamage[1] = 70.00
Set chillingblastdamage[2] = 140.00
Set chillingblastdamage[3] = 210.00
Set chillingblastdamage[4] = 280.00
-------- Edit the AoE per level --------
Set chillingblastaoe[1] = 250.00
Set chillingblastaoe[2] = 250.00
Set chillingblastaoe[3] = 250.00
Set chillingblastaoe[4] = 250.00
-------- Edit the speed --------
Set chillingblastspeed[1] = 29.00
Set chillingblastspeed[2] = 29.00
Set chillingblastspeed[3] = 29.00
Set chillingblastspeed[4] = 29.00
-------- --------------- --------
-------- ICE TOMB --------
-------- --------------- --------
-------- Edit the time it takes the unit to freeze if it doesnt move away from the location --------
Set icetombduration[1] = 3.60
Set icetombduration[2] = 3.60
Set icetombduration[3] = 3.60
Set icetombduration[4] = 3.60
-------- Edit the distance the unit must be in order to escape the ice tomb --------
Set icetombdistance[1] = 600.00
Set icetombdistance[2] = 600.00
Set icetombdistance[3] = 600.00
Set icetombdistance[4] = 600.00
-------- --------------- --------
-------- GLACIAL SURGE --------
-------- --------------- --------
-------- Edit the intelligence multiplier per level. --------
Set glacialsurgeintmultiplier[1] = 2
Set glacialsurgeintmultiplier[2] = 4
Set glacialsurgeintmultiplier[3] = 6
-------- Edit the AoE of the glacial surge --------
Set glacialsurgeaoe[1] = 160.00
Set glacialsurgeaoe[2] = 160.00
Set glacialsurgeaoe[3] = 160.00
-------- Edit the speed of the projectile --------
Set glacialsurgespeed[1] = 69.00
Set glacialsurgespeed[2] = 69.00
Set glacialsurgespeed[3] = 69.00
Chilling Blast
Events
Unit - A unit Starts the effect of an ability
Conditions
(Ability being cast) Equal to Arctic Blast
Actions
Set caster = (Triggering unit)
Set target2 = (Target unit of ability being cast)
Set point1 = (Position of target2)
Set point2 = (Position of caster)
Set angle = (Angle from point2 to point1)
Unit - Create 1 Arctic Blast for (Triggering player) at point2 facing angle degrees
Set target = (Last created unit)
Unit Group - Add target to snowballgroup
Custom script: set udg_handle = GetHandleId(udg_target)
Hashtable - Save Handle Oftarget2 as 1 of handle in hashtable
Hashtable - Save Handle Ofcaster as 2 of handle in hashtable
Hashtable - Save angle as 3 of handle in hashtable
Custom script: call RemoveLocation(udg_point1)
Custom script: call RemoveLocation(udg_point2)
Trigger - Turn on Chilling Blast Loop <gen>
Chilling Blast Loop
Events
Time - Every 0.03 seconds of game time
Conditions
Actions
Unit Group - Pick every unit in snowballgroup and do (Actions)
Loop - Actions
Set target = (Picked unit)
Custom script: set udg_handle = GetHandleId(udg_target)
Set point1 = (Position of (Load 1 of handle in hashtable))
Set point2 = (Position of target)
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
(Distance between point1 and point2) Greater than or equal to (chillingblastspeed[(Level of Arctic Blast for caster)] + 1.00)
Then - Actions
Set angle = (Angle from point2 to point1)
Set point3 = (point2 offset by chillingblastspeed[(Level of Arctic Blast for caster)] towards angle degrees)
Unit - Move target instantly to point3
Custom script: call RemoveLocation(udg_point3)
Else - Actions
Set caster = (Load 2 of handle in hashtable)
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
(Level of Arctic Blast for caster) Greater than 0
Then - Actions
Unit - Add Slow to target
Unit - Set level of Slow for target to (Level of Chilling Touch for caster)
Else - Actions
Special Effect - Create a special effect at point1 using Abilities\Spells\Undead\FrostNova\FrostNovaTarget.mdl
Special Effect - Destroy (Last created special effect)
Custom script: set bj_wantDestroyGroup = true
Unit Group - Pick every unit in (Units within chillingblastaoe[(Level of Arctic Blast for caster)] of point1 matching ((((Matching unit) is alive) Equal to True) and ((((Matching unit) is A structure) Equal to False) and ((((Matching unit) is Magic Immune) Equal to False) and (((Matching u and do (Actions)
Loop - Actions
Unit - Cause caster to damage (Picked unit), dealing chillingblastdamage[(Level of Arctic Blast for caster)] damage of attack type Spells and damage type Normal
Unit - Order target to Human Sorceress - Slow (Picked unit)
Unit - Kill target
Unit Group - Remove target from snowballgroup
Hashtable - Clear all child hashtables of child handle in hashtable
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
(Number of units in snowballgroup) Equal to 0
Then - Actions
Trigger - Turn off (This trigger)
Else - Actions
Custom script: call RemoveLocation(udg_point1)
Custom script: call RemoveLocation(udg_point2)
Ice Tomb
Events
Unit - A unit Starts the effect of an ability
Conditions
(Ability being cast) Equal to Ice Tomb
Actions
Set caster = (Triggering unit)
Set target = (Target unit of ability being cast)
Set point1 = (Position of target)
Unit - Create 1 Ice Tomb for (Owner of caster) at point1 facing Default building facing degrees
Set target2 = (Last created unit)
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
(Level of Arctic Blast for caster) Greater than 0
Then - Actions
Unit - Add Slow to target2
Unit - Set level of Slow for target2 to (Level of Chilling Touch for caster)
Unit - Order target2 to Human Sorceress - Slow target
Else - Actions
Set timer = icetombduration[(Level of Ice Tomb for caster)]
Special Effect - Create a special effect attached to the overhead of target using Abilities\Spells\Other\Drain\ManaDrainTarget.mdl
Set sfx = (Last created special effect)
Unit Group - Add target to IceTombGroup
Custom script: set udg_handle = GetHandleId(udg_target)
Hashtable - Save Handle Ofcaster as 4 of handle in hashtable
Hashtable - Save Handle Oftarget2 as 5 of handle in hashtable
Hashtable - Save timer as 6 of handle in hashtable
Hashtable - Save Handle Ofsfx as 7 of handle in hashtable
Trigger - Turn on Ice Tomb Loop <gen>
Ice Tomb Loop
Events
Time - Every 0.03 seconds of game time
Conditions
Actions
Unit Group - Pick every unit in IceTombGroup and do (Actions)
Loop - Actions
Set target = (Picked unit)
Custom script: set udg_handle = GetHandleId(udg_target)
Set timer = (Load 6 of handle from hashtable)
Set target2 = (Load 5 of handle in hashtable)
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
timer Greater than 0.00
Then - Actions
Hashtable - Save (timer - 0.03) as 6 of handle in hashtable
Set point1 = (Position of target)
Set point2 = (Position of target2)
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
(Distance between point1 and point2) Greater than icetombdistance[(Level of Ice Tomb for caster)]
Then - Actions
Special Effect - Destroy (Load 7 of handle in hashtable)
Unit - Kill target2
Hashtable - Clear all child hashtables of child handle in hashtable
Unit Group - Remove target from IceTombGroup
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
(Number of units in IceTombGroup) Equal to 0
Then - Actions
Trigger - Turn off (This trigger)
Else - Actions
Else - Actions
Custom script: call RemoveLocation(udg_point1)
Custom script: call RemoveLocation(udg_point2)
Else - Actions
Set caster = (Load 4 of handle in hashtable)
Unit - Add Storm Bolt to target2
Unit - Set level of Storm Bolt for target2 to (Level of Ice Tomb for caster)
Unit - Order target2 to Human Mountain King - Storm Bolt target
Special Effect - Destroy (Load 7 of handle in hashtable)
Unit - Kill target2
Hashtable - Clear all child hashtables of child handle in hashtable
Unit Group - Remove target from IceTombGroup
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
(Number of units in IceTombGroup) Equal to 0
Then - Actions
Trigger - Turn off (This trigger)
Else - Actions
Glacial Surge
Events
Unit - A unit Starts the effect of an ability
Conditions
(Ability being cast) Equal to Glacial Surge
Actions
Set caster = (Triggering unit)
Set point1 = (Target point of ability being cast)
Unit - Create 1 Dummy for (Owner of caster) at point1 facing Default building facing degrees
Set target = (Last created unit)
Unit - Hide caster
Unit - Add Invulnerable (Neutral) to caster
Unit - Turn collision for caster Off
Unit Group - Add caster to GlacialSurgeGroup
Special Effect - Create a special effect attached to the chest of caster using Abilities\Weapons\FrostWyrmMissile\FrostWyrmMissile.mdl
Set sfx = (Last created special effect)
Custom script: set udg_handle = GetHandleId(udg_caster)
Hashtable - Save Handle Oftarget as 8 of handle in hashtable
Hashtable - Save Handle Ofsfx as 9 of handle in hashtable
Custom script: call RemoveLocation(udg_point1)
Trigger - Turn on Glacial Surge Loop <gen>
Glacial Surge Loop
Events
Time - Every 0.03 seconds of game time
Conditions
Actions
Unit Group - Pick every unit in GlacialSurgeGroup and do (Actions)
Loop - Actions
Set caster = (Picked unit)
Custom script: set udg_handle = GetHandleId(udg_caster)
Set target = (Load 8 of handle in hashtable)
Set point1 = (Position of caster)
Set point2 = (Position of target)
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
(Distance between point2 and point1) Greater than (glacialsurgespeed[(Level of Glacial Surge for caster)] + 1.00)
Then - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
(Level of Arctic Blast for caster) Greater than 0
Then - Actions
Unit - Add Slow to target2
Unit - Set level of Slow for target2 to (Level of Chilling Touch for caster)
Else - Actions
Set GlacialSurgeTargetGroup = (Load 10 of handle in hashtable)
Set point3 = (point1 offset by glacialsurgespeed[(Level of Glacial Surge for caster)] towards (Angle from point1 to point2) degrees)
Unit - Move caster instantly to point3
Unit - Create 1 Glacial Surge for (Owner of caster) at point3 facing Default building facing degrees
Set target2 = (Last created unit)
Unit - Add a 1.00 second Generic expiration timer to target2
Custom script: set bj_wantDestroyGroup = true
Unit Group - Pick every unit in (Units within glacialsurgeaoe[(Level of Glacial Surge for caster)] of point3 matching ((((Matching unit) is A structure) Equal to False) and ((((Matching unit) is Magic Immune) Equal to False) and ((((Matching unit) is in GlacialSurgeTargetGroup) Equal to Fa and do (Actions)
Loop - Actions
Unit - Order target2 to Human Sorceress - Slow (Picked unit)
Unit Group - Add (Picked unit) to GlacialSurgeTargetGroup
Unit - Cause caster to damage (Picked unit), dealing (Real((glacialsurgeintmultiplier[(Level of Glacial Surge for caster)] x (Intelligence of caster (Include bonuses))))) damage of attack type Spells and damage type Normal
Hashtable - Save Handle OfGlacialSurgeTargetGroup as 10 of handle in hashtable
Custom script: call RemoveLocation(udg_point3)
Else - Actions
Custom script: set bj_wantDestroyGroup = true
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
(Level of Arctic Blast for caster) Greater than 0
Then - Actions
Unit - Add Slow to target2
Unit - Set level of Slow for target2 to (Level of Chilling Touch for caster)
Else - Actions
Unit Group - Pick every unit in (Units within 160.00 of point3 matching ((((Matching unit) is A structure) Equal to False) and ((((Matching unit) is Magic Immune) Equal to False) and ((((Matching unit) is in GlacialSurgeTargetGroup) Equal to False) and (((Matching unit) belongs to an enemy and do (Actions)
Loop - Actions
Unit - Cause caster to damage (Picked unit), dealing (Real((glacialsurgeintmultiplier[(Level of Glacial Surge for caster)] x (Intelligence of caster (Include bonuses))))) damage of attack type Spells and damage type Normal
Unit - Order target2 to Human Sorceress - Slow (Picked unit)
Unit Group - Add (Picked unit) to GlacialSurgeTargetGroup
Unit - Unhide caster
Unit - Remove Invulnerable (Neutral) from caster
Unit - Turn collision for caster On
Selection - Select caster for (Owner of caster)
Unit - Kill target
Special Effect - Destroy (Load 9 of handle in hashtable)
Unit Group - Remove caster from GlacialSurgeGroup
Hashtable - Clear all child hashtables of child handle in hashtable
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
(Number of units in GlacialSurgeGroup) Equal to 0
Then - Actions
Trigger - Turn off (This trigger)
Else - Actions
Custom script: call RemoveLocation(udg_point1)
Custom script: call RemoveLocation(udg_point2)
Rating - 0.00 (0 votes)
(Hover and click)
Moderator Comments
Recommended
02:41, 21st Jul 2012
Magtheridon96: Approved.
Good configuration and execution.

Old
http://www.hiveworkshop.com/forums/2186936-post3.html

There's a review. <:

This is actually a really nice spellpack.
I love how all the spells are dependent on each other, but this is going to need more configuration.
A user needs to be able to change the abilities used inside the spell triggers by modifying just one variable in a configuration trigger.
He should also be able to modify damage and duration.

edit
Put up the rating for some motivation ;)

This spell is approved and works properly.


Download Frost Giant Spellpack v1.3.w3x
(37.27 KB, 609 Downloads)

Old 07-20-2012, 11:18 PM   #2 (permalink)
Registered User Jazztastic
Buddy
 
Jazztastic's Avatar
 
Join Date: Apr 2011
Posts: 955
Jazztastic is just really nice (305)Jazztastic is just really nice (305)
Reserved post. Not like I ever use it but still it's reserved.

Please comment, rate, all that jazz. If it isn't clear enough I can add documentation, although anyone who knows their way around triggers at all should be able to edit values such as duration and damage.
Jazztastic is offline   Reply With Quote
Old 07-20-2012, 11:38 PM   #3 (permalink)
Forum Moderator Magtheridon96
Go away.
 
Magtheridon96's Avatar
Resource Moderator
 
Join Date: Dec 2008
Posts: 5,749
Magtheridon96 has a brilliant future (1889)Magtheridon96 has a brilliant future (1889)Magtheridon96 has a brilliant future (1889)
Merit Badge - Level 0: This user has proven to be extremely valuable to the Warcraft III Modding Community. 
Instead of moderating this, I'll do things the easy way <:

Trigger
Set angle = (Angle from point2 to point1)
Unit - Create 1 Arctic Blast for (Owner of caster) at point2 facing (Angle from point2 to point1) degrees


You can use 'angle' when you create the unit.
You can replace (Owner of caster) with (Triggering player).

You shouldn't select a unit without clearing the selection for a certain player because that actually adds the unit to the currently selected ones. It would be quite strange.

There should be configuration triggers for easy configuration.
(To configure durations, special effects, damage, abilities so that you don't have to look through all the triggers and change the value when you import the spell, like "Chilling Touch", etc..)

Also, you can totally optimize this:

Trigger
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
(Level of Arctic Blast for caster) Greater than 0
Then - Actions
Unit - Add Slow to target2
Unit - Set level of Slow for target2 to (Level of Chilling Touch for caster)
Custom script: set bj_wantDestroyGroup = true
Unit Group - Pick every unit in (Units within 160.00 of point3 matching ((((Matching unit) is A structure) Equal to False) and ((((Matching unit) is Magic Immune) Equal to False) and ((((Matching unit) is in GlacialSurgeTargetGroup) Equal to False) and (((Matching unit) belongs to an enemy and do (Actions)
Loop - Actions
Unit - Order target2 to Human Sorceress - Slow (Picked unit)
Else - Actions
Custom script: set bj_wantDestroyGroup = true
Unit Group - Pick every unit in (Units within 160.00 of point3 matching ((((Matching unit) is A structure) Equal to False) and ((((Matching unit) is Magic Immune) Equal to False) and ((((Matching unit) is in GlacialSurgeTargetGroup) Equal to False) and (((Matching unit) belongs to an enemy and do (Actions)
Loop - Actions
Unit Group - Add (Picked unit) to GlacialSurgeTargetGroup
Unit - Cause caster to damage (Picked unit), dealing (Real(((Level of Glacial Surge for caster) x ((Intelligence of caster (Include bonuses)) x 2)))) damage of attack type Spells and damage type Normal


You can set a boolean inside the if block to true, and in the enumeration that's outside the block at the end,
you would check if this boolean is true, and if it is, then do this: Unit - Order target2 to Human Sorceress - Slow (Picked unit)

This way, you only need 1 enumeration.
__________________
Magtheridon96 is offline   Reply With Quote
Old 07-21-2012, 12:30 AM   #4 (permalink)
Registered User Jazztastic
Buddy
 
Jazztastic's Avatar
 
Join Date: Apr 2011
Posts: 955
Jazztastic is just really nice (305)Jazztastic is just really nice (305)
Rejection is such a mean word.

I will implement all suggested changes except for the selection event. If you are playing a game in which you are controlling more than one hero at a time, and you use this skill then suddenly deselect everything but this hero, it would be quite frustrating.

I will make configurable values for the things that can be changed within the triggers. The duration of the slow is totally OE dependant so I'm not going to waste time with that.

I'm literally uploading the updates as we speak.

EDIT: Hopefully everything will be in approvable order. Anyone who has downloaded for use should redownload, it is now more efficient and more customizable.
Jazztastic is offline   Reply With Quote
Old 07-21-2012, 12:54 AM   #5 (permalink)
Forum Moderator Magtheridon96
Go away.
 
Magtheridon96's Avatar
Resource Moderator
 
Join Date: Dec 2008
Posts: 5,749
Magtheridon96 has a brilliant future (1889)Magtheridon96 has a brilliant future (1889)Magtheridon96 has a brilliant future (1889)
Merit Badge - Level 0: This user has proven to be extremely valuable to the Warcraft III Modding Community. 
I know, but I can't keep it set to "Pending" because then it would still show up in the "Pending Spells" list, and this way, when you update it, I would directly know because the state would be reset to "Pending".

edit
Okay, this is in an approvable state, but there's just one thing I noticed, you're adding the Slow ability to the dummy and setting the level INSIDE the enumeration, so it's actually being added and set multiple times =o
You could move that code out of the enum code.

And one other nice configurable would be AoE ^.^

As for the Slow, no problem, you would need an entire movement system to pull that one off :P
__________________
Magtheridon96 is offline   Reply With Quote
Old 07-21-2012, 03:11 AM   #6 (permalink)
Registered User Jazztastic
Buddy
 
Jazztastic's Avatar
 
Join Date: Apr 2011
Posts: 955
Jazztastic is just really nice (305)Jazztastic is just really nice (305)
Quote:
Originally Posted by Magtheridon96 View Post
I know, but I can't keep it set to "Pending" because then it would still show up in the "Pending Spells" list, and this way, when you update it, I would directly know because the state would be reset to "Pending".

edit
Okay, this is in an approvable state, but there's just one thing I noticed, you're adding the Slow ability to the dummy and setting the level INSIDE the enumeration, so it's actually being added and set multiple times =o
You could move that code out of the enum code.

And one other nice configurable would be AoE ^.^

As for the Slow, no problem, you would need an entire movement system to pull that one off :P
Changes have been implemented. It won't repeatedly set the level and add the ability. Also AoE value has been added for the two spells with AoE, and I have slightly updated the documentation.

Approvazle?
Jazztastic is offline   Reply With Quote
Old 07-21-2012, 12:57 PM   #7 (permalink)
Forum Moderator Magtheridon96
Go away.
 
Magtheridon96's Avatar
Resource Moderator
 
Join Date: Dec 2008
Posts: 5,749
Magtheridon96 has a brilliant future (1889)Magtheridon96 has a brilliant future (1889)Magtheridon96 has a brilliant future (1889)
Merit Badge - Level 0: This user has proven to be extremely valuable to the Warcraft III Modding Community. 
Well, sorta.

I just noticed that Arctic Blast/Chilling Blast doesn't exactly work correctly o-o
It deals damage around the frost giant rather than the ball and it only damages one unit.

Also, the speed should be configurable too :p

You probably want to kick me in the face now
__________________
Magtheridon96 is offline   Reply With Quote
Old 07-21-2012, 05:06 PM   #8 (permalink)
Registered User Jazztastic
Buddy
 
Jazztastic's Avatar
 
Join Date: Apr 2011
Posts: 955
Jazztastic is just really nice (305)Jazztastic is just really nice (305)
Quote:
Originally Posted by Magtheridon96 View Post
Well, sorta.

I just noticed that Arctic Blast/Chilling Blast doesn't exactly work correctly o-o
It deals damage around the frost giant rather than the ball and it only damages one unit.

Also, the speed should be configurable too :p

You probably want to kick me in the face now
After looking over my triggers I saw the problem.

Arctic blast was using the aoe of glacial surge. I was setting the aoe for it twice in the load trigger. Additionally it was using the aoe of glacial surge in the actual damage trigger itself. So when glacial surge wasn't skilled, it was picking enemies within 0 area of effect.

It's a five minute fix. Plus adding a configurable for the range should not take long. I'll update this very soon.

EDIT: Lol whoops I forgot to change the name. It should say v1.3

But yes it is updated now.
Jazztastic is offline   Reply With Quote
Old 07-30-2012, 04:09 PM   #9 (permalink)
Registered User aarcaa
Newbie Skin & Icon Maker
 
aarcaa's Avatar
 
Join Date: Mar 2010
Posts: 108
aarcaa has little to show at this moment (22)aarcaa has little to show at this moment (22)aarcaa has little to show at this moment (22)
Hi.I just want to use glacial surge in my map.I tried,but it didnt work.I changed the trigger a little bit.These are the triggers :
Glacial Surge
Events
Unit - A unit Starts the effect of an ability
Conditions
(Ability being cast) Equal to Glacial Surge
Actions
Set caster = (Triggering unit)
Set point1 = (Target point of ability being cast)
Unit - Create 1 Dummy for (Owner of caster) at point1 facing Default building facing degrees
Set target = (Last created unit)
Unit - Hide caster
Unit - Add Invulnerable (Neutral) to caster
Unit - Turn collision for caster Off
Unit Group - Add caster to GlacialSurgeGroup
Special Effect - Create a special effect attached to the chest of caster using Abilities\Weapons\FrostWyrmMissile\FrostWyrmMissile.mdl
Set sfx = (Last created special effect)
Custom script: set udg_handle = GetHandleId(udg_caster)
Hashtable - Save Handle Oftarget as 8 of handle in hashtable
Hashtable - Save Handle Ofsfx as 9 of handle in hashtable
Custom script: call RemoveLocation(udg_point1)
Trigger - Turn on Glacial Surge Loop <gen>
Glacial Surge Loop
Events
Time - Every 0.03 seconds of game time
Conditions
Actions
Unit Group - Pick every unit in GlacialSurgeGroup and do (Actions)
Loop - Actions
Set caster = (Picked unit)
Custom script: set udg_handle = GetHandleId(udg_caster)
Set target = (Load 8 of handle in hashtable)
Set point1 = (Position of caster)
Set point2 = (Position of target)
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
(Distance between point2 and point1) Greater than (glacialsurgespeed[(Level of Glacial Surge for caster)] + 1.00)
Then - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
Then - Actions
Do nothing
Else - Actions
Set GlacialSurgeTargetGroup = (Load 10 of handle in hashtable)
Set point3 = (point1 offset by glacialsurgespeed[(Level of Glacial Surge for caster)] towards (Angle from point1 to point2) degrees)
Unit - Move caster instantly to point3
Unit - Create 1 Glacial Surge for (Owner of caster) at point3 facing Default building facing degrees
Set target2 = (Last created unit)
Unit - Add a 1.00 second Generic expiration timer to target2
Custom script: set bj_wantDestroyGroup = true
Unit Group - Pick every unit in (Units within glacialsurgeaoe[(Level of Glacial Surge for caster)] of point3 matching ((((Matching unit) is A structure) Equal to False) and ((((Matching unit) is Magic Immune) Equal to False) and ((((Matching unit) is in GlacialSurgeTargetGroup) Equal to Fa and do (Actions)
Loop - Actions
Unit - Order target2 to Human Sorceress - Slow (Picked unit)
Unit Group - Add (Picked unit) to GlacialSurgeTargetGroup
Unit - Cause caster to damage (Picked unit), dealing (Real((glacialsurgeintmultiplier[(Level of Glacial Surge for caster)] x (Strength of caster (Include bonuses))))) damage of attack type Spells and damage type Normal
Hashtable - Save Handle OfGlacialSurgeTargetGroup as 10 of handle in hashtable
Custom script: call RemoveLocation(udg_point3)
Else - Actions
Custom script: set bj_wantDestroyGroup = true
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
Then - Actions
Do nothing
Else - Actions
Unit Group - Pick every unit in (Units within 160.00 of point3 matching ((((Matching unit) is A structure) Equal to False) and ((((Matching unit) is Magic Immune) Equal to False) and ((((Matching unit) is in GlacialSurgeTargetGroup) Equal to False) and (((Matching unit) belongs to an enemy and do (Actions)
Loop - Actions
Unit - Cause caster to damage (Picked unit), dealing (Real((glacialsurgeintmultiplier[(Level of Glacial Surge for caster)] x (Strength of caster (Include bonuses))))) damage of attack type Spells and damage type Normal
Unit - Order target2 to Human Sorceress - Slow (Picked unit)
Unit Group - Add (Picked unit) to GlacialSurgeTargetGroup
Unit - Unhide caster
Unit - Remove Invulnerable (Neutral) from caster
Unit - Turn collision for caster On
Selection - Select caster for (Owner of caster)
Unit - Kill target
Special Effect - Destroy (Load 9 of handle in hashtable)
Unit Group - Remove caster from GlacialSurgeGroup
Hashtable - Clear all child hashtables of child handle in hashtable
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
(Number of units in GlacialSurgeGroup) Equal to 0
Then - Actions
Trigger - Turn off (This trigger)
Else - Actions
Custom script: call RemoveLocation(udg_point1)
Custom script: call RemoveLocation(udg_point2)
aarcaa is offline   Reply With Quote
Old 07-31-2012, 08:21 AM   #10 (permalink)
Registered User Jazztastic
Buddy
 
Jazztastic's Avatar
 
Join Date: Apr 2011
Posts: 955
Jazztastic is just really nice (305)Jazztastic is just really nice (305)
Please specifically describe exactly what went wrong. Is the movement still working? Is it not stopping where its supposed to? Is it not hurting enemies?

Since you changed the information in the if/then/else statement, simply delete it altogether. Don't just leave an empty if/then/else with a do nothing in it. NEVER use do nothing.

My guess is that you didn't import the hashtable. The trigger with the hashtable in it also has to be in your map for this spell to work. I'd recommend uploading your map in either the triggers and script or general mapping sections and asking for help to customize it how you want.
Jazztastic is offline   Reply With Quote
Old 07-31-2012, 11:34 AM   #11 (permalink)
Registered User aarcaa
Newbie Skin & Icon Maker
 
aarcaa's Avatar
 
Join Date: Mar 2010
Posts: 108
aarcaa has little to show at this moment (22)aarcaa has little to show at this moment (22)aarcaa has little to show at this moment (22)
When i use the skill a frost nova animation appears.And hero vanishes forever.
aarcaa is offline   Reply With Quote
Old 07-31-2012, 11:43 AM   #12 (permalink)
Registered User aarcaa
Newbie Skin & Icon Maker
 
aarcaa's Avatar
 
Join Date: Mar 2010
Posts: 108
aarcaa has little to show at this moment (22)aarcaa has little to show at this moment (22)aarcaa has little to show at this moment (22)
I have forgotten to copy a trigger.Thanks.
aarcaa is offline   Reply With Quote
Old 09-24-2012, 06:36 PM   #13 (permalink)
Registered User allstar
User
 
Join Date: Sep 2012
Posts: 4
allstar is an unknown quantity at this point (0)
Chilling Touch doesn't work for Glacial Surge.
allstar is offline   Reply With Quote
Old 09-26-2012, 01:27 AM   #14 (permalink)
Registered User Jazztastic
Buddy
 
Jazztastic's Avatar
 
Join Date: Apr 2011
Posts: 955
Jazztastic is just really nice (305)Jazztastic is just really nice (305)
Quote:
Originally Posted by allstar View Post
Chilling Touch doesn't work for Glacial Surge.
Wrong. Make sure you copied the object editor ability into your game. It is dependant on the OE ability so without it, it won't work.
Jazztastic is offline   Reply With Quote
Old 11-20-2012, 01:40 PM   #15 (permalink)
Registered User allstar
User
 
Join Date: Sep 2012
Posts: 4
allstar is an unknown quantity at this point (0)
Quote:
Originally Posted by Jazztastic View Post
Wrong. Make sure you copied the object editor ability into your game. It is dependant on the OE ability so without it, it won't work.
It doesn't even work in the map uploaded by you, without changing anything. =/
Every ability adds Chilling Touch to the enemy, except Glacial Surge.
I don't get it.




http://www.abload.de/img/glacialsurgebug9ar9c.png
allstar is offline   Reply With Quote
Reply

Bookmarks

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are Off
Pingbacks are Off
Refbacks are Off


All times are GMT. The time now is 12:40 PM.





Powered by vBulletin
Copyright 2000 - 2008, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.5.1 PL2
Copyright © Ralle