Embershell Turtle Adult v1
1500
|
ID: 535
Family ID:
Author: Velex
Rarity: uncommon
Element: fire
Attack Type: Decay
Attack Range: 800
Attack CD: 0.25
Damage: 1045-1044
Mana: 16
Mana regen: 1
Status: Approved
|
Specials:
+0.8 mana/lvl
Overheat
Each attack costs 1 mana, which is regenerated at a rate of 1 mana per second. |
Download
Toggle Triggers On Attack
ONATTACK_chance: 1.0
ONATTACK_chanceLevelAdd: 0.0
function onAttack takes Tower tower returns nothing
local unit towerUnit = tower.getUnit()
local real mana = GetUnitState(towerUnit, UNIT_STATE_MANA)
if (mana < 1) then
call tower.orderStop()
else
call SetUnitState(towerUnit , UNIT_STATE_MANA, mana-1)
endif
set towerUnit = null
endfunction
|
Battleship v1
1500
|
ID: 610
Family ID:
Author: Natac
Rarity: uncommon
Element: iron
Attack Type: Physical
Attack Range: 900
Attack CD: 1.7
Damage: 2342-2342
Status: Approved
|
Description: A big ship for naval battles.
Specials:
Attacks GROUND only Splash attack: 25 AoE: 100% damage 150 AoE: 40% damage 250 AoE: 10% damage
Pirates
This tower plunders 2.4 gold each attack.
Treasure Seeker - Aura
Increases the bounty gain of towers in 300 range by 15%. Level Bonus: +1% bounty |
Download
Toggle Triggers Header globals
//@import
BuffType natac_treasureSeeker_Buff
//@import
MultiboardValues natac_pirates_MultiboardValue
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 Attack
ONATTACK_chance: 1.0
ONATTACK_chanceLevelAdd: 0.0
function onAttack takes Tower tower returns nothing
local real goldGranted = 2.4// The gold, that will be granted to the player on this attack
set tower.userReal = tower.userReal + goldGranted // Set the statistics
call tower.getOwner().giveGold(goldGranted, tower.getUnit(), false, true)
endfunction
On Tower Creation function onCreate takes Tower tower returns nothing
local Tower parent = Event.getPrecedingTower()
if parent.getFamily() == tower.getFamily() then
set tower.userReal = parent.userReal
else
set tower.userReal = 0
endif // Total gold, earned by this towers pirates ability
endfunction
On Tower Details function onTowerDetails takes Tower tower returns MultiboardValues
// Show total gold, stolen by this tower pirates ability
call natac_pirates_MultiboardValue.setValue(0,R2S(tower.userReal))
return natac_pirates_MultiboardValue
endfunction
Tower Aura
AURA_auraEffect: natac_treasureSeeker_Buff
AURA_power: 150
AURA_level: 150
AURA_auraRange: 300
AURA_targetType: TARGET_TYPE_TOWERS
AURA_levelAdd: 10
AURA_powerAdd: 10
AURA_targetSelf: true
|
Advanced Iron Trap v1
1500
|
ID: 625
Family ID:
Author: Boekie
Rarity: uncommon
Element: iron
Attack Type: Physical
Attack Range: 950
Attack CD: 1.3
Damage: 942-942
Status: Approved
|
Description: This trap is used to capture beasts but it works on other stuff too.
Activate Trap
Every 12 seconds this tower traps 4 creeps in 950 range, dealing 1500 spelldamage and stunning them for 1.25 seconds. Level Bonus: +75 spelldamage -0.2 seconds cooldown |
Download
Toggle Triggers Header globals
endglobals
//@import
function trap takes Tower tower, real cooldown, real baseDamage, real damageAdd, real stunDuration, integer maxTargets 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
Periodic
PERIODIC_period: 2
function periodic takes Tower tower returns nothing
call trap(tower, 12, 1500, 75, 1.25, 4)
endfunction
|
Shiny Sun Orb v1
1550
|
ID: 387
Family ID:
Author: MasterCassim
Rarity: common
Element: astral
Attack Type: Energy
Attack Range: 850
Attack CD: 1.3
Damage: 1420-1420
Status: Approved
|
Description: The blazing light of the sun makes its targets glow, especially undead ones.
Specials:
Splash attack: 125 AoE: 50% damage 225 AoE: 30% damage +15% dmg to undead
Afterglow
The Orb has a 5% chance to reduce armor of units it damages by 7 for 5 seconds. This chance is doubled for bosses. Level Bonus: +0.6% chance +0.25 seconds duration |
Download
Toggle Triggers Header globals
//@import
BuffType cassimArmor
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
function onDamage takes Tower tower returns nothing
local integer lvl = tower.getLevel()
local Creep creep = Event.getTarget()
local real sizeFactor = 1.0
if creep.getSize() == SIZE_BOSS then
set sizeFactor = 2.0
endif
if(tower.calcChance((0.05+lvl*0.006)*sizeFactor)) then
call cassimArmor.applyCustomTimed(tower,creep,7,5+lvl*0.25)
endif
endfunction
|
Storm Turret v1
1550
|
ID: 450
Family ID:
Author: geX
Rarity: common
Element: storm
Attack Type: Energy
Attack Range: 1600
Attack CD: 1.15
Damage: 521-2071
Status: Approved
|
Description: Basic long ranged tower. |
Download
|
Solid Iron Sentry v1
1600
|
ID: 32
Family ID:
Author: Glowackos
Rarity: rare
Element: iron
Attack Type: Physical
Attack Range: 925
Attack CD: 1.4
Damage: 1195-1195
Status: Approved
|
Description: A powerful iron tower that will go to great lengths to defend its territory.
Alert
Towers in 500 range get alerted whenever a creep of size air, champion or boss enters the sentry's attack range. They have their base damage increased by 7.5% for 10 seconds. Does not stack. Level Bonus: +0.5% base damage bonus
Trespasser Awareness
This tower strengthens its defenses when uninvited units enter its territory. It gains bonus 5%-40% base percent damage with each creep entering its attack range, based on the creep's size. Bonus damage lasts 8 seconds and new stacks of damage do not refresh duration of old ones. There is also a 50% chance that the trespassing creep will permanently have its armor reduced by 4, which stacks up to 5 times. Level Bonus: +0.15 armor reduction +0.1%-0.8% bonus base percent damage |
Download
Toggle Triggers Header globals
//@import
BuffType glow_damage_buff
//@import
BuffType glow_armor_shred
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 Unit Comes In Range
UNITINRANGE_targetType: TARGET_TYPE_CREEPS
UNITINRANGE_range: 925
function onUnitInRange takes Tower tower returns nothing
local Unit creep = Event.getTarget()
local integer size = creep.getSize()
local integer level = tower.getLevel()
local Iterate it
local Unit next
local integer uid = tower.getUID()
local Buff b = creep.getBuffOfType(glow_armor_shred)
local integer buffLevel = 400 + 15 * level
if b != 0 then
set buffLevel = IMinBJ(buffLevel + b.getLevel(), buffLevel * 5)
endif
if tower.calcChance(0.5) then
call glow_armor_shred.apply(tower,creep,buffLevel)
endif
call tower.modifyProperty(MOD_DAMAGE_BASE_PERC,(0.05 + 0.001*level)*(size+1))
if size > SIZE_NORMAL then
set it = Iterate.overUnitsInRangeOfCaster(tower, TARGET_TOWERS, 500)
loop
set next = it.next()
exitwhen next == 0
call glow_damage_buff.apply(tower,next,1)
endloop
endif
call TriggerSleepAction(8)
if tower.getUID() == uid then
call tower.modifyProperty(MOD_DAMAGE_BASE_PERC,-(0.05 + 0.001*level)*(size+1))
endif
endfunction
|
Bronze Dragon Roost v1
1600
|
ID: 63
Family ID:
Author: cedi
Rarity: unique
Element: iron
Attack Type: Essence
Attack Range: 800
Attack CD: 2
Damage: 1186-1190
Status: Approved
|
Description: The mechanical version of the other two dragon roosts.
Specials:
Bounce attack:
6 targets
-10% damage per bounce
Bronzefication
Each time this tower damages a unit it has a 10% chance to turn the target's flesh into bronze for 5 seconds. The unit is slowed by 50%, loses 50% of its health regeneration, has a 25% higher item quality and has 50% more armor. Level Bonus: -1% hp regen -0.8% armor +1% item quality +0.4% chance |
Download
Toggle Triggers Header globals
BuffType BT
endglobals
function startA takes Buff B returns nothing
local Unit U = B.getBuffedUnit()
local unit u = U.getUnit()
call SetUnitVertexColor( u, 255, 255, 125, 255 )
call SetUnitTimeScale( u, 0.5 )
set u = null
endfunction
function end takes Buff B returns nothing
local Unit U = B.getBuffedUnit()
local unit u = U.getUnit()
call SetUnitVertexColor( u, 255, 255, 255, 255 )
call SetUnitTimeScale( u, 1 )
set u = null
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 mod = Modifier.create()
call mod.addModification( MOD_MOVESPEED, -0.5, 0 )
call mod.addModification( MOD_HP_REGEN_PERC, -0.5, -0.01 )
call mod.addModification( MOD_ARMOR_PERC, 0.5, -0.008 )
//call mod.addModification( MOD_HP_PERC, 0.15, -0.003 )
call mod.addModification( MOD_ITEM_QUALITY_ON_DEATH, 0.25, 0.01 )
set BT = BuffType.create( 5.0, 0.1, false )
call BT.setBuffIcon( '@@0@@' )
call BT.setBuffModifier( mod )
call BT.addEventOnCreate( startA )
call BT.addEventOnCleanup( end )
endfunction
On Damage
ONDAMAGE_chance: 0.1
ONDAMAGE_chanceLevelAdd: 0.004
function onDamage takes Tower tower returns nothing
call BT.apply( tower, Event.getTarget(), tower.getLevel() )
endfunction
|
Description: