H34DhUnT3r
Ultra Cool Member
- Reaction score
- 36
Hi,
This is my first spellpack
Enjoy!
If you don't want to read all this just scroll down and download the attachement
MPI
Memory Leaks: No
Import Difficulty: 2/5
A couple of custom icons and abilities
Custom Abilities
-4 normal skill abilities
-2 dummy abilities
Units
2 Dummy units (Those are aura Dummies, that's why there are 2 and not just one)
1 Custom Hero (based on Lich)
4 Custom icons
Variables
Health Funnel: 3 (all array)
Mana Greed: 5 (none array)
Aura of Necrohealing: 11 (all array)
Demonic Bloodrain: 9 (all array but one)
Testing: 2
Total: 30
hope this is enough info about the editor..
And now, The spellpack
======================================
Skill 1
Health Funnel
Transfers HP of the caster to a target friendly unit
Level 1 - Gives 20 HP to the target; draining 10 HP from the caster
Level 2 - Gives 40 HP to the target; draining 20 HP from the caster
Level 3 - Gives 60 HP to the target; draining 30 HP from the caster
Icon:
Triggers:
Casting Trigger:
Transfer Trigger
Screenshot:
Skill 2
Mana Greed
On each spell casted there is a chance, that a percentage of the used mana will be returned.
Level 1 - 20% chance that 30% of the mana will be returned.
Level 2 - 40% chance that 40% of the mana will be returned.
Level 3 - 60% chance that 50% of the mana will be returned.
Icon:
Triggers:
Just one for this Ability
Screenshot:
N/A
Skill 3
Aura of Necrohealing
If activated, a friendly unit that dies under effect of the Aura will heal other friendly units which are also under the effect of the Aura.
Level 1 - A quarter of the max health of the dying unit will be spreaded
Level 2 - A half of the max health of the dying unit will be spreaded
Level 3 - The max health of the dying unit will be spreaded
Icons:
Activate Button
Deactivate Button
Triggers:
Activate Aura trigger
Deactivate Aura trigger
Aura Heal/Damage trigger
Screenshot:
Ultimate
Demonic Bloodrain
Causes a rain of blood to pour down in a large area,
healing friendly allied units for 20 HP per second and
damages enemy units for 10 HP per second. Lasts 60 seconds.
Icon:
Triggers:
Casting Trigger
Dummy Remove Trigger
Heal/Damage timer trigger
Coloring Trigger
Screenshot:
=====================
There,,,
I know it's a lot of information, but I hope to get some feedback
If i have forgotten something plz notify me then i can change/add it
I'll be off for today so I'll read replies tomorrow
Greetings,
H34DhUnT3r[NL]
EDIT:
Update
Changed Health Funnel icon
Changed name to Dark Priest
Changed proper name to Krin
This is my first spellpack
Enjoy!
If you don't want to read all this just scroll down and download the attachement
MPI
Memory Leaks: No
Import Difficulty: 2/5
A couple of custom icons and abilities
Custom Abilities
-4 normal skill abilities
-2 dummy abilities
Units
2 Dummy units (Those are aura Dummies, that's why there are 2 and not just one)
1 Custom Hero (based on Lich)
4 Custom icons
Variables
Health Funnel: 3 (all array)
Mana Greed: 5 (none array)
Aura of Necrohealing: 11 (all array)
Demonic Bloodrain: 9 (all array but one)
Testing: 2
Total: 30
hope this is enough info about the editor..
And now, The spellpack
======================================
Skill 1
Health Funnel
Transfers HP of the caster to a target friendly unit
Level 1 - Gives 20 HP to the target; draining 10 HP from the caster
Level 2 - Gives 40 HP to the target; draining 20 HP from the caster
Level 3 - Gives 60 HP to the target; draining 30 HP from the caster
Icon:
Triggers:
Casting Trigger:
Code:
HealthFCast
Events
Unit - A unit Starts the effect of an ability
Conditions
(Ability being cast) Equal to Health Funnel
Actions
For each (Integer A) from 1 to 12, do (Actions)
Loop - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
(Owner of (Triggering unit)) Equal to (Player((Integer A)))
Then - Actions
Set HF_Caster[(Integer A)] = (Triggering unit)
Set HF_Target[(Integer A)] = (Target unit of ability being cast)
Set HF_HPTrans[(Integer A)] = ((Level of Health Funnel for HF_Caster[(Integer A)]) x 20)
Else - Actions
Transfer Trigger
Code:
HealthFTrans
Events
Time - Every 1.00 seconds of game time
Conditions
Actions
For each (Integer A) from 1 to 12, do (Actions)
Loop - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
(HF_Target[(Integer A)] has buff Health Funnel ) Equal to True
Then - Actions
Unit - Set life of HF_Target[(Integer A)] to ((Life of HF_Target[(Integer A)]) + (Real(HF_HPTrans[(Integer A)])))
Unit - Set life of HF_Caster[(Integer A)] to ((Life of HF_Caster[(Integer A)]) - (Real((HF_HPTrans[(Integer A)] / 2))))
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
(Life of HF_Target[(Integer A)]) Equal to (Max life of HF_Target[(Integer A)])
Then - Actions
Unit - Order HF_Caster[(Integer A)] to Stop
Else - Actions
Else - Actions
Screenshot:
Skill 2
Mana Greed
On each spell casted there is a chance, that a percentage of the used mana will be returned.
Level 1 - 20% chance that 30% of the mana will be returned.
Level 2 - 40% chance that 40% of the mana will be returned.
Level 3 - 60% chance that 50% of the mana will be returned.
Icon:
Triggers:
Just one for this Ability
Code:
ManaGCast
Events
Unit - A unit Starts the effect of an ability
Conditions
(Level of Mana Greed for (Triggering unit)) Greater than 0
Actions
For each (Integer A) from 1 to 12, do (Actions)
Loop - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
(Owner of (Triggering unit)) Equal to (Player((Integer A)))
Then - Actions
Set MG_Hero = (Triggering unit)
Set MG_LvL = (Level of Mana Greed for (Triggering unit))
Set MG_ManaBefore = (Integer((Mana of (Triggering unit))))
Wait 0.05 seconds
Set MG_ManaAfter = (Integer((Mana of (Triggering unit))))
Wait 0.02 seconds
Set MG_ManaAdd = (MG_ManaBefore - MG_ManaAfter)
Set MG_ManaAdd = (MG_ManaAdd / 10)
Set MG_LvLMult = (2 + MG_LvL)
Set MG_ManaAdd = (MG_ManaAdd x MG_LvLMult)
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
(Random integer number between 1 and 5) Less than or equal to MG_LvL
Then - Actions
Set MG_HeroPos = (Position of MG_Hero)
Special Effect - Create a special effect at MG_HeroPos using Abilities\Spells\NightElf\Blink\BlinkCaster.mdl
Special Effect - Destroy (Last created special effect)
Unit - Set mana of (Triggering unit) to ((Mana of (Triggering unit)) + (Real(MG_ManaAdd)))
Special Effect - Create a special effect at MG_HeroPos using Abilities\Spells\NightElf\Blink\BlinkTarget.mdl
Special Effect - Destroy (Last created special effect)
Custom script: call RemoveLocation(udg_MG_HeroPos)
Else - Actions
Else - Actions
Screenshot:
N/A
Skill 3
Aura of Necrohealing
If activated, a friendly unit that dies under effect of the Aura will heal other friendly units which are also under the effect of the Aura.
Level 1 - A quarter of the max health of the dying unit will be spreaded
Level 2 - A half of the max health of the dying unit will be spreaded
Level 3 - The max health of the dying unit will be spreaded
Icons:
Activate Button
Deactivate Button
Triggers:
Activate Aura trigger
Code:
AuraNAct
Events
Unit - A unit Starts the effect of an ability
Conditions
(Ability being cast) Equal to Aura of Necrohealing
Actions
For each (Integer A) from 1 to 12, do (Actions)
Loop - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
(Owner of (Triggering unit)) Equal to (Player((Integer A)))
Then - Actions
Set AS_Hero[(Integer A)] = (Triggering unit)
Set AS_HeroPos[(Integer A)] = (Position of (Triggering unit))
Unit - Create 1 Dummy (AoN) for (Owner of (Triggering unit)) at AS_HeroPos[(Integer A)] facing Default building facing degrees
Unit - Hide (Last created unit)
Set AS_Dummy[(Integer A)] = (Last created unit)
Custom script: call RemoveLocation(udg_AS_HeroPos[bj_forLoopAIndex])
Else - Actions
Deactivate Aura trigger
Code:
AuraNDeact
Events
Time - Every 0.10 seconds of game time
Conditions
Actions
For each (Integer A) from 1 to 12, do (Actions)
Loop - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
(AS_Hero[(Integer A)] has buff Aura of Necrohealing Caster ) Equal to True
Then - Actions
Set AS_HeroPosMove[(Integer A)] = (Position of AS_Hero[(Integer A)])
Unit - Move AS_Dummy[(Integer A)] instantly to AS_HeroPosMove[(Integer A)]
Custom script: call RemoveLocation(udg_AS_HeroPosMove[bj_forLoopAIndex])
Else - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
AS_Dummy[(Integer A)] Not equal to No unit
Then - Actions
Unit - Remove AS_Dummy[(Integer A)] from the game
Set AS_Dummy[(Integer A)] = No unit
Else - Actions
Aura Heal/Damage trigger
Code:
AuraNDeter
Events
Unit - A unit Dies
Conditions
Actions
For each (Integer A) from 1 to 12, do (Actions)
Loop - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
(Owner of (Dying unit)) Equal to (Player((Integer A)))
Then - Actions
Set AS_MaxHP[(Integer A)] = (Integer((Max life of (Dying unit))))
Set AS_DyingUnitPos[(Integer A)] = (Position of (Dying unit))
Set AS_TmpGroup1[(Integer A)] = (Units within 800.00 of AS_DyingUnitPos[(Integer A)] matching (((Matching unit) belongs to an ally of (Owner of (Dying unit))) Equal to True))
Unit Group - Pick every unit in AS_TmpGroup1[(Integer A)] and do (Actions)
Loop - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
(Level of Aura of Necrohealing for (Picked unit)) Greater than or equal to 1
Then - Actions
Set AS_Hero[(Integer A)] = (Picked unit)
Set AS_HeroPos[(Integer A)] = (Position of AS_Hero[(Integer A)])
Set AS_AbilityLVL[(Integer A)] = (Level of Mana Greed for AS_Hero[(Integer A)])
Set AS_TmpGroup2[(Integer A)] = (Units within 800.00 of AS_HeroPos[(Integer A)] matching (((Matching unit) has buff Aura of Necrohealing ) Equal to True))
Set AS_UnitCount[(Integer A)] = (Number of units in AS_TmpGroup2[(Integer A)])
Set AS_HpAdd[(Integer A)] = (AS_MaxHP[(Integer A)] / AS_UnitCount[(Integer A)])
If (AS_AbilityLVL[(Integer A)] Equal to 1) then do (Set AS_HpAdd[(Integer A)] = (AS_HpAdd[(Integer A)] / 4)) else do (Do nothing)
If (AS_AbilityLVL[(Integer A)] Equal to 2) then do (Set AS_HpAdd[(Integer A)] = (AS_HpAdd[(Integer A)] / 2)) else do (Do nothing)
If (AS_AbilityLVL[(Integer A)] Equal to 3) then do (Set AS_HpAdd[(Integer A)] = (AS_HpAdd[(Integer A)] / 1)) else do (Do nothing)
Special Effect - Create a special effect at AS_DyingUnitPos[(Integer A)] using Objects\Spawnmodels\Undead\UndeadDissipate\UndeadDissipate.mdl
Special Effect - Destroy (Last created special effect)
Unit Group - Pick every unit in AS_TmpGroup2[(Integer A)] and do (Actions)
Loop - Actions
Unit - Set life of (Picked unit) to ((Life of (Picked unit)) + (Real(AS_HpAdd[(Integer A)])))
Set AS_PickedUnit[(Integer A)] = (Position of (Picked unit))
Special Effect - Create a special effect at AS_PickedUnit[(Integer A)] using Abilities\Spells\Undead\AnimateDead\AnimateDeadTarget.mdl
Special Effect - Destroy (Last created special effect)
Custom script: call RemoveLocation(udg_AS_PickedUnit[bj_forLoopAIndex])
Custom script: call DestroyGroup(udg_AS_TmpGroup2[bj_forLoopAIndex])
Else - Actions
Custom script: call RemoveLocation(udg_AS_HeroPos[bj_forLoopAIndex])
Custom script: call RemoveLocation(udg_AS_DyingUnitPos[bj_forLoopAIndex])
Custom script: call DestroyGroup(udg_AS_TmpGroup1[bj_forLoopAIndex])
Else - Actions
Screenshot:
Ultimate
Demonic Bloodrain
Causes a rain of blood to pour down in a large area,
healing friendly allied units for 20 HP per second and
damages enemy units for 10 HP per second. Lasts 60 seconds.
Icon:
Triggers:
Casting Trigger
Code:
DemonicBCast
Events
Unit - A unit Starts the effect of an ability
Conditions
(Ability being cast) Equal to Demonic Bloodrain
Actions
For each (Integer A) from 1 to 12, do (Actions)
Loop - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
(Owner of (Triggering unit)) Equal to (Player((Integer A)))
Then - Actions
Set DB_Caster[(Integer A)] = (Triggering unit)
Set DB_CastPoint[(Integer A)] = (Position of (Triggering unit))
Set DB_TmpGroup[(Integer A)] = (Units within 800.00 of DB_CastPoint[(Integer A)])
Unit - Create 1 Dummy (DB) for (Owner of (Triggering unit)) at DB_CastPoint[(Integer A)] facing Default building facing degrees
Unit - Hide (Last created unit)
Set DB_Dummy[(Integer A)] = (Last created unit)
Wait until ((Current order of (Triggering unit)) Not equal to (Order(tranquility))), checking every 0.10 seconds
Set DB_Caster[(Integer A)] = No unit
Custom script: call DestroyGroup(udg_DB_TmpGroup[(bj_forLoopAIndex)])
Custom script: call RemoveLocation(udg_DB_CastPoint[(bj_forLoopAIndex)])
Else - Actions
Dummy Remove Trigger
Code:
DemonicBDumRem
Events
Time - Every 0.10 seconds of game time
Conditions
Actions
For each (Integer A) from 1 to 12, do (Actions)
Loop - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
(Current order of DB_Caster[(Integer A)]) Equal to (Order(tranquility))
Then - Actions
Set DB_CastPointMov[(Integer A)] = (Position of DB_Caster[(Integer A)])
Unit - Move DB_Dummy[(Integer A)] instantly to DB_CastPointMov[(Integer A)]
Custom script: call RemoveLocation(udg_DB_CastPointMov[bj_forLoopAIndex])
Else - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
DB_Dummy[(Integer A)] Not equal to No unit
Then - Actions
Unit - Remove DB_Dummy[(Integer A)] from the game
Set DB_Dummy[(Integer A)] = No unit
Else - Actions
Heal/Damage timer trigger
Code:
DemonicBTimer
Events
Time - Every 1.00 seconds of game time
Conditions
Actions
For each (Integer A) from 1 to 12, do (Actions)
Loop - Actions
Unit Group - Pick every unit in DB_TmpGroup[(Integer A)] and do (Actions)
Loop - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
((Picked unit) belongs to an ally of (Owner of DB_Caster[(Integer A)])) Equal to True
((Picked unit) has buff Demonic Bloodrain ) Equal to True
Then - Actions
Set DB_HPChange[(Integer A)] = 20
Set DB_HPSet[(Integer A)] = ((Integer((Life of (Picked unit)))) + DB_HPChange[(Integer A)])
Unit - Set life of (Picked unit) to (Real(DB_HPSet[(Integer A)]))
Else - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
((Picked unit) belongs to an enemy of (Owner of DB_Caster[(Integer A)])) Equal to True
((Picked unit) has buff Demonic Bloodrain ) Equal to True
Then - Actions
Set DB_HPChange[(Integer A)] = 10
Set DB_HPSet[(Integer A)] = ((Integer((Life of (Picked unit)))) - DB_HPChange[(Integer A)])
Unit - Set life of (Picked unit) to (Real(DB_HPSet[(Integer A)]))
Else - Actions
Coloring Trigger
Code:
DemonicBColors
Events
Time - Every 0.10 seconds of game time
Conditions
Actions
Set DB_TmpGroupMAP = (Units in (Playable map area))
Unit Group - Pick every unit in DB_TmpGroupMAP and do (Actions)
Loop - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
((Picked unit) has buff Demonic Bloodrain ) Equal to True
Then - Actions
Animation - Change (Picked unit)'s vertex coloring to (100.00%, 0.00%, 0.00%) with 20.00% transparency
Else - Actions
Animation - Change (Picked unit)'s vertex coloring to (100.00%, 100.00%, 100.00%) with 0.00% transparency
For each (Integer A) from 1 to 12, do (Actions)
Loop - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
(Current order of DB_Caster[(Integer A)]) Equal to (Order(tranquility))
(Level of Demonic Bloodrain for DB_Caster[(Integer A)]) Greater than 0
Then - Actions
Set DB_EffectPoint[(Integer A)] = (DB_CastPoint[(Integer A)] offset by (Random real number between 0.00 and 800.00) towards (Random angle) degrees)
Special Effect - Create a special effect at DB_EffectPoint[(Integer A)] using Objects\Spawnmodels\Orc\Orcblood\BattrollBlood.mdl
Special Effect - Destroy (Last created special effect)
Custom script: call RemoveLocation(udg_DB_EffectPoint[bj_forLoopAIndex])
Else - Actions
Custom script: call DestroyGroup(udg_DB_TmpGroupMAP)
Screenshot:
=====================
There,,,
I know it's a lot of information, but I hope to get some feedback
If i have forgotten something plz notify me then i can change/add it
I'll be off for today so I'll read replies tomorrow
Greetings,
H34DhUnT3r[NL]
EDIT:
Update
Changed Health Funnel icon
Changed name to Dark Priest
Changed proper name to Krin