- Joined
- Apr 12, 2011
- Messages
- 124
Some spells i made. Far from done but it's the general idea. Would like some feedback on what to improve/fix.
Also, im new at this so please be precise in your pointing out leaks/improvements. Just saying in comment it sucks isn't helping anyone.
Im a Noob so don't be too annoyed if i write something dumb
Thunderstorm:
Ring of Frost:
-: Uploaded Screenshots :-
Any leaks/improvements?
Constructive Critisism is apprechiated.
Updated:
- Firestorm is now Ring of Frost - freezes enemies within the target area and leaves them with a debuff that slows movement and deals damage over time
- Fixed leaks (mercy, i suck at finding leaks)
- Nuke removed
Updated:
- Ring of Frost now breaks upon damage and have it's duration increased by 2 seconds for each lvl, Balancing it out.
Updated
- Ring of Frost no longer make the game crash if reapplied on an already frozen target
- Uploaded crash-free version
Also, im new at this so please be precise in your pointing out leaks/improvements. Just saying in comment it sucks isn't helping anyone.
Im a Noob so don't be too annoyed if i write something dumb
Thunderstorm:
-
Thunderstorm Cast
-

Events
-


Unit - A unit Starts the effect of an ability
-
-

Conditions
-


(Ability being cast) Equal to Thunderstorm
-
-

Actions
-


Set LightningCount = 0
-


Set WS_Caster = (Triggering unit)
-


Set WS_Owner = (Owner of WS_Caster)
-


Set ThunderLvl = (Level of Thunderstorm for WS_Caster)
-


Set WS_Point[1] = (Position of WS_Caster)
-


Set WS_Real = 0.00
-


-------- --------
-


-------- Testing Flying caster :D --------
-


-------- --------
-


Animation - Play WS_Caster's stand channel animation
-


Unit - Pause WS_Caster
-


Unit - Add Storm Crow Form to WS_Caster
-


Animation - Change WS_Caster flying height to 200.00 at 1750.00
-


Animation - Queue WS_Caster's stand channel animation
-


Animation - Queue WS_Caster's stand channel animation
-


Animation - Change WS_Caster flying height to 300.00 at 1400.00
-


-------- --------
-


Unit - Create 1 Lightning Dummy (Visual Monsoon) for WS_Owner at WS_Point[1] facing Default building facing degrees
-


Unit - Add a 1.00 second Generic expiration timer to (Last created unit)
-


-------- --------
-


Unit - Create 1 Lightning Dummy (Visual Thunderclap) for WS_Owner at WS_Point[1] facing Default building facing degrees
-


Unit - Add a 1.00 second Generic expiration timer to (Last created unit)
-


-------- --------
-


For each (Integer WS_Integer) from 1 to 15, do (Actions)
-



Loop - Actions
-




Set WS_Point[3] = (WS_Point[1] offset by 500.00 towards WS_Real degrees)
-




Lightning - Create a Chain Lightning - Primary lightning effect from source WS_Point[1] to target WS_Point[3]
-




Set LightningCount = (LightningCount + 1)
-




Set WS_Lightning[LightningCount] = (Last created lightning effect)
-




Set WS_Point[2] = (WS_Point[1] offset by 300.00 towards WS_Real degrees)
-




-------- --------
-




Unit - Create 1 Dummy for WS_Owner at WS_Point[1] facing Default building facing degrees
-




Unit - Add Thunderstorm Dummy to (Last created unit)
-




Unit - Set level of Thunderstorm Dummy for (Last created unit) to ThunderLvl
-




Unit - Order (Last created unit) to Undead Dreadlord - Carrion Swarm WS_Point[2]
-




Unit - Add a 1.00 second Generic expiration timer to (Last created unit)
-




-------- --------
-




Unit - Create 1 Dummy for WS_Owner at WS_Point[3] facing Default building facing degrees
-




Unit - Add Thunderstorm Dummy to (Last created unit)
-




Unit - Set level of Thunderstorm Dummy for (Last created unit) to ThunderLvl
-




Unit - Order (Last created unit) to Undead Dreadlord - Carrion Swarm WS_Point[1]
-




Unit - Add a 1.00 second Generic expiration timer to (Last created unit)
-




-------- --------
-




Set WS_Real = (WS_Real + (360.00 / 15.00))
-




Custom script: call RemoveLocation(udg_WS_Point[2])
-




Custom script: call RemoveLocation(udg_WS_Point[3])
-
-
-


Set WS_Unitgroup = (Units within 550.00 of WS_Point[1] matching (((Matching unit) belongs to an enemy of WS_Owner) Equal to True))
-


Unit Group - Pick every unit in WS_Unitgroup and do (Actions)
-



Loop - Actions
-




Unit - Create 1 Dummy for WS_Owner at WS_Point[1] facing Default building facing degrees
-




Unit - Add Electrified to (Last created unit)
-




Unit - Set level of Electrified for (Last created unit) to ThunderLvl
-




Unit - Order (Last created unit) to Orc Shaman - Purge (Picked unit)
-




Unit - Add a 1.00 second Generic expiration timer to (Last created unit)
-
-
-


-------- --------
-


-------- Cleanup Flyer --------
-


-------- Later --------
-


-------- --------
-


-------- --------
-


Countdown Timer - Start Lightning as a One-shot timer that will expire in 0.20 seconds
-


Countdown Timer - Start Flying as a One-shot timer that will expire in 0.70 seconds
-


Custom script: call RemoveLocation(udg_WS_Point[1])
-


Custom script: call DestroyGroup(udg_WS_Unitgroup)
-


-------- --------
-
-
-
Cleanup Flyer
-

Events
-


Time - Flying expires
-
-

Conditions
-

Actions
-


-------- --------
-


-------- This is how i want it to LOOK --------
-


-------- But not the way the triggers should be --------
-


-------- IDK how to fix em --------
-


-------- And for some dumb reason the effect on Thundershock (Dummy) won't show --------
-


-------- Made the effects with Special Effect triggers instead- Leakfree- --------
-


If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-



If - Conditions
-




(WS_Caster is alive) Equal to True
-
-



Then - Actions
-




Animation - Change WS_Caster flying height to 0.00 at 2000.00
-




Unit - Remove Storm Crow Form from WS_Caster
-




Unit - Unpause WS_Caster
-




Animation - Play WS_Caster's attack animation
-




Animation - Play WS_Caster's stand animation
-




-------- --------
-




Unit - Create 1 Dummy for (Owner of WS_Caster) at (Position of WS_Caster) facing Default building facing degrees
-




Unit - Add Thundershock (Dummy) to (Last created unit)
-




Unit - Set level of Thundershock (Dummy) for (Last created unit) to (Level of Thunderstorm for WS_Caster)
-




Animation - Change (Last created unit) flying height to 0.00 at 50000.00
-




Unit - Order (Last created unit) to Human Mountain King - Thunder Clap
-




Special Effect - Create a special effect at (Position of WS_Caster) using Abilities\Spells\Human\ThunderClap\ThunderClapCaster.mdl
-




Special Effect - Destroy (Last created special effect)
-




Special Effect - Create a special effect at (Position of WS_Caster) using Abilities\Spells\Human\ThunderClap\ThunderClapCaster.mdl
-




Special Effect - Destroy (Last created special effect)
-




Unit - Add a 1.00 second Generic expiration timer to (Last created unit)
-




-------- --------
-
-



Else - Actions
-
-
-
-
Destroy Lightning
-

Events
-


Time - Lightning expires
-
-

Conditions
-

Actions
-


-------- --------
-


-------- There should always be a minimum of a 1 second cooldown. --------
-


-------- Therefor i don't see that it will leak, but if the cooldown is less than 1 sec it will --------
-


-------- --------
-


-------- There is a 0.70 second marginal for error --------
-


-------- --------
-


-------- Meaning the spell can be cast by multiple casters if they cast with a 0.70 seconds in between --------
-


-------- --------
-


Lightning - Destroy WS_Lightning[LightningCount]
-


Custom script: call DestroyLightning(udg_WS_Lightning[1])
-


Custom script: call DestroyLightning(udg_WS_Lightning[2])
-


Custom script: call DestroyLightning(udg_WS_Lightning[3])
-


Custom script: call DestroyLightning(udg_WS_Lightning[4])
-


Custom script: call DestroyLightning(udg_WS_Lightning[5])
-


Custom script: call DestroyLightning(udg_WS_Lightning[6])
-


Custom script: call DestroyLightning(udg_WS_Lightning[7])
-


Custom script: call DestroyLightning(udg_WS_Lightning[8])
-


Custom script: call DestroyLightning(udg_WS_Lightning[9])
-


Custom script: call DestroyLightning(udg_WS_Lightning[10])
-


Custom script: call DestroyLightning(udg_WS_Lightning[11])
-


Custom script: call DestroyLightning(udg_WS_Lightning[12])
-


Custom script: call DestroyLightning(udg_WS_Lightning[13])
-


Custom script: call DestroyLightning(udg_WS_Lightning[14])
-


Custom script: call DestroyLightning(udg_WS_Lightning[15])
-
-
-
Damage Ticks
-

Events
-


Time - Every 1.00 seconds of game time
-
-

Conditions
-

Actions
-


If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-



If - Conditions
-




(Level of Thunderstorm for WS_Caster) Equal to 1
-
-



Then - Actions
-




Unit Group - Pick every unit in (Units in (Playable map area) matching (((Matching unit) has buff Shock ) Equal to True)) and do (Unit - Cause WS_Caster to damage (Picked unit), dealing 10.00 damage of attack type Spells and damage type Normal)
-




Unit Group - Pick every unit in (Units in (Playable map area) matching (((Matching unit) has buff Shock ) Equal to True)) and do (Special Effect - Create a special effect attached to the chest of (Picked unit) using Abilities\Spells\Orc\LightningShield\LightningShieldBuff.mdl)
-
-



Else - Actions
-




If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-





If - Conditions
-






(Level of Thunderstorm for WS_Caster) Equal to 2
-
-





Then - Actions
-






Unit Group - Pick every unit in (Units in (Playable map area) matching (((Matching unit) has buff Shock ) Equal to True)) and do (Unit - Cause WS_Caster to damage (Picked unit), dealing 15.00 damage of attack type Spells and damage type Normal)
-






Unit Group - Pick every unit in (Units in (Playable map area) matching (((Matching unit) has buff Shock ) Equal to True)) and do (Special Effect - Create a special effect attached to the chest of (Picked unit) using Abilities\Spells\Orc\LightningShield\LightningShieldBuff.mdl)
-
-





Else - Actions
-






If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-







If - Conditions
-








(Level of Thunderstorm for WS_Caster) Equal to 3
-
-







Then - Actions
-








Unit Group - Pick every unit in (Units in (Playable map area) matching (((Matching unit) has buff Shock ) Equal to True)) and do (Unit - Cause WS_Caster to damage (Picked unit), dealing 20.00 damage of attack type Spells and damage type Normal)
-








Unit Group - Pick every unit in (Units in (Playable map area) matching (((Matching unit) has buff Shock ) Equal to True)) and do (Special Effect - Create a special effect attached to the chest of (Picked unit) using Abilities\Spells\Orc\LightningShield\LightningShieldBuff.mdl)
-
-







Else - Actions
-
-
-
-
-
-
-
Ring of Frost:
-
Ring of Frost Cast
-

Events
-


Unit - A unit Starts the effect of an ability
-
-

Conditions
-


(Ability being cast) Equal to Ring of Frost (Version 2)
-
-

Actions
-


Set WS_Caster = (Triggering unit)
-


Set WS_Owner = (Owner of WS_Caster)
-


Set RoFLvl = (Level of Ring of Frost (Version 2) for WS_Caster)
-


Set WS_Point[1] = (Target point of ability being cast)
-


Set WS_Real = 0.00
-


For each (Integer WS_Integer) from 1 to 15, do (Actions)
-



Loop - Actions
-




Set WS_Point[2] = (WS_Point[1] offset by 300.00 towards WS_Real degrees)
-




Unit - Create 1 Dummy for WS_Owner at WS_Point[1] facing Default building facing degrees
-




Unit - Add Ring of Frost Dummy to (Last created unit)
-




Unit - Set level of Ring of Frost Dummy for (Last created unit) to RoFLvl
-




Unit - Order (Last created unit) to Undead Dreadlord - Carrion Swarm WS_Point[2]
-




Unit - Add a 1.00 second Generic expiration timer to (Last created unit)
-




Set WS_Real = (WS_Real + (360.00 / 15.00))
-




Custom script: call RemoveLocation(udg_WS_Point[2])
-
-
-


Set WS_Unitgroup = (Units within 450.00 of WS_Point[1] matching (((Matching unit) belongs to an enemy of WS_Owner) Equal to True))
-


Unit Group - Pick every unit in WS_Unitgroup and do (Actions)
-



Loop - Actions
-




-------- --------
-




Unit - Remove Frozen (Pause) buff from (Picked unit)
-




Unit - Remove Frostbite buff from (Picked unit)
-




-------- --------
-




Unit - Cause WS_Caster to damage (Picked unit), dealing 3.00 damage of attack type Spells and damage type Normal
-




Unit - Create 1 Dummy for WS_Owner at WS_Point[1] facing Default building facing degrees
-




Unit - Add Freeze (Dummy) to (Last created unit)
-




Unit - Set level of Freeze (Dummy) for (Last created unit) to RoFLvl
-




Unit - Order (Last created unit) to Human Mountain King - Storm Bolt (Picked unit)
-




Unit - Add a 1.00 second Generic expiration timer to (Last created unit)
-




-------- --------
-




Unit - Create 1 Dummy for WS_Owner at WS_Point[1] facing Default building facing degrees
-




Unit - Add Frostbite (Dummy) to (Last created unit)
-




Unit - Set level of Frostbite (Dummy) for (Last created unit) to RoFLvl
-




Unit - Order (Last created unit) to Undead Necromancer - Cripple (Picked unit)
-




Unit - Add a 1.00 second Generic expiration timer to (Last created unit)
-
-
-


Custom script: call DestroyGroup(udg_WS_Unitgroup)
-


Custom script: call RemoveLocation(udg_WS_Point[1])
-
-
-
Damage Ticks 2
-

Events
-


Time - Every 1.00 seconds of game time
-
-

Conditions
-

Actions
-


If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-



If - Conditions
-




(Level of Ring of Frost for WS_Caster) Equal to 1
-
-



Then - Actions
-




Unit Group - Pick every unit in (Units in (Playable map area) matching (((Matching unit) has buff Frostbite ) Equal to True)) and do (Unit - Cause WS_Caster to damage (Picked unit), dealing 20.00 damage of attack type Spells and damage type Normal)
-
-



Else - Actions
-




If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-





If - Conditions
-






(Level of Ring of Frost for WS_Caster) Equal to 2
-
-





Then - Actions
-






Unit Group - Pick every unit in (Units in (Playable map area) matching (((Matching unit) has buff Frostbite ) Equal to True)) and do (Unit - Cause WS_Caster to damage (Picked unit), dealing 30.00 damage of attack type Spells and damage type Normal)
-
-





Else - Actions
-






If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-







If - Conditions
-








(Level of Ring of Frost for WS_Caster) Equal to 3
-
-







Then - Actions
-








Unit Group - Pick every unit in (Units in (Playable map area) matching (((Matching unit) has buff Frostbite ) Equal to True)) and do (Unit - Cause WS_Caster to damage (Picked unit), dealing 40.00 damage of attack type Spells and damage type Normal)
-
-







Else - Actions
-
-
-
-
-
-
-
-: Uploaded Screenshots :-
Any leaks/improvements?
Constructive Critisism is apprechiated.
Updated:
- Firestorm is now Ring of Frost - freezes enemies within the target area and leaves them with a debuff that slows movement and deals damage over time
- Fixed leaks (mercy, i suck at finding leaks)
- Nuke removed
Updated:
- Ring of Frost now breaks upon damage and have it's duration increased by 2 seconds for each lvl, Balancing it out.
Updated
- Ring of Frost no longer make the game crash if reapplied on an already frozen target
- Uploaded crash-free version
Attachments
-
[Mana] Spellpack 1.1.w3x32 KB · Views: 58
-
[Mana] Spellpack 1.2.w3x42.1 KB · Views: 85
-
[Mana] Spellpack 1.3.w3x42.3 KB · Views: 75
-
[Mana] Spellpack 1.4Error.w3x42.7 KB · Views: 76
-
Manasurge Spellpack img3.jpg747.6 KB · Views: 99 -
Manasurge Spellpack img2.jpg763.9 KB · Views: 96 -
[Mana] Spellpack 1.5.w3x44.6 KB · Views: 74
-
[Mana] Spellpack 1.6.w3x44.6 KB · Views: 114
-
Manasurge Spellpack img4.jpg605 KB · Views: 113 -
Manasurge Spellpack img5.jpg626.5 KB · Views: 95 -
Manasurge Spellpack img6.jpg707.7 KB · Views: 90
Last edited:




