Advanced Pocket Rocket v1
1255
ID:
547
Family ID:
Author:
Boekie
Rarity:
common
Element:
iron
Attack Type:
Decay
Attack Range:
700
Attack CD:
1.65
Damage:
1863-1884
Status:
Approved

Description:

This tower attacks with rockets that deal splash damage and deal extra damage to mass.
Specials:
Splash attack:
   125 AoE: 55% damage
+35% dmg to masses (+2%/lvl)
Download
Area Igniter v1
1300
ID:
68
Family ID:
Author:
SirCoqaLot.
Rarity:
uncommon
Element:
fire
Attack Type:
Elemental
Attack Range:
700
Attack CD:
1.2
Damage:
132-132
Status:
Approved

Description:

Advanced tower thats attacks multiple targets at once and burns them, increasing other fire towers damage and dealing some damage over time.
Spreading Flames:
This tower attacks 4 targets at once.
Ignite
Units damaged by this tower receive 14% more damage from fire towers and take 70 spell damage every 0.5 seconds for 5 seconds. The damage over time effect stacks. 

Level Bonus:
+2.8 spell damage 
+0.05 seconds duration
Download

Toggle Triggers

Header

    globals
    //@import
    BuffType sir_area_rooster
    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 Buff buffyorno = Event.getTarget().getBuffOfGroup("sir_area_rooster")
    if buffyorno != 0 then 
        set tower.userInt = buffyorno.getLevel()+2
        set tower.userInt2 = IMaxBJ(buffyorno.getPower(),140)
    else
        set tower.userInt = 2
        set tower.userInt2 = 140
    endif
    
    call sir_area_rooster.applyAdvanced(tower,Event.getTarget(),tower.userInt,tower.userInt2,5+tower.getLevel()*0.05)
    
endfunction
Solar Emitter v1
1300
ID:
71
Family ID:
Author:
geX
Rarity:
rare
Element:
astral
Attack Type:
Elemental
Attack Range:
800
Attack CD:
1.4
Damage:
990-990
Status:
Approved

Description:

Fills the air with pure sunlight weakening all enemies in its vicinity.
Specials:
Splash attack:
   50 AoE: 100% damage
   350 AoE: 40% damage
Sunshine - Aura
Reduces the armor of enemies in 800 range by 10 and increases the vulnerability to damage from Astral, Fire, Iron, and Nature towers by 10%. 

Level Bonus:
+0.3 armor reduction
+0.3% vulnerability
Download

Toggle Triggers

Header

    globals
        //@export
        BuffType gexSunAura
    endglobals
    
    private function init takes nothing returns nothing
        local Modifier m = Modifier.create()
        set gexSunAura = BuffType.createAuraEffectType(false)
        call m.addModification(MOD_DMG_FROM_ASTRAL,0.0,0.001)
        call m.addModification(MOD_DMG_FROM_NATURE,0.0,0.001)
        call m.addModification(MOD_DMG_FROM_FIRE,0.0,0.001)
        call m.addModification(MOD_DMG_FROM_IRON,0.0,0.001)
        call m.addModification(MOD_ARMOR,0.0,-0.1)
        call gexSunAura.setBuffModifier(m)
        call gexSunAura.setBuffIcon('@@0@@')
    endfunction

Tower Aura

AURA_auraEffect: gexSunAura AURA_power: 100 AURA_level: 100 AURA_auraRange: 800 AURA_targetType: TARGET_TYPE_CREEPS AURA_levelAdd: 3 AURA_powerAdd: 3 AURA_targetSelf: false
Thief Master v1
1300
ID:
111
Family ID:
Author:
i_mOck_death
Rarity:
uncommon
Element:
darkness
Attack Type:
Physical
Attack Range:
800
Attack CD:
1.5
Damage:
1987-1987
Status:
Approved

Description:

Trained in the shadows, the thief is an expert in finding gold.
Specials:
-10% dmg to undead (+0.4%/lvl)
+1.25% bounty collected/lvl
+8% item chance (+0.32%/lvl)
+8% item quality (+0.32%/lvl)
Steal
Every time the thief damages a creep there is a 10% chance he steals 6 gold.

Level Bonus:
+0.24 gold
+0.4% chance
Download

Toggle Triggers

Header

    globals
        //@import
        ProjectileType mOck_steal
        //@import
        MultiboardValues mOck_thief_multiboard
    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 ONDAMAGE_chanceLevelAdd: 0.004
function onDamage takes Tower tower returns nothing
    call Projectile.createLinearInterpolationFromUnitToUnit(mOck_steal,tower,0,0,Event.getTarget(),tower,0,true)
endfunction

On Tower Creation

function onCreate takes Tower tower returns nothing
 local Tower super = Event.getPrecedingTower()
 call AddUnitAnimationProperties(tower.getUnit(), "stand alternate", false)
    if super.getFamily() == tower.getFamily() then
        set tower.userReal = super.userReal
    else
        set tower.userReal = 0.0 
    endif
    set tower.userInt = 60
endfunction

On Tower Details

function onTowerDetails takes Tower tower returns MultiboardValues
    call mOck_thief_multiboard.setValue(0,I2S(R2I(tower.userReal)))
    return mOck_thief_multiboard
endfunction
Astral Beacon v1
1300
ID:
119
Family ID:
Author:
Velex
Rarity:
common
Element:
astral
Attack Type:
Magic
Attack Range:
750
Attack CD:
2.2
Damage:
3251-3425
Status:
Approved

Description:

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

Level Bonus:
+1% 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.25 + 0.01 * tower.getLevel() )
    endif
    
endfunction
Forsaken Crypt v1
1300
ID:
171
Family ID:
Author:
eMoo
Rarity:
rare
Element:
darkness
Attack Type:
Decay
Attack Range:
1000
Attack CD:
1.95
Damage:
1481-1481
Status:
Approved

Description:

A combination of decaying body parts and the presence of an unfathomable evil create a pillar of darkness within this crypt to form a reliable attack and the ability to explode corpses.
Corpse Explosion
Explodes a corpse within 1000 range of the tower, causing enemies in 300 range of the corpse to take 8% more damage from darkness towers and move 8% slower for 8 seconds. 5 second cooldown. Doesn't affect Air.

Level Bonus:
+0.3% slow and damage taken
+0.25 seconds duration
Critical Mass
Has a 30% chance on attack to shoot an extra projectile. For each projectile shot after the initial one, there is a 33% chance to shoot an extra projectile. There is a maximum of 14 projectiles fired per attack.

Level Bonus:
 +0.3% initial chance
 +0.6% extra chance
Download

Toggle Triggers

Header

    globals
    //@import
    EventTypeList Top_Corpse_explode
    endglobals
    
    //@import
    function burstFire takes Tower tower, real chance, Creep target, real z returns nothing
    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
    endfunction

On Attack

ONATTACK_chance: 0.3 ONATTACK_chanceLevelAdd: 0.003
function onAttack takes Tower tower returns nothing
    call burstFire(tower, 0.33+tower.getLevel()*0.006,Event.getTarget(),130)
endfunction

On Tower Creation

function onCreate takes Tower tower returns nothing
call tower.addEventList(Top_Corpse_explode)
set tower.userInt = 80 //This will be the base+level damage.
set tower.userInt2 = 80 //Base damage.
set tower.userInt3 = 3 //Level up damage.
endfunction
Energy Crossing v1
1300
ID:
177
Family ID:
Author:
SirCoqalot.
Rarity:
uncommon
Element:
iron
Attack Type:
Energy
Attack Range:
500
Attack CD:
0.7
Damage:
1182-1182
Mana:
20
Mana regen:
1
Status:
Approved

Description:

Support tower which only attacks air. Buffs other units attackspeed and adds some spell and normal damage.
Specials:
Attacks AIR only
Jolt
Buffs a tower in 500 range for 10 seconds increasing its attackspeed by 25%. The buffed tower deals 320 attack damage and 320 spell damage on attack multiplied with its base attackspeed. 

Level Bonus:
+12.8 attack and spell damage 
+0.4% attackspeed

AC_TYPE_ALWAYS_BUFF
 15, 500 range, 6s cooldown
Download

Toggle Triggers

Autocast

caster_art: AUTOCAST_cooldown: 6 AUTOCAST_numBuffsBeforeIdle: 0 AUTOCAST_isExtended: false AUTOCAST_autocastType: AC_TYPE_ALWAYS_BUFF AUTOCAST_manacost: 15 AUTOCAST_range: 500 AUTOCAST_buffType: sir_junction_buff AUTOCAST_targetSelf: true AUTOCAST_targetType: TARGET_TYPE_TOWERS target_art: AUTOCAST_autoRange: 500
private function onAutocast takes Tower tower returns nothing

endfunction

Header

    globals
        //@import
        BuffType sir_junction_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 Tower Creation

function onCreate takes Tower tower returns nothing
    set tower.userReal = 0.25 //base attackspeed boost
    set tower.userReal2 = 0.004 //attackspeed boost add
    set tower.userReal3 = 320.0 //base dmg & spelldmg per attack (/25 for level bonus)
endfunction

On Tower Destruction

function onDestruct takes Tower tower returns nothing
    //Kill all buffs made by this tower in aoe, so that all lightnings get removed
    local Iterate it = Iterate.overUnitsInRangeOfCaster(tower, TARGET_TOWERS, 500)
    local Tower cur = it.next()
    local Buff b
    
    loop
        exitwhen cur == 0
        set b = cur.getBuffOfType(sir_junction_buff)
        if b != 0 then
            if b.getCaster() == tower then
                call b.removeBuff()
            endif
        endif
        set cur = it.next()
    endloop
endfunction