Want more features on Pastebin? Sign Up, it's FREE!
Guest

Guide Update

By: tojooko on Oct 5th, 2011  |  syntax: XML  |  size: 52.69 KB  |  views: 613  |  expires: Never
download  |  raw  |  embed  |  report abuse  |  print
Text below is selected. Please press Ctrl+C to copy to your clipboard. (⌘+C on Mac)
  1. <absorbdamage // When in a damage event, absorbs the max amount of damage. When the max is exceeded, passes true. Stores absorbed damage in accumulator
  2. max="0"  // Can't be variable
  3. />
  4. result: Current absorbed damage (accumulator)
  5.  
  6. <accumulatedamage // All damage done to the entity is added to this entity's accumulator at the given scale
  7. entity="this_entity"
  8. scale="0"   // Can't be variable
  9. />
  10. result: Current accumulator
  11.  
  12. <activatemodifierkey // Activates the named modifier key on the given entity
  13. entity="this_entity"
  14. name="Name"
  15. />
  16.  
  17. <addattackpreimpactactions /> // Adds the sub actions to the current attack's preimpact
  18.  
  19. <addattackpredamageactions /> // Adds the sub actions to the current attack's predamage
  20.  
  21. <addattackdamageeventactions /> // Adds the sub actions to the current attack's damageevent
  22.  
  23. <addattackimpactactions /> // Adds the sub actions to the current attack's impact
  24.  
  25. <addattackimpactinvalidactions /> // Adds the sub actions to the current attack's impactinvalid
  26.  
  27. <addcharges // Adds count worth of charges to the entity for the given duration. Default duration is infinite.
  28. entity="this_entity"
  29. count="1"     // Can be variable
  30. timed="false" // Added charges are removed after duration if true
  31. duration="-1" // Can't be variable
  32. />
  33. result: Count of entity's charges
  34.  
  35. <addcritical // Used in attack/damage event, gives a given chance to multiply damage by the multiplier
  36. chance="1.0"            // Can be variable
  37. multiplier="1.0"        // Can be variable
  38. />
  39. result: always 1
  40.  
  41. <adjustagility // Usable only in an abilityattribute ability. Permenantly increases the entity's agility by the value.
  42. entity="this_entity"
  43. value="0"   // Can be variable
  44. />
  45. result: Sum of current increase in agility
  46.  
  47. <adjustintelligence // Usable only in an abilityattribute ability. Permenantly increases the entity's intelligence by the value.
  48. entity="this_entity"
  49. value="0"  // Can be variable
  50. />
  51. result: Sum of current increase in intelligence
  52.  
  53. <adjuststrength // Usable only in an abilityattribute ability. Permenantly increases the entity's strength by the value.
  54. entity="this_entity"
  55. value="0"  // Can be variable
  56. />
  57. result: Sum of current increase in strength
  58.  
  59. <aggression // Gives sight of the source to the target as if they attacked them from fog
  60. source="source_entity"
  61. target="target_entity"
  62. />
  63.  
  64. <applystate // Applies a state with the given name to the target for the duration
  65. name="Name"
  66. source="source_entity"
  67. target="target_entity"
  68. inflictor="source_entity"
  69. spawner="inflictor_entity"
  70. duration="0" // Can be variable
  71. charges="0" // Does not work :(
  72. chargesmult="0" // Does not work :(
  73. ischannel="false" // Used in channels to designate if this state should auto-expire when the channel ends
  74. istoggle="false" // Used in toggles to designate if this state should auto-expire when the toggle ends
  75. ignoreinvulnerable="false"     //Careful!; Can this state apply on invulnerable entities?
  76. proxy="Proxy" // Sets the initial proxy of the state
  77. pushentity="false" // Pushes this state onto the stack after it is created
  78. stack="false" // Lets multiple copies of the same state from different source stack on the same target
  79. continuous="false" // Makes this state have no duration, it will last until it is manually expired elsewhere
  80. timeout="0" // How often the state checks if it should start it's expire or expire itself. Usually set to "frametime"
  81. statelevel="0" // Sets the level of the state, can be variable
  82. owner="this_owner_entity"
  83. propagatecondition=""     // Sets a condition to activate state. (Based on source entity)
  84. />
  85. result: 1 if state was successfully applied
  86.  
  87. <areaofeffect // Does an instant AOE with the given parameters, hitting every unit in the radius that fits the targetscheme and selection. This should be used instead of affectors for instant 0 duration AOEs.
  88. source="source_entity"
  89. targetscheme="TargetScheme"
  90. effecttype="EffectType"
  91. ignoreinvulnerable="false"     //Careful!; Can affect invulnerable entities?
  92. center="this_entity"
  93. targetselection="all"
  94. radius="0"                                              // Can be variable
  95. innerradiusoffset="0"           // Does not work :(
  96. maxtotalimpacts="0"             // Can be variable
  97. maximpactspertarget="1"                 // Can be variable
  98. firsttarget="FirstTarget" // Given entity is the first target every time
  99. ignore="Ignore" // Given entity is ignored
  100. global="false"
  101. includetrees="false"
  102. impacteffect=""  
  103. >
  104. // Can do more actions here, every unit hit runs through these actions in order of being hit
  105. </areaofeffect>
  106. result: number of units affected
  107.  
  108. <attack // Does an instant attack from the source to the target if the targetscheme and effecttype of the target are valid (from the source)
  109. source="source_entity"
  110. target="target_entity"
  111. targetscheme="TargetScheme"
  112. effecttype="EffectType"
  113. facetarget="false" // Instantly turns the source to face the target when the attack is done
  114. />
  115.  
  116. ///           unused, but working
  117. <attackaction // Does an instant attack from the source to the target if the targetscheme and effecttype of the target are valid (from the source). Skips the normal attack events before the action.
  118. source="source_entity"
  119. target="target_entity"
  120. targetscheme="TargetScheme"
  121. effecttype="EffectType"
  122. />
  123.  
  124. <aura // Causes an aura that has radius and applies the state and/or gadget listed as long as the effecttype and targetscheme are met. The duration is how long the state stays on them outside of the aura.
  125. state="Name"
  126. gadget="Name"
  127. gadgetowner="source_entity"
  128. radius="0"
  129. duration="0"          //How long state remains after leaving aura
  130. continuous="false"       //State does not end once applied
  131. targetscheme="TargetScheme"
  132. effecttype="EffectType"
  133. ignoreinvulnerable="false"  //Careful!; Can this state apply on invulnerable entities?
  134. condition="" // Sets a condition for the state to be applied to targets
  135. propagatecondition="" // Sets a condition for the aura to be active. (Based on owner of aura; state is still applied on aura's owner despite this condition)
  136. reflexivestate="" // A state that is applied to the owner of the aura when an enemy is under its effects
  137. stack="false" // Lets multiple aura of the same state stack
  138. notooltip="false" // Removes the tooltip for the aura
  139. icon=""          // Icon can be changed
  140. proxy=""         // Set's proxy of applied state and/or gadget
  141. timeout="0"      // How often the state checks if it should start it's expire or expire itself. Usually set to "frametime"
  142. />
  143.  
  144. <bind // Binds the target to the entity
  145. target="target_entity"
  146. entity="this_entity"
  147. vertical="false" // When true, the bound target retains it's z position instead of snapping to the projectile's
  148. turn="false" // Turns the target to face in the direction the projectile is traveling
  149. unbindondeath="false" // Unbinds the target when it dies
  150. nopush="false" // When true, when the to a projectile will not break channeling
  151. position="false"   // true means using positionoverride attribute
  152. positionoverride="0 0 0" // position offset
  153. />
  154.  
  155. <bonusdamageadd // Adds the listed damage (a, or a / b with the operator) to the next attack, uses source if the target is blank
  156. source="source_entity"
  157. target=""
  158. a="0"              //Can be variable
  159. b="0"         // Can be variable, e.g. source_agility
  160. op="Operator" // Valid operators are NONE "none", ADDITION "add", SUBTRACT "sub", MULTIPLY "mult", DIVIDE "div", MINIMUM "min", and MAXIMUM "max".
  161. />
  162. result: calculated damage addition
  163.  
  164. <bonusdamagemult // Used in <onattack />, multiplies the attackdamage by the value (a, or a / b with the operator), uses source if the target is blank
  165. source="source_entity"
  166. target=""
  167. a="0"        //Can be variable
  168. b="0"        //Can be variable
  169. op="Operator" // Valid operators are NONE "none", ADDITION "add", SUBTRACT "sub", MULTIPLY "mult", DIVIDE "div", MINIMUM "min", and MAXIMUM "max".
  170. />
  171. result: calculated damage multiplier
  172.  
  173. <bounce // Causes the current attack or projectile to bounce the count number of times, searching the range around the bounce-off-of target, multiplying damage by damagemult and only hitting the targets of the fitting targetscheme.
  174. count="0"   // Can't be variable
  175. range="0"       // Can't be variable
  176. damagemult="0"    // Can't be variable
  177. targetscheme="TargetScheme"
  178. seek="random" // Controls how the bounce target is choosen. Can also be closest or farthest
  179. maxbouncespertarget="1"
  180. effecttype=""             // normally inherited from owner, can be changed
  181. />
  182. result: current bounce index         //So, 1st hit results 1.0, 2nd 2.0 up to bounces count. Last bounce's result is 0 (So it's 1->2->3->...->n->0)
  183.  
  184. <breakchannel // Breaks any current channeling abilities of the entity
  185. entity="this_entity"
  186. />
  187. result: 1 if any channel was broken; otherwise 0
  188.  
  189. <broadcastmessage // Broadcasts the type of message at the source entity's position, used right now to alert the team when a courier dies based on type
  190. source="source_entity"
  191. type="Type" // Currently can only be either "walkingcourier" or "flyingcourier"
  192. />
  193.  
  194. <calculatedamage // Returns the damage after reduction calculations from the source to the target of the given amount, effecttype, and supertype.
  195. source="source_entity"
  196. target="target_entity"
  197. amount="0"       //Can be variable
  198. effecttype="EffectType"
  199. supertype="SuperType"         //attack or spell
  200. />
  201. result: calculated damage
  202.  
  203. <canactivate /> // Returns true if the ability can be activated. For example, if the target is stunned, it will return false since you can't use abilities while stunned.
  204.  
  205. <canattack /> // Runs the same check that your auto attack. Basically a <cantarget /> using your attack target scheme automatically.
  206.  
  207. <cancel // Used in orders, cancel the entity (order) when called
  208. entity="this_entity"
  209. />
  210.  
  211. <cantarget // Checks if the source can hit the target given the parameters. Example: If targetscheme is enemy_units and you attack an allied creep, it will return false, but if you attack an enemy creep it's true.
  212. source="source_entity"
  213. target="target_entity"
  214. targetscheme="TargetScheme"
  215. effecttype="EffectType"
  216. ignoreinvulnerable="false"  //Careful!; Does it ignore ignoreinvulnerablity of entities?
  217. />
  218.  
  219. <casteffecttype // Used to check if the current ability in the event caused by the entity has the selected effecttype. For example, can be used to check if someone uses an attack ability so power supply won't gain charges.
  220. entity="this_entity"
  221. effecttype="EffectType"
  222. />
  223.  
  224. <chain // Used in affectors, when the onimpact is hit and this is inside, will basically call the affector again on top of the current target (excluding it from possible targets) as many times as chained. Example, chain lightning
  225. count="0"   // Can't be variable
  226. />
  227. result: current chain index         //So, 1st hit results 1.0, 2nd 2.0 up to count. Last hit's result is 0 (So it's 1->2->3->...->n->0)
  228.  
  229.  
  230. <chance // Passes the call if it randoms past the chance value
  231. threshold="0"     // Can't be variable
  232. />
  233.  
  234. <changeaccumulator // Sets the accumulator of the entity to a and b using the op. a in this action is always accumulator of the entity before the change.
  235. entity="this_entity"
  236. b="0"          //Can be variable
  237. op="ValueOp" // Valid operators are NONE "none", ADDITION "add", SUBTRACT "sub", MULTIPLY "mult", DIVIDE "div", MINIMUM "min", and MAXIMUM "max".
  238. />
  239. result: current entity's accumulator value
  240.  
  241. // UNUSED
  242. <changecurrentcombatdamage // Used in a combat event to change the current combat damage. Takes the combat damage before change as a and sets it using b and op.
  243. b="0"
  244. op="ValueOp" // Valid operators are NONE "none", ADDITION "add", SUBTRACT "sub", MULTIPLY "mult", DIVIDE "div", MINIMUM "min", and MAXIMUM "max".
  245. />
  246.  
  247. <changedamage // Used to change the current damage. Takes the damage before change as a and sets it using b and op. Example is setting the incoming damage to 1 so a pet can take a certain number of hits.
  248. b="0"        // Can be variable
  249. op="ValueOp" // Valid operators are NONE "none", ADDITION "add", SUBTRACT "sub", MULTIPLY "mult", DIVIDE "div", MINIMUM "min", and MAXIMUM "max".
  250. />
  251. result: Calculated damage
  252.  
  253. <changeduration // Used to set the new (local) duration. Takes the total duration (<applystate>'s one) as a and sets new using b and op. It does not overwrite total duration. New duration is returned in result variable
  254. b="0"            // Can be variable
  255. op="ValueOp" // Valid operators are NONE "none", ADDITION "add", SUBTRACT "sub", MULTIPLY "mult", DIVIDE "div", MINIMUM "min", and MAXIMUM "max".
  256. />
  257. result: New duration value
  258. //######       State can't refresh if current applied state's duration is longer than <applystate>'s one. Even state's level is not rised! Use careful with refreshing states
  259.  
  260.  
  261. <changehealth // Used to change the current target's health by +- the value set by a/b/op.
  262. source="source_entity"
  263. target="target_entity"
  264. a="0"       // Can be variable
  265. b="0"           // Can be variable
  266. op="ValueOp" // Valid operators are NONE "none", ADDITION "add", SUBTRACT "sub", MULTIPLY "mult", DIVIDE "div", MINIMUM "min", and MAXIMUM "max".
  267. />
  268. result: Calculated value
  269.  
  270. <changeteam     // Changes team of target. Used in tutorial
  271. target="target_entity"
  272. team="0"        // team's value
  273. />
  274.  
  275. <changetotalduration // Used to set the new, total duration. Takes the total duration before change as a and sets it using b and op. If a state is half done, it will still be half done after this. It DOES overwrite base duration.
  276. b="0"           // Can be variable
  277. op="ValueOp"
  278. />
  279. result: New total duration
  280.  
  281. <clearcriticals /> // Removes all current criticals out of the current combat event
  282.  
  283. <clearteamtarget/>  // Clears current team's target (Hero/building selected; "Attack X now")
  284.  
  285. <clearproxy // Clears the current proxy of given index of the current entity
  286. index="0"
  287. />
  288.  
  289. <clonebackpack // Clones the source's backpack into the target's
  290. source="source_entity"
  291. target="target_entity"
  292. />
  293.  
  294. <combatevent    // Creates new combat event with defined effecttype, which automaticly impacts target
  295. source="source_entity"
  296. target="target_entity"
  297. effecttype=""
  298. >
  299.         <onimpact>              // Can be used any event, usually it's <onimpact>
  300.                 ...                     // Do something here
  301.         </onimpact>
  302. </combatevent>
  303.  
  304. <combatsupertype // When used inside of a combat Event, checks if the current supertype matches. If so, it passes true. (Can only be spell or attack)
  305. supertype="SuperType"
  306. />
  307.  
  308. <combateffecttype // When used inside of a combat Event, checks if the current effecttype matches. If so, passes true. Can be any effecttype.
  309. effecttype="EffectType"
  310. />
  311.  
  312. <compare // Compares two values, A and B, using the operator choosen. Passes to below when true.
  313. a="ValueA"
  314. b="ValueB"
  315. op="Operator"
  316. source="this_entity"  //Can be used to change source of variables (source_gold,...), but not charges nor accumulator :(
  317. />
  318.  
  319. <complete // Used in orders, completes the current order when called
  320. entity="this_entity"
  321. />
  322.  
  323. <condition // Used to check against certain conditions or compare two values. Passes to below if returns true
  324. source="source_entity"
  325. target="target_entity"
  326. test="" // Valid operators are EQUALS "eq", NOT_EQUALS "ne", LESS_THAN "lt", LESS_THAN_OR_EQUALS "le", GREATER_THAN "gt", GREATER_THAN_OR_EQUALS "ge". Can also check for "isready", which returns true if the ability is ready to activate.
  327. />
  328.  
  329. <consume // Checks for the given item and tries to consumes it. Passes true if item is consumed (it's condition-like tag). Charges of item may be condition.
  330. item="Item"
  331. count="1"       //
  332. userecipe="false"  // When true can consume full item or recipe, when false can consume only full item
  333. ignorecharge="false"
  334. />
  335.  
  336. <currentdamagesupertype // Only used in <ondamage /> and <ondamaged />. Checks if the current supertype matches. If so, passes true. (Can only be spell or attack)
  337. supertype="SuperType"
  338. />
  339.  
  340. <currentdamageeffecttype // Only used in <ondamage /> and <ondamaged />. Checks if the current effecttype matches. If so, passes true. Can be any effecttype.
  341. effecttype="EffectType"
  342. />
  343.  
  344. <damage // Deals the given damage from the source to the target of the given effecttype. Can change the damage based on b/op.
  345. source="source_entity"
  346. target="target_entity"
  347. min="0" // Has to be a number, cannot be a variable
  348. max="0" // Has to be a number, cannot be a variable
  349. amount="0" // Has to be a number, cannot be a variable. CAN ONLY USE MIN/MAX OR AMOUNT, NOT BOTH.
  350. effecttype="EffectType"
  351. nonlethal="false" // Can this damage kill?
  352. b="0" // CAN be a variable - use this to change damage on the fly
  353. op="Operator" // Valid operators are NONE "none", ADDITION "add", SUBTRACT "sub", MULTIPLY "mult", DIVIDE "div", MINIMUM "min", and MAXIMUM "max"
  354. inflictor="this_entity"
  355. supertype="SuperType"  // attack or spell
  356. />
  357. result: Calculated value
  358.  
  359. <damagesupertype // When used inside of a damage Event, checks if the current supertype matches. If so, it passes true. (Can only be spell or attack)
  360. supertype="SuperType"
  361. />
  362.  
  363. <damageeffecttype // When used inside of a damage Event, checks if the current effecttype matches. If so, passes true. Can be any effecttype.
  364. effecttype="EffectType"
  365. />
  366.  
  367. <deactivatemodifierkey // Turns off the named modifier key of the entity
  368. entity="this_entity"
  369. name="Name"
  370. />
  371.  
  372. // UNUSED, does not work
  373. <defer // Defers the application of a state for a set amoutn of time
  374. time="Time"
  375. mult="0"
  376. />
  377.  
  378. <delete // The source deletes the target entity from the world
  379. source="source_entity"
  380. target="target_entity"
  381. />
  382.  
  383. <disjoint // Disjoints the target entity, causing any midair projectiles to not hit this target
  384. source="source_entity"
  385. target="target_entity"
  386. />
  387.  
  388. <dispel // Removes all of the states with the type given off the target
  389. source="source_entity"
  390. target="target_entity"
  391. type="Type"
  392. />
  393.  
  394. <distance // Returns the distance between the source and target (in units)
  395. source="source_entity"
  396. target="target_entity"
  397. />
  398. result: distance value
  399.  
  400. <else /> // Everything that can return true/false causes an else to happen after the tag close. For example, can be used to cover situations outside of the condition you are testing. Only usable AFTER something that would return it anyawy.
  401.  
  402. <elsecondition // Used to check against certain conditions or compare two values. Passes to below if returns true. Replaces an else command.
  403. source="source_entity"
  404. target="target_entity"
  405. test="" // Valid operators are EQUALS "eq", NOT_EQUALS "ne", LESS_THAN "lt", LESS_THAN_OR_EQUALS "le", GREATER_THAN "gt", GREATER_THAN_OR_EQUALS "ge". Can also check for "isready", which returns true if the ability is ready to activate.
  406. />
  407.  
  408. <entitytype // Checks if the target is the given entity type. If it is, passes true.
  409. source="source_entity"
  410. target="target_entity"
  411. type="Type"
  412. />
  413.  
  414. <evaluate // Evaluates the given math and returns it as the result.
  415. a="0"
  416. b="0"
  417. op="ValueOp" // Valid operators are NONE "none", ADDITION "add", SUBTRACT "sub", MULTIPLY "mult", DIVIDE "div", MINIMUM "min", and MAXIMUM "max".
  418. />
  419. result: evaluated value
  420.  
  421. <expire // Expires the entity (a state) immediately
  422. entity="this_entity"
  423. />
  424.  
  425. <expirestate // The source expires a state named Name off the target
  426. source="source_entity"
  427. target="target_entity"
  428. name="Name"
  429. />
  430.  
  431. <forgetattacks // Causes the target to stop current attacks and remove current aquired targets. Used when a hero goes stealth mainly so they do not finish an attack and break the stealth
  432. source="source_entity"
  433. target="target_entity"
  434. />
  435.  
  436. <forceimpact/>    // Forces event <onimpact> for projectiles, which is normally called when projectile reached target
  437.  
  438. <foreachproxy  // Execute some script with target_entity = proxy for each proxy
  439. entity="this_entity"
  440. />
  441.  
  442. <getyaw      // Returns angle between 2 positions/entities
  443. source="source_entity"
  444. target="target_entity"
  445. >
  446. result: angle
  447.  
  448. <givegold               //Gives gold to player owning target
  449. source="source_entity"          // "source of gold", entity from which pops gold number
  450. target="target_entity"                 
  451. amount="0"                              // Can be variable
  452. />
  453. result: amount of given gold
  454.  
  455. <giveitem          // Give an item to the target unit or its stash.
  456. target="target_entity"  
  457. name="" // The item name that will be given to the unit.
  458. pushentity="false"  // Pushes this item into the stack when created
  459. stash="false"    // Does item needs to be put in the stash?
  460. />
  461.  
  462. <giveexperience       //Gives experience to target
  463. target="this_entity"  
  464. position="this_position"   // Position of experience popup
  465. amount="0"        // Can be variable
  466. />
  467. result: amount of given experience
  468.  
  469. <givemana // The source gives the target the amount worth of mana after the b/op operation
  470. source="source_entity"
  471. target="target_entity"
  472. amount="0" // Cannot be a variable, has to be a number
  473. b="0"         // Can be variable
  474. op="none" // Valid operators are NONE "none", ADDITION "add", SUBTRACT "sub", MULTIPLY "mult", DIVIDE "div", MINIMUM "min", and MAXIMUM "max".
  475. />
  476. result: amount of given mana
  477.  
  478. <hasmodifier // Checks if the target entity has the named modifier active. If yes, passes true
  479. entity="this_entity"
  480. name="Name"
  481. />
  482.  
  483. <heal // The source heals the target the amount worth of health after the a/b/op
  484. source="source_entity"
  485. target="target_entity"
  486. a="0"     //Can be variable
  487. b="0"     //Can be variable
  488. op="AmountOp" // Valid operators are NONE "none", ADDITION "add", SUBTRACT "sub", MULTIPLY "mult", DIVIDE "div", MINIMUM "min", and MAXIMUM "max".
  489. />
  490. result: amount of healed health
  491.  
  492. <hidechannelbar/>    // Hides channel bar
  493.  
  494. <invalidate /> // Used in <checkcost /> and <activatecost /> to invalidate the cast of an ability if certain conditions are met. When called, just cancels the cast of the ability as if it never happened.
  495.  
  496. <isitem //  Checks if the entity is item. If yes, passes true
  497. entity="this_entity"
  498. />
  499.  
  500. <isready //  Checks if the entity (ability or item) is ready. If yes, passes true
  501. entity="this_entity"
  502. />
  503.  
  504. <kill // The source kills the target instantly.
  505. source="source_entity"
  506. target="target_entity"
  507. experiencebountymult="1.0" // Experience the target gives when it dies from this action, can't be variable
  508. goldbountymult="1.0" // Gold the target gives when it dies from this action, can't be variable
  509. nocorpse="false"
  510. nodeathanim="false"
  511. />
  512.  
  513. <killillusions /> // If the current target was an illusion, kills it instantly
  514. result: 0 or 1
  515.  
  516. <killtrees // Kills all the trees in the radius
  517. radius="0" // No radius means to kill the target entity if it is a tree, can't be variable
  518. target="target_position"         // centre position
  519. usealtdeathanims="false"
  520. />
  521. result: number of killed trees
  522.  
  523. <levelpets // Levels the named pets to the value level
  524. name="Name"
  525. value="0" // Usually this is "level", so when an ability levels up it transfers it's current level to the pet
  526. />
  527. result: Always 1
  528.  
  529. <lineofeffect // Does an instant LOE with the given parameters, hitting every unit in the radius that fits the targetscheme and selection. This should be used instead of linearaffectors for instant 0 duration LOEs.
  530. targetscheme="TargetScheme"
  531. effecttype="EffectType"
  532. ignoreinvulnerable="false"     //Careful!; Can effect invulnerable entities?
  533. targetselection="all"
  534. radius="0"                                              // Can be variable
  535. ignore="Ignore" // Given entity is ignored
  536. includetrees="false"
  537. target="target_entity"
  538. targetorigin="target_entity"
  539. targetvalue=""
  540. targetmodifier="" // can be "pointpastline" for example
  541. direction="source_entity"
  542. directionorigin="target_position"
  543. directionvalue=""
  544. directionmodifier="" // can be "pointpastline" for example
  545. >
  546. // Can do more actions here, every unit hit runs through these actions in order of being hit
  547. </lineofeffect>
  548. result: number of units affected
  549.  
  550. <lockbackpack // Locks the entity's backpack so any items in it cannot be dropped, sold or moved and that entity cannot purchase more into the backpack
  551. entity="this_entity"
  552. />
  553.  
  554. <morph // The source morphs the target into the named entity. Usually a self cast
  555. source="source_entity"
  556. target="target_entity"
  557. name="Name"
  558. />
  559.  
  560. <multcharges // Multiplies the entity's charges by the value and sets that as the new number of charges
  561. entity="this_entity"
  562. value="0"          // Can be variable
  563. />
  564. result: new charges count
  565.  
  566. <negate // Negates the effects of an offensive spell targetted at the owner when triggered.
  567. immunitytype="ImmunityType" // Only negates spells of the given immunity type
  568. />
  569.  
  570. <order // The source issues an order of the given command to the target unit.
  571. source="source_entity"
  572. target="target_entity"
  573. command="Command" // Can be such things as attack, wander, stop, assist, follow, hold, etc. Can also be "event" which calls an order.entity of the given OrderName
  574. parameter="Parameter" // Unused
  575. queue="back" // Can be set to front or back
  576. force="false" // Forces the entity to do this order and nothing else for the duration
  577. forceduration="0" // Only used if force is true, and says how long it lasts
  578. restrict="false" // Sets to true if the event order is used
  579. ordername="Name" // Name of the order.entity to use
  580. value0="Value0" // Used only in command="assist"
  581. duration="0" // Duration of the order
  582. block="Block" // Used in tutorial, unused
  583. duration=""     // Duration of order if it's not forced
  584. range=""         // Used in command="assist"  (but it works same as value0)
  585. triggerrange=""     // ?
  586. />
  587.  
  588. <orderdisjoint  // Removes all orders from target entity
  589. target="target_entity"
  590. />
  591.  
  592. <pausetimer  //Switch "paused" for timer for this entity
  593. paused="false" // Can be true or false
  594. />
  595.  
  596. <peekstack /> // Sets the current stack as the result
  597.  
  598. <ping // Issues a map ping of the given name at the target position
  599. name="Name"
  600. position="target_position"
  601. />
  602.  
  603. <playanim // Plays the animation of given Name with X variations included at the given speed and length
  604. source="source_entity"
  605. target="target_entity"
  606. name="Name"
  607. variations="0"
  608. channel="Channel" // Artisty-Thing, UNUSED
  609. speed="1.0"       //Can be variable
  610. length="Length"   //UNUSED
  611. seq="Seq" // Used in animations used in quick succession that you don't want reset between  UNUSED
  612. />
  613.  
  614. <playeffect // Plays the listed effect at the source position/entity with a given owner
  615. source="source_entity"
  616. target=""
  617. effect="Effect"
  618. owner="source_entity"
  619. occlude="false" // Should this effect hide itself in fog?
  620. />
  621.  
  622. <playtauntsound // The source plays his taunting sound at the target
  623. source="source_entity"
  624. target="target_entity"
  625. />
  626.  
  627. <popentity /> // Removes the top entity stack item
  628.  
  629. <popstack /> // Removes the top value stack item
  630. result: popped value
  631.  
  632. <popup // The source plays popup Name at the target position with the value of a/b/op
  633. source="source_entity"
  634. target="target_entity"
  635. name="Name"
  636. a="0"    //Can be variable
  637. b="0"    //Can be variable
  638. op="Operator" // Valid operators are NONE "none", ADDITION "add", SUBTRACT "sub", MULTIPLY "mult", DIVIDE "div", MINIMUM "min", and MAXIMUM "max".
  639. />
  640.  
  641. <print // Prints the text in the console when called
  642. text="Text"
  643. />
  644.  
  645. <printdebuginfo /> // Prints the debug information into the console when called
  646.  
  647. <printpos // Prints the given position into the console when called
  648. value=""
  649. />
  650.  
  651. <printvalue // Prints the given value with a custom label (if wanted) when called
  652. label="Label"
  653. value="value"
  654. />
  655.  
  656. <protecteddeath // The source protects the target from death, used in Aegis
  657. source="source_entity"
  658. target="target_entity"
  659. />
  660.  
  661. <push // The source pushes the target the value force/forceb/forceop for the given duration
  662. source="source_entity"
  663. target="target_entity"
  664. force="0"    // Can be variable
  665. forceb="0"   // Can be variable
  666. forceop="Operator" // Valid operators are NONE "none", ADDITION "add", SUBTRACT "sub", MULTIPLY "mult", DIVIDE "div", MINIMUM "min", and MAXIMUM "max".
  667. duration="0"    // Can't be variable
  668. frame="false" // Instead of duration, pushes every frame as long as the push is applied
  669. perpendicular="false" // Pushes in a perpendicular direction from the source. Used as a "push to the side" movement
  670. />
  671.  
  672. <pushability // Pushes the given named ability onto the stack
  673. name="Name"
  674. source="source_entity"
  675. />
  676.  
  677. <pushentity // Pushes the given named entity onto the stack, OR, searches in a radius for the first available target and pushes that entity onto the tsack
  678. entity="Entity"
  679. searchfortarget="false"
  680. searchorigin="source_entity"
  681. radius="0"        // Can't be variable
  682. targetscheme="TargetScheme"
  683. ignoreinvulnerable="false"
  684. />
  685.  
  686. <pushentitybyname // Pushes the given named entity onto the stack
  687. name="Name"
  688. />
  689.  
  690. <pushentityproxy // Pushes the given named entity's proxy (by index) onto the stack
  691. entity="this_entity"
  692. index="0"
  693. />
  694.  
  695. <pushentitysearch // Searches in a radius for the first available target and pushes that entity onto the tsack
  696. origin="source_position"
  697. radius="0"       //Can't be variable
  698. targetscheme="TargetScheme"
  699. ignoreinvulnerable="false"
  700. global="false" // Sets it to a global search instead of a radius
  701. />
  702.  
  703. <pushhero/>  // Pushes the player's hero entity onto the stack
  704.  
  705. <pushprojectiletarget  // Pushes target of projectile
  706. entity="this_entity"
  707. />
  708.  
  709. <pushstack // Pushes the given value after a/b/op onto the stack
  710. a="0"
  711. b="0"
  712. op="Operator" // Valid operators are NONE "none", ADDITION "add", SUBTRACT "sub", MULTIPLY "mult", DIVIDE "div", MINIMUM "min", and MAXIMUM "max".
  713. />
  714.  
  715. <recallpets // Causes the named pet to get a move order back to its owner
  716. name="Name"
  717. />
  718. result: Always 1
  719.  
  720. <reducecooldown // Reduces the cooldown of the entity by the duration given; Stackable
  721. entity="this_entity"
  722. source="source_entity"
  723. duration="0"    // Can be variable
  724. />
  725. result: new cooldown;
  726.  
  727. <refreshabilities // The source refreshes the target's abilities
  728. source="source_entity"
  729. target="target_entity"
  730. />
  731.  
  732. <refreshinventoryitems // The source refreshes the target's items in their inventory except those in the exclude line, seperated by spaces
  733. source="source_entity"
  734. target="target_entity"
  735. excluded="Excluded"  // Item name that should be excluded from the refresh
  736. />
  737.  
  738. <releasecontrol // Releases target unit from player's control and sets its team to -4.0 (sic!)
  739. target="target_entity"
  740. />
  741.  
  742. <removecharge // Removes one charge from the entity
  743. entity="this_entity"
  744. />
  745. result: new charges count
  746.  
  747. <resetattackcooldown // Resets the source's attack cooldown
  748. source="source_entity"
  749. />
  750.  
  751. <resetcooldown // Resets the cooldown of the entity
  752. entity="this_entity"
  753. />
  754.  
  755. <resettimer // Resets the timer of the entity
  756. entity="this_entity"
  757. />
  758.  
  759. <resettouches // Resets the touches of the source
  760. source="source_entity"
  761. />
  762.  
  763. <retarget // Used for projectiles, retargets it towards the target in mid-flight
  764. source="source_entity"
  765. target="target_entity"
  766. />
  767.  
  768. //UNUSED
  769. <return /> // Causes a projectile to be returned back to its origin
  770.  
  771.  
  772. <savehealth // Saves the current target's health to this entity so it can be used later through the "healthlost" variable; Uses ACCUMULATOR to save current health!
  773. source="source_entity"
  774. target="target_entity"
  775. entity="this_entity"
  776. />
  777. result: saved health value (accumulator)
  778.  
  779. <scaledamage // Scales the current incoming damage by the % given through scale
  780. scale="0"        // Can't be variable
  781. />
  782. result: new damage value
  783.  
  784. <selectentity // Selects target_entity for source_entity's player, bugged
  785. source="source_entity"
  786. target="target_entity"
  787. request="true"   // No idea what is it
  788. />
  789.  
  790. <setaccumulator // Sets the entity's accumulator based on a/b/op. Accumulator is a permenant value that persists through all events.
  791. entity="this_entity"
  792. value="0"     // Can be variable
  793. valueb="0"    // Can be variable
  794. valueop="ValueOp" // Valid operators are NONE "none", ADDITION "add", SUBTRACT "sub", MULTIPLY "mult", DIVIDE "div", MINIMUM "min", and MAXIMUM "max"
  795. />
  796. result: new accumulator
  797.  
  798. <setactivemodifierkey // Sets the active modifier key of the entity to the name given
  799. entity="this_entity"
  800. name="Name"
  801. />
  802.  
  803. <setattackactioneffect // Overrides the current attack's action effect to the effect given
  804. source="source_entity"
  805. target="target_entity"
  806. effect="Effect"
  807. />
  808.  
  809. <setattackimpacteffect // Overrides the current attack's impact effect to the effect given
  810. effect="Effect"
  811. />
  812.  
  813. <setattackprojectile // Overrides the current attack's projectile to the one named
  814. name="Name"
  815. />
  816.  
  817. <setcharges // Sets the charges of the entity to the value of a/b/op
  818. entity="this_entity"
  819. a="0"  // Can be variable
  820. b="0"  // Can be variable
  821. op="Operator" // Valid operators are NONE "none", ADDITION "add", SUBTRACT "sub", MULTIPLY "mult", DIVIDE "div", MINIMUM "min", and MAXIMUM "max"
  822. timed="false" // Charges are removed after duration if true
  823. />
  824. result: new charges count
  825.  
  826. //unused, seems it does not work :(
  827. <setdamage // Sets the damage of the current event to the value of a/b/op
  828. a="0"
  829. b="0"
  830. op="Operator" // Valid operators are NONE "none", ADDITION "add", SUBTRACT "sub", MULTIPLY "mult", DIVIDE "div", MINIMUM "min", and MAXIMUM "max"
  831. />
  832.  
  833. <setgold // Sets the gold of entity's player
  834. entity="this_entity"
  835. value="0"
  836. />
  837.  
  838. <setdeathanim  //Can disable death animation and corpse spawning. Can be used only in <onsmackdowned/> event
  839. target="target_entity"
  840. noanim=""
  841. nocorpse=""
  842. />
  843.  
  844. <seteffecttype // Sets the effecttype of the value in name to the given type
  845. name="Name" // An example of this is combat_damagetype in the <onpreimpact /> event to change the attacks effecttype
  846. effecttype="Effecttype"
  847. />
  848.  
  849. <setent0 // Sets the entity as the ent0 variable that can be recalled later. Only exists inside of the event it is made, so it 'expires' quickly.
  850. entity="Entity"
  851. name="Name"
  852. />
  853.  
  854. <setent1 // Sets the entity as the ent1 variable that can be recalled later. Only exists inside of the event it is made, so it 'expires' quickly.
  855. entity="Entity"
  856. name="Name"
  857. />
  858.  
  859. <setent2 // Sets the entity as the ent2 variable that can be recalled later. Only exists inside of the event it is made, so it 'expires' quickly.
  860. entity="Entity"
  861. name="Name"
  862. />
  863.  
  864. <setent3 // Sets the entity as the ent3 variable that can be recalled later. Only exists inside of the event it is made, so it 'expires' quickly.
  865. entity="Entity"
  866. name="Name"
  867. />
  868.  
  869. <setexperience // Sets the entitie's experience to the value given
  870. entity="Entity"
  871. value="0"    // Can be variable
  872. />
  873.  
  874. <setgold  // Sets the gold of selected player
  875. entity=""  
  876. value="0"    // Can be variable
  877. />
  878.  
  879. <setgoldlossbonus // Sets the target's bonus gold lost from death to the value given
  880. source="source_entity"
  881. target="target_entity"
  882. value="0"  // Can be variable
  883. />
  884.  
  885. <setgoldlossmultiplier // Sets the target's gold lost from death multiplied by the value
  886. source="source_entity"
  887. target="target_entity"
  888. value="0" // Can be variable
  889. />
  890.  
  891. <setignoreattackcooldown // Unused
  892. source="source_entity"
  893. target="target_entity"
  894. value="0"
  895. />
  896.  
  897. <setlevel // Set the level of entity (entity can not use experience)
  898. entity="this_entity"
  899. value="0"  // Can be variable
  900. />
  901.  
  902. <setparam // Sets the parameter of the entity to the value of a/b/op. Parameter is a permenant value that persists through all events.
  903. entity="this_entity"
  904. a="0"
  905. b="0"
  906. op="Operator" // Valid operators are NONE "none", ADDITION "add", SUBTRACT "sub", MULTIPLY "mult", DIVIDE "div", MINIMUM "min", and MAXIMUM "max".
  907. />
  908. result: new param
  909.  
  910. <setpos0  // Sets the position as the pos0 variable that can be recalled later. Only exists inside of the event it is made, so it 'expires' quickly.
  911. entity=""
  912. offset="0 0 0"
  913. offsetspace=""
  914. position=""
  915. positionend=""
  916. positionmodifier=""
  917. positionvalue=""
  918. name=""            // Get's position of named entity
  919. />
  920.  
  921. <setpos1  // Sets the position as the pos1 variable that can be recalled later. Only exists inside of the event it is made, so it 'expires' quickly.
  922. entity=""
  923. offset="0 0 0"
  924. offsetspace=""
  925. position=""
  926. positionend=""
  927. positionmodifier=""
  928. positionvalue=""
  929. name=""            // Get's position of named entity
  930. />
  931.  
  932. <setpos2  // Sets the position as the pos2 variable that can be recalled later. Only exists inside of the event it is made, so it 'expires' quickly.
  933. entity=""
  934. offset="0 0 0"
  935. offsetspace=""
  936. position=""
  937. positionend=""
  938. positionmodifier=""
  939. positionvalue=""
  940. name=""            // Get's position of named entity
  941. />
  942.  
  943. <setpos3  // Sets the position as the pos3 variable that can be recalled later. Only exists inside of the event it is made, so it 'expires' quickly.
  944. entity=""
  945. offset="0 0 0"
  946. offsetspace=""
  947. position=""
  948. positionend=""
  949. positionmodifier=""
  950. positionvalue=""
  951. name=""            // Get's position of named entity
  952. />
  953.  
  954. <setprojectilebounds   //Chages radius of projectile
  955. entity="this_entity"
  956. radius="0"  // Can be variable, e.g source_radius
  957. />
  958.  
  959. <setproxy // Sets the proxy of the entity to the target or can search for a target instead of declaring one outright. The proxy is a permenant entity that is remembered through all events of that entity
  960. entity="this_entity"
  961. target="target_entity"
  962. searchfortarget="false"
  963. searchorigin="source_entity"
  964. radius="0"
  965. targetscheme="TargetScheme"
  966. ignoreinvulnerable="false"
  967. index="0" // Index of the proxy for orders
  968. />
  969.  
  970. <setrespawnhealthmultiplier // Sets the health of the target when they respawn to the value as a percent
  971. source="source_entity"
  972. target="target_entity"
  973. value="1.0"  // Can be variable
  974. />
  975.  
  976. <setrespawnmanamultiplier // Sets the mana of the target when they respawn to the value as a percent
  977. source="source_entity"
  978. target="target_entity"
  979. value="1.0"  // Can be variable
  980. />
  981.  
  982. <setrespawnposition // Sets the respawn position of the target when they respawn to the position listed
  983. source="source_entity"
  984. target="target_entity"
  985. position="target_position"
  986. />
  987.  
  988. <setrespawntime // Sets the whole respawn time of the target when they die to the value of a/b/op
  989. source="source_entity"
  990. target="target_entity"
  991. a="0"  // Can be variable
  992. b="0"  // Can be variable
  993. op="Operator" // Valid operators are NONE "none", ADDITION "add", SUBTRACT "sub", MULTIPLY "mult", DIVIDE "div", MINIMUM "min", and MAXIMUM "max".
  994. />
  995. result: new respawn time
  996.  
  997. <setrespawntimebonus // Changes the bonus respawn time of the target to the value listed when they are killed (used in <onkilled /> )
  998. source="source_entity"
  999. target="target_entity"
  1000. value="Value"           // Can be variable
  1001. />
  1002. result: new respawn time
  1003.  
  1004. <setrespawntimemultiplier // Changes the bonus respawn time of the target to their bonus time multiplied by the value listed when they are killed (used in <onkilled /> )
  1005. source="source_entity"
  1006. target="target_entity"
  1007. value="Value"   // Can be variable
  1008. />
  1009. result: new respawn time
  1010.  
  1011. <setvalue // Sets the named value to the value of a/b/op. Known values list below
  1012. source="source_entity"      // Source of values used in a and b (Used in Shieldbreaker)
  1013. name="Name"
  1014. a="0"
  1015. b="0"
  1016. op="Operator" // Valid operators are NONE "none", ADDITION "add", SUBTRACT "sub", MULTIPLY "mult", DIVIDE "div", MINIMUM "min", and MAXIMUM "max".
  1017. />
  1018. result: new value
  1019.  
  1020. <setvar0 // Sets the value of a/b/op to the variable var0, which can be called later in the same event. Only exists inside of the event it is created.
  1021. a="0"
  1022. b="0"
  1023. op="Operator" // Valid operators are NONE "none", ADDITION "add", SUBTRACT "sub", MULTIPLY "mult", DIVIDE "div", MINIMUM "min", and MAXIMUM "max".
  1024. />
  1025. result: new var0
  1026.  
  1027. <setvar1 // Sets the value of a/b/op to the variable var1, which can be called later in the same event. Only exists inside of the event it is created.
  1028. a="0"
  1029. b="0"
  1030. op="Operator" // Valid operators are NONE "none", ADDITION "add", SUBTRACT "sub", MULTIPLY "mult", DIVIDE "div", MINIMUM "min", and MAXIMUM "max".
  1031. />
  1032. result: new var1
  1033.  
  1034. <setvar2 // Sets the value of a/b/op to the variable var2, which can be called later in the same event. Only exists inside of the event it is created.
  1035. a="0"
  1036. b="0"
  1037. op="Operator" // Valid operators are NONE "none", ADDITION "add", SUBTRACT "sub", MULTIPLY "mult", DIVIDE "div", MINIMUM "min", and MAXIMUM "max".
  1038. />
  1039. result: new var2
  1040.  
  1041. <setvar3 // Sets the value of a/b/op to the variable var3, which can be called later in the same event. Only exists inside of the event it is created.
  1042. a="0"
  1043. b="0"
  1044. op="Operator" // Valid operators are NONE "none", ADDITION "add", SUBTRACT "sub", MULTIPLY "mult", DIVIDE "div", MINIMUM "min", and MAXIMUM "max".
  1045. />
  1046. result: new var3
  1047.  
  1048. <showchannelbar  //Shows fake channelbar (doesn't require channeling)
  1049. duration="0" // Can be variable
  1050. />
  1051.  
  1052. <spawnaffector // Spawns a named affector at the target position or on the target entity with any number of properties
  1053. name="Name"
  1054. source="source_entity"
  1055. target="target_entity"
  1056. inflictor="inflictor_entity" // Can be used to change inflictor
  1057. direction="target_position" // Direction the affector is facing
  1058. firstimpact="target_entity" //
  1059. firsttarget="target_entity"
  1060. level="LevelProperty"
  1061. owner="source_entity"
  1062. ischannel="false"
  1063. istoggle="false"
  1064. distance="0" // Distance away from the target the affector spawns
  1065. count="1" // ?
  1066. countb="0" // ?
  1067. countop="CountOperator" // Valid operators are NONE "none", ADDITION "add", SUBTRACT "sub", MULTIPLY "mult", DIVIDE "div", MINIMUM "min", and MAXIMUM "max".
  1068. distribute="false" // Distributes the count worth of affectors evenly around the target going outwards (ex: "even")
  1069. proxy="Proxy" // Sets the proxy entity
  1070. pushentity="false" // Pushes this entity onto the stack
  1071. param="0" // Sets the parameter of this affector
  1072. positionorigin="source_entity" // Used for setting the origin for the position modifiers
  1073. positionvalue="0" // Radius
  1074. positionmodifier="" // Used to say what positional modifier to use. Can be "minonline" or "pointonline"
  1075. ignore="Ignored" // Entity to be ignored
  1076. />
  1077. result: count of spawned affectors
  1078.  
  1079. <spawnillusion // Spawns count number of illusions of the target for lifetime duration. The damage they deal and take can be changed, along with the effects associated with them. Owner is who controls them.
  1080. source="source_entity"
  1081. target="target_entity"
  1082. proxy="" //  Sets the proxy entity
  1083. count="1"
  1084. lifetime="0"
  1085. receivedamagemultiplier="1.0"
  1086. inflictdamagemultiplier="1.0"
  1087. spawneffect="Effect"
  1088. deatheffect="Effect"
  1089. owner="source_entity"
  1090. uncontrollable="false"
  1091. pushentity="false" // Pushes the illusion onto the stack
  1092. playdeathanim="false" // Illusion plays the death animations of the unit copied when it is killed or not
  1093. inheritactions="false" // Smoothly inherits the actions of the unit spawned so if they were spawned on top of them, it would be impossible to tell the difference between real and illusion
  1094. spawncircular="false" // Spawns illusions in a circle instead of on top of the target, moves the target as part of the circle
  1095. spawncircularradius="0" // Radius of the circle when spawncircular is true
  1096. fixedposition="false" // // Fixes the position of the illusion to where it spawns
  1097. />
  1098. result: count of spawned illusions
  1099.  
  1100. <spawnitem // The source spawns the named item at the target, offset by the distance (x/y). Offsetspace is who the offset is based off of (what direction they are facing is 'front')
  1101. source="source_entity"
  1102. target="target_entity"
  1103. name="Name"
  1104. offset="0 0"
  1105. offsetspace="target_entity"
  1106. />
  1107. result: 1 if item was successfully spawned; otherwise 0
  1108.  
  1109. <spawnlinearaffector // Spawns a named linear affector at the target position or on the target entity with any number of properties. basically a line of affectors of the given name as far as the target_position
  1110. name="Name"
  1111. source="source_entity"
  1112. target="target_entity"
  1113. direction="target_position" // Direction the affector is facing
  1114. firsttarget="target_entity"
  1115. level="LevelProperty"
  1116. owner="source_entity"
  1117. ischannel="false"
  1118. istoggle="false"
  1119. pushentity="false" // Pushes this entity onto the stack
  1120. targetorigin="target_entity"
  1121. targetvalue=""
  1122. targetmodifier=""
  1123. directionorigin="target_position"
  1124. directionvalue=""
  1125. directionmodifier="" // can be "pointpastline" for example
  1126. proxy="" // Sets the proxy entity
  1127. />
  1128. result: 1 if affector was successfully spawned; otherwise 0
  1129.  
  1130. <spawnprojectile // Spawns a projectile from the source (with offset) to the target, see the specific section for orbital attributes
  1131. source="source_entity"
  1132. target="target_entity"
  1133. owner=""
  1134. name="Name"
  1135. count="1"
  1136. effecttype=""
  1137. bind="" // Binds the entity listed to the projectile
  1138. bindturn="false" // Makes the bound entity turn in the direction the projectile does
  1139. bindnopush="false" // Makes it so binding to the projectile does not stop channeling
  1140. unbindondeath="false" // Unbinds the bound entity if they die
  1141. bindstate="" // A state to be on the bound target as long as they are bound
  1142. ignoretargetoffset="false" // Ignores the target's offset when it binds them
  1143. proxy="" // Sets the listed entity as the proxy of this projectile
  1144. offset="0 0 0"
  1145. offsetspace="source_entity" // Sets who the offset is based off of
  1146. ischannel="false"
  1147. istoggle="false"
  1148. pushentity="false" // Pushes this projectile onto the stack when created
  1149. param="0" // Sets the param of this projectile when created
  1150. noresponse="false" // Makes it so this projectile cannot be responded to. This involves things like Nullstone or reactionary abilities. It will not proc those
  1151. orbitstartingtheta=""
  1152. orbitstartingthetatime=""
  1153. ignore="Ignored" // Entity to be ignored
  1154. ignoreinvulnerable="false"
  1155. />
  1156. result: count of spawned prijectiles
  1157.  
  1158. <spawnunit // The source spawns a unit (Name) at the target, spawning count number of them with other properties
  1159. source="source_entity"
  1160. target="target_entity"
  1161. owner="this_owner_entity"
  1162. name="Name"
  1163. count="1"
  1164. mount="entity" // Mounts (binds) the unit to the entity
  1165. bind="entity" // Binds the entity to this unit
  1166. fixedposition="false" // Fixes the position of the unit to where it spawns
  1167. inheritmodifiers="true" // Makes the unit inherit the modifiers of the source
  1168. ischannel="false"
  1169. istoggle="false"
  1170. maxactive="0" // Only this number of this unit can be active at once
  1171. facing="entity" // Sets the facing direction of the spawned unit in relation to the entity listed
  1172. angle="0" // Angle it is turned when spawned
  1173. offset="0 0 0" // Offset from the offsetspace entity
  1174. offsetspace="target_entity" // Entity is who the offset is based off of for where it spawns
  1175. pushentity="false" // Pushes this unit into the stack when created
  1176. lifetime="0" // Sets the lifetime to the value of a/b/op
  1177. lifetimeb="0"  // but recommended way to do it is setting it in unit's definition
  1178. lifetimeop="LifetimeOp" // Valid operators are NONE "none", ADDITION "add", SUBTRACT "sub", MULTIPLY "mult", DIVIDE "div", MINIMUM "min", and MAXIMUM "max".
  1179. proxy="entity" // Sets the proxy of this unit to the entity listed
  1180. team="" // Sets the team of the spawned unit. Usually a "result" after an <evaluate a="target_team" /> call
  1181. snaptargettogrid="false" // Snaps the unit to the grid
  1182. duration="-1" //  Does not do anything
  1183. teamshare="false"
  1184. />
  1185. result: count of spawned units
  1186.  
  1187. <splashdamage // Causes a splash damage call usually in <onattack /> or added as an impact action for onattackstart. It only hits the targets and effecttypes that are valid. Splash deals value of a/b/op
  1188. target="target_entity"   // Can be used to change target (and with centerontarget="true" center) of splash
  1189. targetscheme="TargetScheme"
  1190. effecttype="EffectType"
  1191. radius="0"
  1192. a="0" // Can use "total_adjusted_damage" if this is splashing normal attacks
  1193. b="0"
  1194. op="Operator" // Valid operators are NONE "none", ADDITION "add", SUBTRACT "sub", MULTIPLY "mult", DIVIDE "div", MINIMUM "min", and MAXIMUM "max".
  1195. nonlethal="false" // "false" if the splash can kill
  1196. centerontarget="false" // Centers the splash circle on the target hit instead of on the attacking hero. Used for ranged splash.
  1197. supertype="SuperType"
  1198. />
  1199. result: calculated damage
  1200.  
  1201. <split // Used in <onattack /> and splits the attack into different projectiles that hit units within the range/targetscheme given. Damage the split shots do is multiplied by the damagemult.
  1202. count="0"    // count of additional projectiles, can't be variable
  1203. range="0"     // range from attacking unit, can't be variable
  1204. damagemult="0.0"   // Can't be variable
  1205. targetscheme="TargetScheme"
  1206. fulldamageonmaintarget="false"     // Does main target receive full damage?
  1207. />
  1208. result: number of additional projectiles sent
  1209.  
  1210. //UNUSED
  1211. <startattack // Starts an attack from the source to the target as long as the targetscheme and effecttype pass.
  1212. source="source_entity"
  1213. target="target_entity"
  1214. targetscheme="TargetScheme"
  1215. effecttype="EffectType"
  1216. facetarget="false" // Causes the source to face the target
  1217. />
  1218.  
  1219. <startcooldown // Starts the cooldown of the entity listed or toolname if one is given for the duration of a/b/op
  1220. entity="this_entity"
  1221. toolname=""
  1222. duration="0"         // Can be variable
  1223. durationb="0"        // Can be variable
  1224. durationop="Operator" // Valid operators are NONE "none", ADDITION "add", SUBTRACT "sub", MULTIPLY "mult", DIVIDE "div", MINIMUM "min", and MAXIMUM "max".
  1225. />
  1226. result: Calculated cooldown
  1227.  
  1228. <startexpire // Starts the expire time of the listed entity (a state) if it is continuous and has a duration that can run out
  1229. entity="this_entity"
  1230. />
  1231.  
  1232. <startfade // Starts the entity listed to fade into stealth over the duration of a/b/op. If no duratoin is given, uses the fadetime of the state. Also a stealthtype is required.
  1233. entity="this_entity"
  1234. a="0"       // Can be variable
  1235. b="0"       // Can be variable
  1236. op="Operator" // Valid operators are NONE "none", ADDITION "add", SUBTRACT "sub", MULTIPLY "mult", DIVIDE "div", MINIMUM "min", and MAXIMUM "max".
  1237. />
  1238. result: Calculated fadetime
  1239.  
  1240. <starttimer // Starts the timer of the entity listed for the duration of a/b/op
  1241. entity="this_entity"
  1242. duration="0"        // Can be variable
  1243. durationb="0"         // Can be variable
  1244. durationop="Operator" // Valid operators are NONE "none", ADDITION "add", SUBTRACT "sub", MULTIPLY "mult", DIVIDE "div", MINIMUM "min", and MAXIMUM "max".
  1245. />
  1246. result: calculated value
  1247.  
  1248. <takecontrol // Transfers the target to be under the source's control. Maxactive limits the maximum number of units you can have active through this call.
  1249. source="source_entity"
  1250. target="target_entity"
  1251. maxactive="0"           // Can be variable
  1252. inheritmodifiers="false"    // Makes the unit inherit the modifiers of the source
  1253. />
  1254. result: 1 if taken control on target; otherwise 0
  1255.  
  1256. <takegold       // Takes abount of gold from target's player
  1257. source="source_entity"
  1258. target="target_entity"
  1259. amount="0"  // Can be variable
  1260. />
  1261. result: amount of taken gold
  1262.  
  1263. <takemana // The source takes the target's mana in the amount of a/b/op
  1264. source="source_entity"
  1265. target="target_entity"
  1266. amount="0" // Can only be a number, not a variable
  1267. amountb="0"  // Can be variable  
  1268. amountop="Operator" // Valid operators are NONE "none", ADDITION "add", SUBTRACT "sub", MULTIPLY "mult", DIVIDE "div", MINIMUM "min", and MAXIMUM "max".
  1269. />
  1270. result: amount of taken mana
  1271.  
  1272. <targettype // Checks if the target is the given target type. If it is, passes true.
  1273. source="source_entity"
  1274. target="target_entity"
  1275. type="Type"
  1276. />
  1277.  
  1278. <teleport // Teleports the source to the target
  1279. source="source_entity"
  1280. target="target_entity"
  1281. interpolate="false" // Interpolates between the two points to try to make it "smoother"
  1282. facetarget="false" // Faces the source towards the target when moved
  1283. specifyangle="false" // Can specify the angle of the source at the end of the teleport. used with angle
  1284. angle="0"
  1285. positionorigin="source_entity"
  1286. positionvalue=""
  1287. positionmodifier=""
  1288. />
  1289.  
  1290. <testactivate // If the target is within X distance of the source, passes true
  1291. source="source_entity"
  1292. target="target_entity"
  1293. distance="0"   // Can't be variable
  1294. />
  1295.  
  1296. <testnearby // Used mainly in the <onthink /> of NPCs to make them check for conditions. Returns a number based on the valid targets in range that met the conditions of the test
  1297. radius="0"   // Can't be variable
  1298. targetscheme="TargetScheme"
  1299. ignoreinvulnerable="false"  // Should this test ignore invulnerablity of entities?
  1300. origin="source_entity"
  1301. />
  1302. result: number of possible targets
  1303.  
  1304. <toggleoff // Toggles off the named ability when used
  1305. name="Name"
  1306. />
  1307.  
  1308. <transferitemstohero /> // Used only by couriers at the moment, runs the source (courier) to the target (user of the ability) and tranfers the items the hero owns to him.
  1309.  
  1310. <transferstate // Steals the state named under entity from the target and applies it to the source (does not require allowtransfer="true")
  1311. source="source_entity"
  1312. target="target_entity"
  1313. entity="this_entity"
  1314. />
  1315.  
  1316. <transferstates // Steals all states which have allowtransfer="true" from the target and applies it to the source
  1317. source="source_entity"
  1318. target="target_entity"
  1319. effecttype="EffectType"   // StatusBuff, StatusDebuff, StatusDisable
  1320. inflictor=""               // Possible change of inflictor of states
  1321. />
  1322.  
  1323. <unbind // Unbinds the target from anything he is bound to
  1324. target="target_entity"
  1325. />
  1326.  
  1327. <useability // Causes the source to use the ability in slot on the target. Can force this for a duration and restrict it's usage as well. Can be used with an order.entity
  1328. source="source_entity"
  1329. target="target_entity"
  1330. slot="-1"
  1331. queue="front"
  1332. force="false"
  1333. forceduration="0"
  1334. restrict="false"
  1335. ordername=""
  1336. value0="" // Unused
  1337. block="" // Unused
  1338. />
  1339.  
  1340. <useitem // Causes the source to use the item on the target. Can force this for a duration and restrict it's usage as well. Can be used with an order.entity
  1341. source="source_entity"
  1342. target="target_entity"
  1343. queue="front"
  1344. force="false"
  1345. forceduration="0"
  1346. restrict="false"
  1347. ordername=""
  1348. value0="" // Unused
  1349. block="" // Unused
  1350. />
clone this paste RAW Paste Data