Difference between revisions of "Dota 2 Workshop Tools/Scripting/API"

From Valve Developer Community
Jump to: navigation, search
(CDOTAGamerules)
m (Global)
 
(208 intermediate revisions by 40 users not shown)
Line 1: Line 1:
{{Note | This page is automatically generated. Any changes may be overwritten}}
+
{{otherlang2
 +
|zh-cn=Dota 2 Workshop Tools/Scripting/API:zh-cn
 +
|ru=Dota 2 Workshop Tools/Scripting/API:ru
 +
}}{{Note | This page is automatically generated. Changes can be submitted on Jochnickels github page: https://github.com/Jochnickel/dota_wiki_dumper}}
 
    
 
    
 
==='''Accessing the DOTA 2 Scripting API from Lua===
 
==='''Accessing the DOTA 2 Scripting API from Lua===
Line 5: Line 8:
 
While Lua is [http://en.wikipedia.org/wiki/Dynamically_typed dynamically typed], the DOTA 2 engine is written primarily in C++, which is [http://en.wikipedia.org/wiki/Type_system#Static_type-checking statically typed]. Thus, you'll need to be conscious of your data types when calling the API. (If you try to pass the wrong type to an API function, you'll get an error message in Vconsole telling you what you passed and what it was expecting.)
 
While Lua is [http://en.wikipedia.org/wiki/Dynamically_typed dynamically typed], the DOTA 2 engine is written primarily in C++, which is [http://en.wikipedia.org/wiki/Type_system#Static_type-checking statically typed]. Thus, you'll need to be conscious of your data types when calling the API. (If you try to pass the wrong type to an API function, you'll get an error message in Vconsole telling you what you passed and what it was expecting.)
 
__TOC__
 
__TOC__
=== Global ===
+
 
''Global functions. These can be called without any class''
+
=== Functions ===
 +
 
 +
==== Global ====
 +
''Global functions. These can be called without any class.''
 
{| class="standard-table" style="width: 100%;"
 
{| class="standard-table" style="width: 100%;"
 
! Function  
 
! Function  
Line 12: Line 18:
 
! Description  
 
! Description  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.AngleDiff | AngleDiff]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.AddFOWViewer | AddFOWViewer]]  
| <code>float AngleDiff(float ang1, float ang2) </code>
+
| <code>void AddFOWViewer(int int_1, Vector Vector_2, float float_3, float float_4, bool bool_5)</code>
| Returns the number of degrees difference between two yaw angles
+
| Add temporary vision for a given team ( nTeamID, vLocation, flRadius, flDuration, bObstructedVision)
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.AppendToLogFile | AppendToLogFile]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.AngleDiff | AngleDiff]]  
| <code>void AppendToLogFile(string a, string b) </code>
+
| <code>float AngleDiff(float float_1, float float_2)</code>
| Appends a ''string'' to a log file on the server
+
| Returns the number of degrees difference between two yaw angles
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.ApplyDamage | ApplyDamage]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.AppendToLogFile | AppendToLogFile]]  
| <code>float ApplyDamage(handle DamageTable) </code>
+
| <code>void AppendToLogFile(string string_1, string string_2)</code>
| Pass ''table'' - Inputs: victim, attacker, damage, damage_type, damage_flags, abilityReturn damage done.
+
| AppendToLogFile is deprecated. Print to the console for logging instead.  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.AxisAngleToQuaternion | AxisAngleToQuaternion]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.ApplyDamage | ApplyDamage]]  
| <code>Quaternion AxisAngleToQuaternion(Vector a, float b) </code>
+
| <code>float ApplyDamage(handle handle_1)</code>
| (''vector'',''float'') constructs a quaternion representing a rotation by angle around the specified ''vector'' axis
+
| ApplyDamage({victim = {}, attacker = {}, damage = 0, damage_type = DAMAGE_TYPE_MAGICAL, damage_flags = DOTA_DAMAGE_FLAG_IGNORES_MAGIC_ARMOR, ability = {}})
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.CancelEntityIOEvents | CancelEntityIOEvents]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.AxisAngleToQuaternion | AxisAngleToQuaternion]]  
| <code>void CancelEntityIOEvents(ehandle a) </code>
+
| <code>Quaternion AxisAngleToQuaternion(Vector Vector_1, float float_2)</code>
| Create all I/O events for a particular entity
+
| (vector,float) constructs a quaternion representing a rotation by angle around the specified vector axis
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.CreateEffect | CreateEffect]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.CalcClosestPointOnEntityOBB | CalcClosestPointOnEntityOBB]]  
| <code>bool CreateEffect(handle a) </code>
+
| <code>Vector CalcClosestPointOnEntityOBB(handle handle_1, Vector Vector_2)</code>
| Pass ''table'' - Inputs: entity, effect
+
| Compute the closest point on the OBB of an entity.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.CreateHeroForPlayer | CreateHeroForPlayer]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.CalcDistanceBetweenEntityOBB | CalcDistanceBetweenEntityOBB]]  
| <code>handle CreateHeroForPlayer(string a, handle b) </code>
+
| <code>float CalcDistanceBetweenEntityOBB(handle handle_1, handle handle_2)</code>
| Creates a DOTA hero by its dota_npc_units.txt name and sets it as the given player's controlled hero
+
| Compute the distance between two entity OBB. A negative return value indicates an input error. A return value of zero indicates that the OBBs are overlapping.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.CreateItem | CreateItem]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.CalcDistanceToLineSegment2D | CalcDistanceToLineSegment2D]]  
| <code>handle CreateItem(string item_name, handle owner, handle owner) </code>
+
| <code>float CalcDistanceToLineSegment2D(Vector Vector_1, Vector Vector_2, Vector Vector_3)</code>
| Creates an item with classname <i>item_name</i> that <i>owner</i> can use.
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.CreateItemOnPositionSync | CreateItemOnPositionSync]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.CancelEntityIOEvents | CancelEntityIOEvents]]  
| <code>handle CreateItemOnPositionSync(Vector a, handle b) </code>
+
| <code>void CancelEntityIOEvents(ehandle ehandle_1)</code>
| Create a physical item at a given location
+
| Create all I/O events for a particular entity
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.CreateTrigger | CreateTrigger]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.ClearTeamCustomHealthbarColor | ClearTeamCustomHealthbarColor]]  
| <code>handle CreateTrigger(Vector a, Vector b, Vector c) </code>
+
| <code>void ClearTeamCustomHealthbarColor(int int_1)</code>
| CreateTrigger( vecMin, vecMax ) : Creates and returns an AABB trigger
+
| ( teamNumber )  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.CreateTriggerRadiusApproximate | CreateTriggerRadiusApproximate]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.CreateDamageInfo | CreateDamageInfo]]  
| <code>handle CreateTriggerRadiusApproximate(Vector a, float b) </code>
+
| <code>handle CreateDamageInfo(handle handle_1, handle handle_2, Vector Vector_3, Vector Vector_4, float float_5, int int_6)</code>
| CreateTriggerRadiusApproximate( vecOrigin, flRadius ) : Creates and returns an AABB trigger thats bigger than the radius provided
+
| (hInflictor, hAttacker, flDamage) - Allocate a damageinfo object, used as an argument to TakeDamage(). Call DestroyDamageInfo( hInfo ) to free the object.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.CreateUnitByName | CreateUnitByName]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.CreateEffect | CreateEffect]]  
| <code>handle CreateUnitByName(string a, Vector b, bool c, handle d, handle e, int f) </code>
+
| <code>bool CreateEffect(handle handle_1)</code>
| Creates a DOTA unit by its dota_npc_units.txt name ( szUnitName, vLocation, bFindClearSpace, hNPCOwner, hUnitOwner, iTeamNumber )
+
| Pass table - Inputs: entity, effect
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.CreateUnitByNameAsync | CreateUnitByNameAsync]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.CreateHTTPRequest | CreateHTTPRequest]]  
| <code>int CreateUnitByNameAsync(string a, Vector b, bool c, handle d, handle e, int f, handle g) </code>
+
| <code>handle CreateHTTPRequest(string string_1, string string_2)</code>
| Creates a DOTA unit by its dota_npc_units.txt name ( szUnitName, vLocation, bFindClearSpace, hNPCOwner, hUnitOwner, iTeamNumber, hCallback )
+
| Create an HTTP request.  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.cvar_getf | cvar_getf]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.CreateHTTPRequestScriptVM | CreateHTTPRequestScriptVM]]  
| <code>float cvar_getf(string a) </code>
+
| <code>handle CreateHTTPRequestScriptVM(string string_1, string string_2)</code>
| Gets the value of the given cvar, as a ''float''.
+
| Create an HTTP request.  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.cvar_setf | cvar_setf]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.CreateHeroForPlayer | CreateHeroForPlayer]]  
| <code>bool cvar_setf(string a, float b) </code>
+
| <code>handle CreateHeroForPlayer(string string_1, handle handle_2)</code>
| Sets the value of the given cvar, as a ''float''.
+
| Creates a DOTA hero by its dota_npc_units.txt name and sets it as the given player's controlled hero
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.DebugBreak | DebugBreak]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.CreateIllusions | CreateIllusions]]  
| <code>void DebugBreak() </code>
+
| <code>table CreateIllusions(handle handle_1, handle handle_2, handle handle_3, int int_4, int int_5, bool bool_6, bool bool_7)</code>
| Breaks in the debugger
+
| Create illusions of the passed hero that belong to passed unit using passed modifier data. ( hOwner, hHeroToCopy, hModiiferKeys, nNumIllusions, nPadding, bScramblePosition, bFindClearSpace )
 +
Supported keys:
 +
outgoing_damage
 +
incoming_damage
 +
bounty_base
 +
bounty_growth
 +
outgoing_damage_structure
 +
outgoing_damage_roshan
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.DebugDrawBox | DebugDrawBox]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.CreateItem | CreateItem]]  
| <code>void DebugDrawBox(Vector a, Vector b, Vector c, int d, int e, int f, int g, float h) </code>
+
| <code>handle CreateItem(string string_1, handle handle_2, handle handle_3)</code>
| Draw a debug overlay box (origin, mins, maxs, forward, r, g, b, a, duration )
+
| Create a DOTA item
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.DebugDrawBoxDirection | DebugDrawBoxDirection]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.CreateItemOnPositionForLaunch | CreateItemOnPositionForLaunch]]  
| <code>void DebugDrawBoxDirection(Vector a, Vector b, Vector c, Vector d, Vector e, float f, float g) </code>
+
| <code>handle CreateItemOnPositionForLaunch(Vector Vector_1, handle handle_2)</code>
| Draw a debug forward box (cent, min, max, forward, vRgb, a, duration)
+
| Create a physical item at a given location, can start in air (but doesn't clear a space)  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.DebugDrawCircle | DebugDrawCircle]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.CreateItemOnPositionSync | CreateItemOnPositionSync]]  
| <code>void DebugDrawCircle(Vector a, Vector b, float c, float d, bool e, float f) </code>
+
| <code>handle CreateItemOnPositionSync(Vector Vector_1, handle handle_2)</code>
| Draw a debug circle (center, vRgb, a, rad, ztest, duration)
+
| Create a physical item at a given location
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.DebugDrawClear | DebugDrawClear]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.CreateModifierThinker | CreateModifierThinker]]  
| <code>void DebugDrawClear() </code>
+
| <code>handle CreateModifierThinker(handle handle_1, handle handle_2, string string_3, handle handle_4, Vector Vector_5, int int_6, bool bool_7)</code>
| Try to clear all the debug overlay info
+
| Create a modifier not associated with an NPC. ( hCaster, hAbility, modifierName, paramTable, vOrigin, nTeamNumber, bPhantomBlocker )
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.DebugDrawLine | DebugDrawLine]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.CreateSceneEntity | CreateSceneEntity]]  
| <code>void DebugDrawLine(Vector a, Vector b, int c, int d, int e, bool f, float g) </code>
+
| <code>handle CreateSceneEntity(string string_1)</code>
| Draw a debug overlay line (origin, target, r, g, b, ztest, duration)
+
| Create a scene entity to play the specified scene.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.DebugDrawLine_vCol | DebugDrawLine_vCol]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.CreateTempTree | CreateTempTree]]  
| <code>void DebugDrawLine_vCol(Vector a, Vector b, Vector c, bool d, float e) </code>
+
| <code>handle CreateTempTree(Vector Vector_1, float float_2)</code>
| Draw a debug line using color vec (start, end, vRgb, a, ztest, duration)
+
| Create a temporary tree, uses a default tree model. (vLocation, flDuration).
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.DebugDrawScreenTextLine | DebugDrawScreenTextLine]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.CreateTempTreeWithModel | CreateTempTreeWithModel]]  
| <code>void DebugDrawScreenTextLine(float a, float b, int c, string d, int e, int f, int g, int h, float i) </code>
+
| <code>handle CreateTempTreeWithModel(Vector Vector_1, float float_2, string string_3)</code>
| Draw text with a line offset (x, y, lineOffset, text, r, g, b, a, duration)
+
| Create a temporary tree, specifying the tree model name. (vLocation, flDuration, szModelName).
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.DebugDrawSphere | DebugDrawSphere]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.CreateTrigger | CreateTrigger]]  
| <code>void DebugDrawSphere(Vector a, Vector b, float c, float d, bool e, float f) </code>
+
| <code>handle CreateTrigger(Vector Vector_1, Vector Vector_2, Vector Vector_3)</code>
| Draw a debug sphere (center, vRgb, a, rad, ztest, duration)
+
| CreateTrigger( vecMin, vecMax ) : Creates and returns an AABB trigger
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.DebugDrawText | DebugDrawText]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.CreateTriggerRadiusApproximate | CreateTriggerRadiusApproximate]]  
| <code>void DebugDrawText(Vector a, string b, bool c, float d) </code>
+
| <code>handle CreateTriggerRadiusApproximate(Vector Vector_1, float float_2)</code>
| Draw text in 3d (origin, text, bViewCheck, duration)
+
| CreateTriggerRadiusApproximate( vecOrigin, flRadius ) : Creates and returns an AABB trigger thats bigger than the radius provided
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.DebugScreenTextPretty | DebugScreenTextPretty]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.CreateUnitByName | CreateUnitByName]]  
| <code>void DebugScreenTextPretty(float a, float b, int c, string d, int e, int f, int g, int h, float i, string j, int k, bool l) </code>
+
| <code>handle CreateUnitByName(string string_1, Vector Vector_2, bool bool_3, handle handle_4, handle handle_5, int int_6)</code>
| Draw pretty debug text (x, y, lineOffset, text, r, g, b, a, duration, font, size, bBold)
+
| Creates a DOTA unit by its dota_npc_units.txt name
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.DoEntFire | DoEntFire]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.CreateUnitByNameAsync | CreateUnitByNameAsync]]  
| <code>void DoEntFire(string a, string b, string c, float d, handle e, handle f) </code>
+
| <code>int CreateUnitByNameAsync(string string_1, Vector Vector_2, bool bool_3, handle handle_4, handle handle_5, int int_6, handle handle_7)</code>
| EntFire: Generate an entity i/o event ( szTarget, szAction, szValue, flDelay, hActivator, hCaller )
+
| Creates a DOTA unit by its dota_npc_units.txt name
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.DoEntFireByInstanceHandle | DoEntFireByInstanceHandle]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.CreateUnitFromTable | CreateUnitFromTable]]  
| <code>void DoEntFireByInstanceHandle(handle a, string b, string c, float d, handle e, handle f) </code>
+
| <code>handle CreateUnitFromTable(handle handle_1, Vector Vector_2)</code>
| EntFireByHandle:Generate and entity i/o event
+
| Creates a DOTA unit by its dota_npc_units.txt name from a table of entity key values and a position to spawn at.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.DoIncludeScript | DoIncludeScript]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.CrossVectors | CrossVectors]]  
| <code>bool DoIncludeScript(string a, handle b) </code>
+
| <code>Vector CrossVectors(Vector Vector_1, Vector Vector_2)</code>
| Execute a script (internal)
+
| (vector,vector) cross product between two vectors
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.DoScriptAssert | DoScriptAssert]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.DebugBreak | DebugBreak]]  
| <code>void DoScriptAssert(bool a, string b) </code>
+
| <code>void DebugBreak()</code>
| ScriptAssert:Asserts the passed in value. Prints out a message and brings up the assert dialog.
+
| Breaks in the debugger
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.DoUniqueString | DoUniqueString]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.DebugDrawBox | DebugDrawBox]]  
| <code>string DoUniqueString(string a) </code>
+
| <code>void DebugDrawBox(Vector Vector_1, Vector Vector_2, Vector Vector_3, int int_4, int int_5, int int_6, int int_7, float float_8)</code>
| UniqueString:Generate a string guaranteed to be unique across the life of the script VM, with an optional root string. Useful for adding data to table's when not sure what keys are already in use in that table.
+
| Draw a debug overlay box (origin, mins, maxs, forward, r, g, b, a, duration )
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.EmitGlobalSound | EmitGlobalSound]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.DebugDrawBoxDirection | DebugDrawBoxDirection]]  
| <code>void EmitGlobalSound(string a) </code>
+
| <code>void DebugDrawBoxDirection(Vector Vector_1, Vector Vector_2, Vector Vector_3, Vector Vector_4, Vector Vector_5, float float_6, float float_7)</code>
| Play named sound for all players
+
| Draw a debug forward box (cent, min, max, forward, vRgb, a, duration)
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.EmitSoundOn | EmitSoundOn]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.DebugDrawCircle | DebugDrawCircle]]  
| <code>void EmitSoundOn(string a, handle b) </code>
+
| <code>void DebugDrawCircle(Vector Vector_1, Vector Vector_2, float float_3, float float_4, bool bool_5, float float_6)</code>
| Play named sound on Entity
+
| Draw a debug circle (center, vRgb, a, rad, ztest, duration)
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.EmitSoundOnClient | EmitSoundOnClient]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.DebugDrawClear | DebugDrawClear]]  
| <code>void EmitSoundOnClient(string a, handle b) </code>
+
| <code>void DebugDrawClear()</code>
| Play named sound only on the client for the passed in player
+
| Try to clear all the debug overlay info
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.EntIndexToHScript | EntIndexToHScript]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.DebugDrawLine | DebugDrawLine]]  
| <code>handle EntIndexToHScript(int a) </code>
+
| <code>void DebugDrawLine(Vector Vector_1, Vector Vector_2, int int_3, int int_4, int int_5, bool bool_6, float float_7)</code>
| Turn an entity index integer to an HScript representing that entity's script instance.
+
| Draw a debug overlay line (origin, target, r, g, b, ztest, duration)
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.ExecuteOrderFromTable | ExecuteOrderFromTable]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.DebugDrawLine_vCol | DebugDrawLine_vCol]]  
| <code>void ExecuteOrderFromTable(handle a) </code>
+
| <code>void DebugDrawLine_vCol(Vector Vector_1, Vector Vector_2, Vector Vector_3, bool bool_4, float float_5)</code>
| Issue an order from a script table
+
| Draw a debug line using color vec (start, end, vRgb, a, ztest, duration)
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.ExponentialDecay | ExponentialDecay]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.DebugDrawScreenTextLine | DebugDrawScreenTextLine]]  
| <code>float ExponentialDecay(float a, float b, float c) </code>
+
| <code>void DebugDrawScreenTextLine(float float_1, float float_2, int int_3, string string_4, int int_5, int int_6, int int_7, int int_8, float float_9)</code>
| Smooth curve decreasing slower as it approaches zero
+
| Draw text with a line offset (x, y, lineOffset, text, r, g, b, a, duration)
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.FileToString | FileToString]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.DebugDrawSphere | DebugDrawSphere]]  
| <code>string FileToString(string a) </code>
+
| <code>void DebugDrawSphere(Vector Vector_1, Vector Vector_2, float float_3, float float_4, bool bool_5, float float_6)</code>
| Reads a string from a file to send to script
+
| Draw a debug sphere (center, vRgb, a, rad, ztest, duration)
 
+
|-
* Directory traversal doesn't seem to work. The characters '.', '/' and '\\' are ignored.
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.DebugDrawText | DebugDrawText]]
* The files are read from C:\Program Files (x86)\Steam\steamapps\common\dota 2 beta\dota_ugc\game\dota\ems
+
| <code>void DebugDrawText(Vector Vector_1, string string_2, bool bool_3, float float_4)</code>
* The function is used in conjunction with [[Dota_2_Workshop_Tools/Scripting/API/Global.StringToFile|StringToFile]]
+
| Draw text in 3d (origin, text, bViewCheck, duration)
 
+
|-
 +
| [[Dota 2 Workshop Tools/Scripting/API/Global.DebugScreenTextPretty | DebugScreenTextPretty]]
 +
| <code>void DebugScreenTextPretty(float float_1, float float_2, int int_3, string string_4, int int_5, int int_6, int int_7, int int_8, float float_9, string string_10, int int_11, bool bool_12)</code>
 +
| Draw pretty debug text (x, y, lineOffset, text, r, g, b, a, duration, font, size, bBold)
 +
|-
 +
| [[Dota 2 Workshop Tools/Scripting/API/Global.DestroyDamageInfo | DestroyDamageInfo]]
 +
| <code>void DestroyDamageInfo(handle handle_1)</code>
 +
| Free a damageinfo object that was created with CreateDamageInfo().
 +
|-
 +
| [[Dota 2 Workshop Tools/Scripting/API/Global.DoCleaveAttack | DoCleaveAttack]]  
 +
| <code>int DoCleaveAttack(handle handle_1, handle handle_2, handle handle_3, float float_4, float float_5, float float_6, float float_7, string string_8)</code>
 +
| (hAttacker, hTarget, hAbility, fDamage, fRadius, effectName)
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.FindClearSpaceForUnit | FindClearSpaceForUnit]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.DoEntFire | DoEntFire]]  
| <code>void FindClearSpaceForUnit(handle a, Vector b, bool c) </code>
+
| <code>void DoEntFire(string string_1, string string_2, string string_3, float float_4, handle handle_5, handle handle_6)</code>
| Place a unit somewhere not already occupied.
+
| #EntFire:Generate and entity i/o event
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.FindUnitsInRadius | FindUnitsInRadius]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.DoEntFireByInstanceHandle | DoEntFireByInstanceHandle]]  
| <code>table FindUnitsInRadius(int a, Vector b, handle c, float d, int e, int f, int g, int h, bool i) </code>
+
| <code>void DoEntFireByInstanceHandle(handle handle_1, string string_2, string string_3, float float_4, handle handle_5, handle handle_6)</code>
| Finds the units in a given radius with the given flags. ( iTeamNumber, vPosition, hCacheUnit, flRadius, iTeamFilter, iTypeFilter, iFlagFilter, iOrder, bCanGrowCache )
+
| #EntFireByHandle:Generate and entity i/o event
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.FireEntityIOInputNameOnly | FireEntityIOInputNameOnly]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.DoIncludeScript | DoIncludeScript]]  
| <code>void FireEntityIOInputNameOnly(ehandle a, string b) </code>
+
| <code>bool DoIncludeScript(string string_1, handle handle_2)</code>
| Fire Entity's Action Input w/no data
+
| Execute a script (internal)
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.FireEntityIOInputString | FireEntityIOInputString]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.DoScriptAssert | DoScriptAssert]]  
| <code>void FireEntityIOInputString(ehandle a, string b, string c) </code>
+
| <code>void DoScriptAssert(bool bool_1, string string_2)</code>
| Fire Entity's Action Input with passed String - you own the memory
+
| #ScriptAssert:Asserts the passed in value. Prints out a message and brings up the assert dialog.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.FireEntityIOInputVec | FireEntityIOInputVec]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.DoUniqueString | DoUniqueString]]  
| <code>void FireEntityIOInputVec(ehandle a, string b, Vector c) </code>
+
| <code>string DoUniqueString(string string_1)</code>
| Fire Entity's Action Input with passed ''Vector'' ( hEntity, szActionName, vector )
+
| #UniqueString:Generate a string guaranteed to be unique across the life of the script VM, with an optional root string. Useful for adding data to tables when not sure what keys are already in use in that table.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.FireGameEvent | FireGameEvent]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.DotProduct | DotProduct]]  
| <code>void FireGameEvent(string eventName, handle parameterTable) </code>
+
| <code>float DotProduct(Vector Vector_1, Vector Vector_2)</code>
| Fire a pre-defined event, which can be found either in custom_events.txt or in dota's resource/*.res
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.FireGameEventLocal | FireGameEventLocal]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.EmitAnnouncerSound | EmitAnnouncerSound]]  
| <code>void FireGameEventLocal(string a, handle b) </code>
+
| <code>void EmitAnnouncerSound(string string_1)</code>
| Fire a game event without broadcasting to the client.
+
| Emit an announcer sound for all players.  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.FrameTime | FrameTime]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.EmitAnnouncerSoundForPlayer | EmitAnnouncerSoundForPlayer]]  
| <code>float FrameTime() </code>
+
| <code>void EmitAnnouncerSoundForPlayer(string string_1, int int_2)</code>
| Get the time spent on the server in the last frame
+
| Emit an announcer sound for a player.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.GetFrameCount | GetFrameCount]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.EmitAnnouncerSoundForTeam | EmitAnnouncerSoundForTeam]]  
| <code>int GetFrameCount() </code>
+
| <code>void EmitAnnouncerSoundForTeam(string string_1, int int_2)</code>
| Returns the engines current frame count
+
| Emit an announcer sound for a team.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.GetFrostyBoostAmount | GetFrostyBoostAmount]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.EmitAnnouncerSoundForTeamOnLocation | EmitAnnouncerSoundForTeamOnLocation]]  
| <code>float GetFrostyBoostAmount(int a, int b) </code>
+
| <code>void EmitAnnouncerSoundForTeamOnLocation(string string_1, int int_2, Vector Vector_3)</code>
| No Description Set
+
| Emit an announcer sound for a team at a specific location.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.GetFrostyPointsForRound | GetFrostyPointsForRound]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.EmitGlobalSound | EmitGlobalSound]]  
| <code>int GetFrostyPointsForRound(int a, int b, int c) </code>
+
| <code>void EmitGlobalSound(string string_1)</code>
| No Description Set
+
| Play named sound for all players
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.GetGoldFrostyBoostAmount | GetGoldFrostyBoostAmount]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.EmitSoundOn | EmitSoundOn]]  
| <code>float GetGoldFrostyBoostAmount(int a, int b) </code>
+
| <code>void EmitSoundOn(string string_1, handle handle_2)</code>
| No Description Set
+
| Play named sound on Entity
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.GetGoldFrostyPointsForRound | GetGoldFrostyPointsForRound]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.EmitSoundOnClient | EmitSoundOnClient]]  
| <code>int GetGoldFrostyPointsForRound(int a, int b, int c) </code>
+
| <code>void EmitSoundOnClient(string string_1, handle handle_2)</code>
| No Description Set
+
| Play named sound only on the client for the passed in player
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.GetGroundPosition | GetGroundPosition]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.EmitSoundOnLocationForAllies | EmitSoundOnLocationForAllies]]  
| <code>Vector GetGroundPosition(Vector a, handle b) </code>
+
| <code>void EmitSoundOnLocationForAllies(Vector Vector_1, string string_2, handle handle_3)</code>
| Returns the supplied position moved to the ground. Second parameter is an NPC for measuring movement collision hull offset.
+
| Emit a sound on a location from a unit, only for players allied with that unit (vLocation, soundName, hCaster
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.GetListenServerHost | GetListenServerHost]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.EmitSoundOnLocationWithCaster | EmitSoundOnLocationWithCaster]]  
| <code>handle GetListenServerHost() </code>
+
| <code>void EmitSoundOnLocationWithCaster(Vector Vector_1, string string_2, handle handle_3)</code>
| Get the local player on a listen server.
+
| Emit a sound on a location from a unit. (vLocation, soundName, hCaster).  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.GetMapName | GetMapName]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.EntIndexToHScript | EntIndexToHScript]]  
| <code>string GetMapName() </code>
+
| <code>handle EntIndexToHScript(int int_1)</code>
| Get the name of the map.
+
| Turn an entity index integer to an HScript representing that entity's script instance.  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.GetMaxOutputDelay | GetMaxOutputDelay]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.ExecuteOrderFromTable | ExecuteOrderFromTable]]  
| <code>float GetMaxOutputDelay(ehandle a, string b) </code>
+
| <code>void ExecuteOrderFromTable(handle handle_1)</code>
| Get the longest delay for all events attached to an output
+
| Issue an order from a script table
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.GetPhysAngularVelocity | GetPhysAngularVelocity]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.ExponentialDecay | ExponentialDecay]]  
| <code>Vector GetPhysAngularVelocity(handle a) </code>
+
| <code>float ExponentialDecay(float float_1, float float_2, float float_3)</code>
| Get Angular Velocity for VPHYS or normal object
+
| Smooth curve decreasing slower as it approaches zero
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.GetPhysVelocity | GetPhysVelocity]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.FindClearRandomPositionAroundUnit | FindClearRandomPositionAroundUnit]]  
| <code>Vector GetPhysVelocity(handle a) </code>
+
| <code>bool FindClearRandomPositionAroundUnit(handle handle_1, handle handle_2, int int_3)</code>
| Get Velocity for VPHYS or normal object
+
| Finds a clear random position around a given target unit, using the target unit's padded collision radius.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.GetSystemDate | GetSystemDate]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.FindClearSpaceForUnit | FindClearSpaceForUnit]]  
| <code>string GetSystemDate() </code>
+
| <code>bool FindClearSpaceForUnit(handle handle_1, Vector Vector_2, bool bool_3)</code>
| Get the current real world date
+
| Place a unit somewhere not already occupied.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.GetSystemTime | GetSystemTime]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.FindUnitsInLine | FindUnitsInLine]]  
| <code>string GetSystemTime() </code>
+
| <code>table FindUnitsInLine(int int_1, Vector Vector_2, Vector Vector_3, handle handle_4, float float_5, int int_6, int int_7, int int_8)</code>
| Get the current real world time
+
| Find units that intersect the given line with the given flags.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.GetWorldMaxX | GetWorldMaxX]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.FindUnitsInRadius | FindUnitsInRadius]]  
| <code>float GetWorldMaxX() </code>
+
| <code>table FindUnitsInRadius(int int_1, Vector Vector_2, handle handle_3, float float_4, int int_5, int int_6, int int_7, int int_8, bool bool_9)</code>
| Gets the world's maximum X position.
+
| Finds the units in a given radius with the given flags.  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.GetWorldMaxY | GetWorldMaxY]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.FireEntityIOInputNameOnly | FireEntityIOInputNameOnly]]  
| <code>float GetWorldMaxY() </code>
+
| <code>void FireEntityIOInputNameOnly(ehandle ehandle_1, string string_2)</code>
| Gets the world's maximum Y position.
+
| Fire Entity's Action Input w/no data
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.GetWorldMinX | GetWorldMinX]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.FireEntityIOInputString | FireEntityIOInputString]]  
| <code>float GetWorldMinX() </code>
+
| <code>void FireEntityIOInputString(ehandle ehandle_1, string string_2, string string_3)</code>
| Gets the world's minimum X position.
+
| Fire Entity's Action Input with passed String - you own the memory
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.GetWorldMinY | GetWorldMinY]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.FireEntityIOInputVec | FireEntityIOInputVec]]  
| <code>float GetWorldMinY() </code>
+
| <code>void FireEntityIOInputVec(ehandle ehandle_1, string string_2, Vector Vector_3)</code>
| Gets the world's minimum Y position.
+
| Fire Entity's Action Input with passed Vector - you own the memory
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.InitLogFile | InitLogFile]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.FireGameEvent | FireGameEvent]]  
| <code>void InitLogFile(string a, string b) </code>
+
| <code>void FireGameEvent(string string_1, handle handle_2)</code>
| If the given file doesn't exist, creates it with the given contents; does nothing if it exists
+
| Fire a game event.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.IsDedicatedServer | IsDedicatedServer]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.FireGameEventLocal | FireGameEventLocal]]  
| <code>bool IsDedicatedServer() </code>
+
| <code>void FireGameEventLocal(string string_1, handle handle_2)</code>
| Returns true if this server is a dedicated server.
+
| Fire a game event without broadcasting to the client.  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.IsMarkedForDeletion | IsMarkedForDeletion]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.FrameTime | FrameTime]]  
| <code>bool IsMarkedForDeletion(handle a) </code>
+
| <code>float FrameTime()</code>
| Returns true if the entity is valid and marked for deletion.
+
| Get the time spent on the server in the last frame
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.IsValidEntity | IsValidEntity]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.GetDedicatedServerKey | GetDedicatedServerKey]]  
| <code>bool IsValidEntity(handle a) </code>
+
| <code>string GetDedicatedServerKey(string string_1)</code>
| Checks to see if the given hScript is a valid entity
+
| ( version )
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.ListenToGameEvent | ListenToGameEvent]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.GetDedicatedServerKeyV2 | GetDedicatedServerKeyV2]]  
| <code>int ListenToGameEvent(string EventName, handle functionNameToCall, handle context) </code>
+
| <code>string GetDedicatedServerKeyV2(string string_1)</code>
| Register as a listener for a game event from script.
+
| used in https://github.com/dota2unofficial/12v12/blob/master/game/scripts/vscripts/common/webapi.lua
 
 
{{tip|In addition to listening for [[Dota 2 Workshop Tools/Scripting/Built-In Engine Events|standard engine events]], you can also create your own events by placing them in /scripts/custom_events.txt.}}
 
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.LoadKeyValues | LoadKeyValues]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.GetEntityIndexForTreeId | GetEntityIndexForTreeId]]  
| <code>table LoadKeyValues(string a) </code>
+
| <code><unknown> GetEntityIndexForTreeId(unsigned unsigned_1)</code>
| Creates a ''table'' from the specified keyvalues text file
+
| Get the enity index for a tree id specified as the entindex_target of a DOTA_UNIT_ORDER_CAST_TARGET_TREE.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.LoadKeyValuesFromString | LoadKeyValuesFromString]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.GetFrameCount | GetFrameCount]]  
| <code>table LoadKeyValuesFromString(string a) </code>
+
| <code>int GetFrameCount()</code>
| Creates a ''table'' from the specified keyvalues ''string''
+
| Returns the engines current frame count
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.MakeStringToken | MakeStringToken]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.GetGroundHeight | GetGroundHeight]]  
| <code>int MakeStringToken(string a) </code>
+
| <code>float GetGroundHeight(Vector Vector_1, handle handle_2)</code>
| Checks to see if the given hScript is a valid entity
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.Msg | Msg]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.GetGroundPosition | GetGroundPosition]]  
| <code>void Msg(string a) </code>
+
| <code>Vector GetGroundPosition(Vector Vector_1, handle handle_2)</code>
| Print a message
+
| Returns the supplied position moved to the ground. Second parameter is an NPC for measuring movement collision hull offset.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.PauseGame | PauseGame]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.GetItemCost | GetItemCost]]  
| <code>void PauseGame(bool a) </code>
+
| <code>int GetItemCost(string string_1)</code>
| Pause or unpause the game.
+
| Get the cost of an item by name.  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.PlayerInstanceFromIndex | PlayerInstanceFromIndex]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.GetItemDefOwnedCount | GetItemDefOwnedCount]]  
| <code>handle PlayerInstanceFromIndex(int a) </code>
+
| <code>int GetItemDefOwnedCount(int int_1, int int_2)</code>
| Get a script instance of a player by index.
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.PrecacheEntityFromTable | PrecacheEntityFromTable]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.GetItemDefQuantity | GetItemDefQuantity]]  
| <code>void PrecacheEntityFromTable(string a, handle b, handle c) </code>
+
| <code>int GetItemDefQuantity(int int_1, int int_2)</code>
| Precache an entity from KeyValues in ''table''
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.PrecacheEntityListFromTable | PrecacheEntityListFromTable]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.GetListenServerHost | GetListenServerHost]]  
| <code>void PrecacheEntityListFromTable(handle a, handle b) </code>
+
| <code>handle GetListenServerHost()</code>
| Precache a list of entity KeyValues table's
+
| Get the local player on a listen server.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.PrecacheItemByNameAsync | PrecacheItemByNameAsync]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.GetLobbyEventGameDetails | GetLobbyEventGameDetails]]  
| <code>void PrecacheItemByNameAsync(string a, handle b) </code>
+
| <code>table GetLobbyEventGameDetails()</code>
| Asynchronously precaches a DOTA item by its dota_npc_items.txt name, provides a callback when it's finished.
+
| ( )
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.PrecacheItemByNameSync | PrecacheItemByNameSync]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.GetMapName | GetMapName]]  
| <code>void PrecacheItemByNameSync(string a, handle b) </code>
+
| <code>string GetMapName()</code>
| Precaches a DOTA item by its dota_npc_items.txt name
+
| Get the name of the map.  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.PrecacheModel | PrecacheModel]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.GetMaxOutputDelay | GetMaxOutputDelay]]  
| <code>void PrecacheModel(string a, handle b) </code>
+
| <code>float GetMaxOutputDelay(ehandle ehandle_1, string string_2)</code>
| ( modelName, context ) - Manually precache a single model
+
| Get the longest delay for all events attached to an output
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.PrecacheResource | PrecacheResource]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.GetPhysAngularVelocity | GetPhysAngularVelocity]]  
| <code>void PrecacheResource(string a, string b, handle c) </code>
+
| <code>Vector GetPhysAngularVelocity(handle handle_1)</code>
| Manually precache a single resource
+
| Get Angular Velocity for VPHYS or normal object. Returns a vector of the axis of rotation, multiplied by the degrees of rotation per second.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.PrecacheUnitByNameAsync | PrecacheUnitByNameAsync]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.GetPhysVelocity | GetPhysVelocity]]  
| <code>void PrecacheUnitByNameAsync(string a, handle b) </code>
+
| <code>Vector GetPhysVelocity(handle handle_1)</code>
| Asynchronously precaches a DOTA unit by its dota_npc_units.txt name, provides a callback when it's finished.
+
| Get Velocity for VPHYS or normal object
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.PrecacheUnitByNameSync | PrecacheUnitByNameSync]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.GetSystemDate | GetSystemDate]]  
| <code>void PrecacheUnitByNameSync(string a, handle b) </code>
+
| <code>string GetSystemDate()</code>
| Precaches a DOTA unit by its dota_npc_units.txt name
+
| Get the current real world date
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.PrintLinkedConsoleMessage | PrintLinkedConsoleMessage]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.GetSystemTime | GetSystemTime]]  
| <code>void PrintLinkedConsoleMessage(string a, string b) </code>
+
| <code>string GetSystemTime()</code>
| Print a console message with a linked console command
+
| Get the current real world time
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.RandomFloat | RandomFloat]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.GetTargetAOELocation | GetTargetAOELocation]]  
| <code>float RandomFloat(float a, float b) </code>
+
| <code>Vector GetTargetAOELocation(int int_1, int int_2, int int_3, Vector Vector_4, int int_5, int int_6, int int_7)</code>
| Get a random ''float'' within a range
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.RandomInt | RandomInt]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.GetTargetLinearLocation | GetTargetLinearLocation]]  
| <code>int RandomInt(int a, int b) </code>
+
| <code>Vector GetTargetLinearLocation(int int_1, int int_2, int int_3, Vector Vector_4, int int_5, int int_6, int int_7)</code>
| Get a random ''int'' within a range
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.RandomVector | RandomVector]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.GetTeamHeroKills | GetTeamHeroKills]]  
| <code>Vector RandomVector(float a) </code>
+
| <code>int GetTeamHeroKills(int int_1)</code>
| Get a random 2D ''vector''. Argument (''float'') is the minimum length of the returned vector.
+
| ( int teamID )  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.RegisterSpawnGroupFilterProxy | RegisterSpawnGroupFilterProxy]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.GetTeamName | GetTeamName]]  
| <code>void RegisterSpawnGroupFilterProxy(string a) </code>
+
| <code>string GetTeamName(int int_1)</code>
| Create a C proxy for a script-based spawn group filter
+
| ( int teamID )
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.ReloadMOTD | ReloadMOTD]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.GetTreeIdForEntityIndex | GetTreeIdForEntityIndex]]  
| <code>void ReloadMOTD() </code>
+
| <code>int GetTreeIdForEntityIndex(int int_1)</code>
| Reloads the MotD file
+
| Given and entity index of a tree, get the tree id for use for use with with unit orders.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.RemoveSpawnGroupFilterProxy | RemoveSpawnGroupFilterProxy]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.GetWorldMaxX | GetWorldMaxX]]  
| <code>void RemoveSpawnGroupFilterProxy(string a) </code>
+
| <code>float GetWorldMaxX()</code>
| Remove the C proxy for a script-based spawn group filter
+
| Gets the world's maximum X position.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.RollPercentage | RollPercentage]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.GetWorldMaxY | GetWorldMaxY]]  
| <code>bool RollPercentage(int a) </code>
+
| <code>float GetWorldMaxY()</code>
| Rolls a number from 1 to 100 and returns true if the roll is less than or equal to the number specified
+
| Gets the world's maximum Y position.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.RotateOrientation | RotateOrientation]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.GetWorldMinX | GetWorldMinX]]  
| <code>QAngle RotateOrientation(QAngle a, QAngle b) </code>
+
| <code>float GetWorldMinX()</code>
| Rotate a ''QAngle'' by another ''QAngle''.
+
| Gets the world's minimum X position.  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.RotatePosition | RotatePosition]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.GetWorldMinY | GetWorldMinY]]  
| <code>Vector RotatePosition(Vector a, QAngle b, Vector c) </code>
+
| <code>float GetWorldMinY()</code>
| Rotate a ''Vector'' around a point.
+
| Gets the world's minimum Y position.  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.RotateQuaternionByAxisAngle | RotateQuaternionByAxisAngle]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.InitLogFile | InitLogFile]]  
| <code>Quaternion RotateQuaternionByAxisAngle(Quaternion a, Vector b, float c) </code>
+
| <code>void InitLogFile(string string_1, string string_2)</code>
| Rotates a quaternion by the specified angle around the specified ''vector'' axis
+
| InitLogFile is deprecated. Print to the console for logging instead.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.RotationDelta | RotationDelta]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.IsClient | IsClient]]  
| <code>QAngle RotationDelta(QAngle a, QAngle b) </code>
+
| <code>bool IsClient()</code>
| Find the delta between two ''QAngle''s.
+
| Returns true if this is lua running from the client.dll.  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.rr_AddDecisionRule | rr_AddDecisionRule]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.IsDedicatedServer | IsDedicatedServer]]  
| <code>bool rr_AddDecisionRule(handle a) </code>
+
| <code>bool IsDedicatedServer()</code>
| Add a rule to the decision database.
+
| Returns true if this server is a dedicated server.  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.rr_CommitAIResponse | rr_CommitAIResponse]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.IsInToolsMode | IsInToolsMode]]  
| <code>bool rr_CommitAIResponse(handle a, handle b) </code>
+
| <code>bool IsInToolsMode()</code>
| Commit the result of QueryBestResponse back to the given entity to play. Call with params (entity, airesponse)
+
| Returns true if this is lua running within tools mode.  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.rr_GetResponseTargets | rr_GetResponseTargets]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.IsLocationVisible | IsLocationVisible]]  
| <code>handle rr_GetResponseTargets() </code>
+
| <code>bool IsLocationVisible(int int_1, Vector Vector_2)</code>
| Retrieve a ''table'' of all available expresser targets, in the form { name : ''handle'', name: ''handle'' }.
+
| Ask fog of war if a location is visible to a certain team (nTeamNumber, vLocation).  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.rr_QueryBestResponse | rr_QueryBestResponse]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.IsMarkedForDeletion | IsMarkedForDeletion]]  
| <code>bool rr_QueryBestResponse(handle a, handle b, handle c) </code>
+
| <code>bool IsMarkedForDeletion(handle handle_1)</code>
| Params: ( hEnt, hQuery, hResult ) // Static : tests 'query' against entity's response system and returns the best response found (or ''nil'' if none found).
+
| Returns true if the entity is valid and marked for deletion.  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.Say | Say]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.IsServer | IsServer]]  
| <code>void Say(handle entity, string message, bool teamOnly) </code>
+
| <code>bool IsServer()</code>
| Have Entity say ''string'', and teamOnly or not
+
| Returns true if this is lua running from the server.dll.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.ScreenShake | ScreenShake]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.IsValidEntity | IsValidEntity]]  
| <code>void ScreenShake(Vector a, float b, float c, float d, float e, int f, bool g) </code>
+
| <code>bool IsValidEntity(handle handle_1)</code>
| Start a screenshake with the following parameters. vecCenter, flAmplitude, flFrequency, flDuration, flRadius, eCommand( SHAKE_START = 0, SHAKE_STOP = 1 ), bAirShake
+
| Checks to see if the given hScript is a valid entity
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.SendFrostivusTimeElapsedToGC | SendFrostivusTimeElapsedToGC]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.LerpVectors | LerpVectors]]  
| <code>void SendFrostivusTimeElapsedToGC() </code>
+
| <code>Vector LerpVectors(Vector Vector_1, Vector Vector_2, float float_3)</code>
| No Description Set
+
| (vector,vector,float) lerp between two vectors by a float factor returning new vector
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.SendFrostyPointsMessageToGC | SendFrostyPointsMessageToGC]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.LimitPathingSearchDepth | LimitPathingSearchDepth]]  
| <code>void SendFrostyPointsMessageToGC(handle a) </code>
+
| <code>void LimitPathingSearchDepth(float float_1)</code>
| No Description Set
+
| Set the limit on the pathfinding search space.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.SendToConsole | SendToConsole]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.LinkLuaModifier | LinkLuaModifier]]  
| <code>void SendToConsole(string a) </code>
+
| <code>void LinkLuaModifier(string string_1, string string_2, int int_3)</code>
| Send a ''string'' to the console as a client command
+
| Link a lua-defined modifier with the associated class ( className, fileName, LuaModifierType).
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.SendToServerConsole | SendToServerConsole]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.ListenToGameEvent | ListenToGameEvent]]  
| <code>void SendToServerConsole(string a) </code>
+
| <code>int ListenToGameEvent(string string_1, handle handle_2, handle handle_3)</code>
| Send a ''string'' to the console as a server command
+
| Register as a listener for a game event from script.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.SetOpvarFloatAll | SetOpvarFloatAll]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.LoadKeyValues | LoadKeyValues]]  
| <code>void SetOpvarFloatAll(string a, string b, string c, float d) </code>
+
| <code>table LoadKeyValues(string string_1)</code>
| Sets an opvar value for all players
+
| Creates a table from the specified keyvalues text file
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.SetOpvarFloatPlayer | SetOpvarFloatPlayer]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.LoadKeyValuesFromString | LoadKeyValuesFromString]]  
| <code>void SetOpvarFloatPlayer(string a, string b, string c, float d, handle e) </code>
+
| <code>table LoadKeyValuesFromString(string string_1)</code>
| Sets an opvar value for a single player ( szStackName, szOperatorName, szOpvarName, flOpvarValue, hEnt )
+
| Creates a table from the specified keyvalues string
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.SetQuestName | SetQuestName]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.LocalTime | LocalTime]]  
| <code>void SetQuestName(string a) </code>
+
| <code>table LocalTime()</code>
| Set the current quest name.
+
| Get the current local time
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.SetQuestPhase | SetQuestPhase]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.MakeStringToken | MakeStringToken]]  
| <code>void SetQuestPhase(int a) </code>
+
| <code>int MakeStringToken(string string_1)</code>
| Set the current quest phase.
+
| Checks to see if the given hScript is a valid entity
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.SetRenderingEnabled | SetRenderingEnabled]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.MinimapEvent | MinimapEvent]]  
| <code>void SetRenderingEnabled(ehandle a, bool b) </code>
+
| <code>void MinimapEvent(int int_1, handle handle_2, int int_3, int int_4, int int_5, int int_6)</code>
| Set rendering on/off for an ''ehandle''
+
| Start a minimap event. (nTeamID, hEntity, nXCoord, nYCoord, nEventType, nEventDuration).
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.ShowGenericPopup | ShowGenericPopup]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.Msg | Msg]]  
| <code>void ShowGenericPopup(string title, string content, string unknown, string unknown, int containerType) </code>
+
| <code>void Msg(string string_1)</code>
| Shows a generic popup to all users
+
| Print a message
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.ShowGenericPopupToPlayer | ShowGenericPopupToPlayer]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.PauseGame | PauseGame]]  
| <code>void ShowGenericPopupToPlayer(handle a, string b, string c, string d, string e, int f) </code>
+
| <code>void PauseGame(bool bool_1)</code>
| Show a generic popup dialog to a specific player.
+
| Pause or unpause the game.  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.ShowMessage | ShowMessage]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.PlayerInstanceFromIndex | PlayerInstanceFromIndex]]  
| <code>void ShowMessage(string a) </code>
+
| <code>handle PlayerInstanceFromIndex(int int_1)</code>
| Print a hud message on all clients
+
| Get a script instance of a player by index.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.SpawnEntityFromTableSynchronous | SpawnEntityFromTableSynchronous]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.PrecacheEntityFromTable | PrecacheEntityFromTable]]  
| <code>handle SpawnEntityFromTableSynchronous(string a, handle b) </code>
+
| <code>void PrecacheEntityFromTable(string string_1, handle handle_2, handle handle_3)</code>
| Synchronously spawns a single entity from a ''table''
+
| Precache an entity from KeyValues in table  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.SpawnEntityGroupFromTable | SpawnEntityGroupFromTable]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.PrecacheEntityListFromTable | PrecacheEntityListFromTable]]  
| <code>bool SpawnEntityGroupFromTable(handle groupSpawnTables, bool bAsync, handle hCallback) </code>
+
| <code>void PrecacheEntityListFromTable(handle handle_1, handle handle_2)</code>
| Hierarchically spawn an entity group from a set of spawn tables.
+
| Precache a list of entity KeyValues tables  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.SpawnEntityListFromTableAsynchronous | SpawnEntityListFromTableAsynchronous]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.PrecacheItemByNameAsync | PrecacheItemByNameAsync]]  
| <code>int SpawnEntityListFromTableAsynchronous(handle a, handle b) </code>
+
| <code>void PrecacheItemByNameAsync(string string_1, handle handle_2)</code>
| Asynchronously spawn an entity group from a list of spawn table's. A callback will be triggered when the spawning is complete
+
| Asynchronously precaches a DOTA item by its dota_npc_items.txt name, provides a callback when it's finished.  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.SpawnEntityListFromTableSynchronous | SpawnEntityListFromTableSynchronous]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.PrecacheItemByNameSync | PrecacheItemByNameSync]]  
| <code>handle SpawnEntityListFromTableSynchronous(handle a) </code>
+
| <code>void PrecacheItemByNameSync(string string_1, handle handle_2)</code>
| Synchronously spawn an entity group from a list of spawn table's.
+
| Precaches a DOTA item by its dota_npc_items.txt name
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.SplineQuaternions | SplineQuaternions]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.PrecacheModel | PrecacheModel]]  
| <code>Quaternion SplineQuaternions(Quaternion a, Quaternion b, float c) </code>
+
| <code>void PrecacheModel(string string_1, handle handle_2)</code>
| (quaternion,quaternion,''float'') very basic interpolation of v0 to v1 over t on [0,1]
+
| ( modelName, context ) - Manually precache a single model
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.SplineVectors | SplineVectors]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.PrecacheResource | PrecacheResource]]  
| <code>Vector SplineVectors(Vector a, Vector b, float c) </code>
+
| <code>void PrecacheResource(string string_1, string string_2, handle handle_3)</code>
| (''vector'',''vector'',''float'') very basic interpolation of v0 to v1 over t on [0,1]
+
| Manually precache a single resource
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.StartSoundEvent | StartSoundEvent]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.PrecacheUnitByNameAsync | PrecacheUnitByNameAsync]]  
| <code>void StartSoundEvent(string a, handle b) </code>
+
| <code>void PrecacheUnitByNameAsync(string string_1, handle handle_2, int int_3)</code>
| Start a sound event
+
| Asynchronously precaches a DOTA unit by its dota_npc_units.txt name, provides a callback when it's finished.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.StopEffect | StopEffect]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.PrecacheUnitByNameSync | PrecacheUnitByNameSync]]  
| <code>void StopEffect(handle a, string b) </code>
+
| <code>void PrecacheUnitByNameSync(string string_1, handle handle_2, int int_3)</code>
| (hEntity, szEffectName)
+
| Precaches a DOTA unit by its dota_npc_units.txt name
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.StopListeningToAllGameEvents | StopListeningToAllGameEvents]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.PrecacheUnitFromTableAsync | PrecacheUnitFromTableAsync]]  
| <code>void StopListeningToAllGameEvents(handle a) </code>
+
| <code>void PrecacheUnitFromTableAsync(handle handle_1, handle handle_2)</code>
| Stop listening to all game events within a specific context.
+
| Precaches a DOTA unit from a table of entity key values.  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.StopListeningToGameEvent | StopListeningToGameEvent]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.PrecacheUnitFromTableSync | PrecacheUnitFromTableSync]]  
| <code>bool StopListeningToGameEvent(int a) </code>
+
| <code>void PrecacheUnitFromTableSync(handle handle_1, handle handle_2)</code>
| Stop listening to a particular game event.
+
| Precaches a DOTA unit from a table of entity key values.  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.StopSoundEvent | StopSoundEvent]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.PrintLinkedConsoleMessage | PrintLinkedConsoleMessage]]  
| <code>void StopSoundEvent(string a, handle b) </code>
+
| <code>void PrintLinkedConsoleMessage(string string_1, string string_2)</code>
| Stops a sound event
+
| Print a console message with a linked console command
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.StopSoundOn | StopSoundOn]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.RandomFloat | RandomFloat]]  
| <code>void StopSoundOn(string soundName, handle playingEntity) </code>
+
| <code>float RandomFloat(float float_1, float float_2)</code>
| Stop named sound on Entity
+
| Get a random float within a range
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.StringToFile | StringToFile]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.RandomInt | RandomInt]]  
| <code>bool StringToFile(string a, string b) </code>
+
| <code>int RandomInt(int int_1, int int_2)</code>
| * Directory traversal doesn't seem to work. The characters '.', '/' and '\\' are ignored.
+
| Get a random int within a range
* The file name cannot be blank, nor can it consist only of the ignored characters, else the function will do nothing and return false.
 
* Only one string can be stored at a time, the file is overwritten to at every call.
 
* The file ends with a NUL character.
 
* The files are stored at C:\Program Files (x86)\Steam\steamapps\common\dota 2 beta\dota_ugc\game\dota\ems
 
* The function is used in conjunction with [[Dota_2_Workshop_Tools/Scripting/API/Global.FileToString|FileToString]]
 
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.Time | Time]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.RandomVector | RandomVector]]  
| <code>float Time() </code>
+
| <code>Vector RandomVector(float float_1)</code>
| Get the current server time
+
| Get a random 2D vector of the given length.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.TraceCollideable | TraceCollideable]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.RegisterCustomAnimationScriptForModel | RegisterCustomAnimationScriptForModel]]  
| <code>bool TraceCollideable(handle a) </code>
+
| <code>void RegisterCustomAnimationScriptForModel(string string_1, string string_2)</code>
| Pass ''table'' - Inputs: start, end, ent, (optional mins, maxs) -- outputs: pos, fraction, hit, startsolid, normal
+
| Register a custom animation script to run when a model loads
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.TraceHull | TraceHull]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.RegisterSpawnGroupFilterProxy | RegisterSpawnGroupFilterProxy]]  
| <code>bool TraceHull(handle a) </code>
+
| <code>void RegisterSpawnGroupFilterProxy(string string_1)</code>
| Pass ''table'' - Inputs: start, end, min, max, mask, ignore  -- outputs: pos, fraction, hit, enthit, startsolid
+
| Create a C proxy for a script-based spawn group filter
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.TraceLine | TraceLine]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.ReloadMOTD | ReloadMOTD]]  
| <code>bool TraceLine(handle a) </code>
+
| <code>void ReloadMOTD()</code>
| Pass ''table'' - Inputs: startpos, endpos, mask, ignore  -- outputs: pos, fraction, hit, enthit, startsolid
+
| Reloads the MotD file
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.UnloadSpawnGroup | UnloadSpawnGroup]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.RemoveSpawnGroupFilterProxy | RemoveSpawnGroupFilterProxy]]  
| <code>void UnloadSpawnGroup(string a) </code>
+
| <code>void RemoveSpawnGroupFilterProxy(string string_1)</code>
| Unload a spawn group by name
+
| Remove the C proxy for a script-based spawn group filter
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.UnloadSpawnGroupByHandle | UnloadSpawnGroupByHandle]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.ResolveNPCPositions | ResolveNPCPositions]]  
| <code>void UnloadSpawnGroupByHandle(int a) </code>
+
| <code>void ResolveNPCPositions(Vector Vector_1, float float_2)</code>
| Unload a spawn group by ''handle''
+
| Check and fix units that have been assigned a position inside collision radius of other NPCs.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.UpdateEventPoints | UpdateEventPoints]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.RollPercentage | RollPercentage]]  
| <code>void UpdateEventPoints(handle a) </code>
+
| <code>bool RollPercentage(int int_1)</code>
| No Description Set
+
| (int nPct)
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.UTIL_Remove | UTIL_Remove]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.RotateOrientation | RotateOrientation]]  
| <code>void UTIL_Remove(handle a) </code>
+
| <code>QAngle RotateOrientation(QAngle QAngle_1, QAngle QAngle_2)</code>
| Removes the specified entity
+
| Rotate a QAngle by another QAngle.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.UTIL_RemoveImmediate | UTIL_RemoveImmediate]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.RotatePosition | RotatePosition]]  
| <code>void UTIL_RemoveImmediate(handle a) </code>
+
| <code>Vector RotatePosition(Vector Vector_1, QAngle QAngle_2, Vector Vector_3)</code>
| Immediately removes the specified entity
+
| Rotate a Vector around a point.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.VectorToAngles | VectorToAngles]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.RotateQuaternionByAxisAngle | RotateQuaternionByAxisAngle]]  
| <code>QAngle VectorToAngles(Vector a) </code>
+
| <code>Quaternion RotateQuaternionByAxisAngle(Quaternion Quaternion_1, Vector Vector_2, float float_3)</code>
| Get Qangles (with no roll) for a ''Vector''.
+
| (quaternion,vector,float) rotates a quaternion by the specified angle around the specified vector axis
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.Warning | Warning]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.RotationDelta | RotationDelta]]  
| <code>void Warning(string a) </code>
+
| <code>QAngle RotationDelta(QAngle QAngle_1, QAngle QAngle_2)</code>
| Print a warning
+
| Find the delta between two QAngles.
|}
 
 
 
 
 
=== CBaseEntity ===
 
''The base class for stuff''
 
{| class="standard-table" style="width: 100%;"
 
! Function
 
! Signature
 
! Description
 
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.ApplyAbsVelocityImpulse | ApplyAbsVelocityImpulse]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.RotationDeltaAsAngularVelocity | RotationDeltaAsAngularVelocity]]  
| <code>void ApplyAbsVelocityImpulse(Vector a) </code>
+
| <code>Vector RotationDeltaAsAngularVelocity(QAngle QAngle_1, QAngle QAngle_2)</code>
| Apply a Velocity Impulse
+
| converts delta QAngle to an angular velocity Vector
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.ApplyLocalAngularVelocityImpulse | ApplyLocalAngularVelocityImpulse]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.Say | Say]]  
| <code>void ApplyLocalAngularVelocityImpulse(Vector a) </code>
+
| <code>void Say(handle handle_1, string string_2, bool bool_3)</code>
| Apply an Ang Velocity Impulse
+
| Have Entity say string, and teamOnly or not
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.EmitSound | EmitSound]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.ScreenShake | ScreenShake]]  
| <code>void EmitSound(string soundName) </code>
+
| <code>void ScreenShake(Vector Vector_1, float float_2, float float_3, float float_4, float float_5, int int_6, bool bool_7)</code>
|
+
| Start a screenshake with the following parameters. vecCenter, flAmplitude, flFrequency, flDuration, flRadius, eCommand( SHAKE_START = 0, SHAKE_STOP = 1 ), bAirShake
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.EmitSoundParams | EmitSoundParams]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.SendOverheadEventMessage | SendOverheadEventMessage]]  
| <code>void EmitSoundParams(string soundName, int pitch, float volume, float soundTime) </code>
+
| <code>void SendOverheadEventMessage(handle handle_1, int int_2, handle handle_3, int int_4, handle handle_5)</code>
| Plays/modifies a sound from this entity. changes sound if Pitch and/or Volume or SoundTime is > 0.
+
| ( DOTAPlayer sendToPlayer, int iMessageType, Entity targetEntity, int iValue, DOTAPlayer sourcePlayer ) - sendToPlayer and sourcePlayer can be nil - iMessageType is one of OVERHEAD_ALERT_*
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.EyeAngles | EyeAngles]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.SendToConsole | SendToConsole]]  
| <code>QAngle EyeAngles() </code>
+
| <code>void SendToConsole(string string_1)</code>
| Get the qangles that this entity is looking at.
+
| Send a string to the console as a client command
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.EyePosition | EyePosition]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.SendToServerConsole | SendToServerConsole]]  
| <code>Vector EyePosition() </code>
+
| <code>void SendToServerConsole(string string_1)</code>
| Get ''vector'' to eye position - absolute coords
+
| Send a string to the console as a server command
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.FirstMoveChild | FirstMoveChild]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.SetOpvarFloatAll | SetOpvarFloatAll]]  
| <code>handle FirstMoveChild() </code>
+
| <code>void SetOpvarFloatAll(string string_1, string string_2, string string_3, float float_4)</code>
| No Description Set
+
| Sets an opvar value for all players
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GatherCriteria | GatherCriteria]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.SetOpvarFloatPlayer | SetOpvarFloatPlayer]]  
| <code>void GatherCriteria(handle a) </code>
+
| <code>void SetOpvarFloatPlayer(string string_1, string string_2, string string_3, float float_4, handle handle_5)</code>
| Returns a ''table'' containing the criteria that would be used for response queries on this entity. This is the same as the ''table'' that is passed to response rule script function callbacks.
+
| Sets an opvar value for a single player
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetAbsOrigin | GetAbsOrigin]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.SetPhysAngularVelocity | SetPhysAngularVelocity]]  
| <code>Vector GetAbsOrigin() </code>
+
| <code>void SetPhysAngularVelocity(handle handle_1, Vector Vector_2)</code>
| No Description Set
+
| Set Angular Velocity for VPHYS or normal object, from a vector of the axis of rotation, multiplied by the degrees of rotation per second.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetAngles | GetAngles]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.SetQuestName | SetQuestName]]  
| <code>QAngle GetAngles() </code>
+
| <code>void SetQuestName(string string_1)</code>
| No Description Set
+
| Set the current quest name.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetAnglesAsVector | GetAnglesAsVector]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.SetQuestPhase | SetQuestPhase]]  
| <code>Vector GetAnglesAsVector() </code>
+
| <code>void SetQuestPhase(int int_1)</code>
| Get entity pitch, yaw, roll as a ''vector''
+
| Set the current quest phase.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetAngularVelocity | GetAngularVelocity]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.SetRenderingEnabled | SetRenderingEnabled]]  
| <code>Vector GetAngularVelocity() </code>
+
| <code>void SetRenderingEnabled(ehandle ehandle_1, bool bool_2)</code>
| Get the local angular velocity - returns a ''vector'' of pitch,yaw,roll
+
| Set rendering on/off for an ehandle
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetBaseVelocity | GetBaseVelocity]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.SetTeamCustomHealthbarColor | SetTeamCustomHealthbarColor]]  
| <code>Vector GetBaseVelocity() </code>
+
| <code>void SetTeamCustomHealthbarColor(int int_1, int int_2, int int_3, int int_4)</code>
| Get Base velocity
+
| ( teamNumber, r, g, b )
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetBoundingMaxs | GetBoundingMaxs]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.ShowCustomHeaderMessage | ShowCustomHeaderMessage]]  
| <code>Vector GetBoundingMaxs() </code>
+
| <code>void ShowCustomHeaderMessage(string string_1, int int_2, int int_3, float float_4)</code>
| Get a ''vector'' containing max bounds, centered on object
+
| ( const char *pszMessage, int nPlayerID, int nValue, float flTime ) - Supports localized strings - %s1 = PlayerName, %s2 = Value, %s3 = TeamName
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetBoundingMins | GetBoundingMins]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.ShowGenericPopup | ShowGenericPopup]]  
| <code>Vector GetBoundingMins() </code>
+
| <code>void ShowGenericPopup(string string_1, string string_2, string string_3, string string_4, int int_5)</code>
| Get a ''vector'' containing min bounds, centered on object
+
| Show a generic popup dialog for all players.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetBounds | GetBounds]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.ShowGenericPopupToPlayer | ShowGenericPopupToPlayer]]  
| <code>table GetBounds() </code>
+
| <code>void ShowGenericPopupToPlayer(handle handle_1, string string_2, string string_3, string string_4, string string_5, int int_6)</code>
| Get a ''table'' containing the 'Mins' & 'Maxs' ''vector'' bounds, centered on object
+
| Show a generic popup dialog to a specific player.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetCenter | GetCenter]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.ShowMessage | ShowMessage]]  
| <code>Vector GetCenter() </code>
+
| <code>void ShowMessage(string string_1)</code>
| Get ''vector'' to center of object - absolute coords
+
| Print a hud message on all clients
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetChildren | GetChildren]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.SpawnDOTAShopTriggerRadiusApproximate | SpawnDOTAShopTriggerRadiusApproximate]]  
| <code>handle GetChildren() </code>
+
| <code>handle SpawnDOTAShopTriggerRadiusApproximate(Vector Vector_1, float float_2)</code>
| Get the entities parented to this entity.
+
| (Vector vOrigin, float flRadius )
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetContext | GetContext]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.SpawnEntityFromTableSynchronous | SpawnEntityFromTableSynchronous]]  
| <code>table GetContext(string a) </code>
+
| <code>handle SpawnEntityFromTableSynchronous(string string_1, handle handle_2)</code>
| GetContext( name ): looks up a context and returns it if available. May return ''string'', ''float'', or ''nil'' (if the context isn't found)
+
| Synchronously spawns a single entity from a table
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetForwardVector | GetForwardVector]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.SpawnEntityGroupFromTable | SpawnEntityGroupFromTable]]  
| <code>Vector GetForwardVector() </code>
+
| <code>bool SpawnEntityGroupFromTable(handle handle_1, bool bool_2, handle handle_3)</code>
| Get the forward ''vector'' of the entity
+
| Hierarchically spawn an entity group from a set of spawn tables.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetHealth | GetHealth]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.SpawnEntityListFromTableAsynchronous | SpawnEntityListFromTableAsynchronous]]  
| <code>int GetHealth() </code>
+
| <code>int SpawnEntityListFromTableAsynchronous(handle handle_1, handle handle_2)</code>
| No Description Set
+
| Asynchronously spawn an entity group from a list of spawn tables. A callback will be triggered when the spawning is complete
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetLocalAngularVelocity | GetLocalAngularVelocity]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.SpawnEntityListFromTableSynchronous | SpawnEntityListFromTableSynchronous]]  
| <code>QAngle GetLocalAngularVelocity() </code>
+
| <code>handle SpawnEntityListFromTableSynchronous(handle handle_1)</code>
| Maybe local angvel
+
| Synchronously spawn an entity group from a list of spawn tables.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetLocalVelocity | GetLocalVelocity]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.SplineQuaternions | SplineQuaternions]]  
| <code>Vector GetLocalVelocity() </code>
+
| <code>Quaternion SplineQuaternions(Quaternion Quaternion_1, Quaternion Quaternion_2, float float_3)</code>
| Get Entity relative velocity
+
| (quaternion,quaternion,float) very basic interpolation of v0 to v1 over t on [0,1]
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetMaxHealth | GetMaxHealth]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.SplineVectors | SplineVectors]]  
| <code>int GetMaxHealth() </code>
+
| <code>Vector SplineVectors(Vector Vector_1, Vector Vector_2, float float_3)</code>
| No Description Set
+
| (vector,vector,float) very basic interpolation of v0 to v1 over t on [0,1]
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetModelName | GetModelName]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.StartSoundEvent | StartSoundEvent]]  
| <code>string GetModelName() </code>
+
| <code>void StartSoundEvent(string string_1, handle handle_2)</code>
| Returns the name of the model
+
| Start a sound event
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetMoveParent | GetMoveParent]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.StartSoundEventFromPosition | StartSoundEventFromPosition]]  
| <code>handle GetMoveParent() </code>
+
| <code>void StartSoundEventFromPosition(string string_1, Vector Vector_2)</code>
| If in hierarchy, retrieves the entity's parent
+
| Start a sound event from position
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetOrigin | GetOrigin]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.StartSoundEventFromPositionReliable | StartSoundEventFromPositionReliable]]  
| <code>Vector GetOrigin() </code>
+
| <code>void StartSoundEventFromPositionReliable(string string_1, Vector Vector_2)</code>
| No Description Set
+
| Start a sound event from position with reliable delivery
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetOwner | GetOwner]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.StartSoundEventFromPositionUnreliable | StartSoundEventFromPositionUnreliable]]  
| <code>handle GetOwner() </code>
+
| <code>void StartSoundEventFromPositionUnreliable(string string_1, Vector Vector_2)</code>
| Gets this entity's owner
+
| Start a sound event from position with optional delivery
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetOwnerEntity | GetOwnerEntity]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.StartSoundEventReliable | StartSoundEventReliable]]  
| <code>handle GetOwnerEntity() </code>
+
| <code>void StartSoundEventReliable(string string_1, handle handle_2)</code>
| Get the owner entity, if there is one
+
| Start a sound event with reliable delivery
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetRightVector | GetRightVector]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.StartSoundEventUnreliable | StartSoundEventUnreliable]]  
| <code>Vector GetRightVector() </code>
+
| <code>void StartSoundEventUnreliable(string string_1, handle handle_2)</code>
| Get the right ''vector'' of the entity
+
| Start a sound event with optional delivery
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetRootMoveParent | GetRootMoveParent]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.StopEffect | StopEffect]]  
| <code>handle GetRootMoveParent() </code>
+
| <code>void StopEffect(handle handle_1, string string_2)</code>
| If in hierarchy, walks up the hierarchy to find the root parent
+
| Pass entity and effect name
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetSoundDuration | GetSoundDuration]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.StopGlobalSound | StopGlobalSound]]  
| <code>float GetSoundDuration(string soundName, string actormodelname) </code>
+
| <code>void StopGlobalSound(string string_1)</code>
| Returns ''float'' duration of the sound. Takes soundname and optional actormodelname.
+
| Stop named sound for all players
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetTeam | GetTeam]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.StopListeningToAllGameEvents | StopListeningToAllGameEvents]]  
| <code>int GetTeam() </code>
+
| <code>void StopListeningToAllGameEvents(handle handle_1)</code>
| No Description Set
+
| Stop listening to all game events within a specific context.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetUpVector | GetUpVector]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.StopListeningToGameEvent | StopListeningToGameEvent]]  
| <code>Vector GetUpVector() </code>
+
| <code>bool StopListeningToGameEvent(int int_1)</code>
| Get the up ''vector'' of the entity
+
| Stop listening to a particular game event.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetVelocity | GetVelocity]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.StopSoundEvent | StopSoundEvent]]  
| <code>Vector GetVelocity() </code>
+
| <code>void StopSoundEvent(string string_1, handle handle_2)</code>
| No Description Set
+
| Stops a sound event with optional delivery
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.IsAlive | IsAlive]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.StopSoundOn | StopSoundOn]]  
| <code>bool IsAlive() </code>
+
| <code>void StopSoundOn(string string_1, handle handle_2)</code>
| No Description Set.
+
| Stop named sound on Entity
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.IsPlayer | IsPlayer]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.Time | Time]]  
| <code>bool IsPlayer() </code>
+
| <code>float Time()</code>
| Is this a player entity?
+
| Get the current server time
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.Kill | Kill]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.TraceCollideable | TraceCollideable]]  
| <code>void Kill() </code>
+
| <code>bool TraceCollideable(handle handle_1)</code>
| No Description Set
+
| Pass table - Inputs: start, end, ent, (optional mins, maxs) -- outputs: pos, fraction, hit, startsolid, normal
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.NextMovePeer | NextMovePeer]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.TraceHull | TraceHull]]  
| <code>handle NextMovePeer() </code>
+
| <code>bool TraceHull(handle handle_1)</code>
| No Description Set
+
| Pass table - Inputs: start, end, min, max, mask, ignore  -- outputs: pos, fraction, hit, enthit, startsolid
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.OverrideFriction | OverrideFriction]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.TraceLine | TraceLine]]  
| <code>void OverrideFriction(float a, float b) </code>
+
| <code>bool TraceLine(handle handle_1)</code>
| Takes duration, value for a temporary override
+
| Pass table - Inputs: startpos, endpos, mask, ignore  -- outputs: pos, fraction, hit, enthit, startsolid
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.PrecacheScriptSound | PrecacheScriptSound]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.UTIL_AngleDiff | UTIL_AngleDiff]]  
| <code>void PrecacheScriptSound(string a) </code>
+
| <code>float UTIL_AngleDiff(float float_1, float float_2)</code>
| Precache a sound for later playing.
+
| Returns the number of degrees difference between two yaw angles
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.SetAbsOrigin | SetAbsOrigin]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.UTIL_MessageText | UTIL_MessageText]]  
| <code>void SetAbsOrigin(Vector origin) </code>
+
| <code>void UTIL_MessageText(int int_1, string string_2, int int_3, int int_4, int int_5, int int_6)</code>
| SetAbsOrigin
+
| Sends colored text to one client.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.SetAngles | SetAngles]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.UTIL_MessageTextAll | UTIL_MessageTextAll]]  
| <code>void SetAngles(float pitch, float yaw, float roll) </code>
+
| <code>void UTIL_MessageTextAll(string string_1, int int_2, int int_3, int int_4, int int_5)</code>
| Set entity pitch, yaw, roll
+
| Sends colored text to all clients.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.SetAngularVelocity | SetAngularVelocity]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.UTIL_MessageTextAll_WithContext | UTIL_MessageTextAll_WithContext]]  
| <code>void SetAngularVelocity(float pitch, float yaw, float roll) </code>
+
| <code>void UTIL_MessageTextAll_WithContext(string string_1, int int_2, int int_3, int int_4, int int_5, handle handle_6)</code>
| Set the local angular velocity - takes ''float'' pitch,yaw,roll velocities
+
| Sends colored text to all clients. (Valid context keys: player_id, value, team_id)
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.SetContext | SetContext]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.UTIL_MessageText_WithContext | UTIL_MessageText_WithContext]]  
| <code>void SetContext(string a, string b, float c) </code>
+
| <code>void UTIL_MessageText_WithContext(int int_1, string string_2, int int_3, int int_4, int int_5, int int_6, handle handle_7)</code>
| SetContext( name , value, duration ): store any key/value pair in this entity's dialog contexts. Value must be a ''string''. Will last for duration (set 0 to mean 'forever').
+
| Sends colored text to one client. (Valid context keys: player_id, value, team_id)  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.SetContextNum | SetContextNum]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.UTIL_Remove | UTIL_Remove]]  
| <code>void SetContextNum(string a, float b, float c) </code>
+
| <code>void UTIL_Remove(handle handle_1)</code>
| SetContext( name , value, duration ): store any key/value pair in this entity's dialog contexts. Value must be a number (''int'' or ''float''). Will last for duration (set 0 to mean 'forever').
+
| Removes the specified entity  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.SetContextThink | SetContextThink]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.UTIL_RemoveImmediate | UTIL_RemoveImmediate]]  
| <code>void SetContextThink(string a, handle b, float c) </code>
+
| <code>void UTIL_RemoveImmediate(handle handle_1)</code>
| Set a think function on this entity.
+
| Immediately removes the specified entity  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.SetForwardVector | SetForwardVector]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.UTIL_ResetMessageText | UTIL_ResetMessageText]]  
| <code>void SetForwardVector(Vector forwardVec) </code>
+
| <code>void UTIL_ResetMessageText(int int_1)</code>
| Set the orientation of the entity to have this forward ''forwardVec''
+
| Clear all message text on one client.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.SetFriction | SetFriction]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.UTIL_ResetMessageTextAll | UTIL_ResetMessageTextAll]]  
| <code>void SetFriction(float a) </code>
+
| <code>void UTIL_ResetMessageTextAll()</code>
| Set PLAYER friction, ignored for objects
+
| Clear all message text from all clients.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.SetGravity | SetGravity]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.UnitFilter | UnitFilter]]  
| <code>void SetGravity(float a) </code>
+
| <code>int UnitFilter(handle handle_1, int int_2, int int_3, int int_4, int int_5)</code>
| Set PLAYER gravity, ignored for objects
+
| Check if a unit passes a set of filters. (hNPC, nTargetTeam, nTargetType, nTargetFlags, nTeam
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.SetHealth | SetHealth]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.UnloadSpawnGroup | UnloadSpawnGroup]]  
| <code>void SetHealth(int hp) </code>
+
| <code>void UnloadSpawnGroup(string string_1)</code>
| No Description Set
+
| Unload a spawn group by name
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.SetMaxHealth | SetMaxHealth]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.UnloadSpawnGroupByHandle | UnloadSpawnGroupByHandle]]  
| <code>void SetMaxHealth(int maxHP) </code>
+
| <code>void UnloadSpawnGroupByHandle(int int_1)</code>
| No Description Set
+
| Unload a spawn group by handle
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.SetModel | SetModel]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.UpdateEventPoints | UpdateEventPoints]]  
| <code>void SetModel(string modelName) </code>
+
| <code>void UpdateEventPoints(handle handle_1)</code>
| No Description Set
+
| ( hEventPointData )
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.SetOrigin | SetOrigin]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.VectorAngles | VectorAngles]]  
| <code>void SetOrigin(Vector origin) </code>
+
| <code>QAngle VectorAngles(Vector Vector_1)</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.SetOwner | SetOwner]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.VectorToAngles | VectorToAngles]]  
| <code>void SetOwner(handle owningEntity) </code>
+
| <code>QAngle VectorToAngles(Vector Vector_1)</code>
| Sets this entity's owner
+
| Get Qangles (with no roll) for a Vector.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.SetParent | SetParent]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.Warning | Warning]]  
| <code>void SetParent(handle a, string b) </code>
+
| <code>void Warning(string string_1)</code>
| Set the parent for this entity.
+
| Print a warning
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.SetRenderColor | SetRenderColor]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.cvar_getf | cvar_getf]]  
| <code>void SetRenderColor(int a, int b, int c) </code>
+
| <code>float cvar_getf(string string_1)</code>
| SetRenderColor( r, g, b ): Sets the render color of the entity.
+
| Gets the value of the given cvar, as a float.  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.SetSize | SetSize]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.cvar_setf | cvar_setf]]  
| <code>void SetSize(Vector a, Vector b) </code>
+
| <code>bool cvar_setf(string string_1, float float_2)</code>
| No Description Set
+
| Sets the value of the given cvar, as a float.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.SetTeam | SetTeam]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.rr_AddDecisionRule | rr_AddDecisionRule]]  
| <code>void SetTeam(int team) </code>
+
| <code>bool rr_AddDecisionRule(handle handle_1)</code>
| No Description Set
+
| Add a rule to the decision database.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.SetVelocity | SetVelocity]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.rr_CommitAIResponse | rr_CommitAIResponse]]  
| <code>void SetVelocity(Vector a) </code>
+
| <code>bool rr_CommitAIResponse(handle handle_1, handle handle_2)</code>
| No Description Set
+
| Commit the result of QueryBestResponse back to the given entity to play. Call with params (entity, airesponse)
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.StopSound | StopSound]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.rr_GetResponseTargets | rr_GetResponseTargets]]  
| <code>void StopSound(string soundName) </code>
+
| <code>handle rr_GetResponseTargets()</code>
| Stops a named sound playing from this entity.
+
| Retrieve a table of all available expresser targets, in the form { name : handle, name: handle }.  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.Trigger | Trigger]]
+
| [[Dota 2 Workshop Tools/Scripting/API/Global.rr_QueryBestResponse | rr_QueryBestResponse]]  
| <code>void Trigger() </code>
+
| <code>bool rr_QueryBestResponse(handle handle_1, handle handle_2, handle handle_3)</code>
| Fires off this entity's OnTrigger responses
+
| Params: (entity, query) : tests 'query' against entity's response system and returns the best response found (or null if none found).
 
|}
 
|}
  
 
+
==== CBaseAnimating ====
=== CEntities ===
+
:::::extends [[#CBaseModelEntity|CBaseModelEntity]]
 
''No Description Set''
 
''No Description Set''
 
''Global accessor variable:'' <code>Entities</code>
 
 
{| class="standard-table" style="width: 100%;"
 
{| class="standard-table" style="width: 100%;"
 
! Function  
 
! Function  
Line 836: Line 842:
 
! Description  
 
! Description  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CEntities.CreateByClassname | CreateByClassname]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseAnimating.ActiveSequenceDuration | ActiveSequenceDuration]]  
| <code>handle CreateByClassname(string className) </code>
+
| <code>float ActiveSequenceDuration()</code>
| Creates an entity by classname
+
| Returns the duration in seconds of the active sequence.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CEntities.FindAllByClassname | FindAllByClassname]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseAnimating.GetAttachmentAngles | GetAttachmentAngles]]  
| <code>table FindAllByClassname(string a) </code>
+
| <code>Vector GetAttachmentAngles(int iAttachment)</code>
| Finds all entities by class name. Returns an array containing all the found entities.
+
| Get the attachment id's angles as a p,y,r vector.  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CEntities.FindAllByClassnameWithin | FindAllByClassnameWithin]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseAnimating.GetAttachmentForward | GetAttachmentForward]]  
| <code>table FindAllByClassnameWithin(string a, Vector b, float c) </code>
+
| <code>Vector GetAttachmentForward(int iAttachment)</code>
| Find entities by class name within a radius.
+
| Get the attachment id's forward vector.  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CEntities.FindAllByModel | FindAllByModel]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseAnimating.GetAttachmentOrigin | GetAttachmentOrigin]]  
| <code>table FindAllByModel(string modelName) </code>
+
| <code>Vector GetAttachmentOrigin(int iAttachment)</code>
| Find entities by model name.
+
| Get the attachment id's origin vector.  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CEntities.FindAllByName | FindAllByName]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseAnimating.GetCycle | GetCycle]]  
| <code>table FindAllByName(string name) </code>
+
| <code>float GetCycle()</code>
| Find all entities by name. Returns an array containing all the found entities in it.
+
| Get the cycle of the animation.  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CEntities.FindAllByNameWithin | FindAllByNameWithin]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseAnimating.GetGraphParameter | GetGraphParameter]]  
| <code>table FindAllByNameWithin(string name, Vector origin, float maxRadius) </code>
+
| <code>table GetGraphParameter(string pszParam)</code>
| Find entities by name within a radius.
+
| Get the value of the given animGraph parameter
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CEntities.FindAllByTarget | FindAllByTarget]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseAnimating.GetModelScale | GetModelScale]]  
| <code>table FindAllByTarget(string targetName) </code>
+
| <code>float GetModelScale()</code>
| Find entities by targetname.
+
| Get scale of entity's model.  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CEntities.FindAllInSphere | FindAllInSphere]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseAnimating.GetSequence | GetSequence]]  
| <code>table FindAllInSphere(Vector origin, float maxRadius) </code>
+
| <code>string GetSequence()</code>
| Find entities within a radius.
+
| Returns the name of the active sequence.  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CEntities.FindByClassname | FindByClassname]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseAnimating.IsSequenceFinished | IsSequenceFinished]]  
| <code>handle FindByClassname(handle startFrom, string className) </code>
+
| <code>bool IsSequenceFinished()</code>
| Find entities by class name. Pass ''nil'' to start an iteration, or reference to a previously found entity to continue a search
+
| Ask whether the main sequence is done playing.  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CEntities.FindByClassnameNearest | FindByClassnameNearest]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseAnimating.ResetSequence | ResetSequence]]  
| <code>handle FindByClassnameNearest(string className, Vector origin, float maxRadius) </code>
+
| <code>void ResetSequence(string pSequenceName)</code>
| Find entities by class name nearest to a point.
+
| Sets the active sequence by name, resetting the current cycle.  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CEntities.FindByClassnameWithin | FindByClassnameWithin]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseAnimating.ScriptLookupAttachment | ScriptLookupAttachment]]  
| <code>handle FindByClassnameWithin(handle startFrom, string className, Vector origin, float maxRadius) </code>
+
| <code>int ScriptLookupAttachment(string pAttachmentName)</code>
| Find entities by class name within a radius. Pass ''nil'' to start an iteration, or reference to a previously found entity to continue a search
+
| Get the named attachment id.  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CEntities.FindByModel | FindByModel]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseAnimating.SequenceDuration | SequenceDuration]]  
| <code>handle FindByModel(handle startFrom, string modelName) </code>
+
| <code>float SequenceDuration(string pSequenceName)</code>
| Find entities by model name. Pass ''nil'' to start an iteration, or reference to a previously found entity to continue a search
+
| Returns the duration in seconds of the given sequence name.  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CEntities.FindByModelWithin | FindByModelWithin]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseAnimating.SetGraphLookTarget | SetGraphLookTarget]]  
| <code>handle FindByModelWithin(handle startFrom, string modelName, Vector origin, float maxRadius) </code>
+
| <code>void SetGraphLookTarget(Vector vValue)</code>
| Find entities by model name within a radius. Pass ''nil'' to start an iteration, or reference to a previously found entity to continue a search
+
| Pass the desired look target in world space to the graph
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CEntities.FindByName | FindByName]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseAnimating.SetGraphParameter | SetGraphParameter]]  
| <code>handle FindByName(handle lastEnt, string searchString) </code>
+
| <code>void SetGraphParameter(string pszParam, table svArg)</code>
| Find entities by name. Pass ''nil'' to start an iteration, or reference to a previously found entity to continue a search
+
| Set the specific param value, type is inferred from the type in script
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CEntities.FindByNameNearest | FindByNameNearest]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseAnimating.SetGraphParameterBool | SetGraphParameterBool]]  
| <code>handle FindByNameNearest(string name, Vector origin, float maxRadius) </code>
+
| <code>void SetGraphParameterBool(string szName, bool bValue)</code>
| Find entities by name nearest to a point.
+
| Set the specific param on or off
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CEntities.FindByNameWithin | FindByNameWithin]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseAnimating.SetGraphParameterEnum | SetGraphParameterEnum]]  
| <code>handle FindByNameWithin(handle startFrom, string name, Vector origin, float maxRadius) </code>
+
| <code>void SetGraphParameterEnum(string szName, int nValue)</code>
| Find entities by name within a radius. Pass ''nil'' to start an iteration, or reference to a previously found entity to continue a search
+
| Pass the enum (int) value to the specified param
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CEntities.FindByTarget | FindByTarget]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseAnimating.SetGraphParameterFloat | SetGraphParameterFloat]]  
| <code>handle FindByTarget(handle startFrom, string targetName) </code>
+
| <code>void SetGraphParameterFloat(string szName, float flValue)</code>
| Find entities by targetname. Pass ''nil'' to start an iteration, or reference to a previously found entity to continue a search
+
| Pass the float value to the specified param
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CEntities.FindInSphere | FindInSphere]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseAnimating.SetGraphParameterInt | SetGraphParameterInt]]  
| <code>handle FindInSphere(handle startFrom, Vector origin, float maxRadius) </code>
+
| <code>void SetGraphParameterInt(string szName, int nValue)</code>
| Find entities within a radius. Pass ''nil'' to start an iteration, or reference to a previously found entity to continue a search
+
| Pass the int value to the specified param
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CEntities.First | First]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseAnimating.SetGraphParameterVector | SetGraphParameterVector]]  
| <code>handle First() </code>
+
| <code>void SetGraphParameterVector(string szName, Vector vValue)</code>
| Begin an iteration over the list of entities
+
| Pass the vector value to the specified param in the graph
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CEntities.Next | Next]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseAnimating.SetModelScale | SetModelScale]]  
| <code>handle Next(handle startFrom) </code>
+
| <code>void SetModelScale(float flScale)</code>
| Continue an iteration over the list of entities, providing reference to a previously found entity
+
| Set scale of entity's model.
 +
|-
 +
| [[Dota 2 Workshop Tools/Scripting/API/CBaseAnimating.SetPoseParameter | SetPoseParameter]]
 +
| <code>float SetPoseParameter(string szName, float fValue)</code>
 +
| Set the specified pose parameter to the specified value.
 +
|-
 +
| [[Dota 2 Workshop Tools/Scripting/API/CBaseAnimating.SetSequence | SetSequence]]
 +
| <code>void SetSequence(string pSequenceName)</code>
 +
| Sets the active sequence by name, keeping the current cycle.
 +
|-
 +
| [[Dota 2 Workshop Tools/Scripting/API/CBaseAnimating.StopAnimation | StopAnimation]]
 +
| <code>void StopAnimation()</code>
 +
| Stop the current animation by setting playback rate to 0.0.
 
|}
 
|}
  
 
+
==== CBaseCombatCharacter ====
=== CEntityInstance ===
+
:::::extends [[#CBaseFlex|CBaseFlex]]
:::::extends [[#CBaseEntity| CBaseEntity]]
 
 
''No Description Set''
 
''No Description Set''
 
{| class="standard-table" style="width: 100%;"
 
{| class="standard-table" style="width: 100%;"
Line 926: Line 943:
 
! Description  
 
! Description  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CEntityInstance.ConnectOutput | ConnectOutput]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseCombatCharacter.GetEquippedWeapons | GetEquippedWeapons]]  
| <code>void ConnectOutput(string a, string b) </code>
+
| <code>table GetEquippedWeapons()</code>
| Adds an I/O connection that will call the named function on this entity when the specified output fires.
+
| GetEquippedWeapons() : Returns an array of all the equipped weapons
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CEntityInstance.Destroy | Destroy]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseCombatCharacter.GetFaction | GetFaction]]  
| <code>void Destroy() </code>
+
| <code>int GetFaction()</code>
| No Description Set
+
| Get the combat character faction.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CEntityInstance.DisconnectOutput | DisconnectOutput]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseCombatCharacter.GetWeaponCount | GetWeaponCount]]  
| <code>void DisconnectOutput(string a, string b) </code>
+
| <code>int GetWeaponCount()</code>
| Removes a connected script function from an I/O event on this entity.
+
| GetWeaponCount() : Gets the number of weapons currently equipped
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CEntityInstance.DisconnectRedirectedOutput | DisconnectRedirectedOutput]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseCombatCharacter.ShootPosition | ShootPosition]]  
| <code>void DisconnectRedirectedOutput(string a, string b, handle c) </code>
+
| <code>Vector ShootPosition(int nHand, int nMuzzle)</code>
| Removes a connected script function from an I/O event on the passed entity.
+
| Returns the shoot position eyes (or hand in VR).  
|-
+
|}
| [[Dota 2 Workshop Tools/Scripting/API/CEntityInstance.entindex | entindex]]
+
 
| <code>int entindex() </code>
+
==== CBaseEntity ====
| No Description Set
+
:::::extends [[#CEntityInstance|CEntityInstance]]
|-
+
''The base class for stuff''
| [[Dota 2 Workshop Tools/Scripting/API/CEntityInstance.FireOutput | FireOutput]]
 
| <code>void FireOutput(string a, handle b, handle c, table d, float e) </code>
 
| Fire an entity output
 
|-
 
| [[Dota 2 Workshop Tools/Scripting/API/CEntityInstance.GetClassname | GetClassname]]
 
| <code>string GetClassname() </code>
 
| No Description Set
 
|-
 
| [[Dota 2 Workshop Tools/Scripting/API/CEntityInstance.GetDebugName | GetDebugName]]
 
| <code>string GetDebugName() </code>
 
| Get the entity name w/help if not defined (i.e. classname/etc)
 
|-
 
| [[Dota 2 Workshop Tools/Scripting/API/CEntityInstance.GetEntityHandle | GetEntityHandle]]
 
| <code>ehandle GetEntityHandle() </code>
 
| Get the entity as an EHANDLE
 
|-
 
| [[Dota 2 Workshop Tools/Scripting/API/CEntityInstance.GetEntityIndex | GetEntityIndex]]
 
| <code>int GetEntityIndex() </code>
 
| No Description Set
 
|-
 
| [[Dota 2 Workshop Tools/Scripting/API/CEntityInstance.GetIntAttr | GetIntAttr]]
 
| <code>int GetIntAttr(string a) </code>
 
| Get Integer Attribute
 
|-
 
| [[Dota 2 Workshop Tools/Scripting/API/CEntityInstance.GetName | GetName]]
 
| <code>string GetName() </code>
 
| No Description Set
 
|-
 
| [[Dota 2 Workshop Tools/Scripting/API/CEntityInstance.GetOrCreatePrivateScriptScope | GetOrCreatePrivateScriptScope]]
 
| <code>handle GetOrCreatePrivateScriptScope() </code>
 
| Retrieve, creating if necessary, the private per-instance script-side data associated with an entity
 
|-
 
| [[Dota 2 Workshop Tools/Scripting/API/CEntityInstance.GetOrCreatePublicScriptScope | GetOrCreatePublicScriptScope]]
 
| <code>handle GetOrCreatePublicScriptScope() </code>
 
| Retrieve, creating if necessary, the public script-side data associated with an entity
 
|-
 
| [[Dota 2 Workshop Tools/Scripting/API/CEntityInstance.GetPrivateScriptScope | GetPrivateScriptScope]]
 
| <code>handle GetPrivateScriptScope() </code>
 
| Retrieve the private per-instance script-side data associated with an entity
 
|-
 
| [[Dota 2 Workshop Tools/Scripting/API/CEntityInstance.GetPublicScriptScope | GetPublicScriptScope]]
 
| <code>handle GetPublicScriptScope() </code>
 
| Retrieve the public script-side data associated with an entity
 
|-
 
| [[Dota 2 Workshop Tools/Scripting/API/CEntityInstance.RedirectOutput | RedirectOutput]]
 
| <code>void RedirectOutput(string a, string b, handle c) </code>
 
| Adds an I/O connection that will call the named function on the passed entity when the specified output fires.
 
|-
 
| [[Dota 2 Workshop Tools/Scripting/API/CEntityInstance.RemoveSelf | RemoveSelf]]
 
| <code>void RemoveSelf() </code>
 
| Delete this entity
 
|-
 
| [[Dota 2 Workshop Tools/Scripting/API/CEntityInstance.SetIntAttr | SetIntAttr]]
 
| <code>void SetIntAttr(string a, int b) </code>
 
| Set Integer Attribute
 
|}
 
 
 
 
 
=== CDOTABaseAbility ===
 
:::::extends [[#CBaseEntity| CBaseEntity]]
 
''No Description Set''
 
 
{| class="standard-table" style="width: 100%;"
 
{| class="standard-table" style="width: 100%;"
 
! Function  
 
! Function  
Line 1,012: Line 968:
 
! Description  
 
! Description  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.CastAbility | CastAbility]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.AddEffects | AddEffects]]  
| <code>void CastAbility() </code>
+
| <code>void AddEffects(int nFlags)</code>
| No Description Set
+
| AddEffects( int ): Adds the render effect flag.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.ContinueCasting | ContinueCasting]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.ApplyAbsVelocityImpulse | ApplyAbsVelocityImpulse]]  
| <code>bool ContinueCasting() </code>
+
| <code>void ApplyAbsVelocityImpulse(Vector vecImpulse)</code>
| No Description Set
+
| Apply a Velocity Impulse
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.CreateVisibilityNode | CreateVisibilityNode]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.ApplyLocalAngularVelocityImpulse | ApplyLocalAngularVelocityImpulse]]  
| <code>void CreateVisibilityNode(Vector a, float b, float c) </code>
+
| <code>void ApplyLocalAngularVelocityImpulse(Vector angImpulse)</code>
| No Description Set
+
| Apply an Ang Velocity Impulse
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.DecrementModifierRefCount | DecrementModifierRefCount]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.Attribute_GetFloatValue | Attribute_GetFloatValue]]  
| <code>void DecrementModifierRefCount() </code>
+
| <code>float Attribute_GetFloatValue(string pName, float flDefault)</code>
| No Description Set
+
| Get float value for an entity attribute.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.EndChannel | EndChannel]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.Attribute_GetIntValue | Attribute_GetIntValue]]  
| <code>void EndChannel(bool a) </code>
+
| <code>int Attribute_GetIntValue(string pName, int nDefault)</code>
| Param: ''bool'' bInterrupted
+
| Get int value for an entity attribute.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.EndCooldown | EndCooldown]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.Attribute_SetFloatValue | Attribute_SetFloatValue]]  
| <code>void EndCooldown() </code>
+
| <code>void Attribute_SetFloatValue(string pName, float flValue)</code>
| Clear the cooldown remaining on this ability.
+
| Set float value for an entity attribute.  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetAbilityDamage | GetAbilityDamage]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.Attribute_SetIntValue | Attribute_SetIntValue]]  
| <code>int GetAbilityDamage() </code>
+
| <code>void Attribute_SetIntValue(string pName, int nValue)</code>
| No Description Set
+
| Set int value for an entity attribute.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetAbilityDamageType | GetAbilityDamageType]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.DeleteAttribute | DeleteAttribute]]  
| <code>int GetAbilityDamageType() </code>
+
| <code>void DeleteAttribute(string pName)</code>
| No Description Set
+
| Delete an entity attribute.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetAbilityIndex | GetAbilityIndex]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.EmitSound | EmitSound]]  
| <code>int GetAbilityIndex() </code>
+
| <code>void EmitSound(string soundname)</code>
| No Description Set
+
| Plays a sound from this entity.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetAbilityName | GetAbilityName]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.EmitSoundParams | EmitSoundParams]]  
| <code>string GetAbilityName() </code>
+
| <code>void EmitSoundParams(string soundname, int nPitch, float flVolume, float flDelay)</code>
| No Description Set
+
| Plays/modifies a sound from this entity. changes sound if nPitch and/or flVol or flSoundTime is > 0.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetAbilityTargetFlags | GetAbilityTargetFlags]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.EyeAngles | EyeAngles]]  
| <code>int GetAbilityTargetFlags() </code>
+
| <code>QAngle EyeAngles()</code>
| No Description Set
+
| Get the qangles that this entity is looking at.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetAbilityTargetTeam | GetAbilityTargetTeam]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.EyePosition | EyePosition]]  
| <code>int GetAbilityTargetTeam() </code>
+
| <code>Vector EyePosition()</code>
| No Description Set
+
| Get vector to eye position - absolute coords.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetAbilityTargetType | GetAbilityTargetType]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.FirstMoveChild | FirstMoveChild]]  
| <code>int GetAbilityTargetType() </code>
+
| <code>handle FirstMoveChild()</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetAbilityType | GetAbilityType]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.FollowEntity | FollowEntity]]  
| <code>int GetAbilityType() </code>
+
| <code>void FollowEntity(handle hEnt, bool bBoneMerge)</code>
| No Description Set
+
| hEntity to follow, bool bBoneMerge
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetAnimationIgnoresModelScale | GetAnimationIgnoresModelScale]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GatherCriteria | GatherCriteria]]  
| <code>bool GetAnimationIgnoresModelScale() </code>
+
| <code>void GatherCriteria(handle hResult)</code>
| No Description Set
+
| Returns a table containing the criteria that would be used for response queries on this entity. This is the same as the table that is passed to response rule script function callbacks.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetAssociatedPrimaryAbilities | GetAssociatedPrimaryAbilities]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetAbsOrigin | GetAbsOrigin]]  
| <code>string GetAssociatedPrimaryAbilities() </code>
+
| <code>Vector GetAbsOrigin()</code>
| No Description Set
+
| Returns the position of the entity on the map. Very Useful!
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetAssociatedSecondaryAbilities | GetAssociatedSecondaryAbilities]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetAbsScale | GetAbsScale]]  
| <code>string GetAssociatedSecondaryAbilities() </code>
+
| <code>float GetAbsScale()</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetAutoCastState | GetAutoCastState]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetAngles | GetAngles]]  
| <code>bool GetAutoCastState() </code>
+
| <code>QAngle GetAngles()</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetBackswingTime | GetBackswingTime]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetAnglesAsVector | GetAnglesAsVector]]  
| <code>float GetBackswingTime() </code>
+
| <code>Vector GetAnglesAsVector()</code>
| No Description Set
+
| Get entity pitch, yaw, roll as a vector.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetBehavior | GetBehavior]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetAngularVelocity | GetAngularVelocity]]  
| <code>int GetBehavior() </code>
+
| <code>Vector GetAngularVelocity()</code>
| No Description Set
+
| Get the local angular velocity - returns a vector of pitch,yaw,roll
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetCaster | GetCaster]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetBaseVelocity | GetBaseVelocity]]  
| <code>handle GetCaster() </code>
+
| <code>Vector GetBaseVelocity()</code>
| No Description Set
+
| Get Base? velocity.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetCastPoint | GetCastPoint]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetBoundingMaxs | GetBoundingMaxs]]  
| <code>float GetCastPoint() </code>
+
| <code>Vector GetBoundingMaxs()</code>
| No Description Set
+
| Get a vector containing max bounds, centered on object.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetCastRange | GetCastRange]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetBoundingMins | GetBoundingMins]]  
| <code>int GetCastRange() </code>
+
| <code>Vector GetBoundingMins()</code>
| No Description Set
+
| Get a vector containing min bounds, centered on object.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetChannelledManaCostPerSecond | GetChannelledManaCostPerSecond]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetBounds | GetBounds]]  
| <code>int GetChannelledManaCostPerSecond(int a) </code>
+
| <code>table GetBounds()</code>
| No Description Set
+
| Get a table containing the 'Mins' & 'Maxs' vector bounds, centered on object.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetChannelStartTime | GetChannelStartTime]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetCenter | GetCenter]]  
| <code>float GetChannelStartTime() </code>
+
| <code>Vector GetCenter()</code>
| No Description Set
+
| Get vector to center of object - absolute coords
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetChannelTime | GetChannelTime]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetChildren | GetChildren]]  
| <code>float GetChannelTime() </code>
+
| <code>handle GetChildren()</code>
| No Description Set
+
| Get the entities parented to this entity.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetCloneSource | GetCloneSource]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetContext | GetContext]]  
| <code>handle GetCloneSource() </code>
+
| <code>table GetContext(string name)</code>
| No Description Set
+
| GetContext( name ): looks up a context and returns it if available. May return string, float, or null (if the context isn't found).
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetConceptRecipientType | GetConceptRecipientType]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetForwardVector | GetForwardVector]]  
| <code>int GetConceptRecipientType() </code>
+
| <code>Vector GetForwardVector()</code>
| No Description Set
+
| Get the forward vector of the entity.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetCooldown | GetCooldown]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetHealth | GetHealth]]  
| <code>float GetCooldown(int a) </code>
+
| <code>int GetHealth()</code>
| Get the cooldown duration for this ability at a given level, not the amount of cooldown actually left.
+
| Get the health of this entity.  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetCooldownTime | GetCooldownTime]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetLocalAngles | GetLocalAngles]]  
| <code>float GetCooldownTime() </code>
+
| <code>QAngle GetLocalAngles()</code>
| No Description Set
+
| Get entity local pitch, yaw, roll as a QAngle
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetCooldownTimeRemaining | GetCooldownTimeRemaining]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetLocalAngularVelocity | GetLocalAngularVelocity]]  
| <code>float GetCooldownTimeRemaining() </code>
+
| <code>QAngle GetLocalAngularVelocity()</code>
| No Description Set
+
| Maybe local angvel
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetCursorPosition | GetCursorPosition]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetLocalOrigin | GetLocalOrigin]]  
| <code>Vector GetCursorPosition() </code>
+
| <code>Vector GetLocalOrigin()</code>
| No Description Set
+
| Get entity local origin as a Vector
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetCursorTarget | GetCursorTarget]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetLocalScale | GetLocalScale]]  
| <code>handle GetCursorTarget() </code>
+
| <code>float GetLocalScale()</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetCursorTargetingNothing | GetCursorTargetingNothing]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetLocalVelocity | GetLocalVelocity]]  
| <code>bool GetCursorTargetingNothing() </code>
+
| <code>Vector GetLocalVelocity()</code>
| No Description Set
+
| Get Entity relative velocity.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetDuration | GetDuration]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetMass | GetMass]]  
| <code>float GetDuration() </code>
+
| <code>float GetMass()</code>
| No Description Set
+
| Get the mass of an entity. (returns 0 if it doesn't have a physics object)
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetGoldCost | GetGoldCost]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetMaxHealth | GetMaxHealth]]  
| <code>int GetGoldCost(int a) </code>
+
| <code>int GetMaxHealth()</code>
| No Description Set
+
| Get the maximum health of this entity.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetGoldCostForUpgrade | GetGoldCostForUpgrade]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetModelName | GetModelName]]  
| <code>int GetGoldCostForUpgrade(int a) </code>
+
| <code>string GetModelName()</code>
| No Description Set
+
| Returns the name of the model.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetHeroLevelRequiredToUpgrade | GetHeroLevelRequiredToUpgrade]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetMoveParent | GetMoveParent]]  
| <code>int GetHeroLevelRequiredToUpgrade() </code>
+
| <code>handle GetMoveParent()</code>
| No Description Set
+
| If in hierarchy, retrieves the entity's parent.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetIntrinsicModifierName | GetIntrinsicModifierName]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetOrigin | GetOrigin]]  
| <code>string GetIntrinsicModifierName() </code>
+
| <code>Vector GetOrigin()</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetLevel | GetLevel]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetOwner | GetOwner]]  
| <code>int GetLevel() </code>
+
| <code>handle GetOwner()</code>
| Get the current level of the ability
+
| Gets this entity's owner
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetLevelSpecialValueFor | GetLevelSpecialValueFor]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetOwnerEntity | GetOwnerEntity]]  
| <code>table GetLevelSpecialValueFor(string a, int b) </code>
+
| <code>handle GetOwnerEntity()</code>
| No Description Set
+
| Get the owner entity, if there is one
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetManaCost | GetManaCost]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetRightVector | GetRightVector]]  
| <code>int GetManaCost(int a) </code>
+
| <code>Vector GetRightVector()</code>
| No Description Set
+
| Get the right vector of the entity.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetMaxLevel | GetMaxLevel]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetRootMoveParent | GetRootMoveParent]]  
| <code>int GetMaxLevel() </code>
+
| <code>handle GetRootMoveParent()</code>
| No Description Set
+
| If in hierarchy, walks up the hierarchy to find the root parent.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetModifierValue | GetModifierValue]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetSoundDuration | GetSoundDuration]]  
| <code>float GetModifierValue() </code>
+
| <code>float GetSoundDuration(string soundname, string actormodel)</code>
| No Description Set
+
| Returns float duration of the sound. Takes soundname and optional actormodelname.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetModifierValueBonus | GetModifierValueBonus]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetTeam | GetTeam]]  
| <code>float GetModifierValueBonus() </code>
+
| <code>int GetTeam()</code>
| No Description Set
+
| Get the team number of this entity.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetPlaybackRateOverride | GetPlaybackRateOverride]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetTeamNumber | GetTeamNumber]]  
| <code>float GetPlaybackRateOverride() </code>
+
| <code>int GetTeamNumber()</code>
| No Description Set
+
| Get the team number of this entity.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetSharedCooldownName | GetSharedCooldownName]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetUpVector | GetUpVector]]  
| <code>string GetSharedCooldownName() </code>
+
| <code>Vector GetUpVector()</code>
| No Description Set
+
| Get the up vector of the entity.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetSpecialValueFor | GetSpecialValueFor]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetVelocity | GetVelocity]]  
| <code>table GetSpecialValueFor(string a) </code>
+
| <code>Vector GetVelocity()</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetStolenActivityModifier | GetStolenActivityModifier]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.HasAttribute | HasAttribute]]  
| <code>string GetStolenActivityModifier() </code>
+
| <code>bool HasAttribute(string pName)</code>
| No Description Set
+
| See if an entity has a particular attribute.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetToggleState | GetToggleState]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.IsAlive | IsAlive]]  
| <code>bool GetToggleState() </code>
+
| <code>bool IsAlive()</code>
| No Description Set
+
| Is this entity alive?
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.HeroXPChange | HeroXPChange]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.IsNPC | IsNPC]]  
| <code>bool HeroXPChange(float a) </code>
+
| <code>bool IsNPC()</code>
| No Description Set
+
| Is this entity an CAI_BaseNPC?
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.IncrementModifierRefCount | IncrementModifierRefCount]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.IsPlayer | IsPlayer]]  
| <code>void IncrementModifierRefCount() </code>
+
| <code>bool IsPlayer()</code>
| No Description Set
+
| Is this entity a player?
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.IsActivated | IsActivated]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.Kill | Kill]]  
| <code>bool IsActivated() </code>
+
| <code>void Kill()</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.IsAttributeBonus | IsAttributeBonus]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.NextMovePeer | NextMovePeer]]  
| <code>bool IsAttributeBonus() </code>
+
| <code>handle NextMovePeer()</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.IsChanneling | IsChanneling]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.OverrideFriction | OverrideFriction]]  
| <code>bool IsChanneling() </code>
+
| <code>void OverrideFriction(float duration, float friction)</code>
| Returns whether the ability is currently channeling.
+
| Takes duration, value for a temporary override.  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.IsCooldownReady | IsCooldownReady]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.PrecacheScriptSound | PrecacheScriptSound]]  
| <code>bool IsCooldownReady() </code>
+
| <code>void PrecacheScriptSound(string soundname)</code>
| No Description Set
+
| Precache a sound for later playing.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.IsCosmetic | IsCosmetic]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.RemoveEffects | RemoveEffects]]  
| <code>bool IsCosmetic() </code>
+
| <code>void RemoveEffects(int nFlags)</code>
| No Description Set
+
| RemoveEffects( int ): Removes the render effect flag.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.IsFullyCastable | IsFullyCastable]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.SetAbsAngles | SetAbsAngles]]  
| <code>bool IsFullyCastable() </code>
+
| <code>void SetAbsAngles(float fPitch, float fYaw, float fRoll)</code>
| Returns whether the ability can be cast.
+
| Set entity pitch, yaw, roll by component.  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.IsHidden | IsHidden]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.SetAbsOrigin | SetAbsOrigin]]  
| <code>bool IsHidden() </code>
+
| <code>void SetAbsOrigin(Vector origin)</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.IsHiddenWhenStolen | IsHiddenWhenStolen]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.SetAbsScale | SetAbsScale]]  
| <code>bool IsHiddenWhenStolen() </code>
+
| <code>void SetAbsScale(float flScale)</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.IsInAbilityPhase | IsInAbilityPhase]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.SetAngles | SetAngles]]  
| <code>bool IsInAbilityPhase() </code>
+
| <code>void SetAngles(float fPitch, float fYaw, float fRoll)</code>
| Returns whether the ability is currently casting.
+
| Set entity pitch, yaw, roll by component.  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.IsItem | IsItem]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.SetAngularVelocity | SetAngularVelocity]]  
| <code>bool IsItem() </code>
+
| <code>void SetAngularVelocity(float pitchVel, float yawVel, float rollVel)</code>
| No Description Set
+
| Set the local angular velocity - takes float pitch,yaw,roll velocities
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.IsOwnersGoldEnough | IsOwnersGoldEnough]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.SetConstraint | SetConstraint]]  
| <code>bool IsOwnersGoldEnough(int a) </code>
+
| <code>void SetConstraint(Vector vPos)</code>
| No Description Set
+
| Set the position of the constraint.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.IsOwnersGoldEnoughForUpgrade | IsOwnersGoldEnoughForUpgrade]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.SetContext | SetContext]]  
| <code>bool IsOwnersGoldEnoughForUpgrade() </code>
+
| <code>void SetContext(string pName, string pValue, float duration)</code>
| No Description Set
+
| SetContext( name , value, duration ): store any key/value pair in this entity's dialog contexts. Value must be a string. Will last for duration (set 0 to mean 'forever').
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.IsOwnersManaEnough | IsOwnersManaEnough]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.SetContextNum | SetContextNum]]  
| <code>bool IsOwnersManaEnough() </code>
+
| <code>void SetContextNum(string pName, float fValue, float duration)</code>
| No Description Set
+
| SetContextNum( name , value, duration ): store any key/value pair in this entity's dialog contexts. Value must be a number (int or float). Will last for duration (set 0 to mean 'forever').
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.IsPassive | IsPassive]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.SetContextThink | SetContextThink]]  
| <code>bool IsPassive() </code>
+
| <code>void SetContextThink(string pszContextName, handle hThinkFunc, float flInterval)</code>
| No Description Set
+
| Set a think function on this entity.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.IsSharedWithTeammates | IsSharedWithTeammates]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.SetEntityName | SetEntityName]]  
| <code>bool IsSharedWithTeammates() </code>
+
| <code>void SetEntityName(string pName)</code>
| No Description Set
+
| Set the name of an entity.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.IsStealable | IsStealable]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.SetForwardVector | SetForwardVector]]  
| <code>bool IsStealable() </code>
+
| <code>void SetForwardVector(Vector v)</code>
| No Description Set
+
| Set the orientation of the entity to have this forward vector.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.IsStolen | IsStolen]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.SetFriction | SetFriction]]  
| <code>bool IsStolen() </code>
+
| <code>void SetFriction(float flFriction)</code>
| No Description Set
+
| Set PLAYER friction, ignored for objects.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.IsToggle | IsToggle]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.SetGravity | SetGravity]]  
| <code>bool IsToggle() </code>
+
| <code>void SetGravity(float flGravity)</code>
| No Description Set
+
| Set PLAYER gravity, ignored for objects.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.IsTrained | IsTrained]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.SetHealth | SetHealth]]  
| <code>bool IsTrained() </code>
+
| <code>void SetHealth(int nHealth)</code>
| No Description Set
+
| Set the health of this entity.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.MarkAbilityButtonDirty | MarkAbilityButtonDirty]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.SetLocalAngles | SetLocalAngles]]  
| <code>void MarkAbilityButtonDirty() </code>
+
| <code>void SetLocalAngles(float fPitch, float fYaw, float fRoll)</code>
| Mark the ability button for this ability as needing a refresh
+
| Set entity local pitch, yaw, roll by component
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.NumModifiersUsingAbility | NumModifiersUsingAbility]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.SetLocalOrigin | SetLocalOrigin]]  
| <code>int NumModifiersUsingAbility() </code>
+
| <code>void SetLocalOrigin(Vector origin)</code>
| No Description Set
+
| Set entity local origin from a Vector
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.OnAbilityPhaseInterrupted | OnAbilityPhaseInterrupted]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.SetLocalScale | SetLocalScale]]  
| <code>void OnAbilityPhaseInterrupted() </code>
+
| <code>void SetLocalScale(float flScale)</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.OnAbilityPhaseStart | OnAbilityPhaseStart]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.SetMass | SetMass]]  
| <code>bool OnAbilityPhaseStart() </code>
+
| <code>void SetMass(float flMass)</code>
| No Description Set
+
| Set the mass of an entity. (does nothing if it doesn't have a physics object)
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.OnAbilityPinged | OnAbilityPinged]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.SetMaxHealth | SetMaxHealth]]  
| <code>void OnAbilityPinged() </code>
+
| <code>void SetMaxHealth(int amt)</code>
| No Description Set
+
| Set the maximum health of this entity.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.OnChannelFinish | OnChannelFinish]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.SetOrigin | SetOrigin]]  
| <code>void OnChannelFinish(bool a) </code>
+
| <code>void SetOrigin(Vector v)</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.OnChannelThink | OnChannelThink]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.SetOwner | SetOwner]]  
| <code>void OnChannelThink(float a) </code>
+
| <code>void SetOwner(handle pOwner)</code>
| No Description Set
+
| Sets this entity's owner
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.OnHeroCalculateStatBonus | OnHeroCalculateStatBonus]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.SetParent | SetParent]]  
| <code>void OnHeroCalculateStatBonus() </code>
+
| <code>void SetParent(handle hParent, string pAttachmentname)</code>
| No Description Set
+
| Set the parent for this entity.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.OnHeroLevelUp | OnHeroLevelUp]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.SetTeam | SetTeam]]  
| <code>void OnHeroLevelUp() </code>
+
| <code>void SetTeam(int iTeamNum)</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.OnInventoryContentsChanged | OnInventoryContentsChanged]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.SetVelocity | SetVelocity]]  
| <code>void OnInventoryContentsChanged() </code>
+
| <code>void SetVelocity(Vector vecVelocity)</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.OnOwnerDied | OnOwnerDied]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.StopSound | StopSound]]  
| <code>void OnOwnerDied() </code>
+
| <code>void StopSound(string soundname)</code>
| No Description Set
+
| Stops a named sound playing from this entity.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.OnOwnerSpawned | OnOwnerSpawned]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.TakeDamage | TakeDamage]]  
| <code>void OnOwnerSpawned() </code>
+
| <code>int TakeDamage(handle hInfo)</code>
| No Description Set
+
| Apply damage to this entity. Use CreateDamageInfo() to create a damageinfo object.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.OnSpellStart | OnSpellStart]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.TransformPointEntityToWorld | TransformPointEntityToWorld]]  
| <code>void OnSpellStart() </code>
+
| <code>Vector TransformPointEntityToWorld(Vector vPoint)</code>
| No Description Set
+
| Returns the input Vector transformed from entity to world space
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.OnToggle | OnToggle]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.TransformPointWorldToEntity | TransformPointWorldToEntity]]  
| <code>void OnToggle() </code>
+
| <code>Vector TransformPointWorldToEntity(Vector vPoint)</code>
| No Description Set
+
| Returns the input Vector transformed from world to entity space
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.OnUpgrade | OnUpgrade]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.Trigger | Trigger]]  
| <code>void OnUpgrade() </code>
+
| <code>void Trigger()</code>
| No Description Set
+
| Fires off this entity's OnTrigger responses.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.PayGoldCost | PayGoldCost]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.ValidatePrivateScriptScope | ValidatePrivateScriptScope]]  
| <code>void PayGoldCost() </code>
+
| <code>void ValidatePrivateScriptScope()</code>
| No Description Set
+
| Validates the private script scope and creates it if one doesn't exist.
|-
+
|}
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.PayGoldCostForUpgrade | PayGoldCostForUpgrade]]
+
 
| <code>void PayGoldCostForUpgrade() </code>
+
==== CBaseFlex ====
| No Description Set
+
:::::extends [[#CBaseAnimating|CBaseAnimating]]
|-
+
''No Description Set''
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.PayManaCost | PayManaCost]]
+
{| class="standard-table" style="width: 100%;"
| <code>void PayManaCost() </code>
+
! Function
| No Description Set
+
! Signature
 +
! Description  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.PlaysDefaultAnimWhenStolen | PlaysDefaultAnimWhenStolen]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseFlex.GetCurrentScene | GetCurrentScene]]  
| <code>bool PlaysDefaultAnimWhenStolen() </code>
+
| <code>handle GetCurrentScene()</code>
| No Description Set
+
| Returns the instance of the oldest active scene entity (if any).
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.ProcsMagicStick | ProcsMagicStick]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseFlex.GetSceneByIndex | GetSceneByIndex]]  
| <code>bool ProcsMagicStick() </code>
+
| <code>handle GetSceneByIndex(int index)</code>
| No Description Set
+
| Returns the instance of the scene entity at the specified index.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.RefCountsModifiers | RefCountsModifiers]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseFlex.ScriptPlayScene | ScriptPlayScene]]  
| <code>bool RefCountsModifiers() </code>
+
| <code>float ScriptPlayScene(string pszScene, float flDelay)</code>
| No Description Set
+
| ( vcd file, delay ) - play specified vcd file
 +
|}
 +
 
 +
==== CBaseModelEntity ====
 +
:::::extends [[#CBaseEntity|CBaseEntity]]
 +
''No Description Set''
 +
{| class="standard-table" style="width: 100%;"
 +
! Function
 +
! Signature
 +
! Description
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.RefundManaCost | RefundManaCost]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseModelEntity.GetMaterialGroupHash | GetMaterialGroupHash]]  
| <code>void RefundManaCost() </code>
+
| <code>unsigned GetMaterialGroupHash()</code>
| No Description Set
+
| GetMaterialGroupHash(): Get the material group hash of this entity.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.ResetToggleOnRespawn | ResetToggleOnRespawn]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseModelEntity.GetMaterialGroupMask | GetMaterialGroupMask]]  
| <code>bool ResetToggleOnRespawn() </code>
+
| <code>uint64 GetMaterialGroupMask()</code>
| No Description Set
+
| GetMaterialGroupMask(): Get the mesh group mask of this entity.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.SetAbilityIndex | SetAbilityIndex]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseModelEntity.GetRenderAlpha | GetRenderAlpha]]  
| <code>void SetAbilityIndex(int a) </code>
+
| <code>int GetRenderAlpha()</code>
| No Description Set
+
| GetRenderAlpha(): Get the alpha modulation of this entity.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.SetActivated | SetActivated]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseModelEntity.GetRenderColor | GetRenderColor]]  
| <code>void SetActivated(bool a) </code>
+
| <code>Vector GetRenderColor()</code>
| No Description Set
+
| GetRenderColor(): Get the render color of the entity.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.SetChanneling | SetChanneling]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseModelEntity.SetBodygroup | SetBodygroup]]  
| <code>void SetChanneling(bool a) </code>
+
| <code>void SetBodygroup(int iGroup, int iValue)</code>
| No Description Set
+
| Sets a bodygroup.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.SetHidden | SetHidden]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseModelEntity.SetBodygroupByName | SetBodygroupByName]]  
| <code>void SetHidden(bool a) </code>
+
| <code>void SetBodygroupByName(string pName, int iValue)</code>
| No Description Set
+
| Sets a bodygroup by name.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.SetInAbilityPhase | SetInAbilityPhase]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseModelEntity.SetLightGroup | SetLightGroup]]  
| <code>void SetInAbilityPhase(bool a) </code>
+
| <code>void SetLightGroup(string pLightGroup)</code>
| No Description Set
+
| SetLightGroup( string ): Sets the light group of the entity.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.SetLevel | SetLevel]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseModelEntity.SetMaterialGroup | SetMaterialGroup]]  
| <code>void SetLevel(int a) </code>
+
| <code>void SetMaterialGroup(string pMaterialGroup)</code>
| Sets the level of this ability.
+
| SetMaterialGroup( string ): Set the material group of this entity.  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.SetOverrideCastPoint | SetOverrideCastPoint]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseModelEntity.SetMaterialGroupHash | SetMaterialGroupHash]]  
| <code>void SetOverrideCastPoint(float a) </code>
+
| <code>void SetMaterialGroupHash(unsigned nHash)</code>
| No Description Set
+
| SetMaterialGroupHash( uint32 ): Set the material group hash of this entity.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.SetRefCountsModifiers | SetRefCountsModifiers]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseModelEntity.SetMaterialGroupMask | SetMaterialGroupMask]]  
| <code>void SetRefCountsModifiers(bool a) </code>
+
| <code>void SetMaterialGroupMask(uint64 nMeshGroupMask)</code>
| No Description Set
+
| SetMaterialGroupMask( uint64 ): Set the mesh group mask of this entity.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.SetStolen | SetStolen]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseModelEntity.SetModel | SetModel]]  
| <code>void SetStolen(bool a) </code>
+
| <code>void SetModel(string pModelName)</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.ShouldUseResources | ShouldUseResources]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseModelEntity.SetRenderAlpha | SetRenderAlpha]]  
| <code>bool ShouldUseResources() </code>
+
| <code>void SetRenderAlpha(int nAlpha)</code>
| No Description Set
+
| SetRenderAlpha( int ): Set the alpha modulation of this entity.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.SpeakAbilityConcept | SpeakAbilityConcept]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseModelEntity.SetRenderColor | SetRenderColor]]  
| <code>void SpeakAbilityConcept(int a) </code>
+
| <code>void SetRenderColor(int r, int g, int b)</code>
| No Description Set
+
| SetRenderColor( r, g, b ): Sets the render color of the entity.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.SpeakTrigger | SpeakTrigger]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseModelEntity.SetRenderMode | SetRenderMode]]  
| <code>bool SpeakTrigger() </code>
+
| <code>void SetRenderMode(int nMode)</code>
| No Description Set
+
| SetRenderMode( int ): Sets the render mode of the entity.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.StartCooldown | StartCooldown]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseModelEntity.SetSingleMeshGroup | SetSingleMeshGroup]]  
| <code>void StartCooldown(float a) </code>
+
| <code>void SetSingleMeshGroup(string pMeshGroupName)</code>
| param: flCooldown
+
| SetSingleMeshGroup( string ): Set a single mesh group for this entity.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.ToggleAbility | ToggleAbility]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseModelEntity.SetSize | SetSize]]  
| <code>void ToggleAbility() </code>
+
| <code>void SetSize(Vector mins, Vector maxs)</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.ToggleAutoCast | ToggleAutoCast]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseModelEntity.SetSkin | SetSkin]]  
| <code>void ToggleAutoCast() </code>
+
| <code>void SetSkin(int iSkin)</code>
| No Description Set
+
| Set skin (int).  
|-
 
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.UpgradeAbility | UpgradeAbility]]
 
| <code>void UpgradeAbility() </code>
 
| No Description Set
 
|-
 
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.UseResources | UseResources]]
 
| <code>void UseResources(bool a, bool b, bool c) </code>
 
| No Description Set
 
 
|}
 
|}
  
 
+
==== CBasePlayer ====
=== CDOTA_Ability_Animation_Attack ===
+
:::::extends [[#CBaseCombatCharacter|CBaseCombatCharacter]]
:::::extends [[#CDOTABaseAbility| CDOTABaseAbility]]
 
 
''No Description Set''
 
''No Description Set''
 
{| class="standard-table" style="width: 100%;"
 
{| class="standard-table" style="width: 100%;"
Line 1,466: Line 1,423:
 
! Description  
 
! Description  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Ability_Animation_Attack.SetPlaybackRate | SetPlaybackRate]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBasePlayer.AreChaperoneBoundsVisible | AreChaperoneBoundsVisible]]  
| <code>void SetPlaybackRate(float a) </code>
+
| <code>bool AreChaperoneBoundsVisible()</code>
| Override playbackrate
+
| Returns whether this player's chaperone bounds are visible.
 +
|-
 +
| [[Dota 2 Workshop Tools/Scripting/API/CBasePlayer.GetHMDAnchor | GetHMDAnchor]]
 +
| <code>handle GetHMDAnchor()</code>
 +
| Returns the HMD anchor entity for this player if it exists.
 +
|-
 +
| [[Dota 2 Workshop Tools/Scripting/API/CBasePlayer.GetHMDAvatar | GetHMDAvatar]]
 +
| <code>handle GetHMDAvatar()</code>
 +
| Returns the HMD Avatar entity for this player if it exists.
 +
|-
 +
| [[Dota 2 Workshop Tools/Scripting/API/CBasePlayer.GetPlayArea | GetPlayArea]]
 +
| <code>Vector GetPlayArea(int nPoint)</code>
 +
| Returns the Vector position of the point you ask for. Pass 0-3 to get the four points.
 +
|-
 +
| [[Dota 2 Workshop Tools/Scripting/API/CBasePlayer.GetUserID | GetUserID]]
 +
| <code>int GetUserID()</code>
 +
| Returns the player's user id.
 +
|-
 +
| [[Dota 2 Workshop Tools/Scripting/API/CBasePlayer.GetVRControllerType | GetVRControllerType]]
 +
| <code><unknown> GetVRControllerType()</code>
 +
| Returns the type of controller being used while in VR.
 +
|-
 +
| [[Dota 2 Workshop Tools/Scripting/API/CBasePlayer.IsNoclipping | IsNoclipping]]
 +
| <code>bool IsNoclipping()</code>
 +
| Returns true if the player is in noclip mode.
 +
|-
 +
| [[Dota 2 Workshop Tools/Scripting/API/CBasePlayer.IsUsePressed | IsUsePressed]]
 +
| <code>bool IsUsePressed()</code>
 +
| Returns true if the use key is pressed.
 +
|-
 +
| [[Dota 2 Workshop Tools/Scripting/API/CBasePlayer.IsVRControllerButtonPressed | IsVRControllerButtonPressed]]
 +
| <code>bool IsVRControllerButtonPressed(int nButton)</code>
 +
| Returns true if the controller button is pressed.
 +
|-
 +
| [[Dota 2 Workshop Tools/Scripting/API/CBasePlayer.IsVRDashboardShowing | IsVRDashboardShowing]]
 +
| <code>bool IsVRDashboardShowing()</code>
 +
| Returns true if the SteamVR dashboard is showing for this player.
 
|}
 
|}
  
 
+
==== CBaseTrigger ====
=== CDOTA_Ability_Animation_TailSpin ===
+
:::::extends [[#CBaseEntity|CBaseEntity]]
:::::extends [[#CDOTABaseAbility| CDOTABaseAbility]]
 
 
''No Description Set''
 
''No Description Set''
 
{| class="standard-table" style="width: 100%;"
 
{| class="standard-table" style="width: 100%;"
Line 1,480: Line 1,472:
 
! Description  
 
! Description  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Ability_Animation_TailSpin.SetPlaybackRate | SetPlaybackRate]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBaseTrigger.Disable | Disable]]  
| <code>void SetPlaybackRate(float a) </code>
+
| <code>void Disable()</code>
| Override playbackrate
+
| Disable's the trigger
 +
|-
 +
| [[Dota 2 Workshop Tools/Scripting/API/CBaseTrigger.Enable | Enable]]
 +
| <code>void Enable()</code>
 +
| Enable the trigger
 +
|-
 +
| [[Dota 2 Workshop Tools/Scripting/API/CBaseTrigger.IsTouching | IsTouching]]
 +
| <code>bool IsTouching(handle hEnt)</code>
 +
| Checks whether the passed entity is touching the trigger.
 
|}
 
|}
  
 
+
==== CBodyComponent ====
=== CDOTA_Ability_Nian_Leap ===
 
:::::extends [[#CDOTABaseAbility| CDOTABaseAbility]]
 
 
''No Description Set''
 
''No Description Set''
 
{| class="standard-table" style="width: 100%;"
 
{| class="standard-table" style="width: 100%;"
Line 1,494: Line 1,492:
 
! Description  
 
! Description  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Ability_Nian_Leap.SetPlaybackRate | SetPlaybackRate]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CBodyComponent.AddImpulseAtPosition | AddImpulseAtPosition]]  
| <code>void SetPlaybackRate(float a) </code>
+
| <code>void AddImpulseAtPosition(Vector Vector_1, Vector Vector_2)</code>
| Override playbackrate
+
| Apply an impulse at a worldspace position to the physics
|}
+
|-
 
+
| [[Dota 2 Workshop Tools/Scripting/API/CBodyComponent.AddVelocity | AddVelocity]]
 
+
| <code>void AddVelocity(Vector Vector_1, Vector Vector_2)</code>
=== CDOTA_Ability_Nian_Dive ===
+
| Add linear and angular velocity to the physics object
:::::extends [[#CDOTABaseAbility| CDOTABaseAbility]]
+
|-
''No Description Set''
+
| [[Dota 2 Workshop Tools/Scripting/API/CBodyComponent.DetachFromParent | DetachFromParent]]
 +
| <code>void DetachFromParent()</code>
 +
| Detach from its parent
 +
|-
 +
| [[Dota 2 Workshop Tools/Scripting/API/CBodyComponent.GetSequence | GetSequence]]
 +
| <code><unknown> GetSequence()</code>
 +
| Returns the active sequence
 +
 +
|-
 +
| [[Dota 2 Workshop Tools/Scripting/API/CBodyComponent.IsAttachedToParent | IsAttachedToParent]]
 +
| <code>bool IsAttachedToParent()</code>
 +
| Is attached to parent
 +
|-
 +
| [[Dota 2 Workshop Tools/Scripting/API/CBodyComponent.LookupSequence | LookupSequence]]
 +
| <code><unknown> LookupSequence(string string_1)</code>
 +
| Returns a sequence id given a name
 +
 +
|-
 +
| [[Dota 2 Workshop Tools/Scripting/API/CBodyComponent.SequenceDuration | SequenceDuration]]
 +
| <code>float SequenceDuration(string string_1)</code>
 +
| Returns the duration in seconds of the specified sequence
 +
|-
 +
| [[Dota 2 Workshop Tools/Scripting/API/CBodyComponent.SetAngularVelocity | SetAngularVelocity]]
 +
| <code>void SetAngularVelocity(Vector Vector_1)</code>
 +
 +
|-
 +
| [[Dota 2 Workshop Tools/Scripting/API/CBodyComponent.SetAnimation | SetAnimation]]
 +
| <code>void SetAnimation(string string_1)</code>
 +
| Pass string for the animation to play on this model
 +
|-
 +
| [[Dota 2 Workshop Tools/Scripting/API/CBodyComponent.SetMaterialGroup | SetMaterialGroup]]
 +
| <code>void SetMaterialGroup(utlstringtoken utlstringtoken_1)</code>
 +
 +
|-
 +
| [[Dota 2 Workshop Tools/Scripting/API/CBodyComponent.SetVelocity | SetVelocity]]
 +
| <code>void SetVelocity(Vector Vector_1)</code>
 +
|
 +
|}
 +
 
 +
==== CCustomGameEventManager ====
 +
''Global accessor variable: <code>CustomGameEventManager</code>''
 
{| class="standard-table" style="width: 100%;"
 
{| class="standard-table" style="width: 100%;"
 
! Function  
 
! Function  
Line 1,508: Line 1,546:
 
! Description  
 
! Description  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Ability_Nian_Dive.SetPlaybackRate | SetPlaybackRate]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CCustomGameEventManager.RegisterListener | RegisterListener]]
| <code>void SetPlaybackRate(float a) </code>
+
| <code>int RegisterListener(string string_1, handle handle_2)</code>
| Override playbackrate
+
| ( string EventName, func CallbackFunction ) - Register a callback to be called when a particular custom event arrives. Returns a listener ID that can be used to unregister later.
 +
|-
 +
| [[Dota 2 Workshop Tools/Scripting/API/CCustomGameEventManager.Send_ServerToAllClients | Send_ServerToAllClients]]
 +
| <code>void Send_ServerToAllClients(string string_1, handle handle_2)</code>
 +
| ( string EventName, table EventData )
 +
|-
 +
| [[Dota 2 Workshop Tools/Scripting/API/CCustomGameEventManager.Send_ServerToPlayer | Send_ServerToPlayer]]
 +
| <code>void Send_ServerToPlayer(handle handle_1, string string_2, handle handle_3)</code>
 +
| ( Entity Player, string EventName, table EventData )
 +
|-
 +
| [[Dota 2 Workshop Tools/Scripting/API/CCustomGameEventManager.Send_ServerToTeam | Send_ServerToTeam]]
 +
| <code>void Send_ServerToTeam(int int_1, string string_2, handle handle_3)</code>
 +
| ( int TeamNumber, string EventName, table EventData )
 +
|-
 +
| [[Dota 2 Workshop Tools/Scripting/API/CCustomGameEventManager.UnregisterListener | UnregisterListener]]  
 +
| <code>void UnregisterListener(int int_1)</code>
 +
| ( int ListnerID ) - Unregister a specific listener
 
|}
 
|}
  
 
+
==== CCustomNetTableManager ====
=== CDOTA_Ability_Nian_Roar ===
+
''Global accessor variable: <code>CustomNetTables</code>''
:::::extends [[#CDOTABaseAbility| CDOTABaseAbility]]
 
''No Description Set''
 
 
{| class="standard-table" style="width: 100%;"
 
{| class="standard-table" style="width: 100%;"
 
! Function  
 
! Function  
Line 1,522: Line 1,574:
 
! Description  
 
! Description  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Ability_Nian_Roar.GetCastCount | GetCastCount]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CCustomNetTableManager.GetTableValue | GetTableValue]]  
| <code>int GetCastCount() </code>
+
| <code>table GetTableValue(string string_1, string string_2)</code>
| Number of times Nian has used the roar
+
| ( string TableName, string KeyName )
 +
|-
 +
| [[Dota 2 Workshop Tools/Scripting/API/CCustomNetTableManager.SetTableValue | SetTableValue]]
 +
| <code>bool SetTableValue(string string_1, string string_2, handle handle_3)</code>
 +
| ( string TableName, string KeyName, script_table Value )
 
|}
 
|}
  
 
+
==== CDOTABaseAbility ====
=== CDOTA_Item ===
+
:::::extends [[#CBaseEntity|CBaseEntity]]
:::::extends [[#CDOTABaseAbility| CDOTABaseAbility]]
 
 
''No Description Set''
 
''No Description Set''
 
{| class="standard-table" style="width: 100%;"
 
{| class="standard-table" style="width: 100%;"
Line 1,536: Line 1,591:
 
! Description  
 
! Description  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item.GetContainer | GetContainer]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.CanAbilityBeUpgraded | CanAbilityBeUpgraded]]  
| <code>handle GetContainer() </code>
+
| <code><unknown> CanAbilityBeUpgraded()</code>
| Get the container for this item.
+
|
 +
|-
 +
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.CastAbility | CastAbility]]
 +
| <code>bool CastAbility()</code>
 +
| You are probably looking for OnSpellStart()
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item.GetCost | GetCost]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.ContinueCasting | ContinueCasting]]  
| <code>int GetCost() </code>
+
| <code>bool ContinueCasting()</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item.GetCurrentCharges | GetCurrentCharges]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.CreateVisibilityNode | CreateVisibilityNode]]  
| <code>int GetCurrentCharges() </code>
+
| <code>void CreateVisibilityNode(Vector vLocation, float fRadius, float fDuration)</code>
| Get the number of charges this item currently has.
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item.GetInitialCharges | GetInitialCharges]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.DecrementModifierRefCount | DecrementModifierRefCount]]  
| <code>int GetInitialCharges() </code>
+
| <code>void DecrementModifierRefCount()</code>
| Get the initial number of charges this item has.
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item.GetPurchaser | GetPurchaser]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.EndChannel | EndChannel]]  
| <code>handle GetPurchaser() </code>
+
| <code>void EndChannel(bool bInterrupted)</code>
| Get the purchaser for this item.
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item.GetPurchaseTime | GetPurchaseTime]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.EndCooldown | EndCooldown]]  
| <code>float GetPurchaseTime() </code>
+
| <code>void EndCooldown()</code>
| Get the purchase time of this item
+
| Clear the cooldown remaining on this ability.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item.GetShareability | GetShareability]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetAOERadius | GetAOERadius]]  
| <code>int GetShareability() </code>
+
| <code>int GetAOERadius()</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item.IsPermanent | IsPermanent]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetAbilityDamage | GetAbilityDamage]]  
| <code>bool IsPermanent() </code>
+
| <code>int GetAbilityDamage()</code>
| Is this a permanent item?
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item.LaunchLoot | LaunchLoot]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetAbilityDamageType | GetAbilityDamageType]]  
| <code>void LaunchLoot(bool a, float b, float c, Vector d) </code>
+
| <code>int GetAbilityDamageType()</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item.SetCurrentCharges | SetCurrentCharges]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetAbilityIndex | GetAbilityIndex]]  
| <code>void SetCurrentCharges(int a) </code>
+
| <code>int GetAbilityIndex()</code>
| Set the number of charges on this item
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item.SetPurchaser | SetPurchaser]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetAbilityKeyValues | GetAbilityKeyValues]]  
| <code>void SetPurchaser(handle a) </code>
+
| <code>table GetAbilityKeyValues()</code>
| Set the purchaser of record for this item.
+
| Gets the key values definition for this ability.  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item.SetPurchaseTime | SetPurchaseTime]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetAbilityName | GetAbilityName]]  
| <code>void SetPurchaseTime(float a) </code>
+
| <code>string GetAbilityName()</code>
| Set the purchase time of this item
+
| Returns the name of this ability.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item.SetStacksWithOtherOwners | SetStacksWithOtherOwners]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetAbilityTargetFlags | GetAbilityTargetFlags]]  
| <code>void SetStacksWithOtherOwners(bool a) </code>
+
| <code>int GetAbilityTargetFlags()</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item.StacksWithOtherOwners | StacksWithOtherOwners]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetAbilityTargetTeam | GetAbilityTargetTeam]]  
| <code>bool StacksWithOtherOwners() </code>
+
| <code>int GetAbilityTargetTeam()</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item.Think | Think]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetAbilityTargetType | GetAbilityTargetType]]  
| <code>void Think() </code>
+
| <code>int GetAbilityTargetType()</code>
| Think this item
+
|
|}
+
|-
 
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetAbilityType | GetAbilityType]]  
 
+
| <code>int GetAbilityType()</code>
=== CDOTA_Item_Physical ===
+
:::::extends [[#CBaseAnimating| CBaseAnimating]]
+
|-
''No Description Set''
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetAnimationIgnoresModelScale | GetAnimationIgnoresModelScale]]
{| class="standard-table" style="width: 100%;"
+
| <code>bool GetAnimationIgnoresModelScale()</code>
! Function
+
! Signature
 
! Description
 
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item_Physical.GetContainedItem | GetContainedItem]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetAssociatedPrimaryAbilities | GetAssociatedPrimaryAbilities]]  
| <code>handle GetContainedItem() </code>
+
| <code>string GetAssociatedPrimaryAbilities()</code>
| Returned the contained item.
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item_Physical.GetCreationTime | GetCreationTime]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetAssociatedSecondaryAbilities | GetAssociatedSecondaryAbilities]]  
| <code>float GetCreationTime() </code>
+
| <code>string GetAssociatedSecondaryAbilities()</code>
| Returns the game time when this item was created in the world
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item_Physical.SetContainedItem | SetContainedItem]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetAutoCastState | GetAutoCastState]]  
| <code>void SetContainedItem(handle a) </code>
+
| <code>bool GetAutoCastState()</code>
| Set the contained item.
+
|
|}
 
 
 
 
 
=== CDOTA_Item_DataDriven ===
 
:::::extends [[#CDOTA_Item| CDOTA_Item]]
 
''''
 
{| class="standard-table" style="width: 100%;"
 
! Function
 
! Signature
 
! Description
 
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item_DataDriven.ApplyDataDrivenModifier | ApplyDataDrivenModifier]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetBackswingTime | GetBackswingTime]]  
| <code>void ApplyDataDrivenModifier(handle source, handle target, string modifier_name, handle modifierArgs) </code>
+
| <code>float GetBackswingTime()</code>
|  
+
|
|}
 
 
 
 
 
=== CDOTA_Unit_Nian ===
 
:::::extends [[#CDOTA_BaseNPC_Creature| CDOTA_BaseNPC_Creature]]
 
''No Description Set''
 
{| class="standard-table" style="width: 100%;"
 
! Function
 
! Signature
 
! Description
 
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Unit_Nian.GetHorn | GetHorn]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetBehavior | GetBehavior]]  
| <code>handle GetHorn() </code>
+
| <code>int GetBehavior()</code>
| Is the Nian horn?
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Unit_Nian.GetTail | GetTail]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetCastPoint | GetCastPoint]]  
| <code>handle GetTail() </code>
+
| <code>float GetCastPoint()</code>
| Is the Nian's tail broken?
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Unit_Nian.IsHornAlive | IsHornAlive]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetCastRange | GetCastRange]]  
| <code>bool IsHornAlive() </code>
+
| <code>int GetCastRange(Vector vLocation, handle hTarget)</code>
| Is the Nian's horn broken?
+
| Gets the cast range of the ability.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Unit_Nian.IsTailAlive | IsTailAlive]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetCaster | GetCaster]]  
| <code>bool IsTailAlive() </code>
+
| <code>handle GetCaster()</code>
| Is the Nian's tail broken?
+
|
|}
 
 
 
 
 
=== CBasePlayer ===
 
''No Description Set''
 
{| class="standard-table" style="width: 100%;"
 
! Function
 
! Signature
 
! Description
 
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBasePlayer.IsNoclipping | IsNoclipping]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetChannelStartTime | GetChannelStartTime]]  
| <code>bool IsNoclipping() </code>
+
| <code>float GetChannelStartTime()</code>
| Returns true if the player is in noclip mode.
+
|
|}
 
 
 
 
 
=== CDOTAPlayer ===
 
:::::extends [[#CBaseAnimating| CBaseAnimating]]
 
''No Description Set''
 
{| class="standard-table" style="width: 100%;"
 
! Function
 
! Signature
 
! Description
 
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAPlayer.GetAssignedHero | GetAssignedHero]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetChannelTime | GetChannelTime]]  
| <code>handle GetAssignedHero() </code>
+
| <code>float GetChannelTime()</code>
| Get the player's hero.
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAPlayer.GetControlledRPGUnit | GetControlledRPGUnit]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetChannelledManaCostPerSecond | GetChannelledManaCostPerSecond]]  
| <code>handle GetControlledRPGUnit() </code>
+
| <code>int GetChannelledManaCostPerSecond(int iLevel)</code>
| Get the RPG unit this player controls.
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAPlayer.GetPlayerID | GetPlayerID]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetCloneSource | GetCloneSource]]  
| <code>int GetPlayerID() </code>
+
| <code>handle GetCloneSource()</code>
| Get the player's official PlayerID; notably is -1 when the player isn't yet on a team.
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAPlayer.MakeRandomHeroSelection | MakeRandomHeroSelection]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetConceptRecipientType | GetConceptRecipientType]]  
| <code>void MakeRandomHeroSelection() </code>
+
| <code>int GetConceptRecipientType()</code>
| Randoms this player's hero.
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAPlayer.SetKillCamUnit | SetKillCamUnit]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetCooldown | GetCooldown]]  
| <code>void SetKillCamUnit(handle a) </code>
+
| <code>float GetCooldown(int iLevel)</code>
| Set the kill cam unit for this hero.
+
| Get the cooldown duration for this ability at a given level, not the amount of cooldown actually left.  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAPlayer.SetMusicStatus | SetMusicStatus]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetCooldownTime | GetCooldownTime]]  
| <code>void SetMusicStatus(int nMusicStatus, float flIntensity) </code>
+
| <code>float GetCooldownTime()</code>
| Set the music status for this player, note this will only really apply if dota_music_battle_enable is off.
+
|
|}
 
 
 
 
 
=== CDOTA_PlayerResource ===
 
:::::extends [[#CBaseEntity| CBaseEntity]]
 
''No Description Set''
 
 
 
''Global accessor variable:'' <code>PlayerResource</code>
 
{| class="standard-table" style="width: 100%;"
 
! Function
 
! Signature
 
! Description
 
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.AddAegisPickup | AddAegisPickup]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetCooldownTimeRemaining | GetCooldownTimeRemaining]]  
| <code>void AddAegisPickup(int a) </code>
+
| <code>float GetCooldownTimeRemaining()</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.AddClaimedFarm | AddClaimedFarm]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetCursorPosition | GetCursorPosition]]  
| <code>void AddClaimedFarm(int a, float b) </code>
+
| <code>Vector GetCursorPosition()</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.AddGoldSpentOnSupport | AddGoldSpentOnSupport]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetCursorTarget | GetCursorTarget]]  
| <code>void AddGoldSpentOnSupport(int a, int b) </code>
+
| <code>handle GetCursorTarget()</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.AddRunePickup | AddRunePickup]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetCursorTargetingNothing | GetCursorTargetingNothing]]  
| <code>void AddRunePickup(int a) </code>
+
| <code>bool GetCursorTargetingNothing()</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.AreUnitsSharedWithPlayerID | AreUnitsSharedWithPlayerID]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetDuration | GetDuration]]  
| <code>bool AreUnitsSharedWithPlayerID(int a, int b) </code>
+
| <code>float GetDuration()</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.ClearKillsMatrix | ClearKillsMatrix]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetEffectiveCooldown | GetEffectiveCooldown]]  
| <code>void ClearKillsMatrix(int a) </code>
+
| <code>float GetEffectiveCooldown(int iLevel)</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.ClearLastHitMultikill | ClearLastHitMultikill]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetGoldCost | GetGoldCost]]  
| <code>void ClearLastHitMultikill(int a) </code>
+
| <code>int GetGoldCost(int iLevel)</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.ClearLastHitStreak | ClearLastHitStreak]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetGoldCostForUpgrade | GetGoldCostForUpgrade]]  
| <code>void ClearLastHitStreak(int a) </code>
+
| <code>int GetGoldCostForUpgrade(int iLevel)</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.ClearRawPlayerDamageMatrix | ClearRawPlayerDamageMatrix]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetHeroLevelRequiredToUpgrade | GetHeroLevelRequiredToUpgrade]]  
| <code>void ClearRawPlayerDamageMatrix(int a) </code>
+
| <code>int GetHeroLevelRequiredToUpgrade()</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.ClearStreak | ClearStreak]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetIntrinsicModifierName | GetIntrinsicModifierName]]  
| <code>void ClearStreak(int a) </code>
+
| <code>string GetIntrinsicModifierName()</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetAegisPickups | GetAegisPickups]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetLevel | GetLevel]]  
| <code>int GetAegisPickups(int a) </code>
+
| <code>int GetLevel()</code>
| No Description Set
+
| Get the current level of the ability.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetAssists | GetAssists]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetLevelSpecialValueFor | GetLevelSpecialValueFor]]  
| <code>int GetAssists(int a) </code>
+
| <code>table GetLevelSpecialValueFor(string szName, int nLevel)</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetBroadcasterChannel | GetBroadcasterChannel]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetManaCost | GetManaCost]]  
| <code><> GetBroadcasterChannel(int a) </code>
+
| <code>int GetManaCost(int iLevel)</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetBroadcasterChannelSlot | GetBroadcasterChannelSlot]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetMaxLevel | GetMaxLevel]]  
| <code><> GetBroadcasterChannelSlot(int a) </code>
+
| <code>int GetMaxLevel()</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetClaimedDenies | GetClaimedDenies]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetModifierValue | GetModifierValue]]  
| <code>int GetClaimedDenies(int a) </code>
+
| <code>float GetModifierValue()</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetClaimedFarm | GetClaimedFarm]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetModifierValueBonus | GetModifierValueBonus]]  
| <code>float GetClaimedFarm(int a) </code>
+
| <code>float GetModifierValueBonus()</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetClaimedMisses | GetClaimedMisses]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetPlaybackRateOverride | GetPlaybackRateOverride]]  
| <code>int GetClaimedMisses(int a) </code>
+
| <code>float GetPlaybackRateOverride()</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetConnectionState | GetConnectionState]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetSharedCooldownName | GetSharedCooldownName]]  
| <code><> GetConnectionState(int a) </code>
+
| <code>string GetSharedCooldownName()</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetCreepDamageTaken | GetCreepDamageTaken]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetSpecialValueFor | GetSpecialValueFor]]  
| <code>int GetCreepDamageTaken(int a) </code>
+
| <code>table GetSpecialValueFor(string szName)</code>
| No Description Set
+
| Gets a value from this ability's special value block for its current level.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetCustomBuybackCooldown | GetCustomBuybackCooldown]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetStolenActivityModifier | GetStolenActivityModifier]]  
| <code>float GetCustomBuybackCooldown(int a) </code>
+
| <code>string GetStolenActivityModifier()</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetCustomBuybackCost | GetCustomBuybackCost]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetToggleState | GetToggleState]]  
| <code>int GetCustomBuybackCost(int a) </code>
+
| <code>bool GetToggleState()</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetDamageDoneToHero | GetDamageDoneToHero]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetUpgradeRecommended | GetUpgradeRecommended]]  
| <code>int GetDamageDoneToHero(int a, int b) </code>
+
| <code>bool GetUpgradeRecommended()</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetDeaths | GetDeaths]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.HeroXPChange | HeroXPChange]]  
| <code>int GetDeaths(int a) </code>
+
| <code>bool HeroXPChange(float flXP)</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetDenies | GetDenies]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.IncrementModifierRefCount | IncrementModifierRefCount]]  
| <code>int GetDenies(int a) </code>
+
| <code>void IncrementModifierRefCount()</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetEventPointsForPlayerID | GetEventPointsForPlayerID]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.IsActivated | IsActivated]]  
| <code>int GetEventPointsForPlayerID(int a) </code>
+
| <code>bool IsActivated()</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetEventPremiumPointsGranted | GetEventPremiumPointsGranted]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.IsAttributeBonus | IsAttributeBonus]]  
| <code>int GetEventPremiumPointsGranted(int a) </code>
+
| <code>bool IsAttributeBonus()</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetEventRankGranted | GetEventRankGranted]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.IsChanneling | IsChanneling]]  
| <code>int GetEventRankGranted(int a) </code>
+
| <code>bool IsChanneling()</code>
| No Description Set
+
| Returns whether the ability is currently channeling.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetGold | GetGold]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.IsCooldownReady | IsCooldownReady]]  
| <code>int GetGold(int a) </code>
+
| <code>bool IsCooldownReady()</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetGoldBagsCollected | GetGoldBagsCollected]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.IsCosmetic | IsCosmetic]]  
| <code>int GetGoldBagsCollected(int a) </code>
+
| <code>bool IsCosmetic(handle hEntity)</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetGoldLostToDeath | GetGoldLostToDeath]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.IsFullyCastable | IsFullyCastable]]  
| <code>int GetGoldLostToDeath(int a) </code>
+
| <code>bool IsFullyCastable()</code>
| No Description Set
+
| Returns whether the ability can be cast.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetGoldPerMin | GetGoldPerMin]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.IsHidden | IsHidden]]  
| <code>float GetGoldPerMin(int a) </code>
+
| <code>bool IsHidden()</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetGoldSpentOnBuybacks | GetGoldSpentOnBuybacks]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.IsHiddenAsSecondaryAbility | IsHiddenAsSecondaryAbility]]  
| <code>int GetGoldSpentOnBuybacks(int a) </code>
+
| <code>bool IsHiddenAsSecondaryAbility()</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetGoldSpentOnConsumables | GetGoldSpentOnConsumables]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.IsHiddenWhenStolen | IsHiddenWhenStolen]]  
| <code>int GetGoldSpentOnConsumables(int a) </code>
+
| <code>bool IsHiddenWhenStolen()</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetGoldSpentOnItems | GetGoldSpentOnItems]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.IsInAbilityPhase | IsInAbilityPhase]]  
| <code>int GetGoldSpentOnItems(int a) </code>
+
| <code>bool IsInAbilityPhase()</code>
| No Description Set
+
| Returns whether the ability is currently casting.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetGoldSpentOnSupport | GetGoldSpentOnSupport]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.IsItem | IsItem]]  
| <code>int GetGoldSpentOnSupport(int a) </code>
+
| <code>bool IsItem()</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetHealing | GetHealing]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.IsOwnersGoldEnough | IsOwnersGoldEnough]]  
| <code>float GetHealing(int a) </code>
+
| <code>bool IsOwnersGoldEnough(int nIssuerPlayerID)</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetHeroDamageTaken | GetHeroDamageTaken]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.IsOwnersGoldEnoughForUpgrade | IsOwnersGoldEnoughForUpgrade]]  
| <code>int GetHeroDamageTaken(int a) </code>
+
| <code>bool IsOwnersGoldEnoughForUpgrade()</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetKills | GetKills]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.IsOwnersManaEnough | IsOwnersManaEnough]]  
| <code>int GetKills(int a) </code>
+
| <code>bool IsOwnersManaEnough()</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetKillsDoneToHero | GetKillsDoneToHero]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.IsPassive | IsPassive]]  
| <code>int GetKillsDoneToHero(int a, int b) </code>
+
| <code>bool IsPassive()</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetLastHitMultikill | GetLastHitMultikill]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.IsRefreshable | IsRefreshable]]  
| <code>int GetLastHitMultikill(int a) </code>
+
| <code>bool IsRefreshable()</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetLastHits | GetLastHits]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.IsSharedWithTeammates | IsSharedWithTeammates]]  
| <code>int GetLastHits(int a) </code>
+
| <code>bool IsSharedWithTeammates()</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetLastHitStreak | GetLastHitStreak]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.IsStealable | IsStealable]]  
| <code>int GetLastHitStreak(int a) </code>
+
| <code>bool IsStealable()</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetLevel | GetLevel]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.IsStolen | IsStolen]]  
| <code>int GetLevel(int playerID) </code>
+
| <code>bool IsStolen()</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetMisses | GetMisses]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.IsToggle | IsToggle]]  
| <code>int GetMisses(int a) </code>
+
| <code>bool IsToggle()</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetNearbyCreepDeaths | GetNearbyCreepDeaths]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.IsTrained | IsTrained]]  
| <code>int GetNearbyCreepDeaths(int a) </code>
+
| <code>bool IsTrained()</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetNthCourierForTeam | GetNthCourierForTeam]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.MarkAbilityButtonDirty | MarkAbilityButtonDirty]]  
| <code>handle GetNthCourierForTeam(int a, int b) </code>
+
| <code>void MarkAbilityButtonDirty()</code>
| No Description Set
+
| Mark the ability button for this ability as needing a refresh.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetNthPlayerIDOnTeam | GetNthPlayerIDOnTeam]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.NumModifiersUsingAbility | NumModifiersUsingAbility]]  
| <code>int GetNthPlayerIDOnTeam(int a, int b) </code>
+
| <code>int NumModifiersUsingAbility()</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetNumConsumablesPurchased | GetNumConsumablesPurchased]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.OnAbilityPhaseInterrupted | OnAbilityPhaseInterrupted]]  
| <code>int GetNumConsumablesPurchased(int a) </code>
+
| <code>void OnAbilityPhaseInterrupted()</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetNumCouriersForTeam | GetNumCouriersForTeam]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.OnAbilityPhaseStart | OnAbilityPhaseStart]]  
| <code>int GetNumCouriersForTeam(int a) </code>
+
| <code>bool OnAbilityPhaseStart()</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetNumItemsPurchased | GetNumItemsPurchased]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.OnAbilityPinged | OnAbilityPinged]]  
| <code>int GetNumItemsPurchased(int a) </code>
+
| <code>void OnAbilityPinged(int nPlayerID, bool bCtrlHeld)</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetPlayer | GetPlayer]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.OnChannelFinish | OnChannelFinish]]  
| <code>handle GetPlayer(int a) </code>
+
| <code>void OnChannelFinish(bool bInterrupted)</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetPlayerLoadedCompletely | GetPlayerLoadedCompletely]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.OnChannelThink | OnChannelThink]]  
| <code>bool GetPlayerLoadedCompletely(int a) </code>
+
| <code>void OnChannelThink(float flInterval)</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetPlayerName | GetPlayerName]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.OnHeroCalculateStatBonus | OnHeroCalculateStatBonus]]  
| <code>string GetPlayerName(int a) </code>
+
| <code>void OnHeroCalculateStatBonus()</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetPlayerReservedState | GetPlayerReservedState]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.OnHeroLevelUp | OnHeroLevelUp]]  
| <code>bool GetPlayerReservedState(int a) </code>
+
| <code>void OnHeroLevelUp()</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetRawPlayerDamage | GetRawPlayerDamage]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.OnOwnerDied | OnOwnerDied]]  
| <code>int GetRawPlayerDamage(int a) </code>
+
| <code>void OnOwnerDied()</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetReliableGold | GetReliableGold]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.OnOwnerSpawned | OnOwnerSpawned]]  
| <code>int GetReliableGold(int a) </code>
+
| <code>void OnOwnerSpawned()</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetRespawnSeconds | GetRespawnSeconds]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.OnSpellStart | OnSpellStart]]  
| <code>int GetRespawnSeconds(int a) </code>
+
| <code>void OnSpellStart()</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetRoshanKills | GetRoshanKills]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.OnToggle | OnToggle]]  
| <code>int GetRoshanKills(int a) </code>
+
| <code>void OnToggle()</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetRunePickups | GetRunePickups]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.OnUpgrade | OnUpgrade]]  
| <code>int GetRunePickups(int a) </code>
+
| <code>void OnUpgrade()</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetSelectedHeroEntity | GetSelectedHeroEntity]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.PayGoldCost | PayGoldCost]]  
| <code>handle GetSelectedHeroEntity(int a) </code>
+
| <code>void PayGoldCost()</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetSelectedHeroID | GetSelectedHeroID]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.PayGoldCostForUpgrade | PayGoldCostForUpgrade]]  
| <code>int GetSelectedHeroID(int a) </code>
+
| <code>void PayGoldCostForUpgrade()</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetSelectedHeroName | GetSelectedHeroName]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.PayManaCost | PayManaCost]]  
| <code>string GetSelectedHeroName(int a) </code>
+
| <code>void PayManaCost()</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetSteamAccountID | GetSteamAccountID]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.PlaysDefaultAnimWhenStolen | PlaysDefaultAnimWhenStolen]]  
| <code><> GetSteamAccountID(int a) </code>
+
| <code>bool PlaysDefaultAnimWhenStolen()</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetStreak | GetStreak]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.ProcsMagicStick | ProcsMagicStick]]  
| <code>int GetStreak(int a) </code>
+
| <code>bool ProcsMagicStick()</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetStuns | GetStuns]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.RefCountsModifiers | RefCountsModifiers]]  
| <code>float GetStuns(int a) </code>
+
| <code>bool RefCountsModifiers()</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetTeam | GetTeam]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.RefreshCharges | RefreshCharges]]  
| <code>int GetTeam(int a) </code>
+
| <code>void RefreshCharges()</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetTeamKills | GetTeamKills]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.RefundManaCost | RefundManaCost]]  
| <code>int GetTeamKills(int a) </code>
+
| <code>void RefundManaCost()</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetTimeOfLastConsumablePurchase | GetTimeOfLastConsumablePurchase]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.ResetToggleOnRespawn | ResetToggleOnRespawn]]  
| <code>float GetTimeOfLastConsumablePurchase(int a) </code>
+
| <code>bool ResetToggleOnRespawn()</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetTimeOfLastDeath | GetTimeOfLastDeath]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.SetAbilityIndex | SetAbilityIndex]]  
| <code>float GetTimeOfLastDeath(int a) </code>
+
| <code>void SetAbilityIndex(int iIndex)</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetTimeOfLastItemPurchase | GetTimeOfLastItemPurchase]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.SetActivated | SetActivated]]  
| <code>float GetTimeOfLastItemPurchase(int a) </code>
+
| <code>void SetActivated(bool bActivated)</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetTotalEarnedGold | GetTotalEarnedGold]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.SetChanneling | SetChanneling]]  
| <code>int GetTotalEarnedGold(int a) </code>
+
| <code>void SetChanneling(bool bChanneling)</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetTotalEarnedXP | GetTotalEarnedXP]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.SetFrozenCooldown | SetFrozenCooldown]]  
| <code>int GetTotalEarnedXP(int a) </code>
+
| <code>void SetFrozenCooldown(bool bFrozenCooldown)</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetTotalGoldSpent | GetTotalGoldSpent]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.SetHidden | SetHidden]]  
| <code>int GetTotalGoldSpent(int a) </code>
+
| <code>void SetHidden(bool bHidden)</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetTowerDamageTaken | GetTowerDamageTaken]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.SetInAbilityPhase | SetInAbilityPhase]]  
| <code>int GetTowerDamageTaken(int a) </code>
+
| <code>void SetInAbilityPhase(bool bInAbilityPhase)</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetTowerKills | GetTowerKills]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.SetLevel | SetLevel]]  
| <code>int GetTowerKills(int a) </code>
+
| <code>void SetLevel(int iLevel)</code>
| No Description Set
+
| Sets the level of this ability.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetUnitShareMaskForPlayer | GetUnitShareMaskForPlayer]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.SetOverrideCastPoint | SetOverrideCastPoint]]  
| <code>int GetUnitShareMaskForPlayer(int a, int b) </code>
+
| <code>void SetOverrideCastPoint(float flCastPoint)</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetUnreliableGold | GetUnreliableGold]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.SetRefCountsModifiers | SetRefCountsModifiers]]  
| <code>int GetUnreliableGold(int a) </code>
+
| <code>void SetRefCountsModifiers(bool bRefCounts)</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetXPPerMin | GetXPPerMin]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.SetStealable | SetStealable]]  
| <code>float GetXPPerMin(int a) </code>
+
| <code>void SetStealable(bool bStealable)</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.HasRandomed | HasRandomed]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.SetStolen | SetStolen]]  
| <code>bool HasRandomed(int a) </code>
+
| <code>void SetStolen(bool bStolen)</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.HasRepicked | HasRepicked]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.SetUpgradeRecommended | SetUpgradeRecommended]]  
| <code>bool HasRepicked(int playerID) </code>
+
| <code>void SetUpgradeRecommended(bool bUpgradeRecommended)</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.HasSelectedHero | HasSelectedHero]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.ShouldUseResources | ShouldUseResources]]  
| <code>bool HasSelectedHero(int a) </code>
+
| <code>bool ShouldUseResources()</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.HaveAllPlayersJoined | HaveAllPlayersJoined]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.SpeakAbilityConcept | SpeakAbilityConcept]]  
| <code>bool HaveAllPlayersJoined() </code>
+
| <code>void SpeakAbilityConcept(int iConcept)</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.HeroLevelUp | HeroLevelUp]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.SpeakTrigger | SpeakTrigger]]  
| <code>void HeroLevelUp(int a) </code>
+
| <code><unknown> SpeakTrigger()</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.IncrementAssists | IncrementAssists]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.StartCooldown | StartCooldown]]  
| <code>void IncrementAssists(int playerID) </code>
+
| <code>void StartCooldown(float flCooldown)</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.IncrementClaimedDenies | IncrementClaimedDenies]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.ToggleAbility | ToggleAbility]]  
| <code>void IncrementClaimedDenies(int a) </code>
+
| <code>void ToggleAbility()</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.IncrementClaimedMisses | IncrementClaimedMisses]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.ToggleAutoCast | ToggleAutoCast]]  
| <code>void IncrementClaimedMisses(int a) </code>
+
| <code>void ToggleAutoCast()</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.IncrementDeaths | IncrementDeaths]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.UpgradeAbility | UpgradeAbility]]  
| <code>void IncrementDeaths(int playerID) </code>
+
| <code>void UpgradeAbility(bool bSupressSpeech)</code>
| No Description Set
+
|
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.IncrementDenies | IncrementDenies]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.UseResources | UseResources]]  
| <code>void IncrementDenies(int a) </code>
+
| <code>void UseResources(bool bMana, bool bGold, bool bCooldown)</code>
| No Description Set
+
|
 +
|}
 +
 
 +
==== CDOTABaseGameMode ====
 +
:::::extends [[#CBaseEntity|CBaseEntity]]
 +
''No Description Set''
 +
{| class="standard-table" style="width: 100%;"
 +
! Function
 +
! Signature
 +
! Description
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.IncrementGoldBagsCollected | IncrementGoldBagsCollected]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.AddRealTimeCombatAnalyzerQuery | AddRealTimeCombatAnalyzerQuery]]  
| <code>void IncrementGoldBagsCollected(int a) </code>
+
| <code>int AddRealTimeCombatAnalyzerQuery(handle hQueryTable, handle hPlayer, string pszQueryName)</code>
| No Description Set
+
| Begin tracking a sequence of events using the real time combat analyzer.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.IncrementKills | IncrementKills]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.AreWeatherEffectsDisabled | AreWeatherEffectsDisabled]]  
| <code>void IncrementKills(int playerID, int kills) </code>
+
| <code>bool AreWeatherEffectsDisabled()</code>
| No Description Set
+
| Get if weather effects are disabled on the client.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.IncrementLastHitMultikill | IncrementLastHitMultikill]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.ClearBountyRunePickupFilter | ClearBountyRunePickupFilter]]  
| <code>void IncrementLastHitMultikill(int a) </code>
+
| <code>void ClearBountyRunePickupFilter()</code>
| No Description Set
+
| Clear the script filter that controls bounty rune pickup behavior.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.IncrementLastHits | IncrementLastHits]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.ClearDamageFilter | ClearDamageFilter]]  
| <code>void IncrementLastHits(int a) </code>
+
| <code>void ClearDamageFilter()</code>
| No Description Set
+
| Clear the script filter that controls how a unit takes damage.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.IncrementLastHitStreak | IncrementLastHitStreak]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.ClearExecuteOrderFilter | ClearExecuteOrderFilter]]  
| <code>void IncrementLastHitStreak(int a) </code>
+
| <code>void ClearExecuteOrderFilter()</code>
| No Description Set
+
| Clear the script filter that controls when a unit picks up an item.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.IncrementMisses | IncrementMisses]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.ClearHealingFilter | ClearHealingFilter]]  
| <code>void IncrementMisses(int a) </code>
+
| <code>void ClearHealingFilter()</code>
| No Description Set
+
| Clear the script filter that controls how a unit heals.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.IncrementNearbyCreepDeaths | IncrementNearbyCreepDeaths]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.ClearItemAddedToInventoryFilter | ClearItemAddedToInventoryFilter]]  
| <code>void IncrementNearbyCreepDeaths(int a) </code>
+
| <code>void ClearItemAddedToInventoryFilter()</code>
| No Description Set
+
| Clear the script filter that controls the item added to inventory filter.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.IncrementStreak | IncrementStreak]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.ClearModifierGainedFilter | ClearModifierGainedFilter]]  
| <code>void IncrementStreak(int a) </code>
+
| <code>void ClearModifierGainedFilter()</code>
| No Description Set
+
| Clear the script filter that controls the modifier filter.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.IncrementTotalEarnedXP | IncrementTotalEarnedXP]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.ClearModifyExperienceFilter | ClearModifyExperienceFilter]]  
| <code>void IncrementTotalEarnedXP(int a, int b) </code>
+
| <code>void ClearModifyExperienceFilter()</code>
| No Description Set
+
| Clear the script filter that controls how hero experience is modified.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.IsBroadcaster | IsBroadcaster]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.ClearModifyGoldFilter | ClearModifyGoldFilter]]  
| <code>bool IsBroadcaster(int a) </code>
+
| <code>void ClearModifyGoldFilter()</code>
| No Description Set
+
| Clear the script filter that controls how hero gold is modified.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.IsDisableHelpSetForPlayerID | IsDisableHelpSetForPlayerID]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.ClearRuneSpawnFilter | ClearRuneSpawnFilter]]  
| <code>bool IsDisableHelpSetForPlayerID(int a, int b) </code>
+
| <code>void ClearRuneSpawnFilter()</code>
| No Description Set
+
| Clear the script filter that controls what rune spawns.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.IsFakeClient | IsFakeClient]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.ClearTrackingProjectileFilter | ClearTrackingProjectileFilter]]  
| <code>bool IsFakeClient(int a) </code>
+
| <code>void ClearTrackingProjectileFilter()</code>
| No Description Set
+
| Clear the script filter that controls when tracking projectiles are launched.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.IsHeroSelected | IsHeroSelected]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.DisableHudFlip | DisableHudFlip]]  
| <code>bool IsHeroSelected(string a) </code>
+
| <code>void DisableHudFlip(bool bDisable)</code>
| No Description Set
+
| Use to disable hud flip for this mod
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.IsHeroSharedWithPlayerID | IsHeroSharedWithPlayerID]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.GetAlwaysShowPlayerInventory | GetAlwaysShowPlayerInventory]]  
| <code>bool IsHeroSharedWithPlayerID(int a, int b) </code>
+
| <code>bool GetAlwaysShowPlayerInventory()</code>
| No Description Set
+
| Show the player hero's inventory in the HUD, regardless of what unit is selected.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.IsValidPlayer | IsValidPlayer]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.GetAlwaysShowPlayerNames | GetAlwaysShowPlayerNames]]  
| <code>bool IsValidPlayer(int playerID) </code>
+
| <code>bool GetAlwaysShowPlayerNames()</code>
| No Description Set
+
| Get whether player names are always shown, regardless of client setting.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.IsValidPlayerID | IsValidPlayerID]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.GetAnnouncerDisabled | GetAnnouncerDisabled]]  
| <code>bool IsValidPlayerID(int playerID) </code>
+
| <code>bool GetAnnouncerDisabled()</code>
| No Description Set
+
| Are in-game announcers disabled?
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.IsValidTeamPlayer | IsValidTeamPlayer]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.GetCameraDistanceOverride | GetCameraDistanceOverride]]  
| <code>bool IsValidTeamPlayer(int playerID) </code>
+
| <code>float GetCameraDistanceOverride()</code>
| No Description Set
+
| Set a different camera distance; dota default is 1134.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.IsValidTeamPlayerID | IsValidTeamPlayerID]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.GetCustomAttributeDerivedStatValue | GetCustomAttributeDerivedStatValue]]  
| <code>bool IsValidTeamPlayerID(int playerID) </code>
+
| <code>float GetCustomAttributeDerivedStatValue(int nDerivedStatType, handle hHero)</code>
| No Description Set
+
| Get current derived stat value constant.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.ModifyGold | ModifyGold]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.GetCustomBackpackCooldownPercent | GetCustomBackpackCooldownPercent]]  
| <code>int ModifyGold(int playerID, int goldAmmt, bool reliable, int d) </code>
+
| <code>float GetCustomBackpackCooldownPercent()</code>
| No Description Set
+
| Get the current rate cooldown ticks down for items in the backpack.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.ReplaceHeroWith | ReplaceHeroWith]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.GetCustomBackpackSwapCooldown | GetCustomBackpackSwapCooldown]]  
| <code>handle ReplaceHeroWith(int a, string b, int c, int d) </code>
+
| <code>float GetCustomBackpackSwapCooldown()</code>
| (playerID, heroClassName, gold, XP) - replaces the player's hero with a new one of the specified class, gold and XP
+
| Get the current custom backpack swap cooldown.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.ResetBuybackCostTime | ResetBuybackCostTime]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.GetCustomBuybackCooldownEnabled | GetCustomBuybackCooldownEnabled]]  
| <code>void ResetBuybackCostTime(int a) </code>
+
| <code>bool GetCustomBuybackCooldownEnabled()</code>
| No Description Set
+
| Turns on capability to define custom buyback cooldowns.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.ResetTotalEarnedGold | ResetTotalEarnedGold]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.GetCustomBuybackCostEnabled | GetCustomBuybackCostEnabled]]  
| <code>void ResetTotalEarnedGold(int a) </code>
+
| <code>bool GetCustomBuybackCostEnabled()</code>
| No Description Set
+
| Turns on capability to define custom buyback costs.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.SetBuybackCooldownTime | SetBuybackCooldownTime]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.GetCustomGlyphCooldown | GetCustomGlyphCooldown]]  
| <code>void SetBuybackCooldownTime(int a, float b) </code>
+
| <code>float GetCustomGlyphCooldown()</code>
| No Description Set
+
| Get the current custom glyph cooldown.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.SetBuybackGoldLimitTime | SetBuybackGoldLimitTime]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.GetCustomHeroMaxLevel | GetCustomHeroMaxLevel]]  
| <code>void SetBuybackGoldLimitTime(int a, float b) </code>
+
| <code>int GetCustomHeroMaxLevel()</code>
| No Description Set
+
| Allows definition of the max level heroes can achieve (default is 25).
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.SetCameraTarget | SetCameraTarget]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.GetCustomScanCooldown | GetCustomScanCooldown]]  
| <code>void SetCameraTarget(int a, handle b) </code>
+
| <code>float GetCustomScanCooldown()</code>
| (playerID, entity) - force the given player's camera to follow the given entity
+
| Get the current custom scan cooldown.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.SetCustomBuybackCooldown | SetCustomBuybackCooldown]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.GetFixedRespawnTime | GetFixedRespawnTime]]  
| <code>void SetCustomBuybackCooldown(int a, float b) </code>
+
| <code>float GetFixedRespawnTime()</code>
| Set the buyback cooldown for this player.
+
| Gets the fixed respawn time.  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.SetCustomBuybackCost | SetCustomBuybackCost]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.GetFogOfWarDisabled | GetFogOfWarDisabled]]  
| <code>void SetCustomBuybackCost(int a, int b) </code>
+
| <code>bool GetFogOfWarDisabled()</code>
| Set the buyback cost for this player.
+
| Turn the fog of war on or off.  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.SetGold | SetGold]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.GetGoldSoundDisabled | GetGoldSoundDisabled]]  
| <code>void SetGold(int a, int b, bool c) </code>
+
| <code>bool GetGoldSoundDisabled()</code>
| No Description Set
+
| Turn the sound when gold is acquired off/on.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.SetHasRandomed | SetHasRandomed]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.GetHUDVisible | GetHUDVisible]]  
| <code>void SetHasRandomed(int playerID) </code>
+
| <code>bool GetHUDVisible(int iElement)</code>
| No Description Set
+
| Returns the HUD element visibility.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.SetHasRepicked | SetHasRepicked]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.GetMaximumAttackSpeed | GetMaximumAttackSpeed]]  
| <code>void SetHasRepicked(int playerID) </code>
+
| <code>int GetMaximumAttackSpeed()</code>
| No Description Set
+
| Get the maximum attack speed for units.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.SetLastBuybackTime | SetLastBuybackTime]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.GetMinimumAttackSpeed | GetMinimumAttackSpeed]]  
| <code>void SetLastBuybackTime(int a, int b) </code>
+
| <code>int GetMinimumAttackSpeed()</code>
| No Description Set
+
| Get the minimum attack speed for units.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.SetPlayerReservedState | SetPlayerReservedState]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.GetRecommendedItemsDisabled | GetRecommendedItemsDisabled]]  
| <code>void SetPlayerReservedState(int a, bool b) </code>
+
| <code>bool GetRecommendedItemsDisabled()</code>
| No Description Set
+
| Turn the panel for showing recommended items at the shop off/on.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.SetUnitShareMaskForPlayer | SetUnitShareMaskForPlayer]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.GetRespawnTimeScale | GetRespawnTimeScale]]  
| <code>void SetUnitShareMaskForPlayer(int a, int b, int c, bool d) </code>
+
| <code>float GetRespawnTimeScale()</code>
| No Description Set
+
| Returns the scale applied to non-fixed respawn times.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.SpendGold | SpendGold]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.GetStashPurchasingDisabled | GetStashPurchasingDisabled]]  
| <code>void SpendGold(int a, int b, int c) </code>
+
| <code>bool GetStashPurchasingDisabled()</code>
| No Description Set
+
| Turn purchasing items to the stash off/on. If purchasing to the stash is off the player must be at a shop to purchase items.  
|-
 
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.UpdateTeamSlot | UpdateTeamSlot]]
 
| <code>void UpdateTeamSlot(int a, int b) </code>
 
| No Description Set
 
|-
 
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.WhoSelectedHero | WhoSelectedHero]]
 
| <code>int WhoSelectedHero(string a) </code>
 
| No Description Set
 
|}
 
 
 
 
 
=== CDOTA_BaseNPC ===
 
:::::extends [[#CBaseFlex| CBaseFlex]]
 
''''
 
{| class="standard-table" style="width: 100%;"
 
! Function
 
! Signature
 
! Description
 
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.AddAbility | AddAbility]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.GetStickyItemDisabled | GetStickyItemDisabled]]  
| <code>void AddAbility(string a) </code>
+
| <code>bool GetStickyItemDisabled()</code>
| Add an ability to this unit by name.
+
| Hide the sticky item in the quickbuy.  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.AddItem | AddItem]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.GetTopBarTeamValuesOverride | GetTopBarTeamValuesOverride]]  
| <code>void AddItem(handle a) </code>
+
| <code>bool GetTopBarTeamValuesOverride()</code>
| Add an item to this unit's inventory.
+
| Override the values of the team values on the top game bar.  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.AddNewModifier | AddNewModifier]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.GetTopBarTeamValuesVisible | GetTopBarTeamValuesVisible]]  
| <code>void AddNewModifier(handle caster, handle optionalSourceAbility, string modifierName, handle modifierData) </code>
+
| <code>bool GetTopBarTeamValuesVisible()</code>
|  
+
| Turning on/off the team values on the top game bar.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.AddNoDraw | AddNoDraw]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.GetTowerBackdoorProtectionEnabled | GetTowerBackdoorProtectionEnabled]]  
| <code>void AddNoDraw() </code>
+
| <code>bool GetTowerBackdoorProtectionEnabled()</code>
| Adds the no draw flag.
+
| Gets whether tower backdoor protection is enabled or not.  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.AlertNearbyUnits | AlertNearbyUnits]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.GetUseCustomHeroLevels | GetUseCustomHeroLevels]]  
| <code>void AlertNearbyUnits(handle a, handle b) </code>
+
| <code>bool GetUseCustomHeroLevels()</code>
| No Description Set
+
| Are custom-defined XP values for hero level ups in use?
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.AngerNearbyUnits | AngerNearbyUnits]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.IsBuybackEnabled | IsBuybackEnabled]]  
| <code>void AngerNearbyUnits() </code>
+
| <code>bool IsBuybackEnabled()</code>
| No Description Set
+
| Enables or disables buyback completely.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.AttackNoEarlierThan | AttackNoEarlierThan]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.IsDaynightCycleDisabled | IsDaynightCycleDisabled]]  
| <code>void AttackNoEarlierThan(float a) </code>
+
| <code>bool IsDaynightCycleDisabled()</code>
| No Description Set
+
| Is the day/night cycle disabled?
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.AttackReady | AttackReady]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.ListenForQueryFailed | ListenForQueryFailed]]  
| <code>bool AttackReady() </code>
+
| <code>void ListenForQueryFailed(handle hFunction, handle hContext)</code>
| No Description Set
+
| Set function and context for real time combat analyzer query failed.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.BoundingRadius2D | BoundingRadius2D]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.ListenForQueryProgressChanged | ListenForQueryProgressChanged]]  
| <code>float BoundingRadius2D() </code>
+
| <code>void ListenForQueryProgressChanged(handle hFunction, handle hContext)</code>
| No Description Set
+
| Set function and context for real time combat analyzer query progress changed.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.CastAbilityImmediately | CastAbilityImmediately]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.ListenForQuerySucceeded | ListenForQuerySucceeded]]  
| <code>void CastAbilityImmediately(handle a, int b) </code>
+
| <code>void ListenForQuerySucceeded(handle hFunction, handle hContext)</code>
| Cast an ability immediately.
+
| Set function and context for real time combat analyzer query succeeded.  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.CastAbilityNoTarget | CastAbilityNoTarget]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.RemoveRealTimeCombatAnalyzerQuery | RemoveRealTimeCombatAnalyzerQuery]]  
| <code>void CastAbilityNoTarget(handle ability, int playerIndex) </code>
+
| <code>void RemoveRealTimeCombatAnalyzerQuery(int nQueryID)</code>
| Cast an ability with no target. ( hAbility, iPlayerIndex )
+
| Stop tracking a combat analyzer query.  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.CastAbilityOnPosition | CastAbilityOnPosition]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetAbilityTuningValueFilter | SetAbilityTuningValueFilter]]  
| <code>void CastAbilityOnPosition(Vector a, handle b, int c) </code>
+
| <code>void SetAbilityTuningValueFilter(handle hFunction, handle hContext)</code>
| Cast an ability on a position.
+
| Set a filter function to control the tuning values that abilities use. (Modify the table and Return true to use new values, return false to use the old values)
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.CastAbilityOnTarget | CastAbilityOnTarget]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetAlwaysShowPlayerInventory | SetAlwaysShowPlayerInventory]]  
| <code>void CastAbilityOnTarget(handle target, handle ability, int playerIndex) </code>
+
| <code>void SetAlwaysShowPlayerInventory(bool bAlwaysShow)</code>
| Cast an ability on a target entity.
+
| Show the player hero's inventory in the HUD, regardless of what unit is selected.  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.CastAbilityToggle | CastAbilityToggle]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetAlwaysShowPlayerNames | SetAlwaysShowPlayerNames]]  
| <code>void CastAbilityToggle(handle a, int b) </code>
+
| <code>void SetAlwaysShowPlayerNames(bool bEnabled)</code>
| Toggle an ability. ( hAbility, iPlayerIndex )
+
| Set whether player names are always shown, regardless of client setting.  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.DisassembleItem | DisassembleItem]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetAnnouncerDisabled | SetAnnouncerDisabled]]  
| <code>void DisassembleItem(handle a) </code>
+
| <code>void SetAnnouncerDisabled(bool bDisabled)</code>
| Disassemble the passed item in this unit's inventory.
+
| Mutes the in-game announcer.  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.DropItemAtPosition | DropItemAtPosition]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetBotThinkingEnabled | SetBotThinkingEnabled]]  
| <code>void DropItemAtPosition(Vector a, handle b) </code>
+
| <code>void SetBotThinkingEnabled(bool bEnabled)</code>
| Drop an item at a given point.
+
| Enables/Disables bots in custom games. Note: this will only work with default heroes in the dota map.  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.DropItemAtPositionImmediate | DropItemAtPositionImmediate]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetBotsAlwaysPushWithHuman | SetBotsAlwaysPushWithHuman]]  
| <code>void DropItemAtPositionImmediate(handle a, Vector b) </code>
+
| <code>void SetBotsAlwaysPushWithHuman(bool bAlwaysPush)</code>
| Immediately drop a carried item at a given position.
+
| Set if the bots should try their best to push with a human player.  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.EjectItemFromStash | EjectItemFromStash]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetBotsInLateGame | SetBotsInLateGame]]  
| <code>void EjectItemFromStash(handle a) </code>
+
| <code>void SetBotsInLateGame(bool bLateGame)</code>
| Drops the selected item out of this unit's stash.
+
| Set if bots should enable their late game behavior.  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.FindAbilityByName | FindAbilityByName]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetBotsMaxPushTier | SetBotsMaxPushTier]]  
| <code>handle FindAbilityByName(string a) </code>
+
| <code>void SetBotsMaxPushTier(int nMaxTier)</code>
| Retrieve an ability by name from the unit.
+
| Set the max tier of tower that bots want to push. (-1 to disable)
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.ForceKill | ForceKill]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetBountyRunePickupFilter | SetBountyRunePickupFilter]]  
| <code>void ForceKill(bool a) </code>
+
| <code>void SetBountyRunePickupFilter(handle hFunction, handle hContext)</code>
| Kill this unit immediately.
+
| Set a filter function to control the behavior when a bounty rune is picked up. (Modify the table and Return true to use new values, return false to cancel the event)
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetAbilityByIndex | GetAbilityByIndex]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetBountyRuneSpawnInterval | SetBountyRuneSpawnInterval]]  
| <code>handle GetAbilityByIndex(int a) </code>
+
| <code>void SetBountyRuneSpawnInterval(float flInterval)</code>
| Retrieve an ability by index from the unit.
+
| Set bounty rune spawn rate
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetAbilityCount | GetAbilityCount]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetBuybackEnabled | SetBuybackEnabled]]  
| <code>int GetAbilityCount() </code>
+
| <code>void SetBuybackEnabled(bool bEnabled)</code>
| No Description Set
+
| Enables or disables buyback completely.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetAcquisitionRange | GetAcquisitionRange]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetCameraDistanceOverride | SetCameraDistanceOverride]]  
| <code>float GetAcquisitionRange() </code>
+
| <code>void SetCameraDistanceOverride(float flCameraDistanceOverride)</code>
| Gets the range at which this unit will auto-acquire.
+
| Set a different camera distance; dota default is 1134.  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetAdditionalBattleMusicWeight | GetAdditionalBattleMusicWeight]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetCameraSmoothCountOverride | SetCameraSmoothCountOverride]]  
| <code>float GetAdditionalBattleMusicWeight() </code>
+
| <code>void SetCameraSmoothCountOverride(int nSmoothCount)</code>
| Combat involving this creature will have this weight added to the music calcuations
+
| Set a different camera smooth count; dota default is 8.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetAttackAnimationPoint | GetAttackAnimationPoint]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetCustomAttributeDerivedStatValue | SetCustomAttributeDerivedStatValue]]  
| <code>float GetAttackAnimationPoint() </code>
+
| <code>void SetCustomAttributeDerivedStatValue(int nStatType, float flNewValue)</code>
| No Description Set
+
| Modify derived stat value constants. ( AttributeDerivedStat eStatType, float flNewValue.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetAttackDamage | GetAttackDamage]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetCustomBackpackCooldownPercent | SetCustomBackpackCooldownPercent]]  
| <code>int GetAttackDamage() </code>
+
| <code>void SetCustomBackpackCooldownPercent(float flPercent)</code>
| Returns a random integer between the minimum and maximum base damage of the unit.
+
| Set the rate cooldown ticks down for items in the backpack.  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetAttackRange | GetAttackRange]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetCustomBackpackSwapCooldown | SetCustomBackpackSwapCooldown]]  
| <code>float GetAttackRange() </code>
+
| <code>void SetCustomBackpackSwapCooldown(float flCooldown)</code>
| Gets this unit's attack range after all modifiers.
+
| Set a custom cooldown for swapping items into the backpack.  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetAttackRangeBuffer | GetAttackRangeBuffer]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetCustomBuybackCooldownEnabled | SetCustomBuybackCooldownEnabled]]  
| <code>float GetAttackRangeBuffer() </code>
+
| <code>void SetCustomBuybackCooldownEnabled(bool bEnabled)</code>
| Gets the attack range buffer.
+
| Turns on capability to define custom buyback cooldowns.  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetAttackSpeed | GetAttackSpeed]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetCustomBuybackCostEnabled | SetCustomBuybackCostEnabled]]  
| <code>float GetAttackSpeed() </code>
+
| <code>void SetCustomBuybackCostEnabled(bool bEnabled)</code>
| No Description Set
+
| Turns on capability to define custom buyback costs.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetAttacksPerSecond | GetAttacksPerSecond]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetCustomGameForceHero | SetCustomGameForceHero]]  
| <code>float GetAttacksPerSecond() </code>
+
| <code>void SetCustomGameForceHero(string pHeroName)</code>
| No Description Set
+
| Force all players to use the specified hero and disable the normal hero selection process. Must be used before hero selection.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetAttackTarget | GetAttackTarget]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetCustomGlyphCooldown | SetCustomGlyphCooldown]]  
| <code>handle GetAttackTarget() </code>
+
| <code>void SetCustomGlyphCooldown(float flCooldown)</code>
| No Description Set
+
| Set a custom cooldown for team Glyph ability.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetAverageTrueAttackDamage | GetAverageTrueAttackDamage]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetCustomHeroMaxLevel | SetCustomHeroMaxLevel]]  
| <code>int GetAverageTrueAttackDamage() </code>
+
| <code>void SetCustomHeroMaxLevel(int int_1)</code>
| Returns the average value of the minimum and maximum damage values.
+
| Allows definition of the max level heroes can achieve (default is 25).  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetBaseAttackRange | GetBaseAttackRange]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetCustomScanCooldown | SetCustomScanCooldown]]  
| <code>int GetBaseAttackRange() </code>
+
| <code>void SetCustomScanCooldown(float flCooldown)</code>
| Gets this unit's attack range before modifiers.
+
| Set a custom cooldown for team Scan ability.  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetBaseAttackTime | GetBaseAttackTime]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetCustomTerrainWeatherEffect | SetCustomTerrainWeatherEffect]]  
| <code>float GetBaseAttackTime() </code>
+
| <code>void SetCustomTerrainWeatherEffect(string pszEffectName)</code>
| No Description Set
+
| Set the effect used as a custom weather effect, when units are on non-default terrain, in this mode.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetBaseDamageMax | GetBaseDamageMax]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetCustomXPRequiredToReachNextLevel | SetCustomXPRequiredToReachNextLevel]]  
| <code>int GetBaseDamageMax() </code>
+
| <code>void SetCustomXPRequiredToReachNextLevel(handle hTable)</code>
| Gets the minimum base damage.
+
| Allows definition of a table of hero XP values.  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetBaseDamageMin | GetBaseDamageMin]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetDamageFilter | SetDamageFilter]]  
| <code>int GetBaseDamageMin() </code>
+
| <code>void SetDamageFilter(handle hFunction, handle hContext)</code>
| Gets the minimum base damage.
+
| Set a filter function to control the behavior when a unit takes damage. (Modify the table and Return true to use new values, return false to cancel the event)
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetBaseDayTimeVisionRange | GetBaseDayTimeVisionRange]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetDaynightCycleDisabled | SetDaynightCycleDisabled]]  
| <code>int GetBaseDayTimeVisionRange() </code>
+
| <code>void SetDaynightCycleDisabled(bool bDisable)</code>
| Returns the vision range before modifiers.
+
| Enable or disable the day/night cycle.  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetBaseHealthRegen | GetBaseHealthRegen]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetDeathOverlayDisabled | SetDeathOverlayDisabled]]  
| <code>float GetBaseHealthRegen() </code>
+
| <code>void SetDeathOverlayDisabled(bool bDisabled)</code>
| No Description Set
+
| Specify whether the full screen death overlay effect plays when the selected hero dies.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetBaseMagicalResistanceValue | GetBaseMagicalResistanceValue]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetDraftingBanningTimeOverride | SetDraftingBanningTimeOverride]]  
| <code>float GetBaseMagicalResistanceValue() </code>
+
| <code>void SetDraftingBanningTimeOverride(float flValue)</code>
| Returns base magical armor value.
+
| Set drafting hero banning time
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetBaseMaxHealth | GetBaseMaxHealth]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetDraftingHeroPickSelectTimeOverride | SetDraftingHeroPickSelectTimeOverride]]  
| <code>float GetBaseMaxHealth() </code>
+
| <code>void SetDraftingHeroPickSelectTimeOverride(float flValue)</code>
| Gets the base max health value.
+
| Set drafting hero pick time
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetBaseMoveSpeed | GetBaseMoveSpeed]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetExecuteOrderFilter | SetExecuteOrderFilter]]  
| <code>float GetBaseMoveSpeed() </code>
+
| <code>void SetExecuteOrderFilter(handle hFunction, handle hContext)</code>
| No Description Set
+
| Set a filter function to control the behavior when a unit picks up an item. (Modify the table and Return true to use new values, return false to cancel the event)
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetBaseNightTimeVisionRange | GetBaseNightTimeVisionRange]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetFixedRespawnTime | SetFixedRespawnTime]]  
| <code>int GetBaseNightTimeVisionRange() </code>
+
| <code>void SetFixedRespawnTime(float flFixedRespawnTime)</code>
| Returns the vision range before modifiers.
+
| Set a fixed delay for all players to respawn after.  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetCastPoint | GetCastPoint]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetFogOfWarDisabled | SetFogOfWarDisabled]]  
| <code>float GetCastPoint(bool a) </code>
+
| <code>void SetFogOfWarDisabled(bool bDisabled)</code>
| Parameter: bAttack
+
| Turn the fog of war on or off.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetCollisionPadding | GetCollisionPadding]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetFountainConstantManaRegen | SetFountainConstantManaRegen]]  
| <code>float GetCollisionPadding() </code>
+
| <code>void SetFountainConstantManaRegen(float flConstantManaRegen)</code>
| Returns the size of the collision padding around the hull.
+
| Set the constant rate that the fountain will regen mana. (-1 for default)
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetConstantBasedManaRegen | GetConstantBasedManaRegen]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetFountainPercentageHealthRegen | SetFountainPercentageHealthRegen]]  
| <code>float GetConstantBasedManaRegen() </code>
+
| <code>void SetFountainPercentageHealthRegen(float flPercentageHealthRegen)</code>
| This Mana regen is derived from constant bonuses like Basilius.
+
| Set the percentage rate that the fountain will regen health. (-1 for default)
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetCreationTime | GetCreationTime]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetFountainPercentageManaRegen | SetFountainPercentageManaRegen]]  
| <code>float GetCreationTime() </code>
+
| <code>void SetFountainPercentageManaRegen(float flPercentageManaRegen)</code>
| No Description Set
+
| Set the percentage rate that the fountain will regen mana. (-1 for default)
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetCurrentActiveAbility | GetCurrentActiveAbility]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetFreeCourierModeEnabled | SetFreeCourierModeEnabled]]  
| <code>handle GetCurrentActiveAbility() </code>
+
| <code>void SetFreeCourierModeEnabled(bool bEnabled)</code>
| Get the ability this unit is currently casting.
+
| If set to true, enable 7.23 free courier mode.  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetCurrentVisionRange | GetCurrentVisionRange]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetFriendlyBuildingMoveToEnabled | SetFriendlyBuildingMoveToEnabled]]  
| <code>int GetCurrentVisionRange() </code>
+
| <code>void SetFriendlyBuildingMoveToEnabled(bool bEnabled)</code>
| Gets the current vision range.
+
| Allows clicks on friendly buildings to be handled normally.  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetCursorCastTarget | GetCursorCastTarget]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetGoldSoundDisabled | SetGoldSoundDisabled]]  
| <code>handle GetCursorCastTarget() </code>
+
| <code>void SetGoldSoundDisabled(bool bDisabled)</code>
| No Description Set
+
| Turn the sound when gold is acquired off/on.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetCursorPosition | GetCursorPosition]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetHUDVisible | SetHUDVisible]]  
| <code>Vector GetCursorPosition() </code>
+
| <code>void SetHUDVisible(int iHUDElement, bool bVisible)</code>
| No Description Set
+
| Set the HUD element visibility.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetCursorTargetingNothing | GetCursorTargetingNothing]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetHealingFilter | SetHealingFilter]]  
| <code>bool GetCursorTargetingNothing() </code>
+
| <code>void SetHealingFilter(handle hFunction, handle hContext)</code>
| No Description Set
+
| Set a filter function to control the behavior when a unit heals. (Modify the table and Return true to use new values, return false to cancel the event)
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetDayTimeVisionRange | GetDayTimeVisionRange]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetHudCombatEventsDisabled | SetHudCombatEventsDisabled]]  
| <code>int GetDayTimeVisionRange() </code>
+
| <code>void SetHudCombatEventsDisabled(bool bDisabled)</code>
| Returns the vision range after modifiers.
+
| Specify whether the default combat events will show in the HUD.  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetDeathXP | GetDeathXP]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetItemAddedToInventoryFilter | SetItemAddedToInventoryFilter]]  
| <code>int GetDeathXP() </code>
+
| <code>void SetItemAddedToInventoryFilter(handle hFunction, handle hContext)</code>
| Get the XP bounty on this unit
+
| Set a filter function to control what happens to items that are added to an inventory, return false to cancel the event
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetForceAttackTarget | GetForceAttackTarget]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetKillableTombstones | SetKillableTombstones]]  
| <code>handle GetForceAttackTarget() </code>
+
| <code>void SetKillableTombstones(bool bEnabled)</code>
| No Description Set
+
| Set whether tombstones can be channeled to be removed by enemy heroes.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetGoldBounty | GetGoldBounty]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetKillingSpreeAnnouncerDisabled | SetKillingSpreeAnnouncerDisabled]]  
| <code>int GetGoldBounty() </code>
+
| <code>void SetKillingSpreeAnnouncerDisabled(bool bDisabled)</code>
| Get the gold bounty on this unit
+
| Mutes the in-game killing spree announcer.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetHasteFactor | GetHasteFactor]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetLoseGoldOnDeath | SetLoseGoldOnDeath]]  
| <code>float GetHasteFactor() </code>
+
| <code>void SetLoseGoldOnDeath(bool bEnabled)</code>
| No Description Set
+
| Use to disable gold loss on death.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetHealth | GetHealth]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetMaximumAttackSpeed | SetMaximumAttackSpeed]]  
| <code>int GetHealth() </code>
+
| <code>void SetMaximumAttackSpeed(int nMaxSpeed)</code>
| Get the health of this unit.
+
| Set the maximum attack speed for units.  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetHealthDeficit | GetHealthDeficit]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetMinimumAttackSpeed | SetMinimumAttackSpeed]]  
| <code>int GetHealthDeficit() </code>
+
| <code>void SetMinimumAttackSpeed(int nMinSpeed)</code>
| Returns integer amount of health missing from max.
+
| Set the minimum attack speed for units.  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetHealthPercent | GetHealthPercent]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetModifierGainedFilter | SetModifierGainedFilter]]  
| <code>int GetHealthPercent() </code>
+
| <code>void SetModifierGainedFilter(handle hFunction, handle hContext)</code>
| Get the current health percent of the unit.
+
| Set a filter function to control modifiers that are gained, return false to destroy modifier.  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetHealthRegen | GetHealthRegen]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetModifyExperienceFilter | SetModifyExperienceFilter]]  
| <code>float GetHealthRegen() </code>
+
| <code>void SetModifyExperienceFilter(handle hFunction, handle hContext)</code>
| No Description Set
+
| Set a filter function to control the behavior when a hero's experience is modified. (Modify the table and Return true to use new values, return false to cancel the event)
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetHullRadius | GetHullRadius]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetModifyGoldFilter | SetModifyGoldFilter]]  
| <code>float GetHullRadius() </code>
+
| <code>void SetModifyGoldFilter(handle hFunction, handle hContext)</code>
| Get the collision hull radius of this NPC
+
| Set a filter function to control the behavior when a hero's gold is modified. (Modify the table and Return true to use new values, return false to cancel the event)
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetIdealSpeed | GetIdealSpeed]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetOverrideSelectionEntity | SetOverrideSelectionEntity]]  
| <code>float GetIdealSpeed() </code>
+
| <code>void SetOverrideSelectionEntity(handle hOverrideEntity)</code>
| Returns speed after all modifiers.
+
| Set an override for the default selection entity, instead of each player's hero.  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetIncreasedAttackSpeed | GetIncreasedAttackSpeed]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetPauseEnabled | SetPauseEnabled]]  
| <code>float GetIncreasedAttackSpeed() </code>
+
| <code>void SetPauseEnabled(bool bEnabled)</code>
| No Description Set
+
| Set pausing enabled/disabled
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetInitialGoalEntity | GetInitialGoalEntity]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetPowerRuneSpawnInterval | SetPowerRuneSpawnInterval]]  
| <code>handle GetInitialGoalEntity() </code>
+
| <code>void SetPowerRuneSpawnInterval(float flInterval)</code>
| Returns the initial waypoint goal for this NPC
+
| Set power rune spawn rate
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetItemInSlot | GetItemInSlot]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetRecommendedItemsDisabled | SetRecommendedItemsDisabled]]  
| <code>handle GetItemInSlot(int a) </code>
+
| <code>void SetRecommendedItemsDisabled(bool bDisabled)</code>
| Returns nth item in inventory slot (index is zero based)
+
| Turn the panel for showing recommended items at the shop off/on.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetLastIdleChangeTime | GetLastIdleChangeTime]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetRemoveIllusionsOnDeath | SetRemoveIllusionsOnDeath]]  
| <code>float GetLastIdleChangeTime() </code>
+
| <code>void SetRemoveIllusionsOnDeath(bool bRemove)</code>
| Get the last game time that this unit switched to/from idle state.
+
| Make it so illusions are immediately removed upon death, rather than sticking around for a few seconds.  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetLevel | GetLevel]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetRespawnTimeScale | SetRespawnTimeScale]]  
| <code>int GetLevel() </code>
+
| <code>void SetRespawnTimeScale(float flValue)</code>
| Returns the level of this unit.
+
| Sets the scale applied to non-fixed respawn times. 1 = default DOTA respawn calculations.  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetMagicalArmorValue | GetMagicalArmorValue]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetRuneEnabled | SetRuneEnabled]]  
| <code>float GetMagicalArmorValue() </code>
+
| <code>void SetRuneEnabled(int nRune, bool bEnabled)</code>
| Returns current magical armor value.
+
| Set if a given type of rune is enabled.  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetMainControllingPlayer | GetMainControllingPlayer]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetRuneSpawnFilter | SetRuneSpawnFilter]]  
| <code>int GetMainControllingPlayer() </code>
+
| <code>void SetRuneSpawnFilter(handle hFunction, handle hContext)</code>
| Returns the player ID of the controlling player.
+
| Set a filter function to control what rune spawns. (Modify the table and Return true to use new values, return false to cancel the event)
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetMana | GetMana]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetSelectionGoldPenaltyEnabled | SetSelectionGoldPenaltyEnabled]]  
| <code>float GetMana() </code>
+
| <code>void SetSelectionGoldPenaltyEnabled(bool bEnabled)</code>
| Get the mana on this unit.
+
| Enable/disable gold penalty for late picking.  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetManaPercent | GetManaPercent]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetStashPurchasingDisabled | SetStashPurchasingDisabled]]  
| <code>int GetManaPercent() </code>
+
| <code>void SetStashPurchasingDisabled(bool bDisabled)</code>
| Get the percent of mana remaining.
+
| Turn purchasing items to the stash off/on. If purchasing to the stash is off the player must be at a shop to purchase items.  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetManaRegen | GetManaRegen]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetStickyItemDisabled | SetStickyItemDisabled]]  
| <code>float GetManaRegen() </code>
+
| <code>void SetStickyItemDisabled(bool bDisabled)</code>
| No Description Set
+
| Hide the sticky item in the quickbuy.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetMaxHealth | GetMaxHealth]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetTopBarTeamValue | SetTopBarTeamValue]]  
| <code>int GetMaxHealth() </code>
+
| <code>void SetTopBarTeamValue(int iTeam, int nValue)</code>
| Get the maximum health of this unit.
+
| Set the team values on the top game bar.  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetMaxMana | GetMaxMana]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetTopBarTeamValuesOverride | SetTopBarTeamValuesOverride]]  
| <code>float GetMaxMana() </code>
+
| <code>void SetTopBarTeamValuesOverride(bool bOverride)</code>
| Get the maximum mana of this unit.
+
| Override the values of the team values on the top game bar.  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetModelRadius | GetModelRadius]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetTopBarTeamValuesVisible | SetTopBarTeamValuesVisible]]  
| <code>float GetModelRadius() </code>
+
| <code>void SetTopBarTeamValuesVisible(bool bVisible)</code>
| No Description Set
+
| Turning on/off the team values on the top game bar.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetModifierCount | GetModifierCount]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetTowerBackdoorProtectionEnabled | SetTowerBackdoorProtectionEnabled]]  
| <code>int GetModifierCount() </code>
+
| <code>void SetTowerBackdoorProtectionEnabled(bool bEnabled)</code>
| How many modifiers does this unit have?
+
| Enables/Disables tower backdoor protection.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetModifierNameByIndex | GetModifierNameByIndex]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetTrackingProjectileFilter | SetTrackingProjectileFilter]]  
| <code>string GetModifierNameByIndex(int a) </code>
+
| <code>void SetTrackingProjectileFilter(handle hFunction, handle hContext)</code>
| Get a modifier name by index.
+
| Set a filter function to control when tracking projectiles are launched. (Modify the table and Return true to use new values, return false to cancel the event)
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetMoveSpeedModifier | GetMoveSpeedModifier]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetUnseenFogOfWarEnabled | SetUnseenFogOfWarEnabled]]  
| <code>float GetMoveSpeedModifier(float a) </code>
+
| <code>void SetUnseenFogOfWarEnabled(bool bEnabled)</code>
| No Description Set
+
| Enable or disable unseen fog of war. When enabled parts of the map the player has never seen will be completely hidden by fog of war.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetMustReachEachGoalEntity | GetMustReachEachGoalEntity]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetUseCustomHeroLevels | SetUseCustomHeroLevels]]  
| <code>bool GetMustReachEachGoalEntity() </code>
+
| <code>void SetUseCustomHeroLevels(bool bEnabled)</code>
| Get whether this NPC is required to reach each goal entity, rather than being allowed to 'unkink' their path
+
| Turn on custom-defined XP values for hero level ups.  The table should be defined before switching this on.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetNightTimeVisionRange | GetNightTimeVisionRange]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetUseDefaultDOTARuneSpawnLogic | SetUseDefaultDOTARuneSpawnLogic]]  
| <code>int GetNightTimeVisionRange() </code>
+
| <code>void SetUseDefaultDOTARuneSpawnLogic(bool bEnabled)</code>
| Returns the vision range after modifiers.
+
| If set to true, use current rune spawn rules.  Either setting respects custom spawn intervals.  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetOpposingTeamNumber | GetOpposingTeamNumber]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetWeatherEffectsDisabled | SetWeatherEffectsDisabled]]  
| <code>int GetOpposingTeamNumber() </code>
+
| <code>void SetWeatherEffectsDisabled(bool bDisable)</code>
| No Description Set
+
| Set if weather effects are disabled.
 +
|}
 +
 
 +
==== CDOTAGameManager ====
 +
''No Description Set''
 +
{| class="standard-table" style="width: 100%;"
 +
! Function
 +
! Signature
 +
! Description
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetPaddedCollisionRadius | GetPaddedCollisionRadius]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGameManager.GetHeroDataByName_Script | GetHeroDataByName_Script]]  
| <code>float GetPaddedCollisionRadius() </code>
+
| <code>table GetHeroDataByName_Script(string string_1)</code>
| Get the collision hull radius (including padding) of this NPC
+
| Get the hero unit 
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetPercentageBasedManaRegen | GetPercentageBasedManaRegen]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGameManager.GetHeroIDByName | GetHeroIDByName]]  
| <code>float GetPercentageBasedManaRegen() </code>
+
| <code>int GetHeroIDByName(string string_1)</code>
| This Mana regen is derived from % bonuses (from items like Void Stone).
+
| Get the hero ID given the hero name.  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetPhysicalArmorBaseValue | GetPhysicalArmorBaseValue]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGameManager.GetHeroNameByID | GetHeroNameByID]]  
| <code>float GetPhysicalArmorBaseValue() </code>
+
| <code>string GetHeroNameByID(int int_1)</code>
| Returns base physical armor value.
+
| Get the hero name given a hero ID.  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetPhysicalArmorValue | GetPhysicalArmorValue]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGameManager.GetHeroNameForUnitName | GetHeroNameForUnitName]]  
| <code>float GetPhysicalArmorValue() </code>
+
| <code>string GetHeroNameForUnitName(string string_1)</code>
| Returns current physical armor value.
+
| Get the hero name given a unit name.  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetPlayerOwner | GetPlayerOwner]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGameManager.GetHeroUnitNameByID | GetHeroUnitNameByID]]  
| <code>handle GetPlayerOwner() </code>
+
| <code>string GetHeroUnitNameByID(int int_1)</code>
| Returns the player that owns this unit
+
| Get the hero unit name given the hero ID.
 +
|}
 +
 
 +
==== CDOTAGamerules ====
 +
''Global accessor variable: <code>GameRules</code>''
 +
{| class="standard-table" style="width: 100%;"
 +
! Function
 +
! Signature
 +
! Description
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetPlayerOwnerID | GetPlayerOwnerID]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.AddBotPlayerWithEntityScript | AddBotPlayerWithEntityScript]]  
| <code>int GetPlayerOwnerID() </code>
+
| <code>handle AddBotPlayerWithEntityScript(string string_1, string string_2, int int_3, string string_4)</code>
| Get the owner player ID for this unit.
+
| Spawn a bot player of the passed hero name, player name, and team.  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetProjectileSpeed | GetProjectileSpeed]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.AddEventMetadataLeaderboardEntry | AddEventMetadataLeaderboardEntry]]  
| <code>int GetProjectileSpeed() </code>
+
| <code>bool AddEventMetadataLeaderboardEntry(string string_1, unsigned unsigned_2, unsigned unsigned_3, unsigned unsigned_4, unsigned unsigned_5, unsigned unsigned_6, unsigned unsigned_7, unsigned unsigned_8, unsigned unsigned_9)</code>
| No Description Set
+
| Event-only ( string szNameSuffix, int nStars, int nMaxStars, int nExtraData1, int nExtraData2 )
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetRangeToUnit | GetRangeToUnit]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.AddItemToWhiteList | AddItemToWhiteList]]  
| <code>float GetRangeToUnit(handle a) </code>
+
| <code>void AddItemToWhiteList(string string_1)</code>
| No Description Set
+
| Add an item to the whitelist
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetSecondsPerAttack | GetSecondsPerAttack]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.AddMinimapDebugPoint | AddMinimapDebugPoint]]  
| <code>float GetSecondsPerAttack() </code>
+
| <code>void AddMinimapDebugPoint(int int_1, Vector Vector_2, int int_3, int int_4, int int_5, int int_6, float float_7)</code>
| No Description Set
+
| Add a point on the minimap.
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetStatsBasedManaRegen | GetStatsBasedManaRegen]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.AddMinimapDebugPointForTeam | AddMinimapDebugPointForTeam]]  
| <code>float GetStatsBasedManaRegen() </code>
+
| <code>void AddMinimapDebugPointForTeam(int int_1, Vector Vector_2, int int_3, int int_4, int int_5, int int_6, float float_7, int int_8)</code>
| Returns mana regen rate per intelligence.
+
| Add a point on the minimap for a specific team.  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetTeamNumber | GetTeamNumber]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.BeginNightstalkerNight | BeginNightstalkerNight]]  
| <code>int GetTeamNumber() </code>
+
| <code>void BeginNightstalkerNight(float float_1)</code>
| Get the team number of this unit.
+
| Begin night stalker night.  
 
|-
 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetTotalPurchasedUpgradeGoldCost | GetTotalPurchasedUpgradeGoldCost]]
+
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.BeginTemporaryNight | BeginTemporaryNight]]  
| <code>int GetTotalPurchasedUpgradeGoldCost() </code>
+
| <code>void BeginTemporaryNight(float float_1)</code>
| Get how much gold has been spent on ability upgrades.
+
| Begin temporary night.  
 
|-