Results 1 to 15 of 15
http://idgs.in/200019
  1. #1
    tkgsablon's Avatar
    Join Date
    Mar 2009
    Location
    Unknown
    Posts
    1,304
    Points
    816.70
    Thanks: 36 / 2 / 2

    Default All about triggered skills!!!!!!!!!


  2. Hot Ad
  3. #2
    fire_god's Avatar
    Join Date
    Jun 2008
    Posts
    1,477
    Points
    2,789.00
    Thanks: 0 / 15 / 6

    Default

    bole di post aja disini..?

    biar gak buka linknya lagi..

  4. #3
    iAmRock's Avatar
    Join Date
    Mar 2009
    Posts
    660
    Points
    841.80
    Thanks: 0 / 11 / 4

    Default

    iya, kan harus punya ID disana...

  5. #4

    Join Date
    May 2009
    Posts
    85
    Points
    114.00
    Thanks: 0 / 0 / 0

    Default

    Jaaahhh harus login dulu.
    copas taro sini aja deh kk. kl bisa diartiin skalian biar enak bacanya. hehehe

  6. #5

    Join Date
    Mar 2009
    Location
    Moe's Heaven ~
    Posts
    7,466
    Points
    6,375.60
    Thanks: 11 / 78 / 51

    Default

    Banyak yg protes yah.. y udh bantu dkit degh
    Spoiler untuk part 1 :
    Why am I posting this if I'm still missing 3 skills? Mainly because the three skills are a pain in the butt (well, except Leap, but it's a Fing maze and I'm trying to make it legible) and whenever I see them I get instantly deanimated, plus Touhou: Mountain of Faith is too good of a game ><. This list has been on hiatus for like 3-4 weeks, with only the three missing skills which are Leap (I think this is completely doable, but the ghost of the first time I have seen it is still there), Battle Hunger (it's very complex with the system to detect dummy units kill to remove the Hunger), and Divided we Stand (this is simply too long, it's like half of the whole Invoker in length, and Invoker took me 10+ hours to write).
    Also some corrections may be needed, because I forgot to list a skill with a small triggered aspect or since I began listing this at 6.48 some balance changes/fixes may have happened that I skipped from the changelog (or weren't listed).

    If you see some random spanish in any place, it means that something should go there but I forgot to do it, a link or maybe a trigger call . You'll obviously see it on the three missing skills.







    The skills that check for Magic Immunity check for this skills: A0S6 (Spell Immunity from BKB), ACmi (Spell Immunity (Neutral Hostile)), A0SU (Spell Immunity from Rage), B014 Repel buff, "BladeFury" active.

    If a skill moves a unit's position, there's a difference if I only say "Move the unit's position" and if I say "Move the unit's X&Y position", the first one interrupts channeling and cancels all the issued orders on the unit, while the second doesn't.

    If a skill destroys destructables, they destroy the following destructables only: NTtc NTtw ATtr, which are the standard trees in the map, and Furion sprout does not use one of those trees so they don't destroy the Sprout.


    IPB Image
    Shendelzare Silkwood The Vengeful Spirit

    Magic Missile (A02A)

    Terror (A0AP)

    Command Aura (ACac)

    IPB Image
    Nether Swap (A0IN)
    Based on Forked Lightning (dummy).

    When the spell is casted, a trigger checks for the place where Shendelzare is, if it is not a walkable terrain, then issue a stop order to Shendelzare and display the name of a unit called "Cannot Use Netherswap here" (n03B).

    When the skill goes into effect, save the X and Y coordinates of both Shendelzare and the target unit, then creates a timer that expires after 0 seconds have passed (aka instantly). When it expires, the units each get moved to the position of the other (if it matters, Shendelzare is first moved to the Position of the target). Then the lightning (aka the special effect) is added, and then all trees that are in a 300 Square AoE from both Shendelzare and the target get destroyed.

    This skill when used interrupts all issued orders of both Shendelzare and the target unit, also interrupting channeling spells. While this skill is a blink like spell, it does not share the "Blink dodge", so using it while a Storm Bolt is flying towards you will not make you evade it.




    IPB Image
    Zeus The Lord of Olympia

    Arc Lightning (A020)

    IPB Image
    Lightning Bolt (A0JC)
    Based on storm bolt with 0 damage and 0.01 seconds Stun Duration.

    When the spell is in effect, a dummy unit (e000) is created on top of the target unit. It is then given a Chain Lightning skill, with the level equal to your Lightning Bolt level and told to use it on the spell target. Apply a timed life of 3 seconds,

    If you're asking why it's this way and not a simple Chain Lightning casted by Zeus to the opponent it's because you cannot have two spells based with the same base on your character, else you'll have a cooldown problem. The dummy unit used on this spell has a 900 AoE true sight, so using on an enemy makes nearby invisible enemy heroes to appear for a while (3 seconds).

    IPB Image
    Static Field (A0N5)
    The base skill of this passive is Evasion with a 0% chance to trigger.

    Whenever Zeus starts the effect of Arc Lightning, Lightning Bolt or Thundergod's Wrath this trigger is started. It counts for all hero units in an 800 AoE then a variable is assigned (0.03+0.02*Staticlvl)*UnitCurrentLife. The enemy is then immediately damaged by this with Attack Type Spells, Damage Type Magic, with an effect showing on them also.

    Note that this damage is instant when the effect is started, and since all three of his spells have a 0.25 seconds delay until they damage, this means that Static Field activates and damages before they receive the spell's damage.

    IPB Image
    Thundergod's Wrath (A07C, A06L with aghanim's)
    This skill is based off Thunder Clap, with a 0.01 second duration, but it has no AoE so there's no stacking trouble since it cannot hit anything really.

    When the spell goes in effect, the trigger counts every unit in the map rectangle, and will only activate if it's an enemy hero but not the Meepo clones, it then checks if the skill is the one with Aghanim or not. If it is the spell without Aghanim, create a unit on top of the enemy hero (e000), give them a Chain Lightning ability (actually it's the same as Lightning Bolt) with its level equal to 4+thundergod's wrath level, then tell the unit to use the Chain Lightning on the opponent and give it a timed life of 3 seconds. Their pathing is removed, they are made invulnerable and given locust. If it is the spell with Aghanim do exactly the same thing, only that the level of Chain Lightning given to the dummy unit is 5 + Thundergod's Wrath level.

    The True sight used on this skill is not applied immediately (it takes literaly 0.01-0.05 seconds), so this skill will not hit invisible heroes, even when they are nearby other enemies, BUT if it's refreshed and used immediately after, it will receive the True Sight of the first cast and will damage a fleeing invisible enemy.




    IPB Image
    Aiushtra The Enchantress

    IPB Image
    Enchant (A0DX)
    The skill is based on slow, it has a 0.01 duration on normal units while a 7 seconds duration on heroes. This slows for 10%/20%/30%/40% movement speed only.

    If the target of the skill is neither: a hero, an ancient, a spiderlite nor a spiderling, then: Change the owner of the unit to the player owning Aiushtra, make the unit have a 80 seconds timed life, add the Ghost ability (Aeth) and a sphere based ability (A12G) and remove the slow buff from it (Bslo).

    Do note that for units that are ancients and have no hardened skill this skill does almost nothing (since a 0.01 seconds slow is almost nothing to me at least). Also, on Charmed units who do have the Hardened Skill it will last for the 7 seconds even though the slow buff is removed, why?, because the trigger removes it before the slow is applied so it does nothing.

    IPB Image
    Nature's Attendants (A01B)
    The base spell of this is Locust Swarm, which provides only the graphics, as it has no targets, lasts for 12 seconds, 0.1 seconds interval between the release of each unit, and 0 max units per target.

    When the effect of this skill is done, the trigger creates another 1+2*AttendantsLevel trigger that each act separatedly (but each one is done at the same time anyway). This trigger is repeated once every second, and what it does it count every allied nondummy nonstructure alive noncycloned nonancient (except Spirit Bear) unit that is not at max life in a 300AoE, from all those units, select a unit at random, then increase the unit's current life by 10.

    When the healing trigger is done for the eleventh time, it's get destroyed instead of healing a nearby unit.

    IPB Image
    Untouchable (A0DW)
    The base spell is Evasion set to 0%.

    Whenever a unit is attacked or is the target of a spell, this trigger checks if the unit has the Untouchable skill, if it does, then create a dummy unit (e00E) on top of the attacker, give them an acid bomb ability (A0B0) with its level set to the same as Untouchable, then the unit uses the acid bomb on the attacking or spellcasting unit (depending on the case).

    The Acid Bomb lasts for 4 seconds at all levels, and it slows for -20/-40/-60/-80 IAS. Note that since the skill is casted at the beginning of the attack, the unit's first attack is also slowed.

    IPB Image
    Impetus (A0DY)
    The base spell of this skill is Poison Arrow with a debuff duration of 1 seconds and no extra damage. It's set to be able to stack damage, but I don't know if that makes the different debuffs stackable or solves stacking issues.

    This skill has 3 associated triggers. The first one is when you attack an opponent (and have the autocast set to on), the second one is when you change the autocast to on and off, while the third one is when you manually cast the skill.

    The easiest one is when the orb is toggled, since the only thing that the trigger does is to tell to the game if you have autocast or not.

    The other two have a different start but are joined almost immediately to make the same trigger:

    1.-If it was manually casted, when the effect is started of the spellcast, if the spell is Impetus then save both the casting unit and the target unit to a variable, then create another trigger which waits until the target unit is damaged.

    2.-If it was an autocast attack, if the attacking unit has impetus learned and the Autocast Orb is on (that's why you needed the other trigger which only register if it's on or not), save both the attacking unit and attacked unit to a variable and then create another trigger which waits until the attacked unit is damaged.

    Now, when the opposing unit is damaged, see if the unit has the Impetus debuff and the damager is the unit the game has saved on the last trigger. If it is, then remove the buff of him, and set a variable equal to 0.10+0.05*ImpetusLevel*DistanceBetweenAiushtraandT arget. If Distance is lower than 2500, show a number equal to the extra damage on top of the target for 3 seconds and damage it with Attack Type Hero, Damage Type Fire.

    Note that the extra damage is made to be a real number (this means it includes decimals) and the damage shown on top will always be averaged to the lowest integer (this means that if the skill does 97.99 extra damage, it will be a +97 damage seen, and there's the rare case where even when the damage is exactly 98 you will still see +97).




    IPB Image
    Morphling The Morphling

    IPB Image
    Waveform (A0FN)
    The base spell is a carrion swarm which does no damage and only has as a cap being castable from 1000 units away.

    When the effect is started, both the location of morphling and the spelltarget location are stored on X and Y variables. Then, if the target is actually a unit, the X and Y is reassigned to the unit's X and Y.

    A dummy unit is created where Morphling is at the beginning of the spell, then morphling will be hidden and unpathable. Then saved will be Morphling, DummyUnit, The AlreadyDamagedGroup (null so far), Angle and RemainingIterations (by doing 50*distance between Morphling and target).

    Now a timed trigger is called, which is repeated every 0.04 seconds. This new trigger takes the DummyUnit, Morphling, Angle, Remaining Iterations and AlreadyDamagedGroup so far variables stored. Then two variables (NewX and NewY) are calculated by having a 50 units offset from morphling. Then every enemy unit in a 280 from the New position (NewX,NewY) are counted, if they aren't in the already damaged group, are alive and are not a structure then Morphling damages them for 75*Level + 25 with attack type spells, damage type magic. The RemainingIterations is lowered by one and then Morphling is moved those 50 units and the Naga Death animation is shown where morphling is. If Remaining Iterations is equal to 0, then the DummyUnit is removed, Pathing is restored to Morphling and he's showed. Then units selected by Morphling Owner's are unselected and Morphling becomes the only one selected.

    Since he moves 50 units every 0.04, he has an actual Movespeed of 1250 during Waveform. I don't know what does the dummy unit do. If another player controls morphling and tells him to do the Waveform he won't reselect him because it's the player owning morphling that is force to select him, do note that this mischief can cause damage specially if you share control with an ally while you're buying with the chicken. Why is the X and Y reassigned when you select a unit? Because if you click on a unit it means that Morphling must travel exactly towards the center of that unit instead of the place on the ground where you clicked. What I mean by this is that you can click a unit's head and it will select the unit as the target, so Morphling could either waveform to where the unit is located on the ground or exactly where you clicked, which will be somewhat different in like 40 range units (or hundred if the other unit blinked). In this case, it will take the center of the target enemy.

    IPB Image
    Adaptive Strike (A0G6)
    This spell is based on Acid Bomb, with a duration of 0.01 seconds, 0 damage and 0% Slow and with a damage interval of 1 (it may be nice to know with the stacking issues).

    The trigger checks specifically that if it's Roshan the target then skip it completely. Now, if the caster's Agi is bigger than the Str, deal damage equal to (AdaptiveLevel*0.4+1)*MorphlingAgi + 30*AdaptiveLevel with Attack Type Hero, Damage Type Normal. In the other case (this means if the STR is Lower or equal to Agi), a variable calculates the angle between Morphling and the oppponent, then the target is moved 200 units away towards that angle and destructables in a 200 Square AoE are destroyed. Then a dummy unit (e00C) is created on top of the enemy, given a Fire Bolt (A0DU) ability and it's told to use it (stuns for 1.4/1.8/2.2/2.6 seconds). Then it's given a timed life of one second, have its pathing disabled, made invulnerable and given locust. Afterwards, an If is done to see if the Morphling's Agi is Equal to the Str, if it this, then make Morphling damage the target with (AdaptiveLevel*0.4+1)*MorphlingAgi + 30*AdaptiveLevel with Attack Type Hero, Damage Type Normal.

    Note that if the Str is equal to the Agi then the opponent will be damaged and stunned, also, if it's done like this then the opponent will not have their +Damage displayed. Instead of using Agi>Str, STR>Agi then Agi=Str, it should really use Str>=Agi and Agi>=Str, saves a couple of lines and works better.

    IPB Image
    Morph (A0KX, the other being A0KW)
    Based on Spirit Touch (Morph Essence of Blight). They both have no values on anything, as they are dummies which work quite well, since autocasting one disables the other by the game engine.

    When the skill is first learnt, a trigger is run to add the second morph, then creates a new trigger (1) to be called when Morphling is given an order. If the Morph (A0KX) skill is leveled past level 1, then the trigger set Morph2 (A0KW) to the next level also.

    (1): Recovers "Iterate" (which trigger is being iterated right now, if any) and "LastOrder" (which is the skill that is on autocast, if it applies) from the cache then check if the order given to morphling is to autocast Morph1, then disable "Iterate". Then create a periodic timed trigger to run every 1/Morphlvl seconds (2), save "Iterate" as this new trigger, "Hero" and "LastOrder" to be Morph1 autocast. If the issued order is to autocast Morph2, then disable the "Iterate" trigger, and create a new timed trigger to be run every 1/Morphlvl seconds (3), save "Iterate" as this trigger, "Hero" and "LastOrder" to be morph2 autocast. If it was called because Morph1 is deactivated, disable "Iterate", assign it to null and "LastOrder" set to morph1 autocast deactivation. If it was morph2 autocast deactivation, disable "Iterate", assign null to it and "LastOrder" set to morph2 autocast deactivation. Now, if the order was use Morph1 or Morph2 check if "LastOrder" is not morph2 autocast, if both are true then call (4) with their respective stat.

    (2): Recovers "Hero" from the cache, then calls (4) with agility.

    (3): Recovers "Hero" from the cache, then calls (4) with strength.

    (4): If it was called because of Strength (Agi->Str conversion), see if Morphling has more than 20/Morphlvl mana and his agility is more than 2 and Morphling's alive, if he does then decrease his mana by that ammount, decrease his agility by 2 and increase his strength by 2. If it was called because of agility do this same thing, except that Agility and Strength are switched.

    Manaon852549
    Lifeon852546
    Manaoff852550
    Lifeoff852547
    Mana852548
    Life852545

    Note: Due to a fault in the coding, the manual casting of Morph1 and 2 can only be prevented while Morph2 is autocasted, as it checks that Order twice instead of checking Morph1&Morph2 autocasts.

    IPB Image
    Replicate (A0G8)
    The base skill of replicate is based on Wand of Illusion, and that's what is used to create the illusion.

    This skill has a triple trigger associated, One for the the effects of the replicate, one for the moment you summon the unit and one for the time you Morph to the Replicate.

    When Replicate effect is done, the only thing that happens is that the Replicate Target is stored in a variable.

    When a unit is summoned (aka the illusion is created), make the Replicate ability unavailable to the morphling, and add the ability morph replicate (A0GC). Then the Illusion is changed its color to that of the ReplicateTarget (this is why Replicate Target needed to be stored before), then the illusion is also saved in a variable. Finally, this trigger then creates another trigger that happens when the illusion is killed.

    When the trigged is called because of Morph Replicate begun its effect, the Replicate variable is recovered, and the X and Y position of the Replicate are saved in variables. The Naga Death effect is done where Morphling is, and then the Replicate illusion is killed. Then the trigger sees if the X and Y variables location was on the map (aka it wasn't over its boundaries), if it was, Set Morphling's X and Y to that of the variables, and force the camera to go there. If the Illusion was outside of the boundaries of the map then an error message will pop up "Unable to Morph Replicate", the illusion is killed nonetheless.

    Morph Replicate (A0GC) is based on channel.

    The trigger that happens when the illusion is killed does a naga death visual effect on the space where it was, then immediately removes the unit (aren illusions' death instant anyway?), Removes the Morph Replicate Ability from Morphling and makes the Replicate ability once again available to him too.

    Morphling Factoid: His Attribute bonus skill is A0NR instead of the usual Aamk.

    The Morph Replicate movement does not cancel your issued orders. The replicate created here is just a normal image, so it doesn't have any other special effect that can only effect this unit.




    IPB Image
    Rylai Crestfall The Crystal Maiden

    Frost Nova (A01D)

    Frostbite (A04C)

    Brilliance Aura (AHab)

    IPB Image
    Freezing Field (A03R, A0AV w/Aghanim)
    The base spell of this skill is Channel, with a follow through time of 4 seconds (aka 4 seconds channeling).

    When the effect of this spell is started, create a new trigger (1) with both a periodic timed event every 0.1 seconds) and a End Spellcast event, then "Hero" and "Level" (which is the level of Freezing Field or the level+1 if it was casted with Aghanim's) are saved to the cache.

    (1): Recovers "Hero" and Level" from the cache, then count all enemy nondummy nonstructure alive noncycloned nonancient (except spirit bear) unit in a 655 AoE from Rylai and for each one of them: Create a dummy unit (e00E), give it a Slow ability (A10T) and tell to use it the enum unit. Now, create an angle random real between 0-90 or 90-180 or 180-270 or 270-360 (depending on which iteration it is, creating a cycle every four), a distance random real between 125-635. If the trigger was called because Freezing Field has finished casting, this trigger is destroyed (why isn't this check at the beginning so it's not that confusing?). Now, show the special effect in the angle and distance from Rylai that was randomly generated, then count all enemy nondummy nonstructure alive non cycloned nonancient (except Spirit Bear) in a 214 AoE, and for each of them make Rylai damage the enum unit for 105/170/250/310 ammount with Attack Type Spells, Damage Type Fire.

    The slow is being constantly reapplied to all units in the Freezing Field AoE, not only the units that are "hit" by the skill. It slows for 1 seconds giving -30% MS and -20 IAS.



    IPB Image
    Sven The Rogue Knight

    Storm Bolt (A0RZ)

    Great Cleave (A01K)

    Toughness Aura (A01M)

    God's Strength (A0WP)
    Based on Channel.

    When it goes into effect, create a new trigger to be called when a unit casts a spell or after 25 seconds has passed (1), save "Hero" (Sven) to the cache, show the special effect of Roar on top of Sven, add a Spellbook ability (A0WO) to Sven with its level equal to God's Strength's level, then set the Spellbookability to unavailable for Sven (so it doesn't show its icon).

    (1): If it wasn't called because an spell has gone into effect (aka because the 25 seconds have elapsed) or if it was called because the effect of Medusa's Purge (A02V), Diffusal Purge (AIpg) or the Satyr's Purge (ACpu), if the "Hero" unit is alive, remove the Spellbook ability from it (A0WO). And destroy the this trigger.

    The spellbook ability (A0WO) has a different Command Aura ability on its different levels (A0WM, A0WE, A0WN). The command auras have 100%/125%/150% increased damage and its target set to self only. Since it is an aura, when God's Strength ends it will be affected by aura fade time, thus giving Sven a little bit extra time with the skill.




    IPB Image
    Slithice The Naga Siren

    Mirror Image (A063)

    Ensnare (A0BA)

    Critical Strike (A00E)

    IPB Image
    Song of the Siren (A07U)
    The base skill is Channel, with Follow Through Time equal to 1.

    When the effect of the spell is started, the trigger counts for every non-structure enemy unit in a 500+500*SongLevel. For each of those units, a dummy unit is created on top of them, which is given a sleep skill, with their level equal to Siren's Song Level. They have a timed life applied of 5 seconds, told to use the sleep on the opposing units. Then their pathing is removed, they are made invulnerable and given the Locust ability.

    The Sleep (A07T) casted have the duration set to 6/6/8 seconds on heroes and 6/7/8 on creeps. Their "Stun Time" (which is really invulnerable time) is 6/7/8 seconds. I now have the question of the second level of this skill, since it says duration equal to 6 on heroes, does it work right? Since the Stun Time is bigger than the duration, they are fixed to have the 7 seconds sleeping time because of the 7 seconds stun time or must be fixed?
    123456



    IPB Image
    Raigor Stonehoof The Earthshaker

    IPB Image
    Fissure (A0SK)
    Based on Channel.

    When Raigor is picked, create a dummy unit (H00Y), add a Storm Bolt ability to it (A0SJ) and then remove it (preloading the skill).

    When it goes into effect, create a FissuredGroup, then make a loop for i=1 exit when i>20, make the Fissure Center be 60*i units away from Raigor in the angle between him and the spelltarget location (if it was a unit use the unit's location instead of the location where you casted Fissure), count all enemy non structure non dummy alive non cycloned non ancient (except Spirit Bear) units in a 250 AoE from the Fissure Center, and add those units to FissuredGroup, create a destructable (B000) there for 8 seconds and show the Volcano Death animation on that spot. Finally increase i by 1 and repeat the loop. Afterwards, for all members of FissuredGroup do: create a dummy unit (e00E), add a Storm Bolt ability (A0SJ) to it with level equal to Fissurelvl, tell to use the Storm Bolt on the enum unit then make Raigor damage the enum unit with 50*Fissurelvl+75 damage with Attack Type Spells, Damage Type Fire.

    Since the Fissure center moves 60 units and does it 20 times, this means that the last fissure will be 1200 units away from Raigor.

    IPB Image
    Enchant Totem (A0DL)
    The base spell of this ability is Roar.

    Whenever unit is attacked, the trigger checks if the attacker has the Enchant Totem buff (Broa), if it does, then create a new timed trigger that waits for 0.4 seconds and forcefully removes the buff from him.

    Note that the removal of the buff happens even if you cancel the attack, so missing an attack will remove the buff anyway. In fact, since Raigor has a 0.467 Attack Point, if he's slowed enough in IAS (if his IAS is 16 or lower) he won't be able to benefit from the damage.

    IPB Image
    Aftershock (A0DJ)
    The base ability of this spell is Evasion, always set to 0%.

    Whenever the spell effect of Fissure, Enchant Totem or Echo Slam happens, create a dummy unit on top of Raigor, give the dummy unit a War Stomp ability and give it a level equal to the level learnt of Aftershock, then make the unit do the War Stomp.

    This war stomp has 280 AoE, with 25/45/75/95 damage.

    IPB Image
    Echo Slam (A0DH)
    The base of this spell is Fan of Knives, which provides the initial 165/230/285 damage. Note that the skill tooltip says this skill does 200/275/350, and that's because every unit is also affected by its own echo.

    When its effect is started, the trigger counts every enemy non structure non dummy unit in a 500 range from Raigor (note that the trigger does not care if the enemy unit is alive or dead). Then, for each of those units, create a dummy unit on top of the enemy, give them a Fan of knives ability with its level equal to that of Raigor's Earthshock and make the unit cast the spell.

    The Fan of Knives the dummy units have does 35/45/65 damage in a 500 AoE. Remember: This skill can Echo of bodies. If an enemy is spell immune when this happens, only the 165/230/285 damage will happen and the other damage will be prevented.




    IPB Image
    Rikimaru The Stealth Assassin

    IPB Image
    Smoke Screen (A0RG)
    The base spell is blizzard, it has been set to send 10 waves, but since the channel lasts for 0 seconds and each wave appears every 1 seconds it doesn't do anything else but provide the AoE circle.

    When the effect of the Smoke Screen is started, a dummy unit is created on the center of the AoE that Smoke Screen was casted. This Dummy unit has the graphics of the SmokeBomb, so its scale is set depending on the level of Rikimaru's skill. It is then given the Cloud ability, set to the level of Riki's Smoke Screen. Then it is given once again another cloud ability set to the level of Riki's Smoke Screen (serves differently if you're sentinel or Scourge). It's then told to use the Cloud with the center of his location as the target point. It then kills destructables on a 225+25*SmokeScreenLevel Square AoE around the target point. Then create a dummy unit (e00E) on the middle of the spot where you casted Smoke Screen, add an Inferno ability to it (A0E6) with its level set to Smokescreenlvl then tell it to use it on top of him.

    Both Cloud abilities have the same stats, Prevents the casting of spells and Slows by 25% at all levels, while its miss chance is 40%/50%/60%/70%.
    The Inferno has a 0.01 seconds stun duration, and an AoE of 250/275/300/325.


    IPB Image
    Blink Strike (A0K9)
    Based on Channel.

    When this spell's effect is started, Rikimaru's X&Y position is set to be 75 units behind the target unit (in the angle that it's facing), then Rikimaru made to face at the same angle that the target unit is facing. A check is done if the SpellTarget Unit is an enemy, if it is, make Rikimaru deal 30*BSLevel with Attack Type Normal, Damage Type Normal, set "Backstab|Free" to true then issue an attack order on the target.


    IPB Image
    Backstab (A0DZ)
    The base spell of this skill is Evasion, set to 0% on all levels.

    When a unit is attacked, the trigger checks in this order: if the attacking unit is not an ally unit, if the attacking unit has learned Backstab, if the attacked unit is not an structure, then if the angle of the attacker has less than 105º diference from the attacked unit or "Backstab|Free" is true.

    If they are true, then set "Backstab|Free" to false, make the special effect done when a stampede hits on the attacked unit, and make Rikimaru damage it for 0.25*BackstabLevel*RikimaruAgility with Attack Type Spells, Damage Type Fire.


    IPB Image
    Permanent Invisibility (A00J)
    The base spell of this skill is Permanent Invisibility, providing for everything this skill do.

    When this skill is learnt, if it's learnt for the first time, add an Evasion ability (A0MB) to the unit. Afterwards, set this Evasion ability level equal to that of Permanent Invisibility.

    So why do we need a 0% Evasion? Because Permanent Invisibility does not have an icon/tooltip, and this skill is added just to provide that.





    IPB Image
    Syllabear The Lone Druid

    IPB Image
    Summon Spirit Bear (A0A5)
    This skill, based on summon bear, has many associated trigger:

    On spell cast:

    A trigger checks if the player owner of Syllabear already controls one of the spirit bears (n01G, n01C, n018, n004) on the playable area rectangle, if he does, then tell Syllabear to stop, and a message appears to the player which carries the name of the unit n03M, "Spirit Bear is already summoned!".

    On spell effect:

    The same check shown above is done (because of possible exploit?), if there's no Spirit Bear, then create the Spirit Bear unit on top of Syllabear, assign them to the variable "MyBear" on the cache, and show the special effect that is shown on Feral Spirit's summons when they are created. If it's on level 4 though, another function is called (which be explained later). Afterwards, the Entangle ability is given by triggers, with its ability level equal to that of Summon Spirit Bear.

    The special function called when the level 4 Bear is called does the following: Recovers two variables from the Cache, "BearItemHolder" and "MyBear", now if "BearItemHolder" exists and it is not "DeathMatch" mode, then the function adds items to each of the Bear's slot at the same time that it removes the item from the Dummy Item Holder.

    When Syllabear raises a level on Summon Spirit Bear:

    The trigger counts every unit controlled by the Player that is either Spirit Bear levels 1-2-3 (n01C,n018,n004), and sees if there's at least one unit, if there is, then the life percent and location of that unit is saved on a variable, then the unit is removed. Then the trigger creates a unit at the location of the removed unit, and adds the special effect of Feral Spirit Summon on it. Then this newly created unit is given the Life Percent saved on the variable, and is stored on the cache with the variable "MyBear".

    Whenever a unit is attacked:

    If the attacker is Spirit Bear, Check the distance between Spirit Bear and Syllabear, if the distance is bigger than 1500, then set the Bear's position to a random position between 25-50 units away from Syllabear.

    Whenever the Spirit Bear is killed, a trigger does the following:

    Create a Rectangle of 300 width, 300 height with the Bear's position being the center. Then a variable is assigned the hero of the player owner of the Spirit Bear. Then the trigger set the hero's XP to SyllaXP - (SyllaXP/(125-25*SpiritBearLevel)). Then, make the Killer of the Spirit Bear deal damage equal to 4*SpiritBearLevel to Syllabear with Attack Type Spells, Damage Type Normal. Then, all items in the rectangle created before hand are counted, and this calls to another function.

    This new function deals with items: It first checks if the mode is DeathMatch, if it's true, then move all items in there to the fountain corresponding to Sylla's side, if it's not deathmatch, it recovers both "BearItemHolder" and "MyBear" variables from the caché, then the trigger sees if there's already a Dummy Item Holder unit, if there isn't, it's created on either the bottom left or top right of the map (depending if the owner is sentinel or scourge). This newly created unit is assigned to "BearItemHolder" in the cache. Then this new item holder unit is added the items it find, as long as it's not Gem of True Sight or Divine Rapier. Then the unit is shown (Truth is I have never seen it, but there's surely a ShowUnit(m7, true) in there.

    When Syllabear (normal or all three true form) is killed:

    A variable recovers from the cache the "MyBear" variable for the player, and then that unit is killed.

    Spirit Bear's Return Trigger:
    This skill is based on Summon Bear, with the Bear being a dummy unit that lasts for 0.01 seconds.

    When the effect is done, move the spirit bear to the hero of the owner of the bear (this means Syllabear, on noherolimit it's actually moved to the last hero you have chosen), the new bear's X position is SyllaX + Random(25,50)*Cos(RandomDegree), with Y position being SyllaY + Random(25,50)*Sin(RandomDegree).

    This means that the bear may appear on a square by 100*100 around Syllabear, with him being the center.

    Rabid (A0AA->A0AB->A0AC->A0AD->A0AE)

    IPB Image
    Synergy (A0A8)
    The Base Skill is Engineering Upgrade, which provides the Improvements to Rabid.

    When this skill is learnt, two upgrades are researched to one extra level, those are R000 and R001.

    R000 provides with Damage Bonus and Movespeed bonus (this is so the Spirit Bear gains those). R001 provides Hit Points Bonus (so Sylla in True Form and Spirit Bear gain those bonuses).

    True Form (A0AG)

    One (A0A9)

    Battle Cry (A0AI)



    IPB Image
    Lina Inverse The Slayer

    Dragon Slave (A01F)

    Light Strike Array (A027)

    Ultimate (A001)

    Laguna Blade (A01P)




    IPB Image
    Yurnero The Juggernaut

    IPB Image
    Blade Fury (A05G)
    Based on Bladestorm, providing 99.9% of this skill effect.

    When it goes into effect, the unit has "BladeStorm" as active for 5 seconds. This is only used for other triggers which check for spell immunity.

    IPB Image
    Healing Ward (A047)
    The Base Spell is Healing Ward.

    When the ward is summoned, his healing ward aura skill is leveled to be equal of Juggernaut's Healing Ward ability.

    Blade Dance (A00K)

    IPB Image
    Omnislash (A0M1)
    The Base Ability of Omnislash is Storm Bolt, with a 0.01 seconds duration at all levels.

    1.-When the ability's effect is started, the ability level of Blade Fury is stored in a variable. Depending on the level of Omnislash, a variable is assigned with 3/5/8. Now, if the player has leveled BladeFury, make BladeFury unavailable for that player. Now, make the player deselect Yurnero (this is only if it's the owner of Yurnero). Make Yurnero's vertex 255,255,255,125 (this one is to make him look like he does while Omni), disable his pathing and make him invulnerable. Then the Hero and the Target are stored in the game cache. And a timer with 0 seconds is done.

    2.-At the time out of the timer, this new function is done which recovers the Hero and Target variables from the cache, and call another function:

    3.-This new function takes the Hero and Target, then creates a random number between 0 and 360, the Hero is now moved 50 units away from the target in the random real, making him face the target and force the Attack Animation, show the Blink Caster effect on Yurnero then make him damage the target for a random number between 150 and 250 with Attack Type Hero and Damage Type Normal. He's then told to attack the target.

    4.-We now return to the first trigger. Now it saves the following variables to the gamecache: Hero (Yurnero), Limit (Maximum number of slashes), BFLevel (Blade Fury level, to know what level regive Yurnero later), Counter (2), FX (the Phoenix missile which is attached to Yurnero's weapon). This trigger now creates a new trigger with 2 conditions, one is a timed event every 0.4 seconds and the other is if Yurnero is selected.

    5.-This new function recovers the variables Hero Limit BFLevel and Counter. It firsts sees if it was called because Yurnero has been selected, if it is it then checks if it was the owner of Yurnero, if it was him, make him deselect Yurnero. If it was called because of timed event, see if Counter is higher than Limit, if it is, check if BFLevel has been leveled and make it available once again. Restore Yurnero's Pathing, Vertex, Clear the selection of the owning player then add Yurnero to the selection of him, and finally the trigger is destroyed. If the counter is lower or equal, then Raise the counter once, call a new function:

    6.-This new function counts every visible non ancient (except Spirit Bear) non dummy non structure enemy unit in a 575 AoE, then picks a random unit in that group, and if there's a unit call the Damage Dealing trigger said above (number 3). Now, we get back to the function one line before here (number 5).

    7.-Now, if there was no unit to blink to in Omnislash, check if BFLevel has been leveled and make it available once again. Restore Yurnero's Pathing, Vertex, Clear the selection of the owning player then add Yurnero to the selection of him. Then destroy the trigger.

    The first slash of this ability always happen before the ministun hits, while the second slash may happen before, depending on the fact if you casted Omnislash at full distance or not
    [spoiler=part 2]IPB Image
    Nortrom the Silencer

    IPB Image
    Curse of the Silent (A0KD)
    Based on Acid Bomb. It has the 10 seconds duration and provides for the 10/20/30/40 damage every 1 seconds. Also note that the buff this skill gives to the opponent is different for each level of Curse (B05D,B05M,B05N,B05O).

    When the effect is started, the trigger only stores the CurseTarget on the cache, and then creates two new triggers, one by having a timed event that runs out every second, and the other by checking if the opponent has done a spell's effect.

    The timed event recovers the CurseTarget and creates a new variable (ManaAmmount) equal to 0. Then, it checks if the unit has any of the buffs associated with Curse and assigns them the corresponding mana loss (if the opponent has B05D, assign ManaAmmount=5, if he has B05M, assing ManaAmmount=10...). Now, the CurseTarget has its mana set to CurrentMana-ManaAmmount. Afterwards, the trigger checks if ManaAmmount was equal to 0 (because the opponent had no Curse Debuff), if it is, then destroy the trigger.

    The trigger which is checked when the CurseTarget made the effect of a skill first checks if the skill is not one of the prohibited ones (recuerda el link aquí) or if its Rot, then it forcefully removes the buff.

    Unchecked Skills (used on Curse of The Silent,):
    AImt (Staff of Teleportation, Boots of Travel)
    AIda (Item Temporary Area Armor Bonus Nathrezim Buckler)
    ANtm (Hand of Midas)
    ACch (Helm of the Dominator)
    AIxk (Berserk, MoM)
    A0CK (Mekasm Armor+Heal)
    A017 (Windwalk Lothar)
    A0B8 (Manta Image)
    A0HB (Item Skeleton Summon lvl1 Necro)
    A0D3 (Item Skeleton Summon lvl2 necro)
    A0DF (Item Skeleton Summon lvl3 Necro)
    A02W (Item Cooldown Reset Refresher)
    AIpr (Sapphire Water)
    AIpl (Lesser Clarity Potion)
    A0FO (Bottle regen)
    A0H7 (Bottle Rune) <- trivia fact: the bottle rune ability has the full text description of NetherStrike
    A0H6 (Bottle Empty) <- ditto
    A02X (Observer Ward)
    AIsw (Sentry Ward)
    A0CX (Staff of Teleportation (Item)) <- Old Scroll of Town Portal
    A0B6 (Item Summon Courier)
    Aeat (Eat Tree)
    A08L (Death Pact Item) <- Satanic OOOOLLLLDDDD ability
    AIcy (Cyclone Eul)
    A05Z (Avatar) <- BKB ability before the remake
    AIbk (Blink Item Version)
    A0DY (Impetus)
    A0LZ (Glaives of Wisdom)
    A0OI (Arcane Orb)
    A0KX/A0KW (Morph)
    A026 (Frost Arrow)
    A0C4 (Old Soul Assumption)
    A012 (Split Shot)
    A06K (Rot)
    A02T (Detonate)
    AHfa (Searing Arrows)
    A09V (Poison Attack)
    A05Y (Devour) <- Preremake skill, the current one does cancel it
    A0I9 (BreakPers)
    A0HA (Reality)
    A0K5 (Disassemble)
    A0PY (BasSwap Ring of Basilus)
    A0QN (Burning Spears)
    A0RT (Psionic Trap) <- Detonate
    A0RP (Psionic Trap) <- Place the trap
    A0QY (Electric Rave)
    A0SA (Ethereal Jaunt)
    A0T7 (BigHand1New Armlet of Mordiggian)
    A0T8 (BIGHAND2New Armlet of Mordiggian)
    A13K (Power Treads Click Old)
    A0BE (Berserker Rage)
    A0VA (Wex)
    A0VB (Quas)
    A0V9 (Exort)
    A0MP (Mana Shield)
    A13D (X Marks the Spot Return)
    A0JY (Magic Stick)

    IPB Image
    Glaives of Wisdom (A0LZ)
    The base spell of this skill is Poison Arrow with a debuff duration of 1 seconds and no extra damage.

    This skill has 4 associated triggers. The first one is when you attack an opponent (and have the autocast set to on), the second one is when you change the autocast to on and off, while the third one is when you manually cast the skill. The fourth one is done when the unit is killed.

    The easiest one is when the orb is toggled, since the only thing that the trigger does is to tell to the game if you have autocast or not.

    The other two have a different start but are joined almost immediately to make the same trigger:

    1.-If it was manually casted, when the effect is started of the spellcast, if the spell is Glaives of Wisdom then save both the casting unit and the target unit to a variable, then create another trigger (3) which waits until the target unit is damaged.

    2.-If it was an autocast attack, if the attacking unit has Glaives of Wisdom learned and the Autocast Orb is on (that's why you needed the other trigger which only register if it's on or not), save both the attacking unit and attacked unit to a variable and then create another trigger (3) which waits until the attacked unit is damaged.

    (3): see if the unit has the Glaives of Wisdom debuff and the damager is the unit the game has saved on the last trigger. If it is, then remove the buff of him, and set a variable equal to 0.15*GoWLevel*SilencerInt. Also, show a number equal to the extra damage on top of the target for 3 seconds, disable the trigger which casted it (else the +damage will stack) and damage it with Attack Type Hero, Damage Type Fire.

    Note that the extra damage is made to be a real number (this means it includes decimals) and the damage shown on top will always be averaged to the lowest integer (this means that if the skill does 97.99 extra damage, it will be a +97 damage seen, and there's the rare case where even when the damage is exactly 98 you will still see +97).

    For the last trigger: Whenever a unit is killed, make the following checks: If the dying unit is a hero, if the killer of the hero is not an ally, if the killing unit has GoW learned, and that the killing unit is not an illusion. If all of those are true, Show %2
    Last edited by TwinCam-; 24-05-09 at 11:15.

  7. #6
    ryanharyana's Avatar
    Join Date
    Apr 2008
    Posts
    190
    Points
    269.80
    Thanks: 0 / 0 / 0

    Default

    gag ngerti sumpah...
    Cinta tak perlu dicari, dia ada di sekitar kita, tinggal rasakan dan syukurilah... ^^

  8. #7
    -x3-Andi77077's Avatar
    Join Date
    Jul 2008
    Posts
    3,363
    Points
    1,703.78
    Thanks: 10 / 9 / 6

    Default

    Jadi itu Triger skill hero2 dota?, ngomong2 trigering/scripting itu apa sih? gw masih ga ngerti
    Cma 70 huruf doang? cape ah.

  9. #8

    Join Date
    May 2009
    Posts
    85
    Points
    114.00
    Thanks: 0 / 0 / 0

    Default

    sama w jg ga ngerti ...

    itu mksd huruf2/angkanya apaan ?
    contoh : ANtm (Hand of Midas), tuh yg w bold mksdnya gmn?

    apakah berpengaruh penggunaan hrf kapital ato huruf kecil ?
    truss kl misalnya skill culling blade, kodenya apaaan coba ?


    ea ea ea ea ... ga ngerti w

  10. #9
    fire_god's Avatar
    Join Date
    Jun 2008
    Posts
    1,477
    Points
    2,789.00
    Thanks: 0 / 15 / 6

    Default

    bentar2 itu curse of the silent ada efek cancel ato tambahan lainnya ya? soalnya agak2 rumit baca pake spell yg raw data kayak gitu..

  11. #10
    Asquall's Avatar
    Join Date
    Oct 2007
    Location
    Semarang, Indonesia, Indonesia
    Posts
    5,518
    Points
    3,515.41
    Thanks: 866 / 238 / 200

    Default

    that's not raw data
    that's pseudo-pseudo-code...

    triggering:
    banyak skill2 di dota yang pada intinya ga ada di warcraft asli (misal, Malefice yang stun periodik), jadi perlu 'ditrigger', alias direka-reka ato dibuat-buat sendiri. Cara ini punya keterbatasan, yaitu terbatas pada engine warcraft sendiri... (misal, bloodlust itu PASTI ilang klo dipurge, tapi km kepengen bloodlust g bs dipurge << GS, misalnya, dibuat dari aura, dan klo kena purge baru dihilangkan (bukan buffnya))

    Huruf2 itu adalah code skillnya, klo mau dibilang itu adalah bar code dari skill tersebut

    @fire_god
    maksudnya? itu udah ditulis klo semisal targetnya cast spell yang engga diexception maka triggernya bakal didestroy --

  12. #11
    tkgsablon's Avatar
    Join Date
    Mar 2009
    Location
    Unknown
    Posts
    1,304
    Points
    816.70
    Thanks: 36 / 2 / 2

    Default

    FROM : http://forums.dota-allstars.com/inde...ic=220166&st=0

    CREDIT : Tales
    __________________________________________________ __________

    Why am I posting this if I'm still missing 3 skills? Mainly because the three skills are a pain in the butt (well, except Leap, but it's a Fing maze and I'm trying to make it legible) and whenever I see them I get instantly deanimated, plus Touhou: Mountain of Faith is too good of a game ><. This list has been on hiatus for like 3-4 weeks, with only the three missing skills which are Leap (I think this is completely doable, but the ghost of the first time I have seen it is still there), Battle Hunger (it's very complex with the system to detect dummy units kill to remove the Hunger), and Divided we Stand (this is simply too long, it's like half of the whole Invoker in length, and Invoker took me 10+ hours to write).
    Also some corrections may be needed, because I forgot to list a skill with a small triggered aspect or since I began listing this at 6.48 some balance changes/fixes may have happened that I skipped from the changelog (or weren't listed).

    If you see some random spanish in any place, it means that something should go there but I forgot to do it, a link or maybe a trigger call . You'll obviously see it on the three missing skills.







    The skills that check for Magic Immunity check for this skills: A0S6 (Spell Immunity from BKB), ACmi (Spell Immunity (Neutral Hostile)), A0SU (Spell Immunity from Rage), B014 Repel buff, "BladeFury" active.

    If a skill moves a unit's position, there's a difference if I only say "Move the unit's position" and if I say "Move the unit's X&Y position", the first one interrupts channeling and cancels all the issued orders on the unit, while the second doesn't.

    If a skill destroys destructables, they destroy the following destructables only: NTtc NTtw ATtr, which are the standard trees in the map, and Furion sprout does not use one of those trees so they don't destroy the Sprout.




    Nether Swap (A0IN)
    Based on Forked Lightning (dummy).

    When the spell is casted, a trigger checks for the place where Shendelzare is, if it is not a walkable terrain, then issue a stop order to Shendelzare and display the name of a unit called "Cannot Use Netherswap here" (n03B).

    When the skill goes into effect, save the X and Y coordinates of both Shendelzare and the target unit, then creates a timer that expires after 0 seconds have passed (aka instantly). When it expires, the units each get moved to the position of the other (if it matters, Shendelzare is first moved to the Position of the target). Then the lightning (aka the special effect) is added, and then all trees that are in a 300 Square AoE from both Shendelzare and the target get destroyed.

    This skill when used interrupts all issued orders of both Shendelzare and the target unit, also interrupting channeling spells. While this skill is a blink like spell, it does not share the "Blink dodge", so using it while a Storm Bolt is flying towards you will not make you evade it.



    Lightning Bolt (A0JC)
    Based on storm bolt with 0 damage and 0.01 seconds Stun Duration.

    When the spell is in effect, a dummy unit (e000) is created on top of the target unit. It is then given a Chain Lightning skill, with the level equal to your Lightning Bolt level and told to use it on the spell target. Apply a timed life of 3 seconds,

    If you're asking why it's this way and not a simple Chain Lightning casted by Zeus to the opponent it's because you cannot have two spells based with the same base on your character, else you'll have a cooldown problem. The dummy unit used on this spell has a 900 AoE true sight, so using on an enemy makes nearby invisible enemy heroes to appear for a while (3 seconds).



    Static Field (A0N5)
    The base skill of this passive is Evasion with a 0% chance to trigger.

    Whenever Zeus starts the effect of Arc Lightning, Lightning Bolt or Thundergod's Wrath this trigger is started. It counts for all hero units in an 800 AoE then a variable is assigned (0.03+0.02*Staticlvl)*UnitCurrentLife. The enemy is then immediately damaged by this with Attack Type Spells, Damage Type Magic, with an effect showing on them also.

    Note that this damage is instant when the effect is started, and since all three of his spells have a 0.25 seconds delay until they damage, this means that Static Field activates and damages before they receive the spell's damage.



    Thundergod's Wrath (A07C, A06L with aghanim's)
    This skill is based off Thunder Clap, with a 0.01 second duration, but it has no AoE so there's no stacking trouble since it cannot hit anything really.

    When the spell goes in effect, the trigger counts every unit in the map rectangle, and will only activate if it's an enemy hero but not the Meepo clones, it then checks if the skill is the one with Aghanim or not. If it is the spell without Aghanim, create a unit on top of the enemy hero (e000), give them a Chain Lightning ability (actually it's the same as Lightning Bolt) with its level equal to 4+thundergod's wrath level, then tell the unit to use the Chain Lightning on the opponent and give it a timed life of 3 seconds. Their pathing is removed, they are made invulnerable and given locust. If it is the spell with Aghanim do exactly the same thing, only that the level of Chain Lightning given to the dummy unit is 5 + Thundergod's Wrath level.

    The True sight used on this skill is not applied immediately (it takes literaly 0.01-0.05 seconds), so this skill will not hit invisible heroes, even when they are nearby other enemies, BUT if it's refreshed and used immediately after, it will receive the True Sight of the first cast and will damage a fleeing invisible enemy.



    Enchant (A0DX)
    The skill is based on slow, it has a 0.01 duration on normal units while a 7 seconds duration on heroes. This slows for 10%/20%/30%/40% movement speed only.

    If the target of the skill is neither: a hero, an ancient, a spiderlite nor a spiderling, then: Change the owner of the unit to the player owning Aiushtra, make the unit have a 80 seconds timed life, add the Ghost ability (Aeth) and a sphere based ability (A12G) and remove the slow buff from it (Bslo).

    Do note that for units that are ancients and have no hardened skill this skill does almost nothing (since a 0.01 seconds slow is almost nothing to me at least). Also, on Charmed units who do have the Hardened Skill it will last for the 7 seconds even though the slow buff is removed, why?, because the trigger removes it before the slow is applied so it does nothing.



    Nature's Attendants (A01B)
    The base spell of this is Locust Swarm, which provides only the graphics, as it has no targets, lasts for 12 seconds, 0.1 seconds interval between the release of each unit, and 0 max units per target.

    When the effect of this skill is done, the trigger creates another 1+2*AttendantsLevel trigger that each act separatedly (but each one is done at the same time anyway). This trigger is repeated once every second, and what it does it count every allied nondummy nonstructure alive noncycloned nonancient (except Spirit Bear) unit that is not at max life in a 300AoE, from all those units, select a unit at random, then increase the unit's current life by 10.

    When the healing trigger is done for the eleventh time, it's get destroyed instead of healing a nearby unit.



    Untouchable (A0DW)
    The base spell is Evasion set to 0%.

    Whenever a unit is attacked or is the target of a spell, this trigger checks if the unit has the Untouchable skill, if it does, then create a dummy unit (e00E) on top of the attacker, give them an acid bomb ability (A0B0) with its level set to the same as Untouchable, then the unit uses the acid bomb on the attacking or spellcasting unit (depending on the case).

    The Acid Bomb lasts for 4 seconds at all levels, and it slows for -20/-40/-60/-80 IAS. Note that since the skill is casted at the beginning of the attack, the unit's first attack is also slowed.



    Impetus (A0DY)
    The base spell of this skill is Poison Arrow with a debuff duration of 1 seconds and no extra damage. It's set to be able to stack damage, but I don't know if that makes the different debuffs stackable or solves stacking issues.

    This skill has 3 associated triggers. The first one is when you attack an opponent (and have the autocast set to on), the second one is when you change the autocast to on and off, while the third one is when you manually cast the skill.

    The easiest one is when the orb is toggled, since the only thing that the trigger does is to tell to the game if you have autocast or not.

    The other two have a different start but are joined almost immediately to make the same trigger:

    1.-If it was manually casted, when the effect is started of the spellcast, if the spell is Impetus then save both the casting unit and the target unit to a variable, then create another trigger which waits until the target unit is damaged.

    2.-If it was an autocast attack, if the attacking unit has impetus learned and the Autocast Orb is on (that's why you needed the other trigger which only register if it's on or not), save both the attacking unit and attacked unit to a variable and then create another trigger which waits until the attacked unit is damaged.

    Now, when the opposing unit is damaged, see if the unit has the Impetus debuff and the damager is the unit the game has saved on the last trigger. If it is, then remove the buff of him, and set a variable equal to 0.10+0.05*ImpetusLevel*DistanceBetweenAiushtraandT arget. If Distance is lower than 2500, show a number equal to the extra damage on top of the target for 3 seconds and damage it with Attack Type Hero, Damage Type Fire.

    Note that the extra damage is made to be a real number (this means it includes decimals) and the damage shown on top will always be averaged to the lowest integer (this means that if the skill does 97.99 extra damage, it will be a +97 damage seen, and there's the rare case where even when the damage is exactly 98 you will still see +97).



    Waveform (A0FN)
    The base spell is a carrion swarm which does no damage and only has as a cap being castable from 1000 units away.

    When the effect is started, both the location of morphling and the spelltarget location are stored on X and Y variables. Then, if the target is actually a unit, the X and Y is reassigned to the unit's X and Y.

    A dummy unit is created where Morphling is at the beginning of the spell, then morphling will be hidden and unpathable. Then saved will be Morphling, DummyUnit, The AlreadyDamagedGroup (null so far), Angle and RemainingIterations (by doing 50*distance between Morphling and target).

    Now a timed trigger is called, which is repeated every 0.04 seconds. This new trigger takes the DummyUnit, Morphling, Angle, Remaining Iterations and AlreadyDamagedGroup so far variables stored. Then two variables (NewX and NewY) are calculated by having a 50 units offset from morphling. Then every enemy unit in a 280 from the New position (NewX,NewY) are counted, if they aren't in the already damaged group, are alive and are not a structure then Morphling damages them for 75*Level + 25 with attack type spells, damage type magic. The RemainingIterations is lowered by one and then Morphling is moved those 50 units and the Naga Death animation is shown where morphling is. If Remaining Iterations is equal to 0, then the DummyUnit is removed, Pathing is restored to Morphling and he's showed. Then units selected by Morphling Owner's are unselected and Morphling becomes the only one selected.

    Since he moves 50 units every 0.04, he has an actual Movespeed of 1250 during Waveform. I don't know what does the dummy unit do. If another player controls morphling and tells him to do the Waveform he won't reselect him because it's the player owning morphling that is force to select him, do note that this mischief can cause damage specially if you share control with an ally while you're buying with the chicken. Why is the X and Y reassigned when you select a unit? Because if you click on a unit it means that Morphling must travel exactly towards the center of that unit instead of the place on the ground where you clicked. What I mean by this is that you can click a unit's head and it will select the unit as the target, so Morphling could either waveform to where the unit is located on the ground or exactly where you clicked, which will be somewhat different in like 40 range units (or hundred if the other unit blinked). In this case, it will take the center of the target enemy.



    Adaptive Strike (A0G6)
    This spell is based on Acid Bomb, with a duration of 0.01 seconds, 0 damage and 0% Slow and with a damage interval of 1 (it may be nice to know with the stacking issues).

    The trigger checks specifically that if it's Roshan the target then skip it completely. Now, if the caster's Agi is bigger than the Str, deal damage equal to (AdaptiveLevel*0.4+1)*MorphlingAgi + 30*AdaptiveLevel with Attack Type Hero, Damage Type Normal. In the other case (this means if the STR is Lower or equal to Agi), a variable calculates the angle between Morphling and the oppponent, then the target is moved 200 units away towards that angle and destructables in a 200 Square AoE are destroyed. Then a dummy unit (e00C) is created on top of the enemy, given a Fire Bolt (A0DU) ability and it's told to use it (stuns for 1.4/1.8/2.2/2.6 seconds). Then it's given a timed life of one second, have its pathing disabled, made invulnerable and given locust. Afterwards, an If is done to see if the Morphling's Agi is Equal to the Str, if it this, then make Morphling damage the target with (AdaptiveLevel*0.4+1)*MorphlingAgi + 30*AdaptiveLevel with Attack Type Hero, Damage Type Normal.

    Note that if the Str is equal to the Agi then the opponent will be damaged and stunned, also, if it's done like this then the opponent will not have their +Damage displayed. Instead of using Agi>Str, STR>Agi then Agi=Str, it should really use Str>=Agi and Agi>=Str, saves a couple of lines and works better.



    Morph (A0KX, the other being A0KW)
    Based on Spirit Touch (Morph Essence of Blight). They both have no values on anything, as they are dummies which work quite well, since autocasting one disables the other by the game engine.

    When the skill is first learnt, a trigger is run to add the second morph, then creates a new trigger (1) to be called when Morphling is given an order. If the Morph (A0KX) skill is leveled past level 1, then the trigger set Morph2 (A0KW) to the next level also.

    (1): Recovers "Iterate" (which trigger is being iterated right now, if any) and "LastOrder" (which is the skill that is on autocast, if it applies) from the cache then check if the order given to morphling is to autocast Morph1, then disable "Iterate". Then create a periodic timed trigger to run every 1/Morphlvl seconds (2), save "Iterate" as this new trigger, "Hero" and "LastOrder" to be Morph1 autocast. If the issued order is to autocast Morph2, then disable the "Iterate" trigger, and create a new timed trigger to be run every 1/Morphlvl seconds (3), save "Iterate" as this trigger, "Hero" and "LastOrder" to be morph2 autocast. If it was called because Morph1 is deactivated, disable "Iterate", assign it to null and "LastOrder" set to morph1 autocast deactivation. If it was morph2 autocast deactivation, disable "Iterate", assign null to it and "LastOrder" set to morph2 autocast deactivation. Now, if the order was use Morph1 or Morph2 check if "LastOrder" is not morph2 autocast, if both are true then call (4) with their respective stat.

    (2): Recovers "Hero" from the cache, then calls (4) with agility.

    (3): Recovers "Hero" from the cache, then calls (4) with strength.

    (4): If it was called because of Strength (Agi->Str conversion), see if Morphling has more than 20/Morphlvl mana and his agility is more than 2 and Morphling's alive, if he does then decrease his mana by that ammount, decrease his agility by 2 and increase his strength by 2. If it was called because of agility do this same thing, except that Agility and Strength are switched.

    Manaon852549
    Lifeon852546
    Manaoff852550
    Lifeoff852547
    Mana852548
    Life852545

    Note: Due to a fault in the coding, the manual casting of Morph1 and 2 can only be prevented while Morph2 is autocasted, as it checks that Order twice instead of checking Morph1&Morph2 autocasts.



    Replicate (A0G8)
    The base skill of replicate is based on Wand of Illusion, and that's what is used to create the illusion.

    This skill has a triple trigger associated, One for the the effects of the replicate, one for the moment you summon the unit and one for the time you Morph to the Replicate.

    When Replicate effect is done, the only thing that happens is that the Replicate Target is stored in a variable.

    When a unit is summoned (aka the illusion is created), make the Replicate ability unavailable to the morphling, and add the ability morph replicate (A0GC). Then the Illusion is changed its color to that of the ReplicateTarget (this is why Replicate Target needed to be stored before), then the illusion is also saved in a variable. Finally, this trigger then creates another trigger that happens when the illusion is killed.

    When the trigged is called because of Morph Replicate begun its effect, the Replicate variable is recovered, and the X and Y position of the Replicate are saved in variables. The Naga Death effect is done where Morphling is, and then the Replicate illusion is killed. Then the trigger sees if the X and Y variables location was on the map (aka it wasn't over its boundaries), if it was, Set Morphling's X and Y to that of the variables, and force the camera to go there. If the Illusion was outside of the boundaries of the map then an error message will pop up "Unable to Morph Replicate", the illusion is killed nonetheless.

    Morph Replicate (A0GC) is based on channel.

    The trigger that happens when the illusion is killed does a naga death visual effect on the space where it was, then immediately removes the unit (aren illusions' death instant anyway?), Removes the Morph Replicate Ability from Morphling and makes the Replicate ability once again available to him too.

    Morphling Factoid: His Attribute bonus skill is A0NR instead of the usual Aamk.

    The Morph Replicate movement does not cancel your issued orders. The replicate created here is just a normal image, so it doesn't have any other special effect that can only effect this unit.



    Freezing Field (A03R, A0AV w/Aghanim)
    The base spell of this skill is Channel, with a follow through time of 4 seconds (aka 4 seconds channeling).

    When the effect of this spell is started, create a new trigger (1) with both a periodic timed event every 0.1 seconds) and a End Spellcast event, then "Hero" and "Level" (which is the level of Freezing Field or the level+1 if it was casted with Aghanim's) are saved to the cache.

    (1): Recovers "Hero" and Level" from the cache, then count all enemy nondummy nonstructure alive noncycloned nonancient (except spirit bear) unit in a 655 AoE from Rylai and for each one of them: Create a dummy unit (e00E), give it a Slow ability (A10T) and tell to use it the enum unit. Now, create an angle random real between 0-90 or 90-180 or 180-270 or 270-360 (depending on which iteration it is, creating a cycle every four), a distance random real between 125-635. If the trigger was called because Freezing Field has finished casting, this trigger is destroyed (why isn't this check at the beginning so it's not that confusing?). Now, show the special effect in the angle and distance from Rylai that was randomly generated, then count all enemy nondummy nonstructure alive non cycloned nonancient (except Spirit Bear) in a 214 AoE, and for each of them make Rylai damage the enum unit for 105/170/250/310 ammount with Attack Type Spells, Damage Type Fire.

    The slow is being constantly reapplied to all units in the Freezing Field AoE, not only the units that are "hit" by the skill. It slows for 1 seconds giving -30% MS and -20 IAS.



    Sven The Rogue Knight

    Storm Bolt (A0RZ)

    Great Cleave (A01K)

    Toughness Aura (A01M)

    God's Strength (A0WP)
    Based on Channel.

    When it goes into effect, create a new trigger to be called when a unit casts a spell or after 25 seconds has passed (1), save "Hero" (Sven) to the cache, show the special effect of Roar on top of Sven, add a Spellbook ability (A0WO) to Sven with its level equal to God's Strength's level, then set the Spellbookability to unavailable for Sven (so it doesn't show its icon).

    (1): If it wasn't called because an spell has gone into effect (aka because the 25 seconds have elapsed) or if it was called because the effect of Medusa's Purge (A02V), Diffusal Purge (AIpg) or the Satyr's Purge (ACpu), if the "Hero" unit is alive, remove the Spellbook ability from it (A0WO). And destroy the this trigger.

    The spellbook ability (A0WO) has a different Command Aura ability on its different levels (A0WM, A0WE, A0WN). The command auras have 100%/125%/150% increased damage and its target set to self only. Since it is an aura, when God's Strength ends it will be affected by aura fade time, thus giving Sven a little bit extra time with the skill.



    Song of the Siren (A07U)
    The base skill is Channel, with Follow Through Time equal to 1.

    When the effect of the spell is started, the trigger counts for every non-structure enemy unit in a 500+500*SongLevel. For each of those units, a dummy unit is created on top of them, which is given a sleep skill, with their level equal to Siren's Song Level. They have a timed life applied of 5 seconds, told to use the sleep on the opposing units. Then their pathing is removed, they are made invulnerable and given the Locust ability.

    The Sleep (A07T) casted have the duration set to 6/6/8 seconds on heroes and 6/7/8 on creeps. Their "Stun Time" (which is really invulnerable time) is 6/7/8 seconds. I now have the question of the second level of this skill, since it says duration equal to 6 on heroes, does it work right? Since the Stun Time is bigger than the duration, they are fixed to have the 7 seconds sleeping time because of the 7 seconds stun time or must be fixed?
    123456



    Fissure (A0SK)
    Based on Channel.

    When Raigor is picked, create a dummy unit (H00Y), add a Storm Bolt ability to it (A0SJ) and then remove it (preloading the skill).

    When it goes into effect, create a FissuredGroup, then make a loop for i=1 exit when i>20, make the Fissure Center be 60*i units away from Raigor in the angle between him and the spelltarget location (if it was a unit use the unit's location instead of the location where you casted Fissure), count all enemy non structure non dummy alive non cycloned non ancient (except Spirit Bear) units in a 250 AoE from the Fissure Center, and add those units to FissuredGroup, create a destructable (B000) there for 8 seconds and show the Volcano Death animation on that spot. Finally increase i by 1 and repeat the loop. Afterwards, for all members of FissuredGroup do: create a dummy unit (e00E), add a Storm Bolt ability (A0SJ) to it with level equal to Fissurelvl, tell to use the Storm Bolt on the enum unit then make Raigor damage the enum unit with 50*Fissurelvl+75 damage with Attack Type Spells, Damage Type Fire.

    Since the Fissure center moves 60 units and does it 20 times, this means that the last fissure will be 1200 units away from Raigor.



    Enchant Totem (A0DL)
    The base spell of this ability is Roar.

    Whenever unit is attacked, the trigger checks if the attacker has the Enchant Totem buff (Broa), if it does, then create a new timed trigger that waits for 0.4 seconds and forcefully removes the buff from him.

    Note that the removal of the buff happens even if you cancel the attack, so missing an attack will remove the buff anyway. In fact, since Raigor has a 0.467 Attack Point, if he's slowed enough in IAS (if his IAS is 16 or lower) he won't be able to benefit from the damage.



    Aftershock (A0DJ)
    The base ability of this spell is Evasion, always set to 0%.

    Whenever the spell effect of Fissure, Enchant Totem or Echo Slam happens, create a dummy unit on top of Raigor, give the dummy unit a War Stomp ability and give it a level equal to the level learnt of Aftershock, then make the unit do the War Stomp.

    This war stomp has 280 AoE, with 25/45/75/95 damage.



    Echo Slam (A0DH)
    The base of this spell is Fan of Knives, which provides the initial 165/230/285 damage. Note that the skill tooltip says this skill does 200/275/350, and that's because every unit is also affected by its own echo.

    When its effect is started, the trigger counts every enemy non structure non dummy unit in a 500 range from Raigor (note that the trigger does not care if the enemy unit is alive or dead). Then, for each of those units, create a dummy unit on top of the enemy, give them a Fan of knives ability with its level equal to that of Raigor's Earthshock and make the unit cast the spell.

    The Fan of Knives the dummy units have does 35/45/65 damage in a 500 AoE. Remember: This skill can Echo of bodies. If an enemy is spell immune when this happens, only the 165/230/285 damage will happen and the other damage will be prevented.



    Smoke Screen (A0RG)
    The base spell is blizzard, it has been set to send 10 waves, but since the channel lasts for 0 seconds and each wave appears every 1 seconds it doesn't do anything else but provide the AoE circle.

    When the effect of the Smoke Screen is started, a dummy unit is created on the center of the AoE that Smoke Screen was casted. This Dummy unit has the graphics of the SmokeBomb, so its scale is set depending on the level of Rikimaru's skill. It is then given the Cloud ability, set to the level of Riki's Smoke Screen. Then it is given once again another cloud ability set to the level of Riki's Smoke Screen (serves differently if you're sentinel or Scourge). It's then told to use the Cloud with the center of his location as the target point. It then kills destructables on a 225+25*SmokeScreenLevel Square AoE around the target point. Then create a dummy unit (e00E) on the middle of the spot where you casted Smoke Screen, add an Inferno ability to it (A0E6) with its level set to Smokescreenlvl then tell it to use it on top of him.

    Both Cloud abilities have the same stats, Prevents the casting of spells and Slows by 25% at all levels, while its miss chance is 40%/50%/60%/70%.
    The Inferno has a 0.01 seconds stun duration, and an AoE of 250/275/300/325.



    Blink Strike (A0K9)
    Based on Channel.

    When this spell's effect is started, Rikimaru's X&Y position is set to be 75 units behind the target unit (in the angle that it's facing), then Rikimaru made to face at the same angle that the target unit is facing. A check is done if the SpellTarget Unit is an enemy, if it is, make Rikimaru deal 30*BSLevel with Attack Type Normal, Damage Type Normal, set "Backstab|Free" to true then issue an attack order on the target.



    Backstab (A0DZ)
    The base spell of this skill is Evasion, set to 0% on all levels.

    When a unit is attacked, the trigger checks in this order: if the attacking unit is not an ally unit, if the attacking unit has learned Backstab, if the attacked unit is not an structure, then if the angle of the attacker has less than 105º diference from the attacked unit or "Backstab|Free" is true.

    If they are true, then set "Backstab|Free" to false, make the special effect done when a stampede hits on the attacked unit, and make Rikimaru damage it for 0.25*BackstabLevel*RikimaruAgility with Attack Type Spells, Damage Type Fire.



    Permanent Invisibility (A00J)
    The base spell of this skill is Permanent Invisibility, providing for everything this skill do.

    When this skill is learnt, if it's learnt for the first time, add an Evasion ability (A0MB) to the unit. Afterwards, set this Evasion ability level equal to that of Permanent Invisibility.

    So why do we need a 0% Evasion? Because Permanent Invisibility does not have an icon/tooltip, and this skill is added just to provide that.



    Summon Spirit Bear (A0A5)
    This skill, based on summon bear, has many associated trigger:

    On spell cast:

    A trigger checks if the player owner of Syllabear already controls one of the spirit bears (n01G, n01C, n018, n004) on the playable area rectangle, if he does, then tell Syllabear to stop, and a message appears to the player which carries the name of the unit n03M, "Spirit Bear is already summoned!".

    On spell effect:

    The same check shown above is done (because of possible exploit?), if there's no Spirit Bear, then create the Spirit Bear unit on top of Syllabear, assign them to the variable "MyBear" on the cache, and show the special effect that is shown on Feral Spirit's summons when they are created. If it's on level 4 though, another function is called (which be explained later). Afterwards, the Entangle ability is given by triggers, with its ability level equal to that of Summon Spirit Bear.

    The special function called when the level 4 Bear is called does the following: Recovers two variables from the Cache, "BearItemHolder" and "MyBear", now if "BearItemHolder" exists and it is not "DeathMatch" mode, then the function adds items to each of the Bear's slot at the same time that it removes the item from the Dummy Item Holder.

    When Syllabear raises a level on Summon Spirit Bear:

    The trigger counts every unit controlled by the Player that is either Spirit Bear levels 1-2-3 (n01C,n018,n004), and sees if there's at least one unit, if there is, then the life percent and location of that unit is saved on a variable, then the unit is removed. Then the trigger creates a unit at the location of the removed unit, and adds the special effect of Feral Spirit Summon on it. Then this newly created unit is given the Life Percent saved on the variable, and is stored on the cache with the variable "MyBear".

    Whenever a unit is attacked:

    If the attacker is Spirit Bear, Check the distance between Spirit Bear and Syllabear, if the distance is bigger than 1500, then set the Bear's position to a random position between 25-50 units away from Syllabear.

    Whenever the Spirit Bear is killed, a trigger does the following:

    Create a Rectangle of 300 width, 300 height with the Bear's position being the center. Then a variable is assigned the hero of the player owner of the Spirit Bear. Then the trigger set the hero's XP to SyllaXP - (SyllaXP/(125-25*SpiritBearLevel)). Then, make the Killer of the Spirit Bear deal damage equal to 4*SpiritBearLevel to Syllabear with Attack Type Spells, Damage Type Normal. Then, all items in the rectangle created before hand are counted, and this calls to another function.

    This new function deals with items: It first checks if the mode is DeathMatch, if it's true, then move all items in there to the fountain corresponding to Sylla's side, if it's not deathmatch, it recovers both "BearItemHolder" and "MyBear" variables from the caché, then the trigger sees if there's already a Dummy Item Holder unit, if there isn't, it's created on either the bottom left or top right of the map (depending if the owner is sentinel or scourge). This newly created unit is assigned to "BearItemHolder" in the cache. Then this new item holder unit is added the items it find, as long as it's not Gem of True Sight or Divine Rapier. Then the unit is shown (Truth is I have never seen it, but there's surely a ShowUnit(m7, true) in there.

    When Syllabear (normal or all three true form) is killed:

    A variable recovers from the cache the "MyBear" variable for the player, and then that unit is killed.

    Spirit Bear's Return Trigger:
    This skill is based on Summon Bear, with the Bear being a dummy unit that lasts for 0.01 seconds.

    When the effect is done, move the spirit bear to the hero of the owner of the bear (this means Syllabear, on noherolimit it's actually moved to the last hero you have chosen), the new bear's X position is SyllaX + Random(25,50)*Cos(RandomDegree), with Y position being SyllaY + Random(25,50)*Sin(RandomDegree).

    This means that the bear may appear on a square by 100*100 around Syllabear, with him being the center.

    Rabid (A0AA->A0AB->A0AC->A0AD->A0AE)



    Synergy (A0A8)
    The Base Skill is Engineering Upgrade, which provides the Improvements to Rabid.

    When this skill is learnt, two upgrades are researched to one extra level, those are R000 and R001.

    R000 provides with Damage Bonus and Movespeed bonus (this is so the Spirit Bear gains those). R001 provides Hit Points Bonus (so Sylla in True Form and Spirit Bear gain those bonuses).

    True Form (A0AG)

    One (A0A9)

    Battle Cry (A0AI)



    Blade Fury (A05G)
    Based on Bladestorm, providing 99.9% of this skill effect.

    When it goes into effect, the unit has "BladeStorm" as active for 5 seconds. This is only used for other triggers which check for spell immunity.



    Healing Ward (A047)
    The Base Spell is Healing Ward.

    When the ward is summoned, his healing ward aura skill is leveled to be equal of Juggernaut's Healing Ward ability.



    Omnislash (A0M1)
    The Base Ability of Omnislash is Storm Bolt, with a 0.01 seconds duration at all levels.

    1.-When the ability's effect is started, the ability level of Blade Fury is stored in a variable. Depending on the level of Omnislash, a variable is assigned with 3/5/8. Now, if the player has leveled BladeFury, make BladeFury unavailable for that player. Now, make the player deselect Yurnero (this is only if it's the owner of Yurnero). Make Yurnero's vertex 255,255,255,125 (this one is to make him look like he does while Omni), disable his pathing and make him invulnerable. Then the Hero and the Target are stored in the game cache. And a timer with 0 seconds is done.

    2.-At the time out of the timer, this new function is done which recovers the Hero and Target variables from the cache, and call another function:

    3.-This new function takes the Hero and Target, then creates a random number between 0 and 360, the Hero is now moved 50 units away from the target in the random real, making him face the target and force the Attack Animation, show the Blink Caster effect on Yurnero then make him damage the target for a random number between 150 and 250 with Attack Type Hero and Damage Type Normal. He's then told to attack the target.

    4.-We now return to the first trigger. Now it saves the following variables to the gamecache: Hero (Yurnero), Limit (Maximum number of slashes), BFLevel (Blade Fury level, to know what level regive Yurnero later), Counter (2), FX (the Phoenix missile which is attached to Yurnero's weapon). This trigger now creates a new trigger with 2 conditions, one is a timed event every 0.4 seconds and the other is if Yurnero is selected.

    5.-This new function recovers the variables Hero Limit BFLevel and Counter. It firsts sees if it was called because Yurnero has been selected, if it is it then checks if it was the owner of Yurnero, if it was him, make him deselect Yurnero. If it was called because of timed event, see if Counter is higher than Limit, if it is, check if BFLevel has been leveled and make it available once again. Restore Yurnero's Pathing, Vertex, Clear the selection of the owning player then add Yurnero to the selection of him, and finally the trigger is destroyed. If the counter is lower or equal, then Raise the counter once, call a new function:

    6.-This new function counts every visible non ancient (except Spirit Bear) non dummy non structure enemy unit in a 575 AoE, then picks a random unit in that group, and if there's a unit call the Damage Dealing trigger said above (number 3). Now, we get back to the function one line before here (number 5).

    7.-Now, if there was no unit to blink to in Omnislash, check if BFLevel has been leveled and make it available once again. Restore Yurnero's Pathing, Vertex, Clear the selection of the owning player then add Yurnero to the selection of him. Then destroy the trigger.

    The first slash of this ability always happen before the ministun hits, while the second slash may happen before, depending on the fact if you casted Omnislash at full distance or not.



    Curse of the Silent (A0KD)
    Based on Acid Bomb. It has the 10 seconds duration and provides for the 10/20/30/40 damage every 1 seconds. Also note that the buff this skill gives to the opponent is different for each level of Curse (B05D,B05M,B05N,B05O).

    When the effect is started, the trigger only stores the CurseTarget on the cache, and then creates two new triggers, one by having a timed event that runs out every second, and the other by checking if the opponent has done a spell's effect.

    The timed event recovers the CurseTarget and creates a new variable (ManaAmmount) equal to 0. Then, it checks if the unit has any of the buffs associated with Curse and assigns them the corresponding mana loss (if the opponent has B05D, assign ManaAmmount=5, if he has B05M, assing ManaAmmount=10...). Now, the CurseTarget has its mana set to CurrentMana-ManaAmmount. Afterwards, the trigger checks if ManaAmmount was equal to 0 (because the opponent had no Curse Debuff), if it is, then destroy the trigger.

    The trigger which is checked when the CurseTarget made the effect of a skill first checks if the skill is not one of the prohibited ones (recuerda el link aquí) or if its Rot, then it forcefully removes the buff.

    Unchecked Skills (used on Curse of The Silent,):
    AImt (Staff of Teleportation, Boots of Travel)
    AIda (Item Temporary Area Armor Bonus Nathrezim Buckler)
    ANtm (Hand of Midas)
    ACch (Helm of the Dominator)
    AIxk (Berserk, MoM)
    A0CK (Mekasm Armor+Heal)
    A017 (Windwalk Lothar)
    A0B8 (Manta Image)
    A0HB (Item Skeleton Summon lvl1 Necro)
    A0D3 (Item Skeleton Summon lvl2 necro)
    A0DF (Item Skeleton Summon lvl3 Necro)
    A02W (Item Cooldown Reset Refresher)
    AIpr (Sapphire Water)
    AIpl (Lesser Clarity Potion)
    A0FO (Bottle regen)
    A0H7 (Bottle Rune) <- trivia fact: the bottle rune ability has the full text description of NetherStrike
    A0H6 (Bottle Empty) <- ditto
    A02X (Observer Ward)
    AIsw (Sentry Ward)
    A0CX (Staff of Teleportation (Item)) <- Old Scroll of Town Portal
    A0B6 (Item Summon Courier)
    Aeat (Eat Tree)
    A08L (Death Pact Item) <- Satanic OOOOLLLLDDDD ability
    AIcy (Cyclone Eul)
    A05Z (Avatar) <- BKB ability before the remake
    AIbk (Blink Item Version)
    A0DY (Impetus)
    A0LZ (Glaives of Wisdom)
    A0OI (Arcane Orb)
    A0KX/A0KW (Morph)
    A026 (Frost Arrow)
    A0C4 (Old Soul Assumption)
    A012 (Split Shot)
    A06K (Rot)
    A02T (Detonate)
    AHfa (Searing Arrows)
    A09V (Poison Attack)
    A05Y (Devour) <- Preremake skill, the current one does cancel it
    A0I9 (BreakPers)
    A0HA (Reality)
    A0K5 (Disassemble)
    A0PY (BasSwap Ring of Basilus)
    A0QN (Burning Spears)
    A0RT (Psionic Trap) <- Detonate
    A0RP (Psionic Trap) <- Place the trap
    A0QY (Electric Rave)
    A0SA (Ethereal Jaunt)
    A0T7 (BigHand1New Armlet of Mordiggian)
    A0T8 (BIGHAND2New Armlet of Mordiggian)
    A13K (Power Treads Click Old)
    A0BE (Berserker Rage)
    A0VA (Wex)
    A0VB (Quas)
    A0V9 (Exort)
    A0MP (Mana Shield)
    A13D (X Marks the Spot Return)
    A0JY (Magic Stick)



    Glaives of Wisdom (A0LZ)
    The base spell of this skill is Poison Arrow with a debuff duration of 1 seconds and no extra damage.

    This skill has 4 associated triggers. The first one is when you attack an opponent (and have the autocast set to on), the second one is when you change the autocast to on and off, while the third one is when you manually cast the skill. The fourth one is done when the unit is killed.

    The easiest one is when the orb is toggled, since the only thing that the trigger does is to tell to the game if you have autocast or not.

    The other two have a different start but are joined almost immediately to make the same trigger:

    1.-If it was manually casted, when the effect is started of the spellcast, if the spell is Glaives of Wisdom then save both the casting unit and the target unit to a variable, then create another trigger (3) which waits until the target unit is damaged.

    2.-If it was an autocast attack, if the attacking unit has Glaives of Wisdom learned and the Autocast Orb is on (that's why you needed the other trigger which only register if it's on or not), save both the attacking unit and attacked unit to a variable and then create another trigger (3) which waits until the attacked unit is damaged.

    (3): see if the unit has the Glaives of Wisdom debuff and the damager is the unit the game has saved on the last trigger. If it is, then remove the buff of him, and set a variable equal to 0.15*GoWLevel*SilencerInt. Also, show a number equal to the extra damage on top of the target for 3 seconds, disable the trigger which casted it (else the +damage will stack) and damage it with Attack Type Hero, Damage Type Fire.

    Note that the extra damage is made to be a real number (this means it includes decimals) and the damage shown on top will always be averaged to the lowest integer (this means that if the skill does 97.99 extra damage, it will be a +97 damage seen, and there's the rare case where even when the damage is exactly 98 you will still see +97).

    For the last trigger: Whenever a unit is killed, make the following checks: If the dying unit is a hero, if the killer of the hero is not an ally, if the killing unit has GoW learned, and that the killing unit is not an illusion. If all of those are true, Show +1 Int on Silencer and -1 Int on the dying hero, then decrease the dying hero's int by 1 int-1 and increase Silencer's by 1.



    Last Word (A0MC)
    The first trigger associated with this only sees if a hero levels Last Word, if he does for the first time, it spawns a new trigger (1) , which is invoked everytime an opponent finishes a spell, then saves "Silencer" in the cache.

    (1): recovers "Silencer" from the cache and spawns a dummy unit on top of the character who finished the spell. It then checks if Silencer does not have the Silencing debuffs (Silence B01T BNsi, Bloodrage B01X, Doom BNdo, Crippling Fear B02M, SmokeScreen Bhea, Last Word B05V), and that the casting unit is an opponent of Silencer, if they are, it then gives the dummy unit a Soul Burn spell with its level set to that of Last Word then tell it to use it on the casting enemy unit.

    This Soul Burn has a 1/2/3/4 seconds duration. Damage Period equal to 1/2/3/4. Needs Black Hole (B08V) to be added to the silencing debuffs.



    Global Silence (A0L3)
    Skill based on Channel.

    When the effect of this skill is done, create a unit on top of Silencer, ShowUnitHides it, give the dummy a timed life of 5 seconds, give it a new Silence ability, assign the level equal to that of Global Silence then tells the unit to use the silence on top of Silencer.

    The silence (A0L2) used by the unit has 99999 AoE and 3/4/5 seconds duration.



    Nature's Guise (A01Z)
    Based on Invisibility, providing for everything this spell does, except that it's always maximum duration unless interrupted.

    When this skill's in effect, the trigger saves the target hero to the cache then creates a new trigger, which is a timed event every 1 seconds.

    This new trigger checks if there's a tree in a 375 AoE Square from the unit. If there's none, then the Nature's Guise's buff (B021) is forcefully removed and the trigger is destroyed.



    Overgrowth (A07Z)
    Skill based on Channel.

    With this spell's effect, the trigger starts and counts every non structure alive enemy unit in a 750 AoE from Rootfellen, then for each of them it creates a unit on top of them. These new units are now given a Entangling Root ability and told to use them on the enemy.

    The entangling roots (A06T) ability lasts for 3/4/5 seconds and deals 85 damage per second. Note that it has required level = 6, which means that it bypasses magic immunity.



    Malefice (A0I7)
    Based on channel.

    When this effect happens, which immediate calls another trigger (2). Afterwards, if the ability level of Malefice is bigger than one, store "Source", "Target" and the "Level" to the cache and create a timed event that will time out in 2 more seconds (3). Then, if Malefice is level 4, store "Source", "Target" and "Level" to the cache and create a new timed event in 4 seconds which will call out the same trigger as the timed of 2 seconds (3).

    (2): A dummy unit is created on top of the Target, and it is given a Storm Bolt ability (A01A), the dummy unit is told to use the Storm Bolt on the target, and the damage (30/40/65/80) is done with attack type spells, damage type fire.

    (3): recovers Source, Target and Level of Malefice from the cache, then call again (2).

    Notes that if an enemy goes out of vision, the dummy unit will not be able to use the storm bolt on him, but the damage will happen nonetheless.



    Conversion (A0B7)
    Based on Charm. Its maximum creep level is set to 5 on all his levels.

    When this skill is in effect, a new variable is assigned a Unit Type depending on the level of conversion (hwat, hwt2, hwt3, h006). Afterwards, the trigger kills the target unit, and creates a new unit of the UnitType variable at the location of the killed unit, while at the same time it applies a timed life of 30 seconds. This last process is done thrice.



    Midnight Pulse (A0B1)
    This skill is based on Channel.

    When this skill comes to effect, a new unit (e00E) is created on the location of Enigma, ShotUnitHide it, apply a timed life of 8 seconds, adds a Death and Decay ability, assign the level equal to Pulse's, and tell to use the skill on the point that Pulse was casted.

    The Death and Decay skill (A0B2) has a 400 AoE, 8 seconds duration and deals 3%/4%/5%/6% of life as damage.



    Black Hole (A0BY)
    Based on Tornado. This provides the duration and summoned unit.

    When blackhole is casted, check if it's casted inside of the playable area, or inside of the places where you can't black hole, if it is, then stop Enigma and put the "Cannot cast Black Hole here" error message.

    When the tornado is summoned, a dummy unit is created, added a Fog ability (A0X4 if Enigma is Sentinel, A0X3 if Enigma es Scourge) and told to use it on the spot that Black Hole was summoned, "BlackHole" (the Tornado) is saved to the cache, it then creates a new trigger with two events (2), one is the death of the tornado, the other being a timed event every 0.05 seconds. It also assigns the level of the tornado damage aura of the tornado to that of Black Hole's level.

    (2): This new function first checks if it has been called because of the unit's death, if it has, then the trigger is destroyed. If it's because of the timed event, recover the BlackHole from the cache, then count every non dummy, non structure, non ancient (except Spirit Bear) enemy unit. For each unit, Set the unit's position to the distance from Black Hole to the unit -2 keeping the same angle (SetUnitPositionLoc reset the commands you have done).

    The Fog abillity lasts for 4 seconds, A0X4 targets Friend, while A0X3 targets enemies, it has a 400 AoE. Note that items abilities can be casted while in the blackhole, but you also need to be facing enigma.

    The Places where you can't blackhole:
    1.-The waterfall at the left sentinel base entrance
    2.-The other waterfall at the bottom sentinel base entrance
    3.-To the leftest place on the river, you can't cast it there (well, there's a place there where you can cast it and leave people stuck though, the rectangle checked is too small)
    4.-To the rightest of the river (this one has a good check)



    Illuminate (A085)
    Based on Channel, with Follow Through Time 2/3/4/5.

    When the spell of this unit is started, a dummy unit (u00J, the lightning ball you see charging) is created on a 150 distance in the angle between Ezalor and the target location (or where Ezalor is facing if the target location is on top of him). Then "SpiritCast" (if Ezalor is in spirit form when it's casted), "Hero" (Ezalor), "Caster" (the dummy unit), Count (1 for now), "Level" and "Angle" are saved to the cache, then a new trigger is created set to run every 0.5 seconds or when Ezalor finishes casting a spell (1). Now if SpiritCast is true, then create an Ezalor Dummy (h06Z) on top of Ezalor, give it the transparency and assigns it to be "Dummy", then create a timed trigger to be run 0 seconds later (2). In the end, set Illuminate to be unavailable for Ezalor and make a new ability Illuminate End (A121) to be available for Ezalor.

    (1): Recovers "Count", "Angle", "Caster", "Hero", "Level", "SpiritCast" from the cache, then if this wasn't called because a spell finished (aka the 0.5 seconds passed), then only increase Count by 1. Then set the "Caster" scale so it grows, now if it was called because a spell finished casting and SpiritForm is false, or because Illuminate End has finished casting or because Count is equal to 2+Illuminatelvl*2 (aka 1+Illuminatelevel seconds have passed), then set Illuminate as available, Illuminate end as unavailable, then Illuminate End is removed from Ezalor, a new dummy unit (e00E) is created 50 units behind "Caster" (this is 100 units in front of Ezalor), is given a Breath of Fire skill (A087), given a level equal to Count and told to use it 50 units in front of the "Dummy". If "SpiritCast" was true, then hide "Dummy" and give it a timed life of 1 seconds. Destroy this trigger, then create a new dummy unit (h06M) with a timed life of 7 seconds.

    (2): Forces Ezalor to stop (which also interrupts all queued orders >< it sucks to be in spirit form).

    The Breath of Fire skill has the following values: 400 AoE, 50/100/150/200... damage, 99999 max damage, 350/400/450/500... distance, 400 final area. Illuminate End is based on Channel.

    Problems with this skill: One: If you windwalk while channeling Illuminate it will be launched (but the skill is countinued to be channeled). This can be fixed by adding GetSpellAbilityId() == 'A085' when it checks if a spell has ended casting and Spiritform is false. Second, the Breath of Fire used can fail if it is casted on an unpathable terrain (like the sides of a slope), so if you intend to cast it there, be careful to not be in a 200 distance from the point you cast it.



    Mana Leak (A10X)
    Based on Channel.

    Wow a 1200 range. Anyway, when the skill goes into effect, add a slow aura ability to the target unit depending on the level of Mana Leak (A10Z, A111, A10Y, A110), then save "Target" "Source" "Level" "LastX" "LastY" (target's current position) to the cache, then create a periodic timed trigger to be called every 0.1 seconds (1).

    (1): Set Distance between "LastX" & "LastY" with the target's new location, set Drain to be (0.00030+"level"*0.00005)*Distance*MaxMana (if you move 100 units, the mana drain will take 3.5%/4%/4.5%/5% of your total mana), if the affected unit is magic immune, then set Drain to 0, and if Drain is bigger than 300 (you would need 3000 MS to be able to achieve this, so it's obvious that it's here because of blink) then set Drain to 0. Now if Drain is bigger than 0 and Runtimes is a multiple of 3 then show the special effect on the unit. If Drain is bigger than 0, now reduce the target unit's mana by Drain Ammount. Save "LastX" and "LastY" as the new unit's position. Now if this trigger was called because a unit has died or Runtimes is equal to (Leaklevel+4)*10, then remove the slow aura ability granted at the beginning and remove the buff that it gave (B09M, B09N, B09O, B09L), destroy the effect on the enemy and this trigger too. If it hasn't run enough times, then check if the target has less than 1 mana, if it's true then create a dummy unit (e00E), give it a storm bolt ability (A0X6) with its level depending on "Level" and tell it to use it on the enemy, destroy the effect on the enemy and this trigger.

    The Slow aura abilities are only used for the buff that they provide. The Storm Bolt ability stuns for 1.25/1.5/1.75/2 seconds. Going magic immune in the middle of Mana Leak will prevent you from draining mana while you're immune, but it will continue afterwards (that is if the remaining time was longer than the duration of the magic immunity skill). If the last call of this trigger removes mana from the enemy, it can't stun it even if it reaches 0 mana. Note that the trigger check if it was called because of the death of a unit... and it can never be called in this way



    Chakra Magic (A112)
    Based on Channel.

    When the effect is done, the trigger saves "Target" and "Mana" (75*chakra) to the cache. Then creates a trigger to be run 0 seconds later (1).

    (1): Recovers "Target" and "Mana", then increases the target's mana to be CurrentMana+"Mana", then shows the chakra magic effect.

    If you ask yourself, why make the timed event? So Ezalor gains the mana after he has spent it, if he was the target.



    Spirit Form (A11T)
    Based on Metamorphosis.

    There's a trigger associated with this skill, but it is not called (as of 6.57b), so I will not list it to avoid confusion. This trigger was most likely to prevent a bug as the only thing that it does is set the Spirit Form ability as unavailable for 39/38/37 seconds.

    A0NR is the attribute bonus skill of Ezalor.



    Overpower (A059)
    Based on Frenzy, it provides for everything except the forceful removal of the buff.

    There's an array of variables saved for every player which saves the number of attack Ursa has done with Overpower. Whenever the effect of Overpower happens, the variable[player] is reset to 0.

    Whenever a unit is killed or a unit is attacked, the game checks if it has the Overpower buff (B02O), if it does, then set variable[player] to the dying unit equal to 0 (since there's not dying unit when it's called because of an attack this does nothing then). Then increase the variable[player] of the attacking unit equal by 1. If it's then bigger than 5, forcefully remove the buff from it.

    Note that this skill sees only if the unit has begun the attack, so if by any chance you cancel it before doing the damage (being stunned, pressing S) that hit with IAS will be lost.



    Enrage (A0LC)
    Based on Berserk. It only serves to provide with the Enrage buff.

    Whenever a unit is attacked, there is three checks happening: If the unit has the Enrage (B02H) buff, the unit is not a structure and the attacked unit is not an ally of the attacker. If those are all met, then make a damage variable equal to UrsaCurrentLife*(0.03+0.01*EnrageLevel) and make Ursa damage the attacked unit for that ammount with Attack Type Hero, Damage Type Normal.

    This ability makes your attack have a second damage instance, but it does not count as an extra attack, you can't have twice the chances to activate an orb or critical, and it does not benefit your damage with things like cleave, and this extra damage cannot be evaded/miss.



    Multi Cast (A088)
    The base spell of this ability is Engineering Upgrades and provides for the reduced cooldown and AoE.

    This skilll has three associated triggers, one is when Multi Cast is learnt, one is when Fireblast is casted while the other when Bloodlust is casted.

    When Multi Cast is learnt: Store the multi cast level in a variable in the cache.

    When Fireblast's effect and the user has learnt Multi Cast, a check is done: Create a random real number between 0 and 1. If it's less than 0.2 (or 0.3 and Aghanim's): The trigger recovers the unit's Multicast level, shows Multicast! on top of the OM, then saves Target, Source, Iterations (MulticastLevel), Level and Spell to the cache. Then a periodic event is created for every 0.3 seconds (1).

    (1): recovers Target, Source, Iterations, Level and Spell from the cache, then if the number of times this trigger has run is more than Iterations, destroy the trigger. If it isn't, create a dummy unit, give this unit the same Storm Bolt Spell Ogre Magi casted and give it the same level casted by the Ogre, it is then told to use the storm bolt on the target.

    When Bloodlust's effect and the user has learnt Multi Cast, a check is done: Create a random real number between 0 and 1. If it's less than 0.2 (or 0.3 and Aghanim's): The trigger recovers the MulticastLevel from the cache, shows Multicast! on top of the Ogre Magi, then count every allied alive unit in a 600 AoE from Ogre Magi, then adds OM himself if he's not the target of the skill. Now, repeat for a number of times equal to Multicast level (+1 if it's Aghanim's Multi Cast level) the following: Create a dummy caster and add them the ability same ability that Ogre Magi casted, give them a 1 second timed life, tell it to use the bloodlust on a randomly chosen unit of the group, then the dummy is given Locust, unpathability and invulnerability. Finally, the bloodlusted unit is removed from the possible target group.

    The possible units are the following: If it's owned by the Scourge then Ghoul (ugho, u001) or Necromancer (unec, u002). If it's controlled by the sentinels then either Treant (esen, e00V) or Druid of the Talon (edry, e00W) or an allied Hero. There is a problem with the multicast check in here since the trigger happens on the spell effect, this means that it actually happens an instant before the spell target receives the Bloodlust buff (triggers stop everything that is going on ingame until they are completely run, this is why for instance some triggered heals heal only before damage or Mana Leak takes the mana before the spell actually takes it), and thus the Bloodlust target will not be bloodlusted yet and you will lose one multicast because that same unit is selected.



    Laser(A049)
    The base spell of this ability is Drunken Haze (Chen) providing the miss chance on a 250 AoE.

    When the spell's in effect, a trigger is called which does 80*SkillLvl to the target of the skill, which is attributed to Tinker and it has an Attack Type Hero, Damage Type Magic.

    Do note that the miss chance has to wait for the Laser to touch the opponent, but the damage is done as soon as the spell is effected.



    March of the Machines (A0BQ)
    The base spell is channel, which serves only to provide the casting location of the skill.

    When the spell is in effect, the trigger creates a dummy unit (e00E) on top of Tinker, then the unit is given an Stampede ability (A05F) with its level equal to March's level, and told to use the stampede on the location that you targeted it.

    Since Channel can be casted on anyplace, but Stampede can't be casted on unpathable terrain (the border of the ramps in the middle of the map is a good example), if you cast it there it will have no effect.



    Rearm (A065)
    The base spell is channel, which serves as the casted skill while the refresh is triggered. Do note that it is channeled for that much time, and it is not cast time (meaning that cancelling it takes away the mana).

    When the spell is finished casting, the inventory of tinker is checked to see if he has Helm of the Dominator, Necronomicron1, Hand of Midas, Necronomicon2, Necronomicon3, Refresher Orb, or Arcane Ring. If there's any of those items on Tinker's inventory, remove then and save in a variable what items they were. Then Reset all the cooldowns of the unit, and give back all items that were removed with this trigger.

    Note that since the items that can't be rearmed are removed and given back, their cooldown circle starts anew, but it will be speeded up so it finishes at the same time that it would have done so if you didn't cast rearm.



    Sprout (A06Q)
    The base skill of this spell is Cripple. This has a 0.01 seconds duration and 0% slows at all levels.

    When this skill is casted, a trigger checks if the unit is an ally and has "-disablehelp" on, if he does, then cancel the skill and tell the player the name of the unit "This target has disablehelp on" (n038).

    When the skill goes into effect, make the Fog of War visible in a 1000 range from the target point for a time equal to 2.25+0.75*skilllvl seconds. Then creates destructable (B005) around the enemy unit at a 150 range from him, everyone being 45º away from each other (A.K.A, the first one being right, then upright, up, ..., downright), creating also another timed trigger which times out at 2.25+0.75*skilllvl seconds (which only function is to remove the destructable after enough time has passed).

    Do note that this skill used to have a Summer Tree Wall destructable (LTlt) before, now it uses B005 (this is the reason why Wild Axes and most other triggered destructable destroyer no longer destroy them).



    Teleportation (A01O)
    The base spell of this is blink, which provides 99% of its functionality.

    When the spell is started to channel (yes it is not channeled but it's because that's the trigger condition), then add an FX to the target location (the blue swirl thingy).
    -------------------------
    When the skill goes into effect, the trigger checks if this is true: if the target location is within 3000 units from the place where the enemy spawns (easy to see when you revive), if it isn't then it's false. Now, the trigger tries to count all allied units alive owned by the sentinels or scourge (depending on who is your ally). If the count is 0, then the unit casting the spell is paused, tell to stop and then unpaused. Then a message appears to the Owner "You cannot teleport here." (n03Y is the unit with that name).



    Spirit Lance (A10D)
    When Phantom lancer is created, 5 units are created with a cripple based ability (A10C), and 4 wand of illusion skills (A10H, A10G, A10I, A10F).

    The skill is based on Channel.

    When this skill is casted, count all illusion of Phantom Lancer hero owned by the same player that is casting the spirit lance in a 700 AoE, and to each of them make it face the same direction as the original PL is facing and set their animation to "slam".
    -----------------------------
    When the skill goes into effect, count all illusions of Phantom lancer owned by the same player that is casting the Lance in a 700 AoE, then tell it to false call (1) with the illusion, then make a true call of (1) for the original Phantom Lancer.

    (1): Create a dummy unit (h06L) at the place where the unit that calls this function is, then store "Source", "Target", "damage" (this is true of false, according to how this trigger was called), "Projectile" (the dummy unit just created), "Level" (Spirit Lance level), then create a periodic timed trigger to be called every 0.035 seconds (2).

    (2): Recovers "Source", "Target", "Level", "damage" and "Projectile" from the cache, then move "Projectile" 35 units, then he's made to face "Target", now if the distance between "Projectile" and "Target" is less or equal than 35, kill the unit and destroy this trigger, and if "damage" is true, then create a dummy unit (e00E) give it a cripple based ability (A10C) and tell to use it on "Target", then make "Source" damage "target" with 50+50*"Level", then set "Target" to be "SpiritTarget", and create a dummy unit (e00E), give it an illusion wand ability depending on "Level" (A10H, A10G, A10I, A10F), and tell to use it on "Source".
    -----------------------------
    Whenever a unit is summoned, if it has the Spirit Lance Illusion buff, then recover "SpiritTarget", set the illusions X&Y position to that target unit, and tell it to attack the target.

    The Spirit Lance has a 1000 speed. The illusions who will be shown throwing the lance will only have it as the animation, is does not interfere with their attacks in any way. There's a couple of hints you should know to "realize" who the real PL is (or at least help): All illusions that are out of range for Spirit Lance to use it is pretty simple to realize (why why why does it count all illusions in a 700 AoE from PL? It should be from the target), the illusions will all face at the same angle that PL is seeing, so if you see a unit throwing the spear to who knows what place it's an illusion (it can be pretty easy to make them all face the target instead of face the same as PL).



    Dopplewalk (A0D7)
    The base spell is Windwalk, which provides the invisibility and extra MS.

    When the skill is in effect, a dummy unit (e00E) is spawned on top of Phantom, this unit is given a wand of illusion based skill (A0DC) and told to use it on PL.

    Whenever a unit with the Dopplewalk timed life is spawned, count all Phantom Lancer non illusions in a 1000 range, then set the illusion to the position of the real PL, and instruct this unit to move towards 600 units at the unit's facing.

    If you control more than one PL (-noherolimit), the illusion will be positioned always to the spot where the last PL created is, but it will be facing and moving to the direction where the PL that used Dopplewalk was facing.



    Juxtapose (A0DB)
    The base spell is brilliance aura, providing 0.00 mana regen and the buff.

    The trigger checks when an attack is started, check if the attacker has the Juxtapose buff, if it has, then count all units that player controls that have the Juxtapose buff, if it is lesser than 6, made a check, if the unit is real, check if the random number generated is lower or equal than 3*Juxt + 2*Edge, or if the unit is an illusion check if that number is lower or equal than 1 + 2*Edge. If it's true, then create a dummy unit, give it a Wand of Illusion based skill (A0DD) and tell to use the item on the Attacking unit.

    Does not have a check for 'S' spam, so go berserk on your button until it's completely smashed.



    Phantom Edge (A0YK)
    While it is a Hardcoded skill (the Juxtapose trigger is the one that check's for Phantom Edge), it has a trigger associated with HoD/Cloak: Whenever a unit pick ups an item, if its either Hood of Defiance or Planeswalker Cloak and the unit has Corrosive Skin, Flesh Heap, Phantom Edge or Spellshield learnt, save the skill's level in a variable, remove the skill from the unit and then restore the skill to the unit with its level equal to the level it had before being removed.



    Avalanche (A0LL)
    Based on Blizzard, providing the visual AoE for the skill.

    When casted, a dummy unit (e00E) is created on top of Tiny, given a Cluster Rocket ability (A10M) with its level set to Avalanche's level, then told to use it on the place that Tiny casted the skill. Now create a timed event that runs every 0.25 seconds (1), save "Hero", "x" and "y" to the cache.

    (1): Recover "Hero" "x"&"y", then create a dummy unit at the xy location, give it a War Stomp ability then set damage to be 25/45/65/75, then check if there's a unit in a 299 AoE that is being Tossed, if it's true then make Tiny damage the Tossed unit with that ammount of damage with Attack Type Spells, Damage Type Magic. Now, if the Trigger has been run more than 6 times, destroy this trigger.

    If you level avalanche in the middle of the skill effect it gains the new stats for the Tossed unit only. The dummy unit used that is given a warstomp does not use it never, in fact the cluster rocket is still dealing the damage, but for some reason, it no longer does the double damage by default (well, it never did the damage with Impale based skills, or I was terribad and was unable to do it all the times I tried ><, the change in this skill with the old Cluster Rockets is that the old one had Spell Duration set to 2 while the new one has Spell Duration set to 1), and there's a little bit of chance (I have only done it once) that you do 75 extra damage by the combo (since the total time that the enemy is in air by toss is 1.02 seconds, you have a 0.02 seconds window of time where the extra 75 damage will apply, you need to Toss the enemy between 0.23 and 0.249999 seconds after you have done the Avalanche). The AoE shown for Avalanche is 200, but the Cluster Rockets' AoE is 275.



    Toss (A0BZ)
    Based on Channel.

    When the skill is casted, count all nondummy non structure alive noncycloned visible noncourier nonancient (except Spirit Bear) in a 275 AoE from Tiny, if there is then pick a random one, if there wasn't any then then show the name of the unit "No valid unit to toss" (n0DA) and pausestoppause Tiny, then count nondummy non structure alive noncycloned visible noncourier nonancient (except Spirit Bear) in a 275 AoE from Tiny, if there is then pick a random one, if the unit picked is also controlled by yourself, show the name of "Cannot Toss to your own units". Do note that the two checks are done for different units, but the second unit is the one that will be tossed.
    ------------------------------------
    When the skill goes into effect, show the standing animation of Tiny, then pause the tossed unit, remove it's pathing and if it's not Elder Dragon Form DK then add and immediately remove Crow Form. Save the unit as being tossed, "Hero", "Source", "Target", "FX", "x0" "y0" (the position of the target unit) then creaate a new timed trigger (1) to be run every 0.02 seconds.

    (1): Recovers "Hero" "Source" "Target" "x0" "y0" from the cache, now check if the distance between x0/y0 and "Target"'s location is bigger than 1000 (only achievable by blinking/teleporting away or having 1000 MS), if it is then set target location to x0/y0, else set it to "Target", if runtimes is lower than 51, then move the Tossed unit Distance/(51-Runtimes) units towards the falling location and if it's not Elder DK set it's FlyHeight to be 775-(RunTimes-25)*(Runtimes-25), if RunTimes is equal or bigger than 51, then set the unit's Flyheight to its default, unpause the unit and give it pathing again, set it's position to the target position, and set the unit's Tossed value to 2, show the terrain deformation, remove the "FX", and if the tossed unit is an ally, make Tiny damage it with 0.2*75*TossLvl with Attack Type Spells, Damage Type Fire, if it's an enemy make Tiny damage it with (0.2+0.15*Grow)*75*Tosslvl with Attack Type Spells, Damage Type Fire, destroy all destructables in a 300 Square AoE, and make Tiny damage all enemy nonancient (except Spirit Bear) non magic immune units in a 300 AoE for 75*Tosslvl with Attack Type Spells, Damage Type Fire to normal units, and 75*Tosslvl/3 with Attack Type Spells, Damage Type Fire to Structures.

    If a unit moves out of 1000 units from the Target AoE, the spell will stop homing towards the unit and will start homing towards the point where Tiny targetted the spell at the beginning. Note that if the unit leaves the 1000 AoE and then somehow comes back the homing towards the unit will resume. The unit is considered tossed for 1.02 seconds. Even if there are more units that just another unit you own (which basically becomes only the necronomicron units, since couriers are not selectable neither) you can still have the error message of "you can't toss your own units", even though there are valid units to toss nearby.



    Craggy Exterior (A0BU)
    Based on Evasion, providing 0% at all levels.

    Whenever a unit is attacked (in the beginning of the attack, mind you), check if it is a melee attacker and the attacked unit has Craggy Exterior learnt, then roll a number between 1 and 100 and then check if said number is lower or equal than 6*craggylvl. If it's all true, then create a dummy unit on top of the attacker, give it a Storm Bolt based ability (A0BV) with lvl equal to Craggy then tell the dummy unit to use it on the attacker.



    Grow! (A0CY)
    Based on Endurance Aura (dummy).

    When Tiny levels a skill, check if the learnt skill is Grow!, if it is then research a Creature attack based research (that of Undead), which gives 40 damage per level. Then if it was the first time the skill was learnt, create a dummy unit (e01V) at the center of the map and save it as "GrowCaster", also give it an endurance aura ability (A10B), if it was learnt for the second level, then remove the first endurance aura ability from it, and add a new endurance aura ability (A10A), if it's level 3, then remove both old endurance auras and give it a new endurance aura skill (A0ZS). If it was the first time you learnt the skill, create a timed looped event every 2 seconds, which checks if the unit is alive, and if it is then set the unit's scale to 0.5+0.25*Growlvl. It then sets the unit's scale to 0.5+0.25*Grow level (so that you see the grow change immediately after you level it).

    The Endurance auras (A10B, A10A, A0ZS) have a 99999 AoE and give -20/-35/-50 IAS and it only affects Player Owned Hero units.



    Land Mines (A05J)
    The spell is based in Place Land Mine which provides for 99% of its functionality.

    The trigger checks whenever a unit enters the map, if the unit is one of the goblin mines (n00O, n00P, n00Q, n00N), if it its then: for the newly created unit make a timer equal to 15000 seconds and store it on the cache. Then count all units that are in the playable area that are one of the four mines and belongs to that player, if it is bigger than 15, then make a loop to see which Goblin land mine has the least remaining time and is also alive, then make that land mine explode (this will damage nearby enemies as if it was triggered, BTW).



    Remote Mines (A0AK)
    The ability is based on Serpent Ward, summoning the remote.

    When a skill is learnt, check if it's remote mines being learnt for the first time, then a trigger gives the Detonate (A02T) ability to the Techies.

    When a spell is in effect, see if it's either Detonate (from the mines) or Detonate (from techies). Then make an if: If it's detonate from the mines, put a flamestrike effect on top of the unit, count every enemy unit non structure non dummy unit that are in a 425/435/450 AoE, then call another trigger which deals 300/450/600 damage with Attack Type Spells, Damage Type Fire. Finally, remove the unit from the map. When it is the Techies' detonate skill, then instruct all Land Mines units in the map owned by the Techies to use detonate by themselves.



    Penitence (A0KM)
    The base spell is Drunken Haze, providing the slowed movement speed.

    When the skill goes into effect, show a Holy Bolt effect on Chen, then create a trigger which is called by either having the target damaged or 7 seconds later (1).

    (1): If it's called because the target took damage, see if it is bigger than 10 damage, if it then make the damage variable equal to 0.07*Penitencelvl*Incoming damage, then disable this same trigger (so it doesn't loop indefinitely) and make the Damage Source deal damage equal to extradamage variable to the target with Attack Type Hero, Damage Type Normal. Then reenable this trigger. If it was called because of the timer, then destroy this trigger.

    Penitence starts to add extra damage the instant Chen casts the skill, while the slow starts when the missile hits the enemy target. If the Penitence slow is purged, the unit will continue to receive extra damage for the remaining time. Penitence extra damage happens before the original damage (only matters against a Puck, since penitence will allow him to auto evade abilities he can't normally evade). The extra damage done by Penitence is a % of the damage after all reductions.



    Test of Faith (A0LV)
    Based on Channel.

    When the skill is in effect, it first allocates the target position the unit will be moved to to either fountain depending if it is Scourge or Sentinel. Then a check happens, if the target is not an ally, get a random number between 50*skilllvl and 100*skilllvl. Then make Chen damage the target by that much with Attack Type Hero, Damage Type Magic while applying the special effect on it. Then, if the target unit is an allied hero, check if it has disable help enabled, if he doesn't, then call a new function which register a new trigger with a timed event equal to 7-skilllvl seconds, while saving the target location, target Unit and Chen to the game cache. The timed trigger then recovers those variables from the cache, checks if the unit is not under Lightning Grapple and does not have marker and then moves them to the fountain, while if it is casting Lightning Grapple the message "Cannot Teleport a unit casting Grapple" appears. Then, if it is a creep that is Owned by the player owning Chen, the creep is immediately moved to the fountain.



    Holy Persuasion (A069)
    Based on Charm, providing the unit control.

    When it goes into effect, the target's mana is set to its maximum mana, then the target unit is added an ability depending on the level of Persuasion (A0KO,A0KQ,A0KR,A0KP based on Item Life Bonus) and a MaxUnits variable is set. Afterwards, the target also gains the ability Ghost (Visible) (Aeth) and a Sphere based ability (A12G), then a new trigger is created which times out 0 seconds later(1).

    (1): counts every unit that player owns which is not a hero, is alive, is not a courier, is not circle of power, has the ability Ghost (Visible) and has one of the Item Life bonus abilities said before. If the number is bigger than the MaxUnits variable, a loop is created which removes a random unit from the group just created.



    Hand of God (A0LT)
    Based on channel.

    When it goes into effect, it counts all non structure heroes with more than 1 life (do note that this trigger skips those unit that have EXACTLY 1 life, however difficult that may be). Now, a loop happens which checks for every unit on the recently created group: If the unit is an ally with the caster of the skill, set its life equal to its currentlife + 100 + 100*skilllvl. And put the resurrection Special effect on them. Finally, they remove it from the group.

    Afterwards, all units in the play area owned by Chen's owner are counted and a new loop is created, this time it checks if it isn't a Hero and isn't the Zone indicator, then for that unit it sets its life percent to 100% and puts the Rhasesurrection special effect on it. Finally the unit is removed from the group.
    Last edited by tkgsablon; 28-05-09 at 03:11.

  13. #12
    kodokbuntingz's Avatar
    Join Date
    Jun 2007
    Location
    Padang City
    Posts
    4,245
    Points
    1,281.78
    Thanks: 173 / 137 / 90

    Default

    Based on Charm, channel, drunken haze, serpent ward, metamorposis, invisibility, storm bolt.. dll

    beneran yah skill2 dota yg keren2 skrg ne hasil editan dari skill2 lama.....

    btw nais impo gan! thx send.


  14. #13
    Den_128's Avatar
    Join Date
    Oct 2006
    Posts
    310
    Points
    461.10
    Thanks: 0 / 0 / 0

    Default

    Quote Originally Posted by Asquall View Post
    that's not raw data
    that's pseudo-pseudo-code...

    triggering:
    banyak skill2 di dota yang pada intinya ga ada di warcraft asli (misal, Malefice yang stun periodik), jadi perlu 'ditrigger', alias direka-reka ato dibuat-buat sendiri. Cara ini punya keterbatasan, yaitu terbatas pada engine warcraft sendiri... (misal, bloodlust itu PASTI ilang klo dipurge, tapi km kepengen bloodlust g bs dipurge << GS, misalnya, dibuat dari aura, dan klo kena purge baru dihilangkan (bukan buffnya))

    Huruf2 itu adalah code skillnya, klo mau dibilang itu adalah bar code dari skill tersebut

    @fire_god
    maksudnya? itu udah ditulis klo semisal targetnya cast spell yang engga diexception maka triggernya bakal didestroy --
    ini klo kebanyakan trigger bkn nya loading jadi lama?? kayak dota jaman dulu gw inget bgt loading pasti ngstuck d tngah".. gw jg ngalamin kayak gtu klo bikin trigger banyak" (entah apapun itu, bkn hanya skill).
    tp koq dota loading nya lancar" aja sih?? gw pake kayak beberapa hero pick dr circle aja udah lama loading nya...

  15. #14

    Join Date
    Sep 2009
    Posts
    198
    Points
    231.70
    Thanks: 0 / 0 / 0

    Default

    ew...jadi edit nya niat nih ice frog
    keren2
    smoga dota tetep berjaya selalu

  16. #15

    Join Date
    Oct 2006
    Location
    Soerabuaya
    Posts
    47
    Points
    65.10
    Thanks: 0 / 0 / 0

    Default

    asli bingung..
    btw thx gan..

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •