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

Purification (v1.1)

Presentation

In this version, I made small changes, such as:

New ScreeenShot (1600 x 1200 and 4 pictures)
Description spell

Function Spell

Paladin invokes the sacred powers to punish or to heal the target.
For each buff (physical or magic) in the main target, the sacred powers They punish or cure of additional targets around the main target.
However, all of the buffs (except auras and effects of time) They are removed in sacrifice.
Besides, if the target is undead, this spell had punished still more.
  
Area of ​​effect: 200/275/325.
Cast Range: 500/600/700.
  
Cause (main target): 140 - 220/250 - 315 / 340-460 of points.
Cause (for additional target): 20% / 45% / 65% of the damage Caused is the main target.
Cause (for undeads): 15% / 22% / 32% of the damage Caused is the main target.
  
CoolDown: 07/12/20 seconds.
Mancost: 120/150/185.

This spell does not recover the wounds of allies

Triggers:



[trigger=Setup]
Purification Setup
Events
Map initialization
Conditions
Actions
-------- --------------------------- --------
-------- Excuse me for my terrible English. I am getting better to every moment. --------
-------- :) --------
-------- --------------------------- --------
-------- Necessary ability so that the functions of my spell are activated: --------
Set PN_Ability = Purification
-------- --------------------------- --------
-------- Area of effect of the spell so that it gets right additional units: --------
Set PN_AoE[1] = 200.00
Set PN_AoE[2] = 275.00
Set PN_AoE[3] = 325.00
-------- Observation: the indexes/arrays indicate the properties of the spell at each level. --------
-------- --------------------------- --------
-------- Damage/cure caused by this spell for additional units: --------
Set PN_Damage_AoE[1] = 0.20
Set PN_Damage_AoE[2] = 0.45
Set PN_Damage_AoE[3] = 0.65
-------- Observation: the indexes/arrays indicate the properties of the spell at each level. --------
-------- --------------------------- --------
-------- Cure/Damage low caused by this spell for the only target: --------
Set PN_Damage_Min[1] = 140.00
Set PN_Damage_Min[2] = 250.00
Set PN_Damage_Min[3] = 340.00
-------- Observation: the indexes/arrays indicate the properties of the spell at each level. --------
-------- Cure/Damage max caused by this spell for the only target: --------
Set PN_Damage_Max[1] = 220.00
Set PN_Damage_Max[2] = 315.00
Set PN_Damage_Max[3] = 460.00
-------- Observation: the indexes/arrays indicate the properties of the spell at each level. --------
-------- --------------------------- --------
-------- Damage extra caused by this spell: --------
Set PN_Damage_Extra[1] = 1.15
Set PN_Damage_Extra[2] = 1.22
Set PN_Damage_Extra[3] = 1.32
-------- Note: 1.15 are equal to 115% of the normal damage caused for additional units. --------
-------- Like this, the other values are equal to 122% and 132%. --------
-------- --------------------------- --------
-------- Attack type and damage caused by this spell in the moment of punishing the enemies of Caster* : --------
Set PN_Type_Attack = Spells
Set PN_Type_Damage = Divine
-------- --------------------------- --------
-------- * Caster: Unit any that works a certain spell / ability. In this case, it is the unit that works the ability Purification. --------
-------- --------------------------- --------
-------- Name of the models used for the creation of the special effects: --------
-------- --------------------------- --------
Set PN_Model[0] = Abilities\Spells\Human\Resurrect\ResurrectTarget.mdl
Set PN_Model[1] = Abilities\Spells\Human\HolyBolt\HolyBoltSpecialArt.mdl
Set PN_Model[2] = Abilities\Spells\Other\HealingSpray\HealBottleMissile.mdl
Set PN_Model[3] = Abilities\Spells\Other\Incinerate\FireLordDeathExplode.mdl
Set PN_Model[4] = Abilities\Spells\Other\Transmute\GoldBottleMissile.mdl
-------- --------------------------- --------
-------- ALL of the properties of my spell (as damage/heal, area of effect ...) they are FREE for they be modified. --------
-------- However, thank Losam (Me) for my work. Thank you for the understanding nice people! --------
-------- --------------------------- --------
-------- To reduce the leg that can cause Trigger, use the following custom script: --------
Custom script: call DestroyTrigger (GetTriggeringTrigger())
-------- --------------------------- --------
[/trigger]

[trigger= Cast]
Purification Cast
Events
Unit - A unit Starts the effect of an ability
Conditions
(Ability being cast) Equal to PN_Ability
Actions
-------- --------------------------- --------
-------- Spell's Caster: --------
Set PN_Caster = (Triggering unit)
-------- --------------------------- --------
-------- Caster's Target of spell: --------
Set PN_Target = (Target unit of ability being cast)
-------- --------------------------- --------
-------- Level of spell cast by Caster: --------
Set PN_Level = (Level of PN_Ability for PN_Caster)
-------- --------------------------- --------
-------- Damage total (caused by this spell for cure/damage): --------
Set PN_Damage_Total = (Random real number between PN_Damage_Min[PN_Level] and PN_Damage_Max[PN_Level])
-------- --------------------------- --------
-------- Amount of buffs in the target: --------
Set PN_Count_Buff = (Number of All buffs considered Magic or physical on PN_Target (Exclude expiration timers, Exclude auras))
-------- --------------------------- --------
-------- Target's position: --------
Set PN_Loc = (Position of PN_Target)
-------- --------------------------- --------
-------- Use the actions below to verify the alliance between Caster and the Target: --------
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
(PN_Target belongs to an ally of (Owner of PN_Caster)) Equal to False
Then - Actions
-------- If the target is enemy of Caster: --------
Unit - Cause PN_Caster to damage PN_Target, dealing PN_Damage_Total damage of attack type PN_Type_Attack and damage type PN_Type_Damage
Else - Actions
-------- If the target is alie of Caster: --------
Unit - Set life of PN_Target to ((Life of PN_Target) + PN_Damage_Total)
-------- --------------------------- --------
-------- Use the actions below to verify if is possibility of this spell to get right additional units: --------
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
PN_Count_Buff Equal to 0
Then - Actions
Special Effect - Create a special effect at PN_Loc using PN_Model[0]
Special Effect - Destroy (Last created special effect)
Else - Actions
-------- --------------------------- --------
-------- Groups of units for the spell to affect additional units: --------
Set PN_Group_Unit[0] = (Units within PN_AoE[PN_Level] of PN_Loc matching ((((Matching unit) is alive) Equal to True) and ((Matching unit) Not equal to PN_Target)))
-------- The variable below is responsible for getting right the additional units: --------
Set PN_Group_Unit[1] = (Random PN_Count_Buff units from PN_Group_Unit[0])
-------- --------------------------- --------
-------- Remove unit group's leaks: --------
Custom script: call DestroyGroup (udg_PN_Group_Unit[0])
Custom script: set bj_wantDestroyGroup = true
-------- --------------------------- --------
-------- Don't remove the script why would this spell cause above countless mistakes. --------
-------- --------------------------- --------
-------- Pick all units in group (PN_Group[1]): --------
Unit Group - Pick every unit in PN_Group_Unit[1] and do (Actions)
Loop - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
((Picked unit) is A town-hall-type unit) Equal to False
((Picked unit) is Magic Immune) Equal to False
((Picked unit) is Mechanical) Equal to False
((Picked unit) is A structure) Equal to False
Then - Actions
-------- --------------------------- --------
-------- Special effects created in the additional units: --------
Special Effect - Create a special effect attached to the origin of (Picked unit) using PN_Model[1]
Special Effect - Destroy (Last created special effect)
Special Effect - Create a special effect attached to the origin of (Picked unit) using PN_Model[2]
Special Effect - Destroy (Last created special effect)
Special Effect - Create a special effect attached to the origin of (Picked unit) using PN_Model[4]
Special Effect - Destroy (Last created special effect)
-------- --------------------------- --------
-------- As the spell causes a small damage portion caused in the main target, configure the variable below again: --------
Set PN_Damage_Total = ((Random real number between PN_Damage_Min[PN_Level] and PN_Damage_Max[PN_Level]) x PN_Damage_AoE[PN_Level])
-------- --------------------------- --------
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
((Picked unit) belongs to an ally of (Owner of PN_Caster)) Equal to True
Then - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
((Picked unit) is Undead) Equal to False
Then - Actions
-------- If the additional unit is allied of Caster: --------
Unit - Set life of (Picked unit) to ((Life of (Picked unit)) + PN_Damage_Total)
Else - Actions
-------- This spell doesn't cure the undeads wounds, in other words, it doesn't work for allied Undeads. --------
Else - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
((Picked unit) is Undead) Equal to True
Then - Actions
-------- Define the variable below again, why this spell causes extra damage for Undeads: --------
Set PN_Damage_Total = (PN_Damage_Total x PN_Damage_Extra[PN_Level])
-------- If the additional unit is enemy of Caster and it is Undead: --------
Unit - Cause PN_Caster to damage (Picked unit), dealing PN_Damage_Total damage of attack type PN_Type_Attack and damage type PN_Type_Damage
Else - Actions
-------- In case the additional unit is enemy of Caster and she is not Undead, just punish her: --------
Unit - Cause PN_Caster to damage (Picked unit), dealing PN_Damage_Total damage of attack type PN_Type_Attack and damage type PN_Type_Damage
-------- --------------------------- --------
Else - Actions
-------- --------------------------- --------
-------- Special effects: --------
Special Effect - Create a special effect at PN_Loc using PN_Model[0]
Special Effect - Destroy (Last created special effect)
Special Effect - Create a special effect at PN_Loc using PN_Model[3]
Special Effect - Destroy (Last created special effect)
-------- --------------------------- --------
-------- Use the custom script to remove any leaks: --------
Custom script: call RemoveLocation(udg_PN_Loc)
-------- --------------------------- --------
-------- Don't forget to remove ALL of the buffs of the target: --------
Unit - Remove All buffs considered Magic or physical from PN_Target (Exclude expiration timers, Exclude auras)
-------- --------------------------- --------
-------- All of the lines and commands above are necessary for the basic functions of my spell. --------
-------- --------------------------- --------
[/trigger]



Thanks

I thank everyone who helped in my development
And to you!

Keywords:
Spell , Target , Paladin , Holy , Losam
Contents

Purification (Map)

Reviews
Purification (v1.0) | Reviewed by Maker | 30th Jun 2013 APPROVED The spell is leakless and MUI [tr] The spell damages neutral units

Moderator

M

Moderator


Purification (v1.0) | Reviewed by Maker | 30th Jun 2013
APPROVED


126248-albums6177-picture66521.png


  • The spell is leakless and MUI
126248-albums6177-picture66523.png


  • The spell damages neutral units
[tr]
 
Level 11
Joined
Mar 27, 2011
Messages
293
=== < Reserved > ===




please provide description of the spell, Im not downloading the map but I am intrested in what it does, the image is pretty small to see what it does
* I apologize. I have little time to perform excellent reviews and descriptions about my work. But you can rest assured. You can download my spell will not regret. *



anything u use twice or more should be stored into a tempVariable and the vrariable should be used. example: u use picked unit a lot
* I do not understand your comment. You can repeat it clearly my friend? *




[thread=235663]Counter Helix[/thread]
[thread=228426]Storm's Call[/thread]
[thread=224367]Stun System[/thread]
[thread=227374]Combat System[/thread]


* = Losam's reply
 
Last edited:
Level 29
Joined
Oct 24, 2012
Messages
6,543
I saw you post this like 5 times in last 2 days, so I must ask: Do you have the "anything u use twice or more should be stored into a tempVariable" in some text file or what :D

no lol i should tho. its just the thing i see almost all of the beginners doing lol.and since its such a big difference for speed and efficiency i stress that.

i really jus skimmed the spell and didnt see much of anything wrong except that lol
 
Top