Burning Sentry v1
370
ID:
659
Family ID:
Author:
Natac
Rarity:
uncommon
Element:
fire
Attack Type:
Elemental
Attack Range:
800
Attack CD:
1.38
Damage:
286-287
Status:
Approved

Description:

Burning structure with a medium synergetic effect for its element.
Burn
Starts to burn a target. On every further hit of a fire tower, the target will receive more bonus damage then before. Burning Structures will increase the bonus damage by 2.5, any other fire towers by 0.75. If the unit dies, it explodes and deals 277 damage to nearby units in a range of 200.
Lasts 5 seconds after the last attack of a fire tower.

Level Bonus:
+ 0.25 damage gain (Burning Structrues)
+ 0.08 damage gain (Other fire towers)
+ 0.12 seconds burn duration
Download

Toggle Triggers

Header

    globals
        //This buff is configurated as follows:
        //level: damage gain per attack
        //userReal: Already done bonus damage on the buffed unit
        //userInt: AOE-Damage if the buffed unit dies
        //@import
        BuffType   natac_burning_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

On Damage

ONDAMAGE_chance: 1.0 ONDAMAGE_chanceLevelAdd: 0.0
function onDamage takes Tower tower returns nothing
    local integer towerLevel = tower.getLevel()
    local Unit    target     = Event.getTarget()
    local real    level      = 2.5 + towerLevel*0.25
    local real    duration   = 5 + towerLevel*0.12
    local Buff    b          = natac_burning_buff.applyCustomTimed(tower, target, R2I(level*100), duration)
    
    // Upgrade AOE-damage, if it makes sense
    if(b.userInt < 277) then
        set b.userInt = 277
    endif
endfunction
Aery Phantom v1
375
ID:
87
Family ID:
Author:
drol
Rarity:
uncommon
Element:
storm
Attack Type:
Magic
Attack Range:
900
Attack CD:
1.5
Damage:
414-414
Mana:
17
Mana regen:
1
Status:
Approved

Description:

Only seen above the highest clouds, this rare creature sears the sky.
Specials:
+0.1 mana regen/lvl
Wind Shear
Increases the attackspeed of a tower in 300 range by 15% and gives it a 25% attackspeed adjusted chance to cast a chain of lightning which deals 300 initial spelldamage and hits up to 3 targets dealing 25% less damage each bounce. Effect lasts for 5 seconds.

Level Bonus:
+1% attackspeed
+12 spelldamage
+1 target at level 20
+0.1 sec duration

AC_TYPE_ALWAYS_BUFF
 15, 300 range, 3s cooldown
Download

Toggle Triggers

Autocast

caster_art: AUTOCAST_cooldown: 3 AUTOCAST_numBuffsBeforeIdle: 1 AUTOCAST_isExtended: false AUTOCAST_autocastType: AC_TYPE_ALWAYS_BUFF AUTOCAST_manacost: 15 AUTOCAST_range: 300 AUTOCAST_buffType: drol_phantomBuff AUTOCAST_targetSelf: true AUTOCAST_targetType: TARGET_TYPE_TOWERS target_art: Abilities\Spells\Items\AIlm\AIlmTarget.mdl AUTOCAST_autoRange: 300
private function onAutocast takes Tower tower returns nothing
    set drol_phantomBuff.applyCustomTimed(tower, Event.getTarget(), tower.getLevel() + 5, 5. + tower.getLevel()*0.1).userReal = tower.getLevel()*3 + 50
endfunction

Header

    globals
    
        //@import
        BuffType drol_phantomBuff
        //@import
        Cast drol_phantomCast
        //@import
        Cast drol_phantomCast2
    
    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
Icy Bones v1
375
ID:
425
Family ID:
Author:
MasterCassim
Rarity:
common
Element:
ice
Attack Type:
Elemental
Attack Range:
700
Attack CD:
1.5
Damage:
589-594
Status:
Approved

Description:

Chills creeps to the bone.
Icy Touch
Slows attacked units by 10% for 4 seconds.

Level Bonus:
+0.2 seconds duration
+0.4% slow
Download

Toggle Triggers

Header

    globals
      //@import
      BuffType cassimSlow 
    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.00 ONDAMAGE_chanceLevelAdd: 0
function onDamage takes Tower tower returns nothing
    local integer lvl = tower.getLevel()
    local integer slow = R2I((0.1+lvl*0.004)*1000)  // same code here 4 all towers
    local integer dur = R2I(4+lvl*0.2)
    
    call cassimSlow.applyCustomTimed(tower,Event.getTarget(),slow,dur) 
endfunction
Average Cactus v1
380
ID:
42
Family ID:
Author:
Lapsus
Rarity:
common
Element:
nature
Attack Type:
Essence
Attack Range:
820
Attack CD:
2.5
Damage:
719-719
Status:
Approved

Description:

A pricklier desert plant with a high AoE. Moderately more efficient against mass creeps and humans.
Specials:
Splash attack:
   320 AoE: 50% damage
+19% dmg to masses (+1.2%/lvl)
+19% dmg to humanoids (+1.2%/lvl)
Download
Astral Guide v1
400
ID:
118
Family ID:
Author:
Velex
Rarity:
common
Element:
astral
Attack Type:
Magic
Attack Range:
750
Attack CD:
2.2
Damage:
996-1080
Status:
Approved

Description:

Tower that deals additional damage to invisible units.
Light in the Dark
Deals 20% additional damage to invisible creeps.

Level Bonus:
+0.8% damage
Download

Toggle Triggers

On Damage

ONDAMAGE_chance: 1.0 ONDAMAGE_chanceLevelAdd: 0.0
function onDamage takes Tower tower returns nothing
    if Event.getTarget().isInvisible() then
        set Event.damage = Event.damage * ( 1.2 + 0.008 * tower.getLevel() )
    endif
endfunction
Ruined Wind Tower v1
400
ID:
156
Family ID:
Author:
SirCoqaLot.
Rarity:
uncommon
Element:
storm
Attack Type:
Physical
Attack Range:
1000
Attack CD:
2.8
Damage:
1343-1393
Status:
Approved

Description:

Strange tower that rejects some items.
Rejection
This tower drops all except Common items on attack.
Download

Toggle Triggers

On Attack

ONATTACK_chance: 1.0 ONATTACK_chanceLevelAdd: 0.0
function onAttack takes Tower tower returns nothing
    local Item itm
    local integer i = 1

    loop 
    exitwhen i > 6
        set itm = tower.getHeldItem(i)
        if  itm != 0 and itm.getRarity() != Rarity.COMMON then
            call itm.drop()
        endif
        set i = i + 1
    endloop
  
endfunction
Reinforced Burrow v1
400
ID:
189
Family ID:
Author:
tolleder
Rarity:
uncommon
Element:
iron
Attack Type:
Physical
Attack Range:
700
Attack CD:
3
Damage:
1546-1546
Status:
Approved

Description:

A burrow with elite Peons inside, which will try to break through every armor.
Piercing Shot
20% of this tower's attack damage cannot be reduced by armor resistances.

Level Bonus:
+0.8% damage ratio
Download

Toggle Triggers

On Damage

ONDAMAGE_chance: 1.0 ONDAMAGE_chanceLevelAdd: 0.0
function onDamage takes Tower tower returns nothing
    local real curRatio=0.2+0.008*tower.getLevel()
    local real sDmg=Event.damage
    local real damageBase=Event.damage
    local Creep target=Event.getTarget()
    local real temp = AttackType.PHYSICAL.getDamageAgainst(target.getArmorType())
    
    if temp > 0. and temp < 1. then //ignoring armor type "resistance" not weakness :P
        set damageBase = damageBase / temp 
    endif
    
    set temp = (1 - target.getCurrentArmorDamageReduction())
    if temp > 0. then
        set damageBase = damageBase / temp 
    endif 
    
    if sDmg < damageBase then
        set Event.damage=damageBase*curRatio+sDmg*(1.-curRatio)
    endif
    //The engine calculates critical strike extra damage ***AFTER*** the onDamage event, so there is no need to care about it in this trigger.
endfunction