Caged Soul v1
660
ID:
582
Family ID:
Author:
Chronos
Rarity:
common
Element:
darkness
Attack Type:
Decay
Attack Range:
800
Attack CD:
1.5
Damage:
750-755
Status:
Approved

Description:

Common darkness tower, adept at eliminating magical, nature and undead foes.
Banish
Magic, undead and nature creeps damaged by this tower suffer an additional 55% of that damage as spelldamage.

Level Bonus:
+1.6% damage
Download

Toggle Triggers

On Damage

ONDAMAGE_chance: 1.0 ONDAMAGE_chanceLevelAdd: 0.0
function onDamage takes Tower tower returns nothing
    local Unit creep = Event.getTarget()
    if creep.getCategory() <= CATEGORY_NATURE then
        call tower.doSpellDamage(creep, Event.damage * (0.55 + (0.016 * tower.getLevel())), tower.calcSpellCritNoBonus())
        call SFXAtUnit("Abilities\\Spells\\NightElf\\ManaBurn\\ManaBurnTarget.mdl", creep.getUnit())
    endif
endfunction
Forest Archer v1
660
ID:
601
Family ID:
Author:
Boekie
Rarity:
rare
Element:
nature
Attack Type:
Essence
Attack Range:
850
Attack CD:
2.2
Damage:
715-720
Status:
Approved

Description:

An archer that has been granted a gift from the forest.
Multishot:
Attacks up to 3 targets at the same time.

Level Bonus:
+1 target at level 15
Gift of the Forest
The magical powers of the forest grant this archer enchanted arrows. These arrows have a 5% chance to stun for 1.75 seconds. If they don't stun there is a 10% chance to slow by 15% for 7.5 seconds. 

Level Bonus
+0.1% chance to stun
+0.05 seconds stun duration
+0.1% chance to slow
+0.2 seconds slow duration
Download

Toggle Triggers

Header

    globals   
    //@export
    BuffType CyonyPoison
    endglobals 
    
    //Do not remove or rename this function! 
    //Put your initialization tasks here, this function will be called on map init 
    private function init takes nothing returns nothing 
    local Modifier slow=Modifier.create()
    set CyonyPoison=BuffType.create(7.5,0.1,false)
    call slow.addModification(MOD_MOVESPEED,-0.15,0)
    call CyonyPoison.setBuffIcon('@@2@@') 
    call CyonyPoison.setBuffModifier(slow) 
    call CyonyPoison.setStackingGroup("ForestArcherStacks") 
    endfunction

On Damage

ONDAMAGE_chance: 1.0 ONDAMAGE_chanceLevelAdd: 0.0
function onDamage takes Tower tower returns nothing
local integer level = tower.getLevel()
local Unit creep = Event.getTarget()

if tower.calcChance(0.05 + level*0.001) then
    call cb_stun.applyOnlyTimed(tower, creep, 1.75 + level*0.05)
  elseif tower.calcChance(0.1 + level*0.001) then
    call CyonyPoison.apply(tower,creep,level*2) 
  endif
endfunction

On Level Up

function onLevelUp takes Tower tower returns nothing
    if tower.getLevel() == 15 then
        call UnitRemoveAbility(tower.getUnit(),'@@1@@')
        call UnitAddAbility(tower.getUnit(),'@@0@@')
    endif
endfunction

On Tower Creation

function onCreate takes Tower tower returns nothing
    if tower.getLevel() >= 15 then
        call UnitRemoveAbility(tower.getUnit(),'@@1@@')
        call UnitAddAbility(tower.getUnit(),'@@0@@')
    endif
endfunction
Deep Frozen Mushroom v1
680
ID:
593
Family ID:
Author:
BetrayedKnight
Rarity:
common
Element:
ice
Attack Type:
Elemental
Attack Range:
950
Attack CD:
1.1
Damage:
563-580
Status:
Approved

Description:

A colony of mushrooms able to chill living flesh. Deals bonus damage to humanoids orcs and nature but is weak against undead.
Specials:
-50% dmg to undead
+35% dmg to nature (+1.2%/lvl)
+35% dmg to orcs (+1.2%/lvl)
+35% dmg to humanoids (+1.2%/lvl)
Download
Large Ray Blaster v1
1800
ID:
309
Family ID:
Author:
i_mOck_death
Rarity:
uncommon
Element:
iron
Attack Type:
Energy
Attack Range:
820
Attack CD:
1.4
Damage:
743-762
Status:
Approved

Description:

Uncommon iron tower that leaves a debuff on the enemy unit that increases item drop quality and chance of an item drop.
Phaze
Whenever this tower damages a creep it increases its item drop chance and item drop quality by 10% for 5 seconds. 

Level Bonus:
 +0.4% item drop quality 
 +0.4% item drop chance 
 +0.1 seconds
Download

Toggle Triggers

Header

            globals
        //@import
        BuffType mOck_rayBlaster
    endglobals
    
    //Do not remove or rename this function!
    //Put your initialization tasks here, this function will be called on map init
    private function init takes nothing returns nothing
    endfunction
        

On Damage

ONDAMAGE_chance: 1.0 ONDAMAGE_chanceLevelAdd: 0.0
function onDamage takes Tower tower returns nothing
            
call mOck_rayBlaster.applyCustomTimed(tower,Event.getTarget(), 1000 + 40 * tower.getLevel(),5+tower.getLevel()*0.1)
        
endfunction
Large Magic Ruin v1
700
ID:
14
Family ID:
Author:
drol
Rarity:
common
Element:
astral
Attack Type:
Elemental
Attack Range:
700
Attack CD:
1
Damage:
663-732
Status:
Approved

Description:

Some magic still sparkles inside these ruins.
Illuminate
Attacks debuff the target, making it grant 20% more experience once killed. This effect last 5 seconds.

Level Bonus:
+0.8% experience
+0.2 seconds
Download

Toggle Triggers

Header

    globals
    //@import
    BuffType drol_magicRuin
    endglobals
    
    //Do not remove or rename this function!
    //Put your initialization tasks here, this function will be called on map init
    private function init takes nothing returns nothing
    endfunction

On Damage

ONDAMAGE_chance: 1.0 ONDAMAGE_chanceLevelAdd: 0.0
function onDamage takes Tower tower returns nothing
    call drol_magicRuin.applyCustomTimed(tower,Event.getTarget(),tower.getLevel()*4 + 75,5+tower.getLevel()*0.2)
endfunction
Igloo v1
700
ID:
77
Family ID:
Author:
Boekie
Rarity:
rare
Element:
ice
Attack Type:
Energy
Attack Range:
1000
Attack CD:
2.5
Damage:
696-696
Status:
Approved

Description:

This igloo emits an extreme amount of cold, slowing and stunning creeps around it.
Specials:
-50% dmg to masses
Extreme Cold
Creeps that come within 900 AoE of this tower will be affected by extreme cold, suffering 700 spelldamage, and becoming slowed by 20% for 4 seconds. When the slow expires they will get stunned for 0.4 seconds.

Level Bonus:
+35 damage 
+0.4% slow
Download

Toggle Triggers

Header

    globals
        //@export  
        BuffType boekie_igloo_buff 
    endglobals
    
    function boekie_igloo_end takes Buff b returns nothing
        call cb_stun.applyOnlyTimed(b.getCaster(),b.getBuffedUnit(),b.userReal) 
    endfunction 
    
    //Do not remove or rename this function!
    //Put your initialization tasks here, this function will be called on map init
    private function init takes nothing returns nothing
        local Modifier slow = Modifier.create() 
        
        call slow.addModification(MOD_MOVESPEED,0,-0.001)
        set boekie_igloo_buff = BuffType.create(0,0,false) // apply custom timed  
        call boekie_igloo_buff.setBuffIcon('@@0@@') 
        call boekie_igloo_buff.setBuffModifier(slow)
        call boekie_igloo_buff.setEventOnExpire(EventHandler.boekie_igloo_end)
    endfunction

On Unit Comes In Range

UNITINRANGE_targetType: TARGET_TYPE_CREEPS UNITINRANGE_range: 900
function onUnitInRange takes Tower tower returns nothing
    local Unit creep = Event.getTarget() 
    local integer lvl = tower.getLevel()

    call tower.doSpellDamage(creep,700.0+(lvl*35.0),tower.calcSpellCritNoBonus()) 
    set boekie_igloo_buff.applyCustomTimed(tower,creep,200+lvl*4,4).userReal = 0.4

    call Effect.createScaled("Abilities\\Spells\\Undead\\FrostArmor\\FrostArmorDamage.mdl", creep.getX(), creep.getY(), 30.0, 0, 2.0).destroy()
endfunction
Serpent Ward v1
700
ID:
95
Family ID:
Author:
SirCoqaLot.
Rarity:
uncommon
Element:
astral
Attack Type:
Elemental
Attack Range:
1050
Attack CD:
1.35
Damage:
726-726
Mana:
12
Mana regen:
1
Status:
Approved

Description:

Lesser astral tower that buffs a nearby tower, increasing its mana regeneration, maximum mana and spell damage dealt.
Snake Charm
Increases the target's maximum mana by 20%, its mana regeneration by 20% and its spell damage by 10%. The buff lasts 5 seconds. 

Level Bonus:
+1.2% mana regeneration 
+1.2% mana 
+0.6% spell damage 
+5 seconds duration at level 25

AC_TYPE_ALWAYS_BUFF
 10, 200 range, 5s cooldown
Download

Toggle Triggers

Autocast

caster_art: AUTOCAST_cooldown: 5 AUTOCAST_numBuffsBeforeIdle: 1 AUTOCAST_isExtended: false AUTOCAST_autocastType: AC_TYPE_ALWAYS_BUFF AUTOCAST_manacost: 10 AUTOCAST_range: 200 AUTOCAST_buffType: 0 AUTOCAST_targetSelf: false AUTOCAST_targetType: TARGET_TYPE_TOWERS target_art: AUTOCAST_autoRange: 200
private function onAutocast takes Tower tower returns nothing
if tower.getLevel() <25 then
    call sir_serpent_buff.applyAdvanced(tower,Event.getTarget(),30+tower.getLevel(),200+tower.getLevel()*12,5)
else
    call sir_serpent_buff.applyAdvanced(tower,Event.getTarget(),30+tower.getLevel(),200+tower.getLevel()*12,10)
endif
endfunction

Header

    globals
    //@import
    BuffType sir_serpent_buff
    endglobals
    
    //Do not remove or rename this function!
    //Put your initialization tasks here, this function will be called on map init
    private function init takes nothing returns nothing
        endfunction