This article relates to the game "Dota 2". Click here for more information.
This article relates to the SDK/Workshop Tools for "Dota 2 Workshop Tools". Click here for more information.
This article's documentation is for Source 2. Click here for more information.

Dota 2 Workshop Tools/Scripting/API: Difference between revisions

From Valve Developer Community
Jump to navigation Jump to search
m (1 revision: Dota 2 Workshop Tools docs)
No edit summary
 
(247 intermediate revisions by 52 users not shown)
Line 1: Line 1:
==Accessing the DOTA 2 Scripting API from Lua ==
{{LanguageBar}}
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.)
{{cleanup|1500 subpages most of them useless}}
{{Dota 2Tools topicons}}
{{Note | This page is automatically generated. Changes can be submitted on Jochnickels github page: https://github.com/Jochnickel/dota_wiki_dumper}}


= Global Scope =


''bool'' '''SpawnEntityGroupFromTable'''(''handle'', ''bool'', ''handle'')
<span style="color:#FF0000"><big>This page outdated, use [https://moddota.com/api moddota.com/api] instead</big></span>
( groupSpawnTables, bAsync, hCallback )Hierarchically spawn an entity group from a set of spawn tables.
 
==='''Accessing the DOTA 2 Scripting API from Lua===


''float'' '''GetFrostyBoostAmount'''(''int'', ''int'')
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__
''handle'' '''EntIndexToHScript'''(''int'')
Turn an entity index integer to an HScript representing that entity's script instance.
 
''void'' '''StopEffect'''(''handle'', ''string'')
(hEntity, szEffectName)
 
''void'' '''Say'''(''handle'', ''string'', ''bool'')
Have Entity say ''string'', and teamOnly or not
 
''void'' '''DebugDrawBoxDirection'''(''Vector'', ''Vector'', ''Vector'', ''Vector'', ''Vector'', ''float'', ''float'')
Draw a debug forward box (cent, min, max, forward, vRgb, a, duration)
 
''void'' '''PrecacheItemByNameAsync'''(''string'', ''handle'')
Asynchronously precaches a DOTA item by its dota_npc_items.txt name, provides a callback when it's finished.
 
''float'' '''GetGoldFrostyBoostAmount'''(''int'', ''int'')
 
''int'' '''RandomInt'''(''int'', ''int'')
Get a random ''int'' within a range
 
''bool'' '''RollPercentage'''(''int'')
Rolls a number from 1 to 100 and returns true if the roll is less than or equal to the number specified
 
''void'' '''SendToConsole'''(''string'')
Send a ''string'' to the console as a client command
 
''QAngle'' '''VectorToAngles'''(''Vector'')
Get Qangles (with no roll) for a ''Vector''.
 
''bool'' '''IsDedicatedServer'''()
Returns true if this server is a dedicated server.
 
''Vector'' '''SplineVectors'''(''Vector'', ''Vector'', ''float'')
(''vector'',''vector'',''float'') very basic interpolation of v0 to v1 over t on [0,1]
 
''void'' '''Msg'''(''string'')
Print a message
 
''bool'' '''rr_AddDecisionRule'''(''handle'')
Add a rule to the decision database.
 
''void'' '''FindClearSpaceForUnit'''(''handle'', ''Vector'', ''bool'')
Place a unit somewhere not already occupied.
 
''table'' '''LoadKeyValues'''(''string'')
Creates a ''table'' from the specified keyvalues text file
 
''bool'' '''TraceLine'''(''handle'')
Pass ''table'' - Inputs: startpos, endpos, mask, ignore  -- outputs: pos, fraction, hit, enthit, startsolid
 
''int'' '''ListenToGameEvent'''(''string'', ''handle'', ''handle'')
Register as a listener for a game event from script. ( szEventName, hFunctionNameToCall, hContext )
{{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.}}
 
''float'' '''GetWorldMinY'''()
Gets the world's minimum Y position.
 
''handle'' '''CreateItemOnPositionSync'''(''Vector'', ''handle'')
Create a physical item at a given location
 
''float'' '''ExponentialDecay'''(''float'', ''float'', ''float'')
Smooth curve decreasing slower as it approaches zero
 
''handle'' '''GetListenServerHost'''()
Get the local player on a listen server.
 
''bool'' '''StopListeningToGameEvent'''(''int'')
Stop listening to a particular game event.
 
''void'' '''FireEntityIOInputVec'''(''ehandle'', ''string'', ''Vector'')
Fire Entity's Action Input with passed ''Vector'' ( hEntity, szActionName, vector )
 
''void'' '''DoEntFire'''(''string'', ''string'', ''string'', ''float'', ''handle'', ''handle'')
EntFire: Generate an entity i/o event ( szTarget, szAction, szValue, flDelay, hActivator, hCaller )
 
''bool'' '''IsMarkedForDeletion'''(''handle'')
Returns true if the entity is valid and marked for deletion.
 
''Vector'' '''RotatePosition'''(''Vector'', ''QAngle'', ''Vector'')
Rotate a ''Vector'' around a point.
 
''string'' '''GetMapName'''()
Get the name of the map.
 
''void'' '''PrintLinkedConsoleMessage'''(''string'', ''string'')
Print a console message with a linked console command
 
''int'' '''MakeStringToken'''(''string'')
Checks to see if the given hScript is a valid entity
 
''Quaternion'' '''RotateQuaternionByAxisAngle'''(''Quaternion'', ''Vector'', ''float'')
Rotates a quaternion by the specified angle around the specified ''vector'' axis
 
''void'' '''UTIL_Remove'''(''handle'')
Removes the specified entity
 
''void'' '''DebugDrawText'''(''Vector'', ''string'', ''bool'', ''float'')
Draw text in 3d (origin, text, bViewCheck, duration)
 
''void'' '''ReloadMOTD'''()
Reloads the MotD file
 
''void'' '''DebugDrawLine_vCol'''(''Vector'', ''Vector'', ''Vector'', ''bool'', ''float'')
Draw a debug line using color vec (start, end, vRgb, a, ztest, duration)
 
''void'' '''PrecacheEntityFromTable'''(''string'', ''handle'', ''handle'')
Precache an entity from KeyValues in ''table''
 
''void'' '''UTIL_RemoveImmediate'''(''handle'')
Immediately removes the specified entity
 
''void'' '''SetQuestPhase'''(''int'')
Set the current quest phase.
 
''void'' '''DebugDrawBox'''(''Vector'', ''Vector'', ''Vector'', ''int'', ''int'', ''int'', ''int'', ''float'')
Draw a debug overlay box (origin, mins, maxs, forward, r, g, b, a, duration )
 
''Vector'' '''RandomVector'''(''float'')
Get a random 2D ''vector''. Argument (''float'') is the minimum length of the returned vector.
 
''void'' '''FireEntityIOInputString'''(''ehandle'', ''string'', ''string'')
Fire Entity's Action Input with passed String - you own the memory
 
''int'' '''GetGoldFrostyPointsForRound'''(''int'', ''int'', ''int'')
 
''float'' '''GetWorldMaxX'''()
Gets the world's maximum X position.
 
''void'' '''UpdateEventPoints'''(''handle'')
 
''int'' '''CreateUnitByNameAsync'''(''string'', ''Vector'', ''bool'', ''handle'', ''handle'', ''int'', ''handle'')
Creates a DOTA unit by its dota_npc_units.txt name ( szUnitName, vLocation, bFindClearSpace, hNPCOwner, hUnitOwner, iTeamNumber, hCallback )
 
''handle'' '''CreateTriggerRadiusApproximate'''(''Vector'', ''float'')
CreateTriggerRadiusApproximate( vecOrigin, flRadius ) : Creates and returns an AABB trigger thats bigger than the radius provided
 
''Vector'' '''GetPhysVelocity'''(''handle'')
Get Velocity for VPHYS or normal object
 
''bool'' '''CreateEffect'''(''handle'')
Pass ''table'' - Inputs: entity, effect
 
''void'' '''PrecacheItemByNameSync'''(''string'', ''handle'')
Precaches a DOTA item by its dota_npc_items.txt name
 
''QAngle'' '''RotationDelta'''(''QAngle'', ''QAngle'')
Find the delta between two ''QAngle''s.
 
''void'' '''InitLogFile'''(''string'', ''string'')
If the given file doesn't exist, creates it with the given contents; does nothing if it exists
 
''bool'' '''IsValidEntity'''(''handle'')
Checks to see if the given hScript is a valid entity
 
''void'' '''PrecacheUnitByNameSync'''(''string'', ''handle'')
Precaches a DOTA unit by its dota_npc_units.txt name
 
''bool'' '''TraceHull'''(''handle'')
Pass ''table'' - Inputs: start, end, min, max, mask, ignore  -- outputs: pos, fraction, hit, enthit, startsolid
 
''void'' '''SetOpvarFloatAll'''(''string'', ''string'', ''string'', ''float'')
Sets an opvar value for all players
 
''Quaternion'' '''AxisAngleTo''Quaternion'''''(''Vector'', ''float'')
(''vector'',''float'') constructs a quaternion representing a rotation by angle around the specified ''vector'' axis
 
''void'' '''DebugDrawSphere'''(''Vector'', ''Vector'', ''float'', ''float'', ''bool'', ''float'')
Draw a debug sphere (center, vRgb, a, rad, ztest, duration)
 
''void'' '''Warning'''(''string'')
Print a warning
 
''handle'' '''CreateItem'''(''string'', ''handle'', ''handle'')
Create a DOTA item ( szScriptName, hParent, hOwner )
 
''void'' '''DebugDrawClear'''()
Try to clear all the debug overlay info
 
''float'' '''cvar_getf'''(''string'')
Gets the value of the given cvar, as a ''float''.
 
''bool'' '''cvar_setf'''(''string'', ''float'')
Sets the value of the given cvar, as a ''float''.
 
''void'' '''EmitSoundOn'''(''string'', ''handle'')
Play named sound on Entity
 
''int'' '''SpawnEntityListFromTableAsynchronous'''(''handle'', ''handle'')
Asynchronously spawn an entity group from a list of spawn table's. A callback will be triggered when the spawning is complete
 
''void'' '''EmitGlobalSound'''(''string'')
Play named sound for all players
 
''float'' '''AngleDiff'''(''float'', ''float'')
Returns the number of degrees difference between two yaw angles
 
''string'' '''GetSystemDate'''()
Get the current real world date
 
''void'' '''DebugBreak'''()
Breaks in the debugger
 
''Vector'' '''GetPhysAngularVelocity'''(''handle'')
Get Angular Velocity for VPHYS or normal object
 
''Vector'' '''GetGroundPosition'''(''Vector'', ''handle'')
Returns the supplied position moved to the ground. Second parameter is an NPC for measuring movement collision hull offset.
 
''handle'' '''SpawnEntityFromTableSynchronous'''(''string'', ''handle'')
Synchronously spawns a single entity from a ''table''
 
''bool'' '''DoIncludeScript'''(''string'', ''handle'')
Execute a script (internal)
 
''void'' '''SendToServerConsole'''(''string'')
Send a ''string'' to the console as a server command
 
''table'' '''FindUnitsInRadius'''(''int'', ''Vector'', ''handle'', ''float'', ''int'', ''int'', ''int'', ''int'', ''bool'')
Finds the units in a given radius with the given flags. ( iTeamNumber, vPosition, hCacheUnit, flRadius, iTeamFilter, iTypeFilter, iFlagFilter, iOrder, bCanGrowCache )
 
''void'' '''DebugDrawCircle'''(''Vector'', ''Vector'', ''float'', ''float'', ''bool'', ''float'')
Draw a debug circle (center, vRgb, a, rad, ztest, duration)
 
''void'' '''SetQuestName'''(''string'')
Set the current quest name.
 
''void'' '''SendFrostyPointsMessageToGC'''(''handle'')
 
''float'' '''FrameTime'''()
Get the time spent on the server in the last frame
 
''handle'' '''CreateUnitByName'''(''string'', ''Vector'', ''bool'', ''handle'', ''handle'', ''int'')
Creates a DOTA unit by its dota_npc_units.txt name ( szUnitName, vLocation, bFindClearSpace, hNPCOwner, hUnitOwner, iTeamNumber )
 
''float'' '''GetWorldMaxY'''()
Gets the world's maximum Y position.
 
''void'' '''PrecacheEntityListFromTable'''(''handle'', ''handle'')
Precache a list of entity KeyValues table's
 
''handle'' '''CreateTrigger'''(''Vector'', ''Vector'', ''Vector'')
CreateTrigger( vecMin, vecMax ) : Creates and returns an AABB trigger
 
''int'' '''GetFrameCount'''()
Returns the engines current frame count
 
''void'' '''DoEntFireByInstanceHandle'''(''handle'', ''string'', ''string'', ''float'', ''handle'', ''handle'')
EntFireByHandle:Generate and entity i/o event
 
''string'' '''DoUniqueString'''(''string'')
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.
 
''string'' '''GetSystemTime'''()
Get the current real world time
 
''handle'' '''PlayerInstanceFromIndex'''(''int'')
Get a script instance of a player by index.
 
''void'' '''StartSoundEvent'''(''string'', ''handle'')
Start a sound event
 
''handle'' '''CreateHeroForPlayer'''(''string'', ''handle'')
Creates a DOTA hero by its dota_npc_units.txt name and sets it as the given player's controlled hero
 
''int'' '''GetFrostyPointsForRound'''(''int'', ''int'', ''int'')
 
''void'' '''ShowGenericPopupToPlayer'''(''handle'', ''string'', ''string'', ''string'', ''string'', ''int'')
Show a generic popup dialog to a specific player.
 
''void'' '''ShowGenericPopup'''(''string'', ''string'', ''string'', ''string'', ''int'')
Show a generic popup dialog for all players.
 
''void'' '''DebugDrawLine'''(''Vector'', ''Vector'', ''int'', ''int'', ''int'', ''bool'', ''float'')
Draw a debug overlay line (origin, target, r, g, b, ztest, duration)
 
''string'' '''FileToString'''(''string'')
Reads a ''string'' from a file to send to script
 
''void'' '''FireGameEventLocal'''(''string'', ''handle'')
Fire a game event without broadcasting to the client.
 
''handle'' '''rr_GetResponseTargets'''()
Retrieve a ''table'' of all available expresser targets, in the form { name : ''handle'', name: ''handle'' }.
 
''void'' '''SendFrostivusTimeElapsedToGC'''()
 
''QAngle'' '''RotateOrientation'''(''QAngle'', ''QAngle'')
Rotate a ''QAngle'' by another ''QAngle''.
 
''void'' '''EmitSoundOnClient'''(''string'', ''handle'')
Play named sound only on the client for the passed in player
 
''void'' '''ScreenShake'''(''Vector'', ''float'', ''float'', ''float'', ''float'', ''int'', ''bool'')
Start a screenshake with the following parameters. vecCenter, flAmplitude, flFrequency, flDuration, flRadius, eCommand( SHAKE_START = 0, SHAKE_STOP = 1 ), bAirShake
 
''void'' '''CancelEntityIOEvents'''(''ehandle'')
Create all I/O events for a particular entity
 
''float'' '''GetWorldMinX'''()
Gets the world's minimum X position.
 
''void'' '''AppendToLogFile'''(''string'', ''string'')
Appends a ''string'' to a log file on the server
 
''void'' '''FireGameEvent'''(''string'', ''handle'')
Fire a game event.
 
''void'' '''FireEntityIOInputNameOnly'''(''ehandle'', ''string'')
Fire Entity's Action Input w/no data
 
''float'' '''Time'''()
Get the current server time
 
''void'' '''PrecacheResource'''(''string'', ''string'', ''handle'')
Manually precache a single resource
 
''void'' '''DoScriptAssert'''(''bool'', ''string'')
ScriptAssert:Asserts the passed in value. Prints out a message and brings up the assert dialog.
 
''void'' '''PrecacheModel'''(''string'', ''handle'')
( modelName, context ) - Manually precache a single model
 
''void'' '''ShowMessage'''(''string'')
Print a hud message on all clients
 
''void'' '''PauseGame'''(''bool'')
Pause or unpause the game.
 
''Quaternion'' '''SplineQuaternions'''(''Quaternion'', ''Quaternion'', ''float'')
(quaternion,quaternion,''float'') very basic interpolation of v0 to v1 over t on [0,1]
 
''void'' '''StopSoundEvent'''(''string'', ''handle'')
Stops a sound event
 
''float'' '''GetMaxOutputDelay'''(''ehandle'', ''string'')
Get the longest delay for all events attached to an output
 
''void'' '''RemoveSpawnGroupFilterProxy'''(''string'')
Remove the C proxy for a script-based spawn group filter
 
''void'' '''DebugDrawScreenTextLine'''(''float'', ''float'', ''int'', ''string'', ''int'', ''int'', ''int'', ''int'', ''float'')
Draw text with a line offset (x, y, lineOffset, text, r, g, b, a, duration)
 
''void'' '''DebugScreenTextPretty'''(''float'', ''float'', ''int'', ''string'', ''int'', ''int'', ''int'', ''int'', ''float'', ''string'', ''int'', ''bool'')
Draw pretty debug text (x, y, lineOffset, text, r, g, b, a, duration, font, size, bBold)
 
''handle'' '''SpawnEntityListFromTableSynchronous'''(''handle'')
Synchronously spawn an entity group from a list of spawn table's.
 
''void'' '''SetOpvarFloatPlayer'''(''string'', ''string'', ''string'', ''float'', ''handle'')
Sets an opvar value for a single player ( szStackName, szOperatorName, szOpvarName, flOpvarValue, hEnt )
 
''void'' '''PrecacheUnitByNameAsync'''(''string'', ''handle'')
Asynchronously precaches a DOTA unit by its dota_npc_units.txt name, provides a callback when it's finished.
 
''bool'' '''StringToFile'''(''string'', ''string'')
Store a ''string'' to a file for later reading
 
''void'' '''RegisterSpawnGroupFilterProxy'''(''string'')
Create a C proxy for a script-based spawn group filter
 
''void'' '''ExecuteOrderFromTable'''(''handle'')
Issue an order from a script ''table''
 
''bool'' '''TakeDamage'''(''handle'')
Pass ''table'' - Inputs: hVictim, flDamage, damage type index, vForce, vPosition, hAttacker
 
''bool'' '''TraceCollideable'''(''handle'')
Pass ''table'' - Inputs: start, end, ent, (optional mins, maxs) -- outputs: pos, fraction, hit, startsolid, normal
 
''float'' '''RandomFloat'''(''float'', ''float'')
Get a random ''float'' within a range
 
''void'' '''StopSoundOn'''(''string'', ''handle'')
Stop named sound on Entity
 
''void'' '''UnloadSpawnGroup'''(''string'')
Unload a spawn group by name
 
''bool'' '''rr_QueryBestResponse'''(''handle'', ''handle'', ''handle'')
Params: ( hEnt, hQuery, hResult ) // Static : tests 'query' against entity's response system and returns the best response found (or ''null'' if none found).
 
''void'' '''UnloadSpawnGroupByHandle'''(''int'')
Unload a spawn group by ''handle''
 
''void'' '''SetRenderingEnabled'''(''ehandle'', ''bool'')
Set rendering on/off for an ''ehandle''
 
''bool'' '''rr_CommitAIResponse'''(''handle'', ''handle'')
Commit the result of QueryBestResponse back to the given entity to play. Call with params (entity, airesponse)
 
''void'' '''StopListeningToAllGameEvents'''(''handle'')
Stop listening to all game events within a specific context.
 
''table'' '''LoadKeyValuesFromString'''(''string'')
Creates a ''table'' from the specified keyvalues ''string''
 
= Class CBaseEntity =
 
''Vector'' '''GetBaseVelocity'''()
Get Base velocity
 
''void'' '''SetSize'''(''Vector'', ''Vector'')
 
''void'' '''SetRenderColor'''(''int'', ''int'', ''int'')
SetRenderColor( r, g, b ): Sets the render color of the entity.
 
''void'' '''GatherCriteria'''(''handle'')
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.
 
''void'' '''Trigger'''()
Fires off this entity's OnTrigger responses
 
''void'' '''SetOwner'''(''handle'')
Sets this entity's owner
 
''void'' '''SetAbsOrigin'''(''Vector'')
SetAbsOrigin
 
''void'' '''SetAngularVelocity'''(''float'', ''float'', ''float'')
Set the local angular velocity - takes ''float'' pitch,yaw,roll velocities
 
''handle'' '''GetOwner'''()
Gets this entity's owner
 
''handle'' '''GetOwnerEntity'''()
Get the owner entity, if there is one
 
''handle'' '''GetChildren'''()
Get the entities parented to this entity.
 
''void'' '''SetMaxHealth'''(''int'')
 
''Vector'' '''GetCenter'''()
Get ''vector'' to center of object - absolute coords
 
''void'' '''Kill'''()
 
''handle'' '''FirstMoveChild'''()
 
''handle'' '''GetMoveParent'''()
If in hierarchy, retrieves the entity's parent
 
''void'' '''SetForwardVector'''(''Vector'')
Set the orientation of the entity to have this forward ''vector''
 
''void'' '''SetContextNum'''(''string'', ''float'', ''float'')
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').
 
''Vector'' '''GetAbsOrigin'''()
 
''Vector'' '''GetAngularVelocity'''()
Get the local angular velocity - returns a ''vector'' of pitch,yaw,roll
 
''handle'' '''NextMovePeer'''()
 
''void'' '''ApplyLocalAngularVelocityImpulse'''(''Vector'')
Apply an Ang Velocity Impulse
 
''int'' '''GetMaxHealth'''()
 
''void'' '''PrecacheScriptSound'''(''string'')
Precache a sound for later playing.
 
''void'' '''SetContextThink'''(''string'', ''handle'', ''float'')
Set a think function on this entity.
 
''table'' '''GetBounds'''()
Get a ''table'' containing the 'Mins' & 'Maxs' ''vector'' bounds, centered on object
 
''void'' '''SetTeam'''(''int'')
 
''int'' '''GetHealth'''()
 
''Vector'' '''GetForwardVector'''()
Get the forward ''vector'' of the entity
 
''Vector'' '''GetBoundingMaxs'''()
Get a ''vector'' containing max bounds, centered on object
 
''string'' '''GetModelName'''()
Returns the name of the model
 
''void'' '''SetContext'''(''string'', ''string'', ''float'')
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').
 
''void'' '''EmitSoundParams'''(''string'', ''int'', ''float'', ''float'')
Plays/modifies a sound from this entity. changes sound if nPitch and/or flVol or flSoundTime is > 0.
 
''void'' '''SetVelocity'''(''Vector'')
 
''int'' '''GetTeam'''()
 
''table'' '''GetContext'''(''string'')
GetContext( name ): looks up a context and returns it if available. May return ''string'', ''float'', or ''null'' (if the context isn't found)
 
''QAngle'' '''GetAngles'''()
 
''void'' '''SetHealth'''(''int'')
 
''bool'' '''IsAlive'''()
 
''void'' '''SetParent'''(''handle'', ''string'')
Set the parent for this entity.
 
''Vector'' '''GetAnglesAsVector'''()
Get entity pitch, yaw, roll as a ''vector''
 
''void'' '''EmitSound'''(''string'')
Plays a sound from this entity.
 
''void'' '''SetAngles'''(''float'', ''float'', ''float'')
Set entity pitch, yaw, roll
 
''QAngle'' '''EyeAngles'''()
Get the qangles that this entity is looking at.
 
''Vector'' '''EyePosition'''()
Get ''vector'' to eye position - absolute coords
 
''void'' '''ApplyAbsVelocityImpulse'''(''Vector'')
Apply a Velocity Impulse
 
''handle'' '''GetRootMoveParent'''()
If in hierarchy, walks up the hierarchy to find the root parent
 
''void'' '''OverrideFriction'''(''float'', ''float'')
Takes duration, value for a temporary override
 
''void'' '''SetFriction'''(''float'')
Set PLAYER friction, ignored for objects
 
''void'' '''SetModel'''(''string'')
 
''Vector'' '''GetUpVector'''()
Get the up ''vector'' of the entity
 
''void'' '''SetGravity'''(''float'')
Set PLAYER gravity, ignored for objects
 
''bool'' '''IsPlayer'''()
Is this a player entity?
 
''Vector'' '''GetVelocity'''()
 
''Vector'' '''GetLocalVelocity'''()
Get Entity relative velocity
 
''void'' '''StopSound'''(''string'')
Stops a named sound playing from this entity.
 
''void'' '''SetOrigin'''(''Vector'')
 
''float'' '''GetSoundDuration'''(''string'', ''string'')
Returns ''float'' duration of the sound. Takes soundname and optional actormodelname.
 
''QAngle'' '''GetLocalAngularVelocity'''()
Maybe local angvel
 
''Vector'' '''GetOrigin'''()
 
''Vector'' '''GetBoundingMins'''()
Get a ''vector'' containing min bounds, centered on object
 
''Vector'' '''GetRightVector'''()
Get the right ''vector'' of the entity
 
== Class CEntities ==
 
''handle'' '''First'''()
Begin an iteration over the list of entities
 
''table'' '''FindAllByModel'''(''string'')
Find entities by model name.
 
''handle'' '''FindByName'''(''handle'', ''string'')
Find entities by name. Pass ''null'' to start an iteration, or reference to a previously found entity to continue a search
 
''handle'' '''FindByNameWithin'''(''handle'', ''string'', ''Vector'', ''float'')
Find entities by name within a radius. Pass ''null'' to start an iteration, or reference to a previously found entity to continue a search
 
''table'' '''FindAllByTarget'''(''string'')
Find entities by targetname.
 
''handle'' '''FindByClassname'''(''handle'', ''string'')
Find entities by class name. Pass ''null'' to start an iteration, or reference to a previously found entity to continue a search
 
''table'' '''FindAllByName'''(''string'')
Find all entities by name. Returns an array containing all the found entities in it.
 
''table'' '''FindAllByClassnameWithin'''(''string'', ''Vector'', ''float'')
Find entities by class name within a radius.
 
''handle'' '''FindByModel'''(''handle'', ''string'')
Find entities by model name. Pass ''null'' to start an iteration, or reference to a previously found entity to continue a search
 
''table'' '''FindAllByNameWithin'''(''string'', ''Vector'', ''float'')
Find entities by name within a radius.
 
''handle'' '''FindByClassnameWithin'''(''handle'', ''string'', ''Vector'', ''float'')
Find entities by class name within a radius. Pass ''null'' to start an iteration, or reference to a previously found entity to continue a search
 
''handle'' '''FindByClassnameNearest'''(''string'', ''Vector'', ''float'')
Find entities by class name nearest to a point.
 
''table'' '''FindAllByClassname'''(''string'')
Finds all entities by class name. Returns an array containing all the found entities.
 
''handle'' '''FindByTarget'''(''handle'', ''string'')
Find entities by targetname. Pass ''null'' to start an iteration, or reference to a previously found entity to continue a search
 
''handle'' '''FindByNameNearest'''(''string'', ''Vector'', ''float'')
Find entities by name nearest to a point.
 
''handle'' '''CreateByClassname'''(''string'')
Creates an entity by classname
 
''table'' '''FindAllInSphere'''(''Vector'', ''float'')
Find entities within a radius.
 
''handle'' '''Next'''(''handle'')
Continue an iteration over the list of entities, providing reference to a previously found entity
 
''handle'' '''FindInSphere'''(''handle'', ''Vector'', ''float'')
Find entities within a radius. Pass ''null'' to start an iteration, or reference to a previously found entity to continue a search
 
''handle'' '''FindByModelWithin'''(''handle'', ''string'', ''Vector'', ''float'')
Find entities by model name within a radius. Pass ''null'' to start an iteration, or reference to a previously found entity to continue a search
 
== Class CEntityInstance ==
 
''int'' '''GetEntityIndex'''()
 
''void'' '''DisconnectRedirectedOutput'''(''string'', ''string'', ''handle'')
Removes a connected script function from an I/O event on the passed entity.
 
''handle'' '''GetOrCreatePublicScriptScope'''()
Retrieve, creating if necessary, the public script-side data associated with an entity
 
''handle'' '''GetOrCreatePrivateScriptScope'''()
Retrieve, creating if necessary, the private per-instance script-side data associated with an entity
 
''handle'' '''GetPrivateScriptScope'''()
Retrieve the private per-instance script-side data associated with an entity
 
''void'' '''RedirectOutput'''(''string'', ''string'', ''handle'')
Adds an I/O connection that will call the named function on the passed entity when the specified output fires.
 
''int'' '''GetIntAttr'''(''string'')
Get Integer Attribute
 
''void'' '''FireOutput'''(''string'', ''handle'', ''handle'', ''table'', ''float'')
Fire an entity output
 
''string'' '''GetDebugName'''()
Get the entity name w/help if not defined (i.e. classname/etc)
 
''void'' '''DisconnectOutput'''(''string'', ''string'')
Removes a connected script function from an I/O event on this entity.
 
''void'' '''Destroy'''()
 
''string'' '''GetClassname'''()
 
''string'' '''GetName'''()
 
''void'' '''ConnectOutput'''(''string'', ''string'')
Adds an I/O connection that will call the named function on this entity when the specified output fires.
 
''int'' '''entindex'''()
 
''ehandle'' '''GetEntityHandle'''()
Get the entity as an EHANDLE
 
''void'' '''RemoveSelf'''()
Delete this entity
 
''void'' '''SetIntAttr'''(''string'', ''int'')
Set Integer Attribute
 
''handle'' '''GetPublicScriptScope'''()
Retrieve the public script-side data associated with an entity
 
== Class CDOTABaseAbility ==
 
''bool'' '''GetAnimationIgnoresModelScale'''()
 
''bool'' '''IsSharedWithTeammates'''()
 
''void'' '''OnHeroLevelUp'''()
 
''void'' '''OnChannelFinish'''(''bool'')
 
''void'' '''ToggleAutoCast'''()
 
''float'' '''GetDuration'''()
 
''bool'' '''IsChanneling'''()
Returns whether the ability is currently channeling.
 
''int'' '''GetAbilityTargetType'''()
 
''string'' '''GetAbilityName'''()
 
''bool'' '''PlaysDefaultAnimWhenStolen'''()
 
''bool'' '''IsActivated'''()
 
''void'' '''OnAbilityPhaseInterrupted'''()
 
''void'' '''SetHidden'''(''bool'')
 
''bool'' '''IsPassive'''()
 
''int'' '''GetCastRange'''()
 
''float'' '''GetBackswingTime'''()
 
''float'' '''GetCooldownTime'''()
 
''void'' '''PayManaCost'''()
 
''string'' '''GetAssociatedSecondaryAbilities'''()
 
''string'' '''GetStolenActivityModifier'''()
 
''bool'' '''SpeakTrigger'''()
 
''void'' '''PayGoldCostForUpgrade'''()
 
''float'' '''GetModifierValue'''()
 
''bool'' '''GetCursorTargetingNothing'''()
 
''float'' '''GetCooldownTimeRemaining'''()
 
''float'' '''GetChannelStartTime'''()
 
''Vector'' '''GetCursorPosition'''()
 
''bool'' '''GetToggleState'''()
 
''bool'' '''IsInAbilityPhase'''()
Returns whether the ability is currently casting.
 
''bool'' '''ProcsMagicStick'''()
 
''float'' '''GetCooldown'''(''int'')
Get the cooldown duration for this ability at a given level, not the amount of cooldown actually left.
 
''void'' '''ToggleAbility'''()
 
''bool'' '''IsHiddenWhenStolen'''()
 
''void'' '''OnSpellStart'''()
 
''void'' '''CastAbility'''()
 
''int'' '''GetChannelledManaCostPerSecond'''(''int'')
 
''string'' '''GetIntrinsicModifierName'''()
 
''bool'' '''IsOwnersGoldEnough'''(''int'')
 
''bool'' '''IsHidden'''()
 
''table'' '''GetLevelSpecialValueFor'''(''string'', ''int'')
 
''int'' '''GetGoldCost'''(''int'')
 
''void'' '''SetChanneling'''(''bool'')
 
''void'' '''SetInAbilityPhase'''(''bool'')
 
''void'' '''SetAbilityIndex'''(''int'')
 
''int'' '''GetAbilityTargetTeam'''()
 
''void'' '''SpeakAbilityConcept'''(''int'')
 
''bool'' '''IsCooldownReady'''()
 
''bool'' '''IsToggle'''()
 
''float'' '''GetCastPoint'''()
 
''void'' '''OnUpgrade'''()
 
''int'' '''GetLevel'''()
Get the current level of the ability
 
''table'' '''GetSpecialValueFor'''(''string'')
 
''void'' '''DecrementModifierRefCount'''()
 
''int'' '''GetAbilityType'''()
 
''void'' '''UseResources'''(''bool'', ''bool'', ''bool'')
 
''bool'' '''IsAttributeBonus'''()
 
''void'' '''MarkAbilityButtonDirty'''()
Mark the ability button for this ability as needing a refresh
 
''void'' '''OnChannelThink'''(''float'')
 
''bool'' '''HeroXPChange'''(''float'')
 
''int'' '''GetAbilityTargetFlags'''()
 
''void'' '''OnHeroCalculateStatBonus'''()
 
''void'' '''SetOverrideCastPoint'''(''float'')
 
''int'' '''GetAbilityDamageType'''()
 
''bool'' '''RefCountsModifiers'''()
 
''void'' '''CreateVisibilityNode'''(''Vector'', ''float'', ''float'')
 
''bool'' '''ResetToggleOnRespawn'''()
 
''float'' '''GetPlaybackRateOverride'''()
 
''bool'' '''IsStealable'''()
 
''void'' '''EndChannel'''(''bool'')
Param: ''bool'' bInterrupted
 
''int'' '''GetGoldCostForUpgrade'''(''int'')
 
''void'' '''SetRefCountsModifiers'''(''bool'')
 
''bool'' '''OnAbilityPhaseStart'''()
 
''void'' '''UpgradeAbility'''()
 
''void'' '''SetActivated'''(''bool'')
 
''bool'' '''ShouldUseResources'''()
 
''string'' '''GetAssociatedPrimaryAbilities'''()
 
''bool'' '''IsOwnersGoldEnoughForUpgrade'''()
 
''int'' '''GetManaCost'''(''int'')
 
''float'' '''GetModifierValueBonus'''()
 
''void'' '''OnOwnerDied'''()
 
''bool'' '''IsFullyCastable'''()
Returns whether the ability can be cast.
 
''int'' '''GetMaxLevel'''()
 
''void'' '''PayGoldCost'''()
 
''void'' '''OnOwnerSpawned'''()
 
''void'' '''OnInventoryContentsChanged'''()
 
''int'' '''GetConceptRecipientType'''()
 
''int'' '''GetBehavior'''()
 
''handle'' '''GetCloneSource'''()
 
''string'' '''GetSharedCooldownName'''()
 
''bool'' '''ContinueCasting'''()
 
''int'' '''GetAbilityDamage'''()
 
''bool'' '''IsStolen'''()
 
''bool'' '''IsOwnersManaEnough'''()
 
''void'' '''SetLevel'''(''int'')
Sets the level of this ability.
 
''int'' '''GetAbilityIndex'''()
 
''int'' '''NumModifiersUsingAbility'''()
 
''bool'' '''IsCosmetic'''()
 
''bool'' '''IsItem'''()
 
''void'' '''EndCooldown'''()
Clear the cooldown remaining on this ability.
 
''int'' '''GetHeroLevelRequiredToUpgrade'''()
 
''void'' '''OnAbilityPinged'''()
 
''void'' '''SetStolen'''(''bool'')
 
''bool'' '''GetAutoCastState'''()
 
''float'' '''GetChannelTime'''()
 
''handle'' '''GetCaster'''()
 
''void'' '''StartCooldown'''(''float'')
param: flCooldown
 
''void'' '''RefundManaCost'''()
 
''void'' '''IncrementModifierRefCount'''()
 
''bool'' '''IsTrained'''()
 
''handle'' '''GetCursorTarget'''()
 
''void'' '''OnToggle'''()
 
=== Class CDOTA_Ability_Animation_Attack ===
 
''void'' '''SetPlaybackRate'''(''float'')
Override playbackrate
 
=== Class CDOTA_Ability_Animation_TailSpin ===
 
''void'' '''SetPlaybackRate'''(''float'')
Override playbackrate
 
=== Class CDOTA_Ability_Nian_Leap ===
 
''void'' '''SetPlaybackRate'''(''float'')
Override playbackrate
 
=== Class CDOTA_Ability_Nian_Dive ===
 
''void'' '''SetPlaybackRate'''(''float'')
Override playbackrate
 
=== Class CDOTA_Ability_Nian_Roar ===
 
''int'' '''GetCastCount'''()
Number of times Nian has used the roar
 
== Class CDOTA_Item ==
 
''float'' '''GetPurchaseTime'''()
Get the purchase time of this item
 
''int'' '''GetInitialCharges'''()
Get the initial number of charges this item has.
 
''handle'' '''GetContainer'''()
Get the container for this item.
 
''void'' '''SetPurchaseTime'''(''float'')
Set the purchase time of this item
 
''void'' '''Think'''()
Think this item
 
''void'' '''LaunchLoot'''(''bool'', ''float'', ''float'', ''Vector'')
 
''void'' '''SetPurchaser'''(''handle'')
Set the purchaser of record for this item.
 
''int'' '''GetCurrentCharges'''()
Get the number of charges this item currently has.
 
''handle'' '''GetPurchaser'''()
Get the purchaser for this item.
 
''int'' '''GetShareability'''()
 
''int'' '''GetCost'''()
 
''void'' '''SetCurrentCharges'''(''int'')
Set the number of charges on this item
 
''bool'' '''IsPermanent'''()
Is this a permanent item?
 
''bool'' '''StacksWithOtherOwners'''()
 
''void'' '''SetStacksWithOtherOwners'''(''bool'')
 
=== Class CDOTA_Item_Physical ===
 
''float'' '''GetCreationTime'''()
Returns the game time when this item was created in the world
 
''void'' '''SetContainedItem'''(''handle'')
Set the contained item.
 
''handle'' '''GetContainedItem'''()
Returned the contained item.
 
=== Class CDOTA_Item_DataDriven ===
 
''void'' '''ApplyDataDrivenModifier'''(''handle'', ''handle'', ''string'', ''handle'')
Applies a data driven modifier to the target
 
== Class CDOTA_Unit_Nian ==
 
''handle'' '''GetTail'''()
Is the Nian's tail broken?
 
''bool'' '''IsTailAlive'''()
Is the Nian's tail broken?
 
''bool'' '''IsHornAlive'''()
Is the Nian's horn broken?
 
''handle'' '''GetHorn'''()
Is the Nian horn?
 
= Class CBasePlayer =
 
''bool'' '''IsNoclipping'''()
Returns true if the player is in noclip mode.
 
== Class CDOTAPlayer ==
 
''handle'' '''GetControlledRPGUnit'''()
Get the RPG unit this player controls.
 
''handle'' '''GetAssignedHero'''()
Get the player's hero.
 
''int'' '''GetPlayerID'''()
Get the player's official PlayerID; notably is -1 when the player isn't yet on a team.
 
''void'' '''SetKillCamUnit'''(''handle'')
Set the kill cam unit for this hero.
 
''void'' '''SetMusicStatus'''(''int'', ''float'')
(nMusicStatus, flIntensity) - Set the music status for this player, note this will only really apply if dota_music_battle_enable is off.
 
''void'' '''MakeRandomHeroSelection'''()
Randoms this player's hero.
 
== Class CDOTA_PlayerResource ==
 
''int'' '''GetDenies'''(''int'')
 
''int'' '''GetGoldSpentOnConsumables'''(''int'')
 
''bool'' '''GetPlayerReservedState'''(''int'')
 
''int'' '''GetEventPremiumPointsGranted'''(''int'')
 
''bool'' '''IsValidPlayerID'''(''int'')
 
''int'' '''GetTeam'''(''int'')
 
''int'' '''GetNthPlayerIDOnTeam'''(''int'', ''int'')
 
''int'' '''GetCustomBuybackCost'''(''int'')
 
''bool'' '''IsValidTeamPlayer'''(''int'')
 
''string'' '''GetPlayerName'''(''int'')
 
''int'' '''GetEventPointsForPlayerID'''(''int'')
 
''void'' '''SetCustomBuybackCooldown'''(''int'', ''float'')
Set the buyback cooldown for this player.
 
''int'' '''GetTowerDamageTaken'''(''int'')
 
''int'' '''GetAegisPickups'''(''int'')
 
''void'' '''SetHasRandomed'''(''int'')
 
''void'' '''SetCameraTarget'''(''int'', ''handle'')
(playerID, entity) - force the given player's camera to follow the given entity
 
''void'' '''IncrementLastHitMultikill'''(''int'')
 
''int'' '''GetEventRankGranted'''(''int'')
 
''bool'' '''IsDisableHelpSetForPlayerID'''(''int'', ''int'')
 
''int'' '''GetRoshanKills'''(''int'')
 
''int'' '''GetMisses'''(''int'')
 
''void'' '''SetCustomBuybackCost'''(''int'', ''int'')
Set the buyback cost for this player.
 
''handle'' '''ReplaceHeroWith'''(''int'', ''string'', ''int'', ''int'')
(playerID, heroClassName, gold, XP) - replaces the player's hero with a new one of the specified class, gold and XP
 
''int'' '''GetClaimedDenies'''(''int'')
 
''void'' '''IncrementTotalEarnedXP'''(''int'', ''int'')
 
''int'' '''GetLastHits'''(''int'')
 
''bool'' '''IsValidPlayer'''(''int'')
 
''void'' '''SetBuybackGoldLimitTime'''(''int'', ''float'')
 
''void'' '''SetBuybackCooldownTime'''(''int'', ''float'')
 
''void'' '''ClearLastHitMultikill'''(''int'')
 
''int'' '''ModifyGold'''(''int'', ''int'', ''bool'', ''int'') ( iPlayerID, iGoldChange, bReliable, iReason )
 
''handle'' '''GetNthCourierForTeam'''(''int'', ''int'')
 
''int'' '''GetGoldSpentOnSupport'''(''int'')
 
''int'' '''GetNumCouriersForTeam'''(''int'')
 
''void'' '''AddRunePickup'''(''int'')
 
''bool'' '''AreUnitsSharedWithPlayerID'''(''int'', ''int'') ( nPlayerID, nOtherPlayerID )
 
''void'' '''SetUnitShareMaskForPlayer'''(''int'', ''int'', ''int'', ''bool'') ( nPlayerID, nOtherPlayerID, nFlag, bState )
 
''bool'' '''IsHeroSharedWithPlayerID'''(''int'', ''int'')
 
''int'' '''GetUnitShareMaskForPlayer'''(''int'', ''int'')
 
''<unknown>'' '''GetSteamAccountID'''(''int'')
 
''int'' '''GetCreepDamageTaken'''(''int'')
 
''void'' '''SetLastBuybackTime'''(''int'', ''int'')
 
''float'' '''GetTimeOfLastConsumablePurchase'''(''int'')
 
''float'' '''GetTimeOfLastItemPurchase'''(''int'')
 
''int'' '''GetGold'''(''int'')
 
''void'' '''HeroLevelUp'''(''int'')
 
''<unknown>'' '''GetConnectionState'''(''int'')
 
''float'' '''GetCustomBuybackCooldown'''(''int'')
 
''void'' '''SetPlayerReservedState'''(''int'', ''bool'')
 
''int'' '''GetRawPlayerDamage'''(''int'')
 
''void'' '''IncrementStreak'''(''int'')
 
''void'' '''IncrementClaimedMisses'''(''int'')
 
''int'' '''GetTotalEarnedXP'''(''int'')
 
''int'' '''GetGoldSpentOnItems'''(''int'')
 
''string'' '''GetSelectedHeroName'''(''int'')
 
''int'' '''GetRespawnSeconds'''(''int'')
 
''bool'' '''GetPlayerLoadedCompletely'''(''int'')
 
''bool'' '''HaveAllPlayersJoined'''()
 
''bool'' '''IsFakeClient'''(''int'')
 
''int'' '''GetDamageDoneToHero'''(''int'', ''int'')
 
''bool'' '''IsHeroSelected'''(''string'')
 
''<unknown>'' '''GetBroadcasterChannelSlot'''(''int'')
 
''<unknown>'' '''GetBroadcasterChannel'''(''int'')
 
''int'' '''GetLevel'''(''int'')
 
''bool'' '''HasRandomed'''(''int'')
 
''int'' '''GetTeamKills'''(''int'')
 
''bool'' '''IsBroadcaster'''(''int'')
 
''bool'' '''IsValidTeamPlayerID'''(''int'')
 
''void'' '''SpendGold'''(''int'', ''int'', ''int'')
 
''float'' '''GetHealing'''(''int'')
 
''void'' '''IncrementLastHits'''(''int'')
 
''void'' '''IncrementMisses'''(''int'')
 
''int'' '''GetTotalGoldSpent'''(''int'')
 
''void'' '''IncrementClaimedDenies'''(''int'')
 
''handle'' '''GetPlayer'''(''int'')
 
''void'' '''IncrementDenies'''(''int'')
 
''void'' '''SetGold'''(''int'', ''int'', ''bool'')
 
''float'' '''GetXPPerMin'''(''int'')
 
''float'' '''GetTimeOfLastDeath'''(''int'')
 
''int'' '''GetGoldBagsCollected'''(''int'')
 
''int'' '''GetUnreliableGold'''(''int'')
 
''int'' '''GetAssists'''(''int'')
 
''float'' '''GetGoldPerMin'''(''int'')
 
''int'' '''GetDeaths'''(''int'')
 
''int'' '''WhoSelectedHero'''(''string'')
 
''int'' '''GetLastHitMultikill'''(''int'')
 
''void'' '''IncrementKills'''(''int'', ''int'')
 
''int'' '''GetLastHitStreak'''(''int'')
 
''void'' '''IncrementAssists'''(''int'')
 
''void'' '''IncrementLastHitStreak'''(''int'')
 
''void'' '''ClearLastHitStreak'''(''int'')
 
''int'' '''GetKills'''(''int'')
 
''void'' '''IncrementNearbyCreepDeaths'''(''int'')
 
''int'' '''GetTotalEarnedGold'''(''int'')
 
''void'' '''IncrementGoldBagsCollected'''(''int'')
 
''void'' '''ResetBuybackCostTime'''(''int'')
 
''void'' '''UpdateTeamSlot'''(''int'', ''int'')
 
''int'' '''GetGoldSpentOnBuybacks'''(''int'')
 
''float'' '''GetStuns'''(''int'')
 
''handle'' '''GetSelectedHeroEntity'''(''int'')
 
''int'' '''GetClaimedMisses'''(''int'')
 
''bool'' '''HasSelectedHero'''(''int'')
 
''int'' '''GetNearbyCreepDeaths'''(''int'')
 
''int'' '''GetNumConsumablesPurchased'''(''int'')
 
''void'' '''ClearRawPlayerDamageMatrix'''(''int'')
 
''int'' '''GetStreak'''(''int'')
 
''int'' '''GetKillsDoneToHero'''(''int'', ''int'')
 
''int'' '''GetTowerKills'''(''int'')
 
''void'' '''AddAegisPickup'''(''int'')
 
''void'' '''AddClaimedFarm'''(''int'', ''float'')
 
''void'' '''ResetTotalEarnedGold'''(''int'')
 
''int'' '''GetHeroDamageTaken'''(''int'')
 
''void'' '''IncrementDeaths'''(''int'')
 
''void'' '''AddGoldSpentOnSupport'''(''int'', ''int'')
 
''int'' '''GetSelectedHeroID'''(''int'')
 
''int'' '''GetRunePickups'''(''int'')
 
''int'' '''GetNumItemsPurchased'''(''int'')
 
''float'' '''GetClaimedFarm'''(''int'')
 
''int'' '''GetReliableGold'''(''int'')
 
''bool'' '''HasRepicked'''(''int'')
 
''void'' '''SetHasRepicked'''(''int'')
 
''void'' '''ClearStreak'''(''int'')
 
''int'' '''GetGoldLostToDeath'''(''int'')
 
''void'' '''ClearKillsMatrix'''(''int'')
 
= Class CDOTA_BaseNPC =
 
''void'' '''ForceKill'''(''bool'')
Kill this unit immediately.
 
''int'' '''GetAbilityCount'''()
 
''float'' '''GetAdditionalBattleMusicWeight'''()
Combat involving this creature will have this weight added to the music calcuations
 
''int'' '''GetPlayerOwnerID'''()
Get the owner player ID for this unit.
 
''void'' '''EjectItemFromStash'''(''handle'')
Drops the selected item out of this unit's stash.
 
''int'' '''GetBaseDayTimeVisionRange'''()
Returns the vision range before modifiers.
 
''bool'' '''IsMuted'''()
 
''bool'' '''IsAttackingEntity'''(''handle'')
 
''bool'' '''IsMechanical'''()
Is the unit mechanical?
 
''bool'' '''IsRealHero'''()
Is this a real hero?
 
''void'' '''SetDayTimeVisionRange'''(''int'')
Set the base vision range.
 
''float'' '''GetModelRadius'''()
 
''int'' '''GetAverageTrueAttackDamage'''()
Returns the average value of the minimum and maximum damage values.
 
''void'' '''RemoveModifierByName'''(''string'')
Removes a modifier
 
''void'' '''DropItemAtPositionImmediate'''(''handle'', ''Vector'')
Immediately drop a carried item at a given position.
 
''float'' '''GetPaddedCollisionRadius'''()
Get the collision hull radius (including padding) of this NPC
 
''float'' '''GetAttackSpeed'''()
 
''float'' '''GetManaRegen'''()
 
''void'' '''MoveToTargetToAttack'''(''handle'')
Move to a target to attack.
 
''bool'' '''IsDeniable'''()
 
''void'' '''SetHullRadius'''(''float'')
Set the collision hull radius of this NPC
 
''float'' '''GetAttackRange'''()
Gets this unit's attack range after all modifiers.
 
''void'' '''SetMana'''(''float'')
Set the mana on this unit.
 
''handle'' '''GetInitialGoalEntity'''()
Returns the initial waypoint goal for this NPC
 
''string'' '''GetUnitName'''()
 
''void'' '''RespawnUnit'''()
Respawns the target unit if it can be respawned.
 
''float'' '''GetRangeToUnit'''(''handle'')
 
''void'' '''CastAbilityImmediately'''(''handle'', ''int'')
Cast an ability immediately.
 
''void'' '''SetNightTimeVisionRange'''(''int'')
Set the base vision range.
 
''void'' '''RemoveAbility'''(''string'')
Remove an ability from this unit by name.
 
''bool'' '''IsAncient'''()
Is this creature an Ancient?
 
''void'' '''SetStolenScepter'''(''bool'')
 
''float'' '''GetHealthRegen'''()
 
''int'' '''GetAttackDamage'''()
Returns a random integer between the minimum and maximum base damage of the unit.
 
''void'' '''Stop'''()
Stop the current order.
 
''handle'' '''GetAbilityByIndex'''(''int'')
Retrieve an ability by index from the unit.
 
''void'' '''SetInitialGoalEntity'''(''handle'')
Sets the initial waypoint goal for this NPC
 
''void'' '''SetOriginalModel'''(''string'')
Sets the original model of this entity, which it will tend to fall back to anytime its state changes
 
''bool'' '''IsOutOfGame'''()
 
''float'' '''GetCreationTime'''()
 
''void'' '''RemoveItem'''(''handle'')
Removes the passed item from this unit's inventory.
 
''int'' '''GetNightTimeVisionRange'''()
Returns the vision range after modifiers.
 
''void'' '''AngerNearbyUnits'''()
 
''void'' '''InterruptChannel'''()
 
''bool'' '''UnitCanRespawn'''()
 
''bool'' '''NotOnMinimapForEnemies'''()
 
''int'' '''GetHealthPercent'''()
Get the current health percent of the unit.
 
''bool'' '''IsPhantomBlocker'''()
 
''void'' '''MakePhantomBlocker'''()
 
''handle'' '''FindAbilityByName'''(''string'')
Retrieve an ability by name from the unit.
 
''bool'' '''HasAbility'''(''string'')
See whether this unit has an ability by name.
 
''void'' '''MakeVisibleDueToAttack'''(''int'')
 
''bool'' '''IsInvulnerable'''()
 
''float'' '''GetAttackRangeBuffer'''()
Gets the attack range buffer.
 
''void'' '''SetBaseDamageMin'''(''int'')
Sets the minimum base damage.
 
''bool'' '''IsFrozen'''()
 
''int'' '''GetBaseNightTimeVisionRange'''()
Returns the vision range before modifiers.
 
''void'' '''DropItemAtPosition'''(''Vector'', ''handle'')
Drop an item at a given point.
 
''void'' '''MakeVisibleToTeam'''(''int'', ''float'') ( iTeam, flDuration )
 
''int'' '''GetOpposingTeamNumber'''()
 
''int'' '''GetModifierCount'''()
How many modifiers does this unit have?
 
''void'' '''SetCursorPosition'''(''Vector'')
 
''float'' '''GetHullRadius'''()
Get the collision hull radius of this NPC
 
''bool'' '''IsOpposingTeam'''(''int'')
 
''void'' '''SetIdleAcquire'''(''bool'')
 
''bool'' '''ShouldIdleAcquire'''()
 
''bool'' '''IsPositionInRange'''(''Vector'', ''float'')
 
''void'' '''InterruptMotionControllers'''(''bool'')
Parameter boolean determines finding clear space.
 
''void'' '''SetControllableByPlayer'''(''int'', ''bool'')
Set this unit controllable by the player with the passed ID.
 
''void'' '''RemoveNoDraw'''()
Remove the no draw flag.
 
''void'' '''ReduceMana'''(''float'')
Remove mana from this unit, this can be used for involuntary mana loss, not for mana that is spent.
 
''void'' '''SetBaseManaRegen'''(''float'')
 
''void'' '''Interrupt'''()
 
''Vector'' '''GetCursorPosition'''()
 
''float'' '''GetBaseAttackTime'''()
 
''int'' '''GetDayTimeVisionRange'''()
Returns the vision range after modifiers.
 
''void'' '''MoveToNPC'''(''handle'')
Move to follow a unit.
 
''bool'' '''IsUnableToMiss'''()
 
''void'' '''RemoveModifierByNameAndCaster'''(''string'', ''handle'')
Removes a modifier that was cast by the given caster
 
''void'' '''SetForceAttackTarget'''(''handle'')
 
''bool'' '''HasAttackCapability'''()
 
''float'' '''GetAttacksPerSecond'''()
 
''int'' '''GetBaseDamageMin'''()
Gets the minimum base damage.
 
''handle'' '''GetForceAttackTarget'''()
 
''void'' '''AlertNearbyUnits'''(''handle'', ''handle'')
 
''bool'' '''IsCreature'''()
Is this a Creature type NPC
 
''handle'' '''GetAttackTarget'''()
 
''void'' '''PerformAttack'''(''handle'', ''bool'', ''bool'', ''bool'', ''bool'')
Performs an attack on a target. Params: Target, bUseCastAttackOrb, bProcessProcs, bSkipCooldown, bIgnoreInvis
 
''int'' '''GetDeathXP'''()
Get the XP bounty on this unit
 
''void'' '''SetAttacking'''(''handle'')
 
''void'' '''SetHasInventory'''(''bool'')
 
''void'' '''ModifyHealth'''(''int'', ''handle'', ''bool'', ''int'')
Sets the health to a specific value, with optional flags or inflictors.
 
''bool'' '''IsMagicImmune'''()
 
''float'' '''GetAttackAnimationPoint'''()
 
''float'' '''TimeUntilNextAttack'''()
 
''void'' '''AttackNoEarlierThan'''(''float'')
 
''void'' '''SetBaseMagicalResistanceValue'''(''float'')
Sets base magical armor value.
 
''void'' '''AddAbility'''(''string'')
Add an ability to this unit by name.
 
''bool'' '''HasItemInInventory'''(''string'')
See whether this unit has an item by name.
 
''bool'' '''AttackReady'''()
 
''void'' '''SetDeathXP'''(''int'')
Set the XP bounty on this unit
 
''float'' '''GetBaseHealthRegen'''()
 
''int'' '''GetTeamNumber'''()
Get the team number of this unit.
 
''float'' '''GetStatsBasedManaRegen'''()
Returns mana regen rate per intelligence.
 
''string'' '''GetUnitLabel'''()
 
''bool'' '''IsHardDisarmed'''()
 
''float'' '''GetMoveSpeedModifier'''(''float'')
 
''float'' '''GetMana'''()
Get the mana on this unit.
 
''void'' '''AddNewModifier'''(''handle'', ''handle'', ''string'', ''handle'')
Add a modifier to this unit
 
''void'' '''SwapAbilities'''(''string'', ''string'', ''bool'', ''bool'')
Swaps the slots of the two passed abilities and sets them enabled/disabled: const char* AbilityName1, const char* AbilityName2, ''bool'' bEnable1, ''bool'' bEnable2. The boolean controls which ability is active. The ability order is never swapped when swapping abilities, only the boolean statements are flipped.
 
''void'' '''SetUnitName'''(''string'')
 
''bool'' '''IsPhased'''()
 
''void'' '''SetRangedProjectileName'''(''string'')
 
''void'' '''SpendMana'''(''float'', ''handle'')
Spend mana from this unit, this can be used for spending mana from abilities or item usage.
 
''int'' '''GetProjectileSpeed'''()
 
''bool'' '''HasFlyingVision'''()
 
''bool'' '''HasMovementCapability'''()
 
''bool'' '''IsCommandRestricted'''()
 
''bool'' '''HasGroundMovementCapability'''()
 
''void'' '''SetMoveCapability'''(''int'')
 
''void'' '''SellItem'''(''handle'')
Sells the passed item in this unit's inventory.
 
''bool'' '''IsSoftDisarmed'''()
 
''float'' '''GetMagicalArmorValue'''()
Returns current magical armor value.
 
''void'' '''SetMinimumGoldBounty'''(''int'')
Set the minimum gold bounty for this unit.
 
''void'' '''SetAttackCapability'''(''int'')
 
''bool'' '''HasScepter'''()
 
''bool'' '''IsMovementImpaired'''()
 
''bool'' '''IsIdle'''()
Is this creature currently idle?
 
''bool'' '''IsRangedAttacker'''()
Is this unit a ranged attacker?
 
''void'' '''SetBaseHealthRegen'''(''float'')
 
''void'' '''SetBaseMoveSpeed'''(''int'')
 
''void'' '''SetMaximumGoldBounty'''(''int'')
Set the maximum gold bounty for this unit.
 
''float'' '''GetPercentageBasedManaRegen'''()
This Mana regen is derived from % bonuses (from items like Void Stone).
 
''handle'' '''GetItemInSlot'''(''int'')
Returns nth item in inventory slot (index is zero based)
 
''bool'' '''NoTeamMoveTo'''()
 
''int'' '''GetBaseDamageMax'''()
Gets the minimum base damage.
 
''int'' '''GetTotalPurchasedUpgradeGoldCost'''()
Get how much gold has been spent on ability upgrades.
 
''bool'' '''IsBlind'''()
 
''void'' '''GiveMana'''(''float'')
Give mana to this unit, this can be used for mana gained by abilities or item usage.
 
''bool'' '''IsDominated'''()
 
''bool'' '''GetMustReachEachGoalEntity'''()
Get whether this NPC is required to reach each goal entity, rather than being allowed to 'unkink' their path
 
''bool'' '''PassivesDisabled'''()
 
''void'' '''PickupRune'''(''handle'')
Pick up a rune.
 
''int'' '''GetManaPercent'''()
Get the percent of mana remaining.
 
''bool'' '''IsStunned'''()
 
''bool'' '''HasInventory'''()
 
''void'' '''MoveToNPCToGiveItem'''(''handle'', ''handle'')
Give an item to another unit.
 
''bool'' '''NoHealthBar'''()
 
''bool'' '''IsLowAttackPriority'''()
 
''bool'' '''NotOnMinimap'''()
 
''handle'' '''GetCursorCastTarget'''()
 
''bool'' '''IsInvisible'''()
 
''bool'' '''HasFlyMovementCapability'''()
 
''bool'' '''IsSpeciallyDeniable'''()
 
''int'' '''GetGoldBounty'''()
Get the gold bounty on this unit
 
''void'' '''AddNoDraw'''()
Adds the no draw flag.
 
''void'' '''AddItem'''(''handle'')
Add an item to this unit's inventory.
 
''bool'' '''IsUnselec''table'''''()
 
''void'' '''SetBaseAttackTime'''(''float'')
 
''float'' '''GetBaseMoveSpeed'''()
 
''bool'' '''IsBlockDisabled'''()
 
''bool'' '''IsNightmared'''()
 
''bool'' '''GetCursorTargetingNothing'''()
 
''bool'' '''HasModifier'''(''string'')
Sees if this unit has a given modifier
 
''float'' '''GetHasteFactor'''()
 
''bool'' '''NoUnitCollision'''()
 
''bool'' '''IsHexed'''()
 
''float'' '''GetCastPoint'''(''bool'')
Parameter: bAttack
 
''float'' '''GetConstantBasedManaRegen'''()
This Mana regen is derived from constant bonuses like Basilius.
 
''int'' '''GetLevel'''()
Returns the level of this unit.
 
''void'' '''SetCursorTargetingNothing'''(''bool'')
 
''bool'' '''IsHero'''()
Is this a hero or hero illusion?
 
''string'' '''GetModifierNameByIndex'''(''int'')
Get a modifier name by index.
 
''bool'' '''IsSilenced'''()
 
''bool'' '''IsAttackImmune'''()
 
''bool'' '''IsDisarmed'''()
 
''bool'' '''IsAttacking'''()
 
''void'' '''MoveToPosition'''(''Vector'')
Issue a Move-To command
 
''bool'' '''ProvidesVision'''()
 
''void'' '''MoveToPositionAggressive'''(''Vector'')
Issue an Attack-Move-To command
 
''void'' '''SetCursorCastTarget'''(''handle'')
 
''void'' '''SetPhysicalArmorBaseValue'''(''float'')
Sets base physical armor value.
 
''bool'' '''IsRooted'''()
 
''bool'' '''TriggerModifierDodge'''()
 
''bool'' '''TriggerSpellAbsorb'''(''handle'')
Query whether the passed ability will trigger spell absorb on this unit.
 
''float'' '''GetIdealSpeed'''()
Returns speed after all modifiers.
 
''void'' '''MakeIllusion'''()
 
''bool'' '''IsIllusion'''()
 
''float'' '''GetSecondsPerAttack'''()
 
''void'' '''SetMustReachEachGoalEntity'''(''bool'')
Set whether this NPC is required to reach each goal entity, rather than being allowed to 'unkink' their path
 
''int'' '''GetMaxHealth'''()
Get the maximum health of this unit.
 
''int'' '''GetBaseAttackRange'''()
Gets this unit's attack range before modifiers.
 
''bool'' '''IsEvadeDisabled'''()
 
''float'' '''GetMaxMana'''()
Get the maximum mana of this unit.
 
''void'' '''SetBaseDamageMax'''(''int'')
Sets the minimum base damage.
 
''int'' '''GetHealth'''()
Get the health of this unit.
 
''int'' '''GetMainControllingPlayer'''()
Returns the player ID of the controlling player.
 
''void'' '''Heal'''(''float'', ''handle'')
Heal this unit.
 
''float'' '''GetIncreasedAttackSpeed'''()
 
''void'' '''PickupDroppedItem'''(''handle'')
Pick up a dropped item.
 
''bool'' '''IsPhantom'''()
Is this a phantom unit?
 
''void'' '''Hold'''()
Hold position.
 
''bool'' '''IsNeutralUnitType'''()
Is this a neutral?
 
''void'' '''DisassembleItem'''(''handle'')
Disassemble the passed item in this unit's inventory.
 
''float'' '''GetBaseMagicalResistanceValue'''()
Returns base magical armor value.
 
''float'' '''GetCollisionPadding'''()
Returns the size of the collision padding around the hull.
 
''bool'' '''IsAlive'''()
Is this unit alive?
 
''bool'' '''NoTeamSelect'''()
 
''void'' '''CastAbilityOnTarget'''(''handle'', ''handle'', ''int'')
Cast an ability on a target entity.
 
''void'' '''CastAbilityOnPosition'''(''Vector'', ''handle'', ''int'')
Cast an ability on a position.
 
''handle'' '''GetPlayerOwner'''()
Returns the player that owns this unit
 
''bool'' '''IsSummoned'''()
Is this unit summoned?
 
''bool'' '''IsTower'''()
Is this a tower?
 
''void'' '''SetNeverMoveToClearSpace'''(''bool'')
If set to true, we will never attempt to move this unit to clear space, even when it unphases.
 
''void'' '''SetAdditionalBattleMusicWeight'''(''float'')
Combat involving this creature will have this weight added to the music calcuations
 
''float'' '''GetBaseMaxHealth'''()
Gets the base max health value.
 
''int'' '''GetHealthDeficit'''()
Returns integer amount of health missing from max.
 
''float'' '''GetAcquisitionRange'''()
Gets the range at which this unit will auto-acquire.
 
''float'' '''GetLastIdleChangeTime'''()
Get the last game time that this unit switched to/from idle state.
 
''void'' '''SetBaseMaxHealth'''(''float'')
Set a new base max health value.
 
''void'' '''Kill'''(''handle'', ''handle'')
Kills this NPC, with the params Ability and Attacker
 
''void'' '''CastAbilityNoTarget'''(''handle'', ''int'')
Cast an ability with no target. ( hAbility, iPlayerIndex )
 
''int'' '''GetCurrentVisionRange'''()
Gets the current vision range.
 
''void'' '''CastAbilityToggle'''(''handle'', ''int'')
Toggle an ability. ( hAbility, iPlayerIndex )
 
''bool'' '''IsOwnedByAnyPlayer'''()
Is this unit owned by any non-bot player?
 
''float'' '''GetPhysicalArmorBaseValue'''()
Returns base physical armor value.
 
''handle'' '''GetCurrentActiveAbility'''()
Get the ability this unit is currently casting.
 
''bool'' '''IsControllableByAnyPlayer'''()
Is this unit controlled by any non-bot player?
 
''float'' '''GetPhysicalArmorValue'''()
Returns current physical armor value.
 
''float'' '''BoundingRadius2D'''()
 
== Class CDOTA_BaseNPC_Hero ==
 
''float'' '''GetPhysicalArmorValue'''()
Hero armor is affected by attributes.
 
''int'' '''GetDenies'''()
Value is stored in PlayerResource.
 
''float'' '''GetIntellect'''()
 
''bool'' '''ShouldDoFlyHeightVisual'''()
 
''int'' '''GetPlayerID'''()
Returns player ID of the player owning this hero
 
''int'' '''GetLastHits'''()
Value is stored in PlayerResource.
 
''float'' '''GetBaseAgility'''()
 
''bool'' '''IsReincarnating'''()
 
''void'' '''SetBaseAgility'''(''float'')
 
''void'' '''IncrementLastHitMultikill'''()
Value is stored in PlayerResource.
 
''void'' '''RespawnHero'''(''bool'', ''bool'', ''bool'')
Respawn this hero.
 
''float'' '''GetBaseStrength'''()
 
''int'' '''GetDeathGoldCost'''()
 
''float'' '''GetManaRegen'''()
Hero mana regen is affected by attributes.
 
''void'' '''ClearLastHitMultikill'''()
Value is stored in PlayerResource.
 
''int'' '''ModifyGold'''(''int'', ''bool'', ''int'')
Gives this hero some gold. Args: ''int'' nGoldChange, ''bool'' bReliable, ''int'' reason
 
''float'' '''GetPrimaryStatValue'''()
 
''void'' '''ClearStreak'''()
Value is stored in PlayerResource.
 
''float'' '''GetAgility'''()
 
''void'' '''SetBuybackGoldLimitTime'''(''float'')
Set the amount of time gold gain is limited after buying back.
 
''void'' '''CalculateStatBonus'''()
Recalculate all stats after the hero gains stats.
 
''float'' '''GetBuybackCooldownTime'''()
Return ''float'' value for the amount of time left on cooldown for this hero's buyback.
 
''int'' '''GetGoldBounty'''()
 
''float'' '''GetHealthRegen'''()
Hero health regen is affected by attributes.
 
''void'' '''IncrementStreak'''()
Value is stored in PlayerResource.
 
''bool'' '''IsBuybackDisabledByReapersScythe'''()
 
''int'' '''GetBuybackCost'''()
Return integer value for the gold cost of a buyback.
 
''bool'' '''CanEarnGold'''()
Returns boolean value result of buyback gold limit time less than game time.
 
''float'' '''GetStrength'''()
 
''float'' '''GetAgilityGain'''()
 
''int'' '''GetNumAttackers'''()
 
''int'' '''GetCurrentXP'''()
Returns the amount of XP
 
''void'' '''SetAbilityPoints'''(''int'')
Sets the current unspent ability point's.
 
''void'' '''SetRespawnPosition'''(''Vector'')
 
''void'' '''ModifyIntellect'''(''float'')
Adds passed value to base attribute value, then calls CalculateStatBonus.
 
''void'' '''SpendGold'''(''int'', ''int'')
Args: ''int'' nGold, ''int'' nReason
 
''bool'' '''UnitCanRespawn'''()
 
''int'' '''GetGold'''()
Returns gold amount for the player owning this hero
 
''void'' '''PerformTaunt'''()
 
''void'' '''HeroLevelUp'''(''bool'')
Levels up the hero, true or false to play effects.
 
''void'' '''SetGold'''(''int'', ''bool'')
Sets the gold amount for the player owning this hero
 
''bool'' '''HasAnyAvailableInventorySpace'''()
 
''void'' '''KilledHero'''(''handle'', ''handle'')
Args: Hero, Inflictor
 
''int'' '''GetAbilityPoints'''()
Gets the current unspent ability point's.
 
''int'' '''HasRoomForItem'''(''string'', ''bool'', ''bool'')
Args: const char* pItemName, ''bool'' bIncludeStashCombines, ''bool'' bAllowSelling
 
''int'' '''GetAssists'''()
Value is stored in PlayerResource.
 
''void'' '''SetTimeUntilRespawn'''(''float'')
 
''int'' '''GetDeaths'''()
Value is stored in PlayerResource.
 
''float'' '''GetTimeUntilRespawn'''()
 
''void'' '''UpgradeAbility'''(''handle'')
This upgrades the passed ability if it exists and the hero has enough ability point's.
 
''void'' '''IncrementKills'''(''int'')
Passed ID is for the victim, killer ID is ID of the current hero. Value is stored in PlayerResource.
 
''int'' '''GetPrimaryAttribute'''()
0 = strength, 1 = agility, 2 = intelligence.
 
''void'' '''IncrementAssists'''()
Value is stored in PlayerResource.
 
''bool'' '''HasFlyingVision'''()
 
''int'' '''GetAttacker'''(''int'')
 
''int'' '''GetKills'''()
Value is stored in PlayerResource.
 
''float'' '''GetIncreasedAttackSpeed'''()
Hero attack speed is also affected by agility.
 
''void'' '''IncrementLastHitStreak'''()
Value is stored in PlayerResource.
 
''bool'' '''HasOwnerAbandoned'''()
 
''bool'' '''WillReincarnate'''()
 
''bool'' '''AddExperience'''(''float'', ''bool'')
Params: Float XP, Bool applyBotDifficultyScaling
 
''int'' '''GetMultipleKillCount'''()
 
''void'' '''RecordLastHit'''()
 
''void'' '''IncrementLastHits'''()
Value is stored in PlayerResource.
 
''float'' '''GetStatsBasedManaRegen'''()
Returns only the regen based on Intelligence.
 
''float'' '''GetBuybackGoldLimitTime'''()
Returns the amount of time gold gain is limited after buying back.
 
''void'' '''SetCustomDeathXP'''(''int'')
Sets a custom experience value for this hero. {{tip|GameRules boolean must be set for this to work!}}
 
''int'' '''GetBaseDamageMax'''()
Hero damage is also affected by attributes.
 
''int'' '''GetBaseDamageMin'''()
Hero damage is also affected by attributes.
 
''int'' '''GetStreak'''()
Value is stored in PlayerResource.
 
''float'' '''GetMostRecentDamageTime'''()
 
''void'' '''SetBuyBackDisabledByReapersScythe'''(''bool'')
 
''void'' '''Buyback'''()
Spend the gold and buyback with this hero.
 
''void'' '''SetBaseStrength'''(''float'')
 
''void'' '''SetBaseIntellect'''(''float'')
 
''float'' '''GetStrengthGain'''()
 
''void'' '''IncrementDeaths'''()
Value is stored in PlayerResource.
 
''float'' '''GetRespawnTime'''()
 
''void'' '''ModifyAgility'''(''float'')
Adds passed value to base attribute value, then calls CalculateStatBonus.
 
''float'' '''GetIntellectGain'''()
 
''void'' '''ClearLastHitStreak'''()
Value is stored in PlayerResource.
 
''void'' '''IncrementNearbyCreepDeaths'''()
Value is stored in PlayerResource.
 
''float'' '''GetBaseIntellect'''()
 
''void'' '''SetPlayerID'''(''int'')
 
''void'' '''SetBuybackCooldownTime'''(''float'')
Sets the buyback cooldown time.
 
''int'' '''GetBonusDamageFromPrimaryStat'''()
 
''void'' '''IncrementDenies'''()
Value is stored in PlayerResource.
 
''void'' '''ModifyStrength'''(''float'')
Adds passed value to base attribute value, then calls CalculateStatBonus.
 
== Class CDOTA_BaseNPC_Creature ==
 
''void'' '''SetHPRegenGain'''(''float'')
Set the hit point's regen gained per level on this creature.
 
''void'' '''SetDisableResistanceGain'''(''float'')
Set the disable resistance gained per level on this creature.
 
''void'' '''SetAttackTimeGain'''(''float'')
Set the attack time gained per level on this creature.
 
''void'' '''SetMoveSpeedGain'''(''int'')
Set the move speed gained per level on this creature.
 
''void'' '''CreatureLevelUp'''(''int'')
Level the creature up by the specified number of levels
 
''void'' '''SetBountyGain'''(''int'')
Set the bounty gold gained per level on this creature.
 
''void'' '''SetXPGain'''(''int'')
Set the xp reward gained per level on this creature.
 
''void'' '''SetChampion'''(''bool'')
Flag this unit as a champion creature.
 
''void'' '''AddItemDrop'''(''handle'')
Add the specified item drop to this creature
 
''void'' '''SetManaRegenGain'''(''float'')
Set the mana point's regen gained per level on this creature.
 
''void'' '''SetDamageGain'''(''int'')
Set the damage gained per level on this creature.
 
''void'' '''SetMagicResistanceGain'''(''float'')
Set the magic resistance gained per level on this creature.
 
''void'' '''SetHPGain'''(''int'')
Set the hit point's gained per level on this creature.
 
''bool'' '''IsChampion'''()
Is this unit a champion?
 
''void'' '''SetManaGain'''(''int'')
Set the mana point's gained per level on this creature.
 
''void'' '''SetArmorGain'''(''float'')
Set the armor gained per level on this creature.
 
== Class CDOTA_BaseNPC_Building ==
 
''void'' '''SetInvulnCount'''(''int'')
Set the invulnerability counter of this building.
 
''int'' '''GetInvulnCount'''()
Get the invulnerability count for a building.
 
= Class CRPG_Unit =
 
''bool'' '''IsFacing'''(''Vector'', ''float'')
( vecTargetPosition, flAngleTolerance ) - returns true if the unit is within flAngleTolerance degrees of the target position
 
''void'' '''SetSightConeAngle'''(''float'')
( flAngleDegrees ) - sets angle in which the unit can see things up to sight range
 
''handle'' '''ActionState'''()
return the ActionState object for this unit.
 
''table'' '''FindSensedEnemies'''()
returns list of all enemy units within this unit's sight cone or sensing sphere
 
''string'' '''GetUnitName'''()
get the unit name for this unit.
 
''float'' '''GetMaxStamina'''()
returns maximum stamina amount.
 
''void'' '''SetBlocking'''(''bool'')
( bShouldBlock ) - Set the blocking state of this unit.
 
''float'' '''GetStamina'''()
returns current stamina amount.
 
''handle'' '''GetMovementTargetEntity'''()
Returs the movement target entity, if set.
 
''bool'' '''IsBlocking'''()
is this unit blocking?
 
''float'' '''GetSensingSphereRange'''()
returns range of unit's 360 degree sensing sphere
 
''void'' '''SetMovementTargetEntity'''(''handle'', ''float'')
( hTargetEntity, flTargetRange ) - Try to move this unit to the given range from the target entity.
 
''void'' '''SetTurnRate'''(''float'')
( flTurnRate ) - sets unit's turn rate in degrees per second
 
''float'' '''GetSightConeAngle'''()
returns angle in which the unit can see things up to sight range
 
''float'' '''GetMaxSpeed'''()
returns unit's max speed
 
''void'' '''GrantItem'''(''string'', ''bool'')
( sItemName ) - grant an item to the unit by name.
 
''void'' '''SetMovementTargetPosition'''(''Vector'', ''float'')
( vecTargetPosition, flTargetRange ) - Try to move this unit to the given range from the target point.
 
''void'' '''ClearMovementTarget'''()
Clear any movement target entity/position.
 
''void'' '''SetSightConeRange'''(''float'')
( fRange ) - set range of unit's sight cone
 
''void'' '''SetMaxSpeed'''(''float'')
( flMaxSpeed ) - sets unit's max speed
 
''float'' '''GetSightConeRange'''()
returns range of unit's sight cone
 
''float'' '''GetTurnRate'''()
returns unit's turn rate in degrees per second
 
''void'' '''SetSensingSphereRange'''(''float'')
( flSightRange ) - set range of unit's 360 degree sensing sphere
 
= Class CDOTABaseGameMode =
 
''void'' '''SetCustomHeroMaxLevel'''(''int'')
Allows definition of the max level heroes can achieve (default is 25).
 
''void'' '''SetUseCustomHeroLevels'''(''bool'')
Turn on custom-defined XP values for hero level ups. The ''table'' should be defined before switching this on.
 
''void'' '''SetBuybackEnabled'''(''bool'')
Enables or disables buyback completely
 
''void'' '''SetCustomXPRequiredToReachNextLevel'''(''handle'')
Allows definition of a ''table'' of hero XP values.
 
''void'' '''SetBotThinkingEnabled'''(''bool'')
Enables/Disables bot thinking. Requires a very Dota PvP-like map with 3 lanes, a shop, etc.
 
''void'' '''SetCustomBuybackCostEnabled'''(''bool'')
Turns on capability to define custom buyback costs.
 
''void'' '''SetTopBarTeamValuesVisible'''(''bool'')
Turning on/off the team values on the top game bar.
 
''void'' '''SetTopBarTeamValuesOverride'''(''bool'')
Override the values of the team values on the top game bar.
 
''void'' '''SetAlwaysShowPlayerInventory'''(''bool'')
Show the player hero's inventory in the HUD, regardless of what unit is selected.
 
''void'' '''SetRemoveIllusionsOnDeath'''(''bool'')
Make it so illusions are immediately removed upon death, rather than sticking around for a few seconds.
 
''void'' '''ClientLoadGridNav'''()
Tell clients that they need to load gridnav information. Used for things like allowing clients to identify valid locations to place buildings.
 
''void'' '''SetFogOfWarDisabled'''(''bool'')
Turn the fog of war on or off.
 
''void'' '''SetRecommendedItemsDisabled'''(''bool'')
Turn the panel for showing recommended items at the shop off/on. Takes a ''bool''.
 
''void'' '''SetGoldSoundDisabled'''(''bool'')
Turn the sound when gold is acquired off/on. Takes a ''bool''.
 
''void'' '''SetTowerBackdoorProtectionEnabled'''(''bool'')
Enables/Disables tower backdoor protection
 
''void'' '''SetTopBarTeamValue'''(''int'', ''int'')
Set the team values on the top game bar.
 
''void'' '''SetCustomBuybackCooldownEnabled'''(''bool'')
Turns on capability to define custom buyback cooldowns.
 
''void'' '''SetOverrideSelectionEntity'''(''handle'')
Set an override for the default selection entity, instead of each player's hero.
 
''void'' '''SetCameraDistanceOverride'''(''float'')
Set a different camera distance; dota default is 1134.
 
= Class CDotaQuest =
 
''void'' '''SetTextReplaceString'''(''string'')
Set the text replace ''string'' for this quest
 
''void'' '''CompleteQuest'''()
Mark this quest complete
 
''void'' '''RemoveSubquest'''(''handle'')
Remove a subquest from this quest
 
''void'' '''SetTextReplaceValue'''(''int'', ''int'')
Set a quest value
 
''handle'' '''GetSubquest'''(''int'')
Finds a subquest from this quest by index
 
''handle'' '''GetSubquestByName'''(''string'')
Finds a subquest from this quest by name
 
''void'' '''AddSubquest'''(''handle'')
Add a subquest to this quest
 
== Class CDotaSubquestBase ==
 
''void'' '''SetTextReplaceString'''(''string'')
Set the text replace ''string'' for this subquest
 
''void'' '''CompleteSubquest'''()
Mark this subquest complete
 
''void'' '''SetTextReplaceValue'''(''int'', ''int'')
Set a subquest value
 
= Class CPhysicsComponent =
 
''bool'' '''ExpensiveInstantRayCast'''(''Vector'', ''Vector'', ''handle'')
Do an instant (i.e. blocking) Ray Cast. Will do a handle/queue version later. Don't plan to use this for real!
 
= Class CPointTemplate =
 
''void'' '''ForceSpawn'''()
ForceSpawn() : Spawns all of the entities the point_template is pointing at.
 
''handle'' '''GetSpawnedEntities'''()
GetSpawnedEntities() : Get the list of the most recent spawned entities
 
''void'' '''SetSpawnCallback'''(''handle'', ''handle'')
SetSpawnCallback( hCallbackFunc, hCallbackScope, hCallbackData ) : Set a callback for when the template spawns entities. The spawned entities will be passed in as an array.
 
''void'' '''DeleteCreatedSpawnGroups'''()
DeleteCreatedSpawnGroups() : Deletes any spawn groups that this point_template has spawned. Note: The point_template will not be deleted by this.
 
= Class CBodyComponent =
 
''void'' '''SetAnimation'''(''string'')
Pass ''string'' for the animation to play on this model
 
''void'' '''SetVelocity'''(''Vector'')
 
''void'' '''SetBodyGroup'''(''string'')
 
''void'' '''AddImpulseAtPosition'''(''Vector'', ''Vector'')
Apply an impulse at a worldspace position to the physics
 
''void'' '''SetMaterialGroup'''(''utlstringtoken'')
 
''void'' '''SetAngularVelocity'''(''Vector'')
 
''<unknown>'' '''LookupSequence'''(''string'')
Returns a sequence id given a name
 
''float'' '''SequenceDuration'''(''string'')
Returns the duration in seconds of the specified sequence
 
''void'' '''AddVelocity'''(''Vector'', ''Vector'')
Add linear and angular velocity to the physics object
 
''bool'' '''IsAttachedToParent'''()
Is attached to parent
 
''void'' '''DetachFromParent'''()
Detach from its parent
 
''<unknown>'' '''GetSequence'''()
Returns the active sequence
 
= Class CBaseAnimating =
 
''bool'' '''IsSequenceFinished'''()
Ask whether the main sequence is done playing
 
''int'' '''ScriptLookupAttachment'''(''string'')
Get the named attachment id
 
''void'' '''SetModelScale'''(''float'')
( flScale ) - set scale of entity's model
 
''Vector'' '''GetAttachmentAngles'''(''int'')
Get the attachement id's angles as a p,y,r ''vector''
 
''float'' '''SetPoseParameter'''(''string'', ''float'')
Set the specified pose parameter to the specified value
 
''Vector'' '''GetAttachmentOrigin'''(''int'')
Get the attachement id's origin ''vector''
 
''void'' '''SetBodygroup'''(''int'', ''int'')
Sets a bodygroup
 
= Class CBaseCombatCharacter =
 
''table'' '''GetEquippedWeapons'''()
GetEquippedWeapons() : Returns an array of all the equipped weapons
 
''int'' '''GetWeaponCount'''()
GetWeaponCount() : Gets the number of weapons currently equipped
 
= Class ProjectileManager =
 
''void'' '''ProjectileDodge'''(''handle'')
Makes the specified unit dodge projectiles
 
''int'' '''CreateLinearProjectile'''(''handle'')
Creates a linear projectile and returns the projectile ID
 
''void'' '''DestroyLinearProjectile'''(''int'')
Destroys the linear projectile matching the argument ID
 
''void'' '''CreateTrackingProjectile'''(''handle'')
Creates a tracking projectile
 
= Class CBaseTrigger =
 
''void'' '''Enable'''()
Enable the trigger
 
''bool'' '''IsTouching'''(''handle'')
Checks whether the passed entity is touching the trigger.
 
''void'' '''Disable'''()
Disable the trigger
 
= Class CEnvEntityMaker =
 
''void'' '''SpawnEntityAtEntityOrigin'''(''handle'')
Create an entity at the location of a specified entity instance
 
''void'' '''SpawnEntityAtNamedEntityOrigin'''(''string'')
Create an entity at the location of a named entity
 
''void'' '''SpawnEntityAtLocation'''(''Vector'', ''Vector'')
Create an entity at a specified location and orientaton, orientation is Euler angle in degrees (pitch, yaw, roll)
 
''void'' '''SpawnEntity'''()
Create an entity at the location of the maker
 
= Class CDOTAVoteSystem =
 
''void'' '''StartVote'''(''handle'')
Starts a vote, based upon a ''table'' of parameters
 
= Class CMarkupVolumeTagged =
 
''bool'' '''HasTag'''(''string'')
Does this volume have the given tag.
 
= Class CScriptPrecacheContext =
 
''table'' '''GetValue'''(''string'')
Reads a spawn key
 
''void'' '''AddResource'''(''string'')
Precaches a specific resource
 
= Class CScriptKeyValues =
 
''table'' '''GetValue'''(''string'')
Reads a spawn key
 
= Class CScriptParticleManager =
 
''void'' '''SetParticleAlwaysSimulate'''(''int'')
 
''void'' '''SetParticleControl'''(''int'', ''int'', ''Vector'')
Set the control point data for a control on a particle effect
 
''int'' '''CreateParticleForPlayer'''(''string'', ''int'', ''handle'', ''handle'')
Creates a new particle effect that only plays for the specified player
 
''void'' '''ReleaseParticleIndex'''(''int'')
Frees the specified particle index
 
''string'' '''GetParticleReplacement'''(''string'', ''handle'')
 
''void'' '''SetParticleControlEnt'''(''int'', ''int'', ''handle'', ''int'', ''string'', ''Vector'', ''bool'')
 
''int'' '''CreateParticle'''(''string'', ''int'', ''handle'')
Creates a new particle effect
 
= Class CScriptHeroList =
 
''handle'' '''GetHero'''(''int'')
Get the Nth hero in the Hero List
 
''table'' '''GetAllHeroes'''()
Returns all the heroes in the world
 
''int'' '''GetHeroCount'''()
Returns the number of heroes in the world
 
= Class CNativeOutputs =
 
''void'' '''Init'''(''int'')
Initialize with number of outputs
 
''void'' '''AddOutput'''(''string'', ''string'')
Add an output
 
= Class CEnvProjectedTexture =
 
''void'' '''SetVolumetrics'''(''bool'', ''float'', ''float'', ''int'', ''float'')
Turn on/off light volumetrics: ''bool'' bOn, ''float'' flIntensity, ''float'' flNoise, ''int'' nPlanes, ''float'' flPlaneOffset
 
''void'' '''SetFarRange'''(''float'')
Set light maximum range
 
''void'' '''SetQuadraticAttenuation'''(''float'')
Set light quadratic attenuation value
 
''void'' '''SetNearRange'''(''float'')
Set light minimum range
 
''void'' '''SetLinearAttenuation'''(''float'')
Set light linear attenuation value
 
= Class CInfoData =
 
''string'' '''QueryString'''(''utlstringtoken'', ''string'')
Query ''string'' data for this key
 
''float'' '''QueryNumber'''(''utlstringtoken'', ''float'')
Query number data for this key
 
''int'' '''QueryInt'''(''utlstringtoken'', ''int'')
Query ''int'' data for this key
 
''Vector'' '''QueryColor'''(''utlstringtoken'', ''Vector'')
Query color data for this key
 
''Vector'' '''QueryVector'''(''utlstringtoken'', ''Vector'')
Query ''vector'' data for this key
 
''float'' '''QueryFloat'''(''utlstringtoken'', ''float'')
Query ''float'' data for this key
 
= Class CPhysicsProp =
 
''void'' '''DisableMotion'''()
Enable motion for the prop


''void'' '''EnableMotion'''()
=== Functions ===
Enable motion for the prop


= Class CDOTAGamerules =
==== Global ====
''Global functions. These can be called without any class.''
{| class="standard-table" style="width: 100%;"
! Function
! Signature
! Description
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.AddFOWViewer | AddFOWViewer]]
| <code>void AddFOWViewer(int int_1, Vector Vector_2, float float_3, float float_4, bool bool_5)</code>
| Add temporary vision for a given team ( nTeamID, vLocation, flRadius, flDuration, bObstructedVision)
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.AngleDiff | AngleDiff]]
| <code>float AngleDiff(float float_1, float float_2)</code>
| Returns the number of degrees difference between two yaw angles
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.AppendToLogFile | AppendToLogFile]]
| <code>void AppendToLogFile(string string_1, string string_2)</code>
| AppendToLogFile is deprecated. Print to the console for logging instead.
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.ApplyDamage | ApplyDamage]]
| <code>float ApplyDamage(handle handle_1)</code>
| 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.AxisAngleToQuaternion | AxisAngleToQuaternion]]
| <code>Quaternion AxisAngleToQuaternion(Vector Vector_1, float float_2)</code>
| (vector,float) constructs a quaternion representing a rotation by angle around the specified vector axis
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.CalcClosestPointOnEntityOBB | CalcClosestPointOnEntityOBB]]
| <code>Vector CalcClosestPointOnEntityOBB(handle handle_1, Vector Vector_2)</code>
| Compute the closest point on the OBB of an entity.
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.CalcDistanceBetweenEntityOBB | CalcDistanceBetweenEntityOBB]]
| <code>float CalcDistanceBetweenEntityOBB(handle handle_1, handle handle_2)</code>
| 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.CalcDistanceToLineSegment2D | CalcDistanceToLineSegment2D]]
| <code>float CalcDistanceToLineSegment2D(Vector Vector_1, Vector Vector_2, Vector Vector_3)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.CancelEntityIOEvents | CancelEntityIOEvents]]
| <code>void CancelEntityIOEvents(ehandle ehandle_1)</code>
| Create all I/O events for a particular entity
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.ClearTeamCustomHealthbarColor | ClearTeamCustomHealthbarColor]]
| <code>void ClearTeamCustomHealthbarColor(int int_1)</code>
| ( teamNumber )
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.CreateDamageInfo | CreateDamageInfo]]
| <code>handle CreateDamageInfo(handle handle_1, handle handle_2, Vector Vector_3, Vector Vector_4, float float_5, int int_6)</code>
| (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.CreateEffect | CreateEffect]]
| <code>bool CreateEffect(handle handle_1)</code>
| Pass table - Inputs: entity, effect
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.CreateHTTPRequest | CreateHTTPRequest]]
| <code>handle CreateHTTPRequest(string string_1, string string_2)</code>
| Create an HTTP request.
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.CreateHTTPRequestScriptVM | CreateHTTPRequestScriptVM]]
| <code>handle CreateHTTPRequestScriptVM(string string_1, string string_2)</code>
| Create an HTTP request.
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.CreateHeroForPlayer | CreateHeroForPlayer]]
| <code>handle CreateHeroForPlayer(string string_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
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.CreateIllusions | CreateIllusions]]
| <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>
| 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.CreateItem | CreateItem]]
| <code>handle CreateItem(string string_1, handle handle_2, handle handle_3)</code>
| Create a DOTA item
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.CreateItemOnPositionForLaunch | CreateItemOnPositionForLaunch]]
| <code>handle CreateItemOnPositionForLaunch(Vector Vector_1, handle handle_2)</code>
| 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.CreateItemOnPositionSync | CreateItemOnPositionSync]]
| <code>handle CreateItemOnPositionSync(Vector Vector_1, handle handle_2)</code>
| Create a physical item at a given location
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.CreateModifierThinker | CreateModifierThinker]]
| <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>
| Create a modifier not associated with an NPC. ( hCaster, hAbility, modifierName, paramTable, vOrigin, nTeamNumber, bPhantomBlocker )
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.CreateSceneEntity | CreateSceneEntity]]
| <code>handle CreateSceneEntity(string string_1)</code>
| Create a scene entity to play the specified scene.
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.CreateTempTree | CreateTempTree]]
| <code>handle CreateTempTree(Vector Vector_1, float float_2)</code>
| Create a temporary tree, uses a default tree model. (vLocation, flDuration).
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.CreateTempTreeWithModel | CreateTempTreeWithModel]]
| <code>handle CreateTempTreeWithModel(Vector Vector_1, float float_2, string string_3)</code>
| Create a temporary tree, specifying the tree model name. (vLocation, flDuration, szModelName).
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.CreateTrigger | CreateTrigger]]
| <code>handle CreateTrigger(Vector Vector_1, Vector Vector_2, Vector Vector_3)</code>
| CreateTrigger( vecMin, vecMax ) : Creates and returns an AABB trigger
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.CreateTriggerRadiusApproximate | CreateTriggerRadiusApproximate]]
| <code>handle CreateTriggerRadiusApproximate(Vector Vector_1, float float_2)</code>
| CreateTriggerRadiusApproximate( vecOrigin, flRadius ) : Creates and returns an AABB trigger thats bigger than the radius provided
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.CreateUnitByName | CreateUnitByName]]
| <code>handle CreateUnitByName(string string_1, Vector Vector_2, bool bool_3, handle handle_4, handle handle_5, int int_6)</code>
| Creates a DOTA unit by its dota_npc_units.txt name
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.CreateUnitByNameAsync | CreateUnitByNameAsync]]
| <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>
| Creates a DOTA unit by its dota_npc_units.txt name
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.CreateUnitFromTable | CreateUnitFromTable]]
| <code>handle CreateUnitFromTable(handle handle_1, Vector Vector_2)</code>
| 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.CrossVectors | CrossVectors]]
| <code>Vector CrossVectors(Vector Vector_1, Vector Vector_2)</code>
| (vector,vector) cross product between two vectors
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.DebugBreak | DebugBreak]]
| <code>void DebugBreak()</code>
| Breaks in the debugger
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.DebugDrawBox | DebugDrawBox]]
| <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>
| Draw a debug overlay box (origin, mins, maxs, forward, r, g, b, a, duration )
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.DebugDrawBoxDirection | DebugDrawBoxDirection]]
| <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>
| Draw a debug forward box (cent, min, max, forward, vRgb, a, duration)
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.DebugDrawCircle | DebugDrawCircle]]
| <code>void DebugDrawCircle(Vector Vector_1, Vector Vector_2, float float_3, float float_4, bool bool_5, float float_6)</code>
| Draw a debug circle (center, vRgb, a, rad, ztest, duration)
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.DebugDrawClear | DebugDrawClear]]
| <code>void DebugDrawClear()</code>
| Try to clear all the debug overlay info
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.DebugDrawLine | DebugDrawLine]]
| <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>
| Draw a debug overlay line (origin, target, r, g, b, ztest, duration)
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.DebugDrawLine_vCol | DebugDrawLine_vCol]]
| <code>void DebugDrawLine_vCol(Vector Vector_1, Vector Vector_2, Vector Vector_3, bool bool_4, float float_5)</code>
| Draw a debug line using color vec (start, end, vRgb, a, ztest, duration)
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.DebugDrawScreenTextLine | DebugDrawScreenTextLine]]
| <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>
| Draw text with a line offset (x, y, lineOffset, text, r, g, b, a, duration)
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.DebugDrawSphere | DebugDrawSphere]]
| <code>void DebugDrawSphere(Vector Vector_1, Vector Vector_2, float float_3, float float_4, bool bool_5, float float_6)</code>
| Draw a debug sphere (center, vRgb, a, rad, ztest, duration)
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.DebugDrawText | DebugDrawText]]
| <code>void DebugDrawText(Vector Vector_1, string string_2, bool bool_3, float float_4)</code>
| 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.DoEntFire | DoEntFire]]
| <code>void DoEntFire(string string_1, string string_2, string string_3, float float_4, handle handle_5, handle handle_6)</code>
| #EntFire:Generate and entity i/o event
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.DoEntFireByInstanceHandle | DoEntFireByInstanceHandle]]
| <code>void DoEntFireByInstanceHandle(handle handle_1, string string_2, string string_3, float float_4, handle handle_5, handle handle_6)</code>
| #EntFireByHandle:Generate and entity i/o event
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.DoIncludeScript | DoIncludeScript]]
| <code>bool DoIncludeScript(string string_1, handle handle_2)</code>
| Execute a script (internal)
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.DoScriptAssert | DoScriptAssert]]
| <code>void DoScriptAssert(bool bool_1, string string_2)</code>
| #ScriptAssert:Asserts the passed in value. Prints out a message and brings up the assert dialog.
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.DoUniqueString | DoUniqueString]]
| <code>string DoUniqueString(string string_1)</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 tables when not sure what keys are already in use in that table.
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.DotProduct | DotProduct]]
| <code>float DotProduct(Vector Vector_1, Vector Vector_2)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.EmitAnnouncerSound | EmitAnnouncerSound]]
| <code>void EmitAnnouncerSound(string string_1)</code>
| Emit an announcer sound for all players.
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.EmitAnnouncerSoundForPlayer | EmitAnnouncerSoundForPlayer]]
| <code>void EmitAnnouncerSoundForPlayer(string string_1, int int_2)</code>
| Emit an announcer sound for a player.
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.EmitAnnouncerSoundForTeam | EmitAnnouncerSoundForTeam]]
| <code>void EmitAnnouncerSoundForTeam(string string_1, int int_2)</code>
| Emit an announcer sound for a team.
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.EmitAnnouncerSoundForTeamOnLocation | EmitAnnouncerSoundForTeamOnLocation]]
| <code>void EmitAnnouncerSoundForTeamOnLocation(string string_1, int int_2, Vector Vector_3)</code>
| Emit an announcer sound for a team at a specific location.
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.EmitGlobalSound | EmitGlobalSound]]
| <code>void EmitGlobalSound(string string_1)</code>
| Play named sound for all players
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.EmitSoundOn | EmitSoundOn]]
| <code>void EmitSoundOn(string string_1, handle handle_2)</code>
| Play named sound on Entity
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.EmitSoundOnClient | EmitSoundOnClient]]
| <code>void EmitSoundOnClient(string string_1, handle handle_2)</code>
| Play named sound only on the client for the passed in player
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.EmitSoundOnLocationForAllies | EmitSoundOnLocationForAllies]]
| <code>void EmitSoundOnLocationForAllies(Vector Vector_1, string string_2, handle handle_3)</code>
| 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.EmitSoundOnLocationWithCaster | EmitSoundOnLocationWithCaster]]
| <code>void EmitSoundOnLocationWithCaster(Vector Vector_1, string string_2, handle handle_3)</code>
| Emit a sound on a location from a unit. (vLocation, soundName, hCaster).
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.EntIndexToHScript | EntIndexToHScript]]
| <code>handle EntIndexToHScript(int int_1)</code>
| Turn an entity index integer to an HScript representing that entity's script instance.
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.ExecuteOrderFromTable | ExecuteOrderFromTable]]
| <code>void ExecuteOrderFromTable(handle handle_1)</code>
| Issue an order from a script table
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.ExponentialDecay | ExponentialDecay]]
| <code>float ExponentialDecay(float float_1, float float_2, float float_3)</code>
| Smooth curve decreasing slower as it approaches zero
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.FindClearRandomPositionAroundUnit | FindClearRandomPositionAroundUnit]]
| <code>bool FindClearRandomPositionAroundUnit(handle handle_1, handle handle_2, int int_3)</code>
| 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.FindClearSpaceForUnit | FindClearSpaceForUnit]]
| <code>bool FindClearSpaceForUnit(handle handle_1, Vector Vector_2, bool bool_3)</code>
| Place a unit somewhere not already occupied.
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.FindUnitsInLine | FindUnitsInLine]]
| <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>
| Find units that intersect the given line with the given flags.
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.FindUnitsInRadius | FindUnitsInRadius]]
| <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>
| Finds the units in a given radius with the given flags.
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.FireEntityIOInputNameOnly | FireEntityIOInputNameOnly]]
| <code>void FireEntityIOInputNameOnly(ehandle ehandle_1, string string_2)</code>
| Fire Entity's Action Input w/no data
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.FireEntityIOInputString | FireEntityIOInputString]]
| <code>void FireEntityIOInputString(ehandle ehandle_1, string string_2, string string_3)</code>
| Fire Entity's Action Input with passed String - you own the memory
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.FireEntityIOInputVec | FireEntityIOInputVec]]
| <code>void FireEntityIOInputVec(ehandle ehandle_1, string string_2, Vector Vector_3)</code>
| Fire Entity's Action Input with passed Vector - you own the memory
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.FireGameEvent | FireGameEvent]]
| <code>void FireGameEvent(string string_1, handle handle_2)</code>
| Fire a game event.
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.FireGameEventLocal | FireGameEventLocal]]
| <code>void FireGameEventLocal(string string_1, handle handle_2)</code>
| Fire a game event without broadcasting to the client.
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.FrameTime | FrameTime]]
| <code>float FrameTime()</code>
| Get the time spent on the server in the last frame
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.GetDedicatedServerKey | GetDedicatedServerKey]]
| <code>string GetDedicatedServerKey(string string_1)</code>
| ( version )
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.GetDedicatedServerKeyV2 | GetDedicatedServerKeyV2]]
| <code>string GetDedicatedServerKeyV2(string string_1)</code>
| used in https://github.com/dota2unofficial/12v12/blob/master/game/scripts/vscripts/common/webapi.lua
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.GetEntityIndexForTreeId | GetEntityIndexForTreeId]]
| <code><unknown> GetEntityIndexForTreeId(unsigned unsigned_1)</code>
| 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.GetFrameCount | GetFrameCount]]
| <code>int GetFrameCount()</code>
| Returns the engines current frame count
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.GetGroundHeight | GetGroundHeight]]
| <code>float GetGroundHeight(Vector Vector_1, handle handle_2)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.GetGroundPosition | GetGroundPosition]]
| <code>Vector GetGroundPosition(Vector Vector_1, handle handle_2)</code>
| 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.GetItemCost | GetItemCost]]
| <code>int GetItemCost(string string_1)</code>
| Get the cost of an item by name.
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.GetItemDefOwnedCount | GetItemDefOwnedCount]]
| <code>int GetItemDefOwnedCount(int int_1, int int_2)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.GetItemDefQuantity | GetItemDefQuantity]]
| <code>int GetItemDefQuantity(int int_1, int int_2)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.GetListenServerHost | GetListenServerHost]]
| <code>handle GetListenServerHost()</code>
| Get the local player on a listen server.
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.GetLobbyEventGameDetails | GetLobbyEventGameDetails]]
| <code>table GetLobbyEventGameDetails()</code>
| ( )
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.GetMapName | GetMapName]]
| <code>string GetMapName()</code>
| Get the name of the map.
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.GetMaxOutputDelay | GetMaxOutputDelay]]
| <code>float GetMaxOutputDelay(ehandle ehandle_1, string string_2)</code>
| Get the longest delay for all events attached to an output
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.GetPhysAngularVelocity | GetPhysAngularVelocity]]
| <code>Vector GetPhysAngularVelocity(handle handle_1)</code>
| 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.GetPhysVelocity | GetPhysVelocity]]
| <code>Vector GetPhysVelocity(handle handle_1)</code>
| Get Velocity for VPHYS or normal object
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.GetSystemDate | GetSystemDate]]
| <code>string GetSystemDate()</code>
| Get the current real world date
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.GetSystemTime | GetSystemTime]]
| <code>string GetSystemTime()</code>
| Get the current real world time
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.GetTargetAOELocation | GetTargetAOELocation]]
| <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>
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.GetTargetLinearLocation | GetTargetLinearLocation]]
| <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>
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.GetTeamHeroKills | GetTeamHeroKills]]
| <code>int GetTeamHeroKills(int int_1)</code>
| ( int teamID )
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.GetTeamName | GetTeamName]]
| <code>string GetTeamName(int int_1)</code>
| ( int teamID )
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.GetTreeIdForEntityIndex | GetTreeIdForEntityIndex]]
| <code>int GetTreeIdForEntityIndex(int int_1)</code>
| 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.GetWorldMaxX | GetWorldMaxX]]
| <code>float GetWorldMaxX()</code>
| Gets the world's maximum X position.
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.GetWorldMaxY | GetWorldMaxY]]
| <code>float GetWorldMaxY()</code>
| Gets the world's maximum Y position.
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.GetWorldMinX | GetWorldMinX]]
| <code>float GetWorldMinX()</code>
| Gets the world's minimum X position.
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.GetWorldMinY | GetWorldMinY]]
| <code>float GetWorldMinY()</code>
| Gets the world's minimum Y position.
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.InitLogFile | InitLogFile]]
| <code>void InitLogFile(string string_1, string string_2)</code>
| InitLogFile is deprecated. Print to the console for logging instead.
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.IsClient | IsClient]]
| <code>bool IsClient()</code>
| Returns true if this is lua running from the client.dll.
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.IsDedicatedServer | IsDedicatedServer]]
| <code>bool IsDedicatedServer()</code>
| Returns true if this server is a dedicated server.
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.IsInToolsMode | IsInToolsMode]]
| <code>bool IsInToolsMode()</code>
| Returns true if this is lua running within tools mode.
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.IsLocationVisible | IsLocationVisible]]
| <code>bool IsLocationVisible(int int_1, Vector Vector_2)</code>
| Ask fog of war if a location is visible to a certain team (nTeamNumber, vLocation).
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.IsMarkedForDeletion | IsMarkedForDeletion]]
| <code>bool IsMarkedForDeletion(handle handle_1)</code>
| Returns true if the entity is valid and marked for deletion.
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.IsServer | IsServer]]
| <code>bool IsServer()</code>
| Returns true if this is lua running from the server.dll.
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.IsValidEntity | IsValidEntity]]
| <code>bool IsValidEntity(handle handle_1)</code>
| Checks to see if the given hScript is a valid entity
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.LerpVectors | LerpVectors]]
| <code>Vector LerpVectors(Vector Vector_1, Vector Vector_2, float float_3)</code>
| (vector,vector,float) lerp between two vectors by a float factor returning new vector
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.LimitPathingSearchDepth | LimitPathingSearchDepth]]
| <code>void LimitPathingSearchDepth(float float_1)</code>
| Set the limit on the pathfinding search space.
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.LinkLuaModifier | LinkLuaModifier]]
| <code>void LinkLuaModifier(string string_1, string string_2, int int_3)</code>
| Link a lua-defined modifier with the associated class ( className, fileName, LuaModifierType).
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.ListenToGameEvent | ListenToGameEvent]]
| <code>int ListenToGameEvent(string string_1, handle handle_2, handle handle_3)</code>
| Register as a listener for a game event from script.
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.LoadKeyValues | LoadKeyValues]]
| <code>table LoadKeyValues(string string_1)</code>
| Creates a table from the specified keyvalues text file
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.LoadKeyValuesFromString | LoadKeyValuesFromString]]
| <code>table LoadKeyValuesFromString(string string_1)</code>
| Creates a table from the specified keyvalues string
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.LocalTime | LocalTime]]
| <code>table LocalTime()</code>
| Get the current local time
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.MakeStringToken | MakeStringToken]]
| <code>int MakeStringToken(string string_1)</code>
| Checks to see if the given hScript is a valid entity
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.MinimapEvent | MinimapEvent]]
| <code>void MinimapEvent(int int_1, handle handle_2, int int_3, int int_4, int int_5, int int_6)</code>
| Start a minimap event. (nTeamID, hEntity, nXCoord, nYCoord, nEventType, nEventDuration).
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.Msg | Msg]]
| <code>void Msg(string string_1)</code>
| Print a message
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.PauseGame | PauseGame]]
| <code>void PauseGame(bool bool_1)</code>
| Pause or unpause the game.
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.PlayerInstanceFromIndex | PlayerInstanceFromIndex]]
| <code>handle PlayerInstanceFromIndex(int int_1)</code>
| Get a script instance of a player by index.
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.PrecacheEntityFromTable | PrecacheEntityFromTable]]
| <code>void PrecacheEntityFromTable(string string_1, handle handle_2, handle handle_3)</code>
| Precache an entity from KeyValues in table
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.PrecacheEntityListFromTable | PrecacheEntityListFromTable]]
| <code>void PrecacheEntityListFromTable(handle handle_1, handle handle_2)</code>
| Precache a list of entity KeyValues tables
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.PrecacheItemByNameAsync | PrecacheItemByNameAsync]]
| <code>void PrecacheItemByNameAsync(string string_1, handle handle_2)</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]]
| <code>void PrecacheItemByNameSync(string string_1, handle handle_2)</code>
| Precaches a DOTA item by its dota_npc_items.txt name
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.PrecacheModel | PrecacheModel]]
| <code>void PrecacheModel(string string_1, handle handle_2)</code>
| ( modelName, context ) - Manually precache a single model
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.PrecacheResource | PrecacheResource]]
| <code>void PrecacheResource(string string_1, string string_2, handle handle_3)</code>
| Manually precache a single resource
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.PrecacheUnitByNameAsync | PrecacheUnitByNameAsync]]
| <code>void PrecacheUnitByNameAsync(string string_1, handle handle_2, int int_3)</code>
| 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.PrecacheUnitByNameSync | PrecacheUnitByNameSync]]
| <code>void PrecacheUnitByNameSync(string string_1, handle handle_2, int int_3)</code>
| Precaches a DOTA unit by its dota_npc_units.txt name
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.PrecacheUnitFromTableAsync | PrecacheUnitFromTableAsync]]
| <code>void PrecacheUnitFromTableAsync(handle handle_1, handle handle_2)</code>
| Precaches a DOTA unit from a table of entity key values.
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.PrecacheUnitFromTableSync | PrecacheUnitFromTableSync]]
| <code>void PrecacheUnitFromTableSync(handle handle_1, handle handle_2)</code>
| Precaches a DOTA unit from a table of entity key values.
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.PrintLinkedConsoleMessage | PrintLinkedConsoleMessage]]
| <code>void PrintLinkedConsoleMessage(string string_1, string string_2)</code>
| Print a console message with a linked console command
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.RandomFloat | RandomFloat]]
| <code>float RandomFloat(float float_1, float float_2)</code>
| Get a random float within a range
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.RandomInt | RandomInt]]
| <code>int RandomInt(int int_1, int int_2)</code>
| Get a random int within a range
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.RandomVector | RandomVector]]
| <code>Vector RandomVector(float float_1)</code>
| Get a random 2D vector of the given length.
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.RegisterCustomAnimationScriptForModel | RegisterCustomAnimationScriptForModel]]
| <code>void RegisterCustomAnimationScriptForModel(string string_1, string string_2)</code>
| Register a custom animation script to run when a model loads
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.RegisterSpawnGroupFilterProxy | RegisterSpawnGroupFilterProxy]]
| <code>void RegisterSpawnGroupFilterProxy(string string_1)</code>
| Create a C proxy for a script-based spawn group filter
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.ReloadMOTD | ReloadMOTD]]
| <code>void ReloadMOTD()</code>
| Reloads the MotD file
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.RemoveSpawnGroupFilterProxy | RemoveSpawnGroupFilterProxy]]
| <code>void RemoveSpawnGroupFilterProxy(string string_1)</code>
| Remove the C proxy for a script-based spawn group filter
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.ResolveNPCPositions | ResolveNPCPositions]]
| <code>void ResolveNPCPositions(Vector Vector_1, float float_2)</code>
| Check and fix units that have been assigned a position inside collision radius of other NPCs.
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.RollPercentage | RollPercentage]]
| <code>bool RollPercentage(int int_1)</code>
| (int nPct)
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.RotateOrientation | RotateOrientation]]
| <code>QAngle RotateOrientation(QAngle QAngle_1, QAngle QAngle_2)</code>
| Rotate a QAngle by another QAngle.
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.RotatePosition | RotatePosition]]
| <code>Vector RotatePosition(Vector Vector_1, QAngle QAngle_2, Vector Vector_3)</code>
| Rotate a Vector around a point.
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.RotateQuaternionByAxisAngle | RotateQuaternionByAxisAngle]]
| <code>Quaternion RotateQuaternionByAxisAngle(Quaternion Quaternion_1, Vector Vector_2, float float_3)</code>
| (quaternion,vector,float) rotates a quaternion by the specified angle around the specified vector axis
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.RotationDelta | RotationDelta]]
| <code>QAngle RotationDelta(QAngle QAngle_1, QAngle QAngle_2)</code>
| Find the delta between two QAngles.
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.RotationDeltaAsAngularVelocity | RotationDeltaAsAngularVelocity]]
| <code>Vector RotationDeltaAsAngularVelocity(QAngle QAngle_1, QAngle QAngle_2)</code>
| converts delta QAngle to an angular velocity Vector
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.Say | Say]]
| <code>void Say(handle handle_1, string string_2, bool bool_3)</code>
| Have Entity say string, and teamOnly or not
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.ScreenShake | ScreenShake]]
| <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/Global.SendOverheadEventMessage | SendOverheadEventMessage]]
| <code>void SendOverheadEventMessage(handle handle_1, int int_2, handle handle_3, int int_4, handle handle_5)</code>
| ( 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/Global.SendToConsole | SendToConsole]]
| <code>void SendToConsole(string string_1)</code>
| Send a string to the console as a client command
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.SendToServerConsole | SendToServerConsole]]
| <code>void SendToServerConsole(string string_1)</code>
| Send a string to the console as a server command
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.SetOpvarFloatAll | SetOpvarFloatAll]]
| <code>void SetOpvarFloatAll(string string_1, string string_2, string string_3, float float_4)</code>
| Sets an opvar value for all players
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.SetOpvarFloatPlayer | SetOpvarFloatPlayer]]
| <code>void SetOpvarFloatPlayer(string string_1, string string_2, string string_3, float float_4, handle handle_5)</code>
| Sets an opvar value for a single player
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.SetPhysAngularVelocity | SetPhysAngularVelocity]]
| <code>void SetPhysAngularVelocity(handle handle_1, Vector Vector_2)</code>
| 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/Global.SetQuestName | SetQuestName]]
| <code>void SetQuestName(string string_1)</code>
| Set the current quest name.
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.SetQuestPhase | SetQuestPhase]]
| <code>void SetQuestPhase(int int_1)</code>
| Set the current quest phase.
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.SetRenderingEnabled | SetRenderingEnabled]]
| <code>void SetRenderingEnabled(ehandle ehandle_1, bool bool_2)</code>
| Set rendering on/off for an ehandle
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.SetTeamCustomHealthbarColor | SetTeamCustomHealthbarColor]]
| <code>void SetTeamCustomHealthbarColor(int int_1, int int_2, int int_3, int int_4)</code>
| ( teamNumber, r, g, b )
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.ShowCustomHeaderMessage | ShowCustomHeaderMessage]]
| <code>void ShowCustomHeaderMessage(string string_1, int int_2, int int_3, float float_4)</code>
| ( const char *pszMessage, int nPlayerID, int nValue, float flTime ) - Supports localized strings - %s1 = PlayerName, %s2 = Value, %s3 = TeamName
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.ShowGenericPopup | ShowGenericPopup]]
| <code>void ShowGenericPopup(string string_1, string string_2, string string_3, string string_4, int int_5)</code>
| Show a generic popup dialog for all players.
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.ShowGenericPopupToPlayer | ShowGenericPopupToPlayer]]
| <code>void ShowGenericPopupToPlayer(handle handle_1, string string_2, string string_3, string string_4, string string_5, int int_6)</code>
| Show a generic popup dialog to a specific player.
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.ShowMessage | ShowMessage]]
| <code>void ShowMessage(string string_1)</code>
| Print a hud message on all clients
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.SpawnDOTAShopTriggerRadiusApproximate | SpawnDOTAShopTriggerRadiusApproximate]]
| <code>handle SpawnDOTAShopTriggerRadiusApproximate(Vector Vector_1, float float_2)</code>
| (Vector vOrigin, float flRadius )
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.SpawnEntityFromTableSynchronous | SpawnEntityFromTableSynchronous]]
| <code>handle SpawnEntityFromTableSynchronous(string string_1, handle handle_2)</code>
| Synchronously spawns a single entity from a table
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.SpawnEntityGroupFromTable | SpawnEntityGroupFromTable]]
| <code>bool SpawnEntityGroupFromTable(handle handle_1, bool bool_2, handle handle_3)</code>
| Hierarchically spawn an entity group from a set of spawn tables.
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.SpawnEntityListFromTableAsynchronous | SpawnEntityListFromTableAsynchronous]]
| <code>int SpawnEntityListFromTableAsynchronous(handle handle_1, handle handle_2)</code>
| 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/Global.SpawnEntityListFromTableSynchronous | SpawnEntityListFromTableSynchronous]]
| <code>handle SpawnEntityListFromTableSynchronous(handle handle_1)</code>
| Synchronously spawn an entity group from a list of spawn tables.
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.SplineQuaternions | SplineQuaternions]]
| <code>Quaternion SplineQuaternions(Quaternion Quaternion_1, Quaternion Quaternion_2, float float_3)</code>
| (quaternion,quaternion,float) very basic interpolation of v0 to v1 over t on [0,1]
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.SplineVectors | SplineVectors]]
| <code>Vector SplineVectors(Vector Vector_1, Vector Vector_2, float float_3)</code>
| (vector,vector,float) very basic interpolation of v0 to v1 over t on [0,1]
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.StartSoundEvent | StartSoundEvent]]
| <code>void StartSoundEvent(string string_1, handle handle_2)</code>
| Start a sound event
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.StartSoundEventFromPosition | StartSoundEventFromPosition]]
| <code>void StartSoundEventFromPosition(string string_1, Vector Vector_2)</code>
| Start a sound event from position
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.StartSoundEventFromPositionReliable | StartSoundEventFromPositionReliable]]
| <code>void StartSoundEventFromPositionReliable(string string_1, Vector Vector_2)</code>
| Start a sound event from position with reliable delivery
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.StartSoundEventFromPositionUnreliable | StartSoundEventFromPositionUnreliable]]
| <code>void StartSoundEventFromPositionUnreliable(string string_1, Vector Vector_2)</code>
| Start a sound event from position with optional delivery
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.StartSoundEventReliable | StartSoundEventReliable]]
| <code>void StartSoundEventReliable(string string_1, handle handle_2)</code>
| Start a sound event with reliable delivery
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.StartSoundEventUnreliable | StartSoundEventUnreliable]]
| <code>void StartSoundEventUnreliable(string string_1, handle handle_2)</code>
| Start a sound event with optional delivery
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.StopEffect | StopEffect]]
| <code>void StopEffect(handle handle_1, string string_2)</code>
| Pass entity and effect name
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.StopGlobalSound | StopGlobalSound]]
| <code>void StopGlobalSound(string string_1)</code>
| Stop named sound for all players
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.StopListeningToAllGameEvents | StopListeningToAllGameEvents]]
| <code>void StopListeningToAllGameEvents(handle handle_1)</code>
| Stop listening to all game events within a specific context.
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.StopListeningToGameEvent | StopListeningToGameEvent]]
| <code>bool StopListeningToGameEvent(int int_1)</code>
| Stop listening to a particular game event.
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.StopSoundEvent | StopSoundEvent]]
| <code>void StopSoundEvent(string string_1, handle handle_2)</code>
| Stops a sound event with optional delivery
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.StopSoundOn | StopSoundOn]]
| <code>void StopSoundOn(string string_1, handle handle_2)</code>
| Stop named sound on Entity
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.Time | Time]]
| <code>float Time()</code>
| Get the current server time
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.TraceCollideable | TraceCollideable]]
| <code>bool TraceCollideable(handle handle_1)</code>
| Pass table - Inputs: start, end, ent, (optional mins, maxs) -- outputs: pos, fraction, hit, startsolid, normal
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.TraceHull | TraceHull]]
| <code>bool TraceHull(handle handle_1)</code>
| Pass table - Inputs: start, end, min, max, mask, ignore  -- outputs: pos, fraction, hit, enthit, startsolid
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.TraceLine | TraceLine]]
| <code>bool TraceLine(handle handle_1)</code>
| Pass table - Inputs: startpos, endpos, mask, ignore  -- outputs: pos, fraction, hit, enthit, startsolid
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.UTIL_AngleDiff | UTIL_AngleDiff]]
| <code>float UTIL_AngleDiff(float float_1, float float_2)</code>
| Returns the number of degrees difference between two yaw angles
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.UTIL_MessageText | UTIL_MessageText]]
| <code>void UTIL_MessageText(int int_1, string string_2, int int_3, int int_4, int int_5, int int_6)</code>
| Sends colored text to one client.
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.UTIL_MessageTextAll | UTIL_MessageTextAll]]
| <code>void UTIL_MessageTextAll(string string_1, int int_2, int int_3, int int_4, int int_5)</code>
| Sends colored text to all clients.
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.UTIL_MessageTextAll_WithContext | UTIL_MessageTextAll_WithContext]]
| <code>void UTIL_MessageTextAll_WithContext(string string_1, int int_2, int int_3, int int_4, int int_5, handle handle_6)</code>
| Sends colored text to all clients. (Valid context keys: player_id, value, team_id)
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.UTIL_MessageText_WithContext | UTIL_MessageText_WithContext]]
| <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>
| Sends colored text to one client. (Valid context keys: player_id, value, team_id)
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.UTIL_Remove | UTIL_Remove]]
| <code>void UTIL_Remove(handle handle_1)</code>
| Removes the specified entity
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.UTIL_RemoveImmediate | UTIL_RemoveImmediate]]
| <code>void UTIL_RemoveImmediate(handle handle_1)</code>
| Immediately removes the specified entity
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.UTIL_ResetMessageText | UTIL_ResetMessageText]]
| <code>void UTIL_ResetMessageText(int int_1)</code>
| Clear all message text on one client.
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.UTIL_ResetMessageTextAll | UTIL_ResetMessageTextAll]]
| <code>void UTIL_ResetMessageTextAll()</code>
| Clear all message text from all clients.
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.UnitFilter | UnitFilter]]
| <code>int UnitFilter(handle handle_1, int int_2, int int_3, int int_4, int int_5)</code>
| Check if a unit passes a set of filters. (hNPC, nTargetTeam, nTargetType, nTargetFlags, nTeam
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.UnloadSpawnGroup | UnloadSpawnGroup]]
| <code>void UnloadSpawnGroup(string string_1)</code>
| Unload a spawn group by name
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.UnloadSpawnGroupByHandle | UnloadSpawnGroupByHandle]]
| <code>void UnloadSpawnGroupByHandle(int int_1)</code>
| Unload a spawn group by handle
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.UpdateEventPoints | UpdateEventPoints]]
| <code>void UpdateEventPoints(handle handle_1)</code>
| ( hEventPointData )
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.VectorAngles | VectorAngles]]
| <code>QAngle VectorAngles(Vector Vector_1)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.VectorToAngles | VectorToAngles]]
| <code>QAngle VectorToAngles(Vector Vector_1)</code>
| Get Qangles (with no roll) for a Vector.
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.Warning | Warning]]
| <code>void Warning(string string_1)</code>
| Print a warning
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.cvar_getf | cvar_getf]]
| <code>float cvar_getf(string string_1)</code>
| Gets the value of the given cvar, as a float.
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.cvar_setf | cvar_setf]]
| <code>bool cvar_setf(string string_1, float float_2)</code>
| Sets the value of the given cvar, as a float.
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.rr_AddDecisionRule | rr_AddDecisionRule]]
| <code>bool rr_AddDecisionRule(handle handle_1)</code>
| Add a rule to the decision database.
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.rr_CommitAIResponse | rr_CommitAIResponse]]
| <code>bool rr_CommitAIResponse(handle handle_1, handle handle_2)</code>
| Commit the result of QueryBestResponse back to the given entity to play. Call with params (entity, airesponse)
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.rr_GetResponseTargets | rr_GetResponseTargets]]
| <code>handle rr_GetResponseTargets()</code>
| Retrieve a table of all available expresser targets, in the form { name : handle, name: handle }.
|-
| [[Dota 2 Workshop Tools/Scripting/API/Global.rr_QueryBestResponse | rr_QueryBestResponse]]
| <code>bool rr_QueryBestResponse(handle handle_1, handle handle_2, handle handle_3)</code>
| Params: (entity, query) : tests 'query' against entity's response system and returns the best response found (or null if none found).
|}


''void'' '''SetPostGameTime'''(''float'')
==== CBaseAnimating ====
Sets the amount of time players have between the game ending and the server disconnecting them.
:::::extends [[#CBaseModelEntity|CBaseModelEntity]]
''No Description Set''
{| class="standard-table" style="width: 100%;"
! Function
! Signature
! Description
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseAnimating.ActiveSequenceDuration | ActiveSequenceDuration]]
| <code>float ActiveSequenceDuration()</code>
| Returns the duration in seconds of the active sequence.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseAnimating.GetAttachmentAngles | GetAttachmentAngles]]
| <code>Vector GetAttachmentAngles(int iAttachment)</code>
| Get the attachment id's angles as a p,y,r vector.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseAnimating.GetAttachmentForward | GetAttachmentForward]]
| <code>Vector GetAttachmentForward(int iAttachment)</code>
| Get the attachment id's forward vector.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseAnimating.GetAttachmentOrigin | GetAttachmentOrigin]]
| <code>Vector GetAttachmentOrigin(int iAttachment)</code>
| Get the attachment id's origin vector.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseAnimating.GetCycle | GetCycle]]
| <code>float GetCycle()</code>
| Get the cycle of the animation.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseAnimating.GetGraphParameter | GetGraphParameter]]
| <code>table GetGraphParameter(string pszParam)</code>
| Get the value of the given animGraph parameter
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseAnimating.GetModelScale | GetModelScale]]
| <code>float GetModelScale()</code>
| Get scale of entity's model.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseAnimating.GetSequence | GetSequence]]
| <code>string GetSequence()</code>
| Returns the name of the active sequence.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseAnimating.IsSequenceFinished | IsSequenceFinished]]
| <code>bool IsSequenceFinished()</code>
| Ask whether the main sequence is done playing.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseAnimating.ResetSequence | ResetSequence]]
| <code>void ResetSequence(string pSequenceName)</code>
| Sets the active sequence by name, resetting the current cycle.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseAnimating.ScriptLookupAttachment | ScriptLookupAttachment]]
| <code>int ScriptLookupAttachment(string pAttachmentName)</code>
| Get the named attachment id.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseAnimating.SequenceDuration | SequenceDuration]]
| <code>float SequenceDuration(string pSequenceName)</code>
| Returns the duration in seconds of the given sequence name.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseAnimating.SetGraphLookTarget | SetGraphLookTarget]]
| <code>void SetGraphLookTarget(Vector vValue)</code>
| Pass the desired look target in world space to the graph
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseAnimating.SetGraphParameter | SetGraphParameter]]
| <code>void SetGraphParameter(string pszParam, table svArg)</code>
| Set the specific param value, type is inferred from the type in script
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseAnimating.SetGraphParameterBool | SetGraphParameterBool]]
| <code>void SetGraphParameterBool(string szName, bool bValue)</code>
| Set the specific param on or off
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseAnimating.SetGraphParameterEnum | SetGraphParameterEnum]]
| <code>void SetGraphParameterEnum(string szName, int nValue)</code>
| Pass the enum (int) value to the specified param
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseAnimating.SetGraphParameterFloat | SetGraphParameterFloat]]
| <code>void SetGraphParameterFloat(string szName, float flValue)</code>
| Pass the float value to the specified param
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseAnimating.SetGraphParameterInt | SetGraphParameterInt]]
| <code>void SetGraphParameterInt(string szName, int nValue)</code>
| Pass the int value to the specified param
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseAnimating.SetGraphParameterVector | SetGraphParameterVector]]
| <code>void SetGraphParameterVector(string szName, Vector vValue)</code>
| Pass the vector value to the specified param in the graph
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseAnimating.SetModelScale | SetModelScale]]
| <code>void SetModelScale(float flScale)</code>
| 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.
|}


''<unknown>'' '''State_Get'''()
==== CBaseCombatCharacter ====
Get the current Gamerules state
:::::extends [[#CBaseFlex|CBaseFlex]]
''No Description Set''
{| class="standard-table" style="width: 100%;"
! Function
! Signature
! Description
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseCombatCharacter.GetEquippedWeapons | GetEquippedWeapons]]
| <code>table GetEquippedWeapons()</code>
| GetEquippedWeapons() : Returns an array of all the equipped weapons
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseCombatCharacter.GetFaction | GetFaction]]
| <code>int GetFaction()</code>
| Get the combat character faction.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseCombatCharacter.GetWeaponCount | GetWeaponCount]]
| <code>int GetWeaponCount()</code>
| GetWeaponCount() : Gets the number of weapons currently equipped
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseCombatCharacter.ShootPosition | ShootPosition]]
| <code>Vector ShootPosition(int nHand, int nMuzzle)</code>
| Returns the shoot position eyes (or hand in VR).
|}


''void'' '''MakeTeamLose'''(''int'')
==== CBaseEntity ====
Makes ths specified team lose
:::::extends [[#CEntityInstance|CEntityInstance]]
''The base class for stuff''
{| class="standard-table" style="width: 100%;"
! Function
! Signature
! Description
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.AddEffects | AddEffects]]
| <code>void AddEffects(int nFlags)</code>
| AddEffects( int ): Adds the render effect flag.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.ApplyAbsVelocityImpulse | ApplyAbsVelocityImpulse]]
| <code>void ApplyAbsVelocityImpulse(Vector vecImpulse)</code>
| Apply a Velocity Impulse
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.ApplyLocalAngularVelocityImpulse | ApplyLocalAngularVelocityImpulse]]
| <code>void ApplyLocalAngularVelocityImpulse(Vector angImpulse)</code>
| Apply an Ang Velocity Impulse
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.Attribute_GetFloatValue | Attribute_GetFloatValue]]
| <code>float Attribute_GetFloatValue(string pName, float flDefault)</code>
| Get float value for an entity attribute.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.Attribute_GetIntValue | Attribute_GetIntValue]]
| <code>int Attribute_GetIntValue(string pName, int nDefault)</code>
| Get int value for an entity attribute.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.Attribute_SetFloatValue | Attribute_SetFloatValue]]
| <code>void Attribute_SetFloatValue(string pName, float flValue)</code>
| Set float value for an entity attribute.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.Attribute_SetIntValue | Attribute_SetIntValue]]
| <code>void Attribute_SetIntValue(string pName, int nValue)</code>
| Set int value for an entity attribute.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.DeleteAttribute | DeleteAttribute]]
| <code>void DeleteAttribute(string pName)</code>
| Delete an entity attribute.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.EmitSound | EmitSound]]
| <code>void EmitSound(string soundname)</code>
| Plays a sound from this entity.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.EmitSoundParams | EmitSoundParams]]
| <code>void EmitSoundParams(string soundname, int nPitch, float flVolume, float flDelay)</code>
| Plays/modifies a sound from this entity. changes sound if nPitch and/or flVol or flSoundTime is > 0.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.EyeAngles | EyeAngles]]
| <code>QAngle EyeAngles()</code>
| Get the qangles that this entity is looking at.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.EyePosition | EyePosition]]
| <code>Vector EyePosition()</code>
| Get vector to eye position - absolute coords.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.FirstMoveChild | FirstMoveChild]]
| <code>handle FirstMoveChild()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.FollowEntity | FollowEntity]]
| <code>void FollowEntity(handle hEnt, bool bBoneMerge)</code>
| hEntity to follow, bool bBoneMerge
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GatherCriteria | GatherCriteria]]
| <code>void GatherCriteria(handle hResult)</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.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetAbsOrigin | GetAbsOrigin]]
| <code>Vector GetAbsOrigin()</code>
| Returns the position of the entity on the map. Very Useful!
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetAbsScale | GetAbsScale]]
| <code>float GetAbsScale()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetAngles | GetAngles]]
| <code>QAngle GetAngles()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetAnglesAsVector | GetAnglesAsVector]]
| <code>Vector GetAnglesAsVector()</code>
| Get entity pitch, yaw, roll as a vector.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetAngularVelocity | GetAngularVelocity]]
| <code>Vector GetAngularVelocity()</code>
| Get the local angular velocity - returns a vector of pitch,yaw,roll
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetBaseVelocity | GetBaseVelocity]]
| <code>Vector GetBaseVelocity()</code>
| Get Base? velocity.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetBoundingMaxs | GetBoundingMaxs]]
| <code>Vector GetBoundingMaxs()</code>
| Get a vector containing max bounds, centered on object.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetBoundingMins | GetBoundingMins]]
| <code>Vector GetBoundingMins()</code>
| Get a vector containing min bounds, centered on object.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetBounds | GetBounds]]
| <code>table GetBounds()</code>
| Get a table containing the 'Mins' & 'Maxs' vector bounds, centered on object.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetCenter | GetCenter]]
| <code>Vector GetCenter()</code>
| Get vector to center of object - absolute coords
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetChildren | GetChildren]]
| <code>handle GetChildren()</code>
| Get the entities parented to this entity.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetContext | GetContext]]
| <code>table GetContext(string name)</code>
| 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/CBaseEntity.GetForwardVector | GetForwardVector]]
| <code>Vector GetForwardVector()</code>
| Get the forward vector of the entity.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetHealth | GetHealth]]
| <code>int GetHealth()</code>
| Get the health of this entity.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetLocalAngles | GetLocalAngles]]
| <code>QAngle GetLocalAngles()</code>
| Get entity local pitch, yaw, roll as a QAngle
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetLocalAngularVelocity | GetLocalAngularVelocity]]
| <code>QAngle GetLocalAngularVelocity()</code>
| Maybe local angvel
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetLocalOrigin | GetLocalOrigin]]
| <code>Vector GetLocalOrigin()</code>
| Get entity local origin as a Vector
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetLocalScale | GetLocalScale]]
| <code>float GetLocalScale()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetLocalVelocity | GetLocalVelocity]]
| <code>Vector GetLocalVelocity()</code>
| Get Entity relative velocity.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetMass | GetMass]]
| <code>float GetMass()</code>
| Get the mass of an entity. (returns 0 if it doesn't have a physics object)
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetMaxHealth | GetMaxHealth]]
| <code>int GetMaxHealth()</code>
| Get the maximum health of this entity.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetModelName | GetModelName]]
| <code>string GetModelName()</code>
| Returns the name of the model.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetMoveParent | GetMoveParent]]
| <code>handle GetMoveParent()</code>
| If in hierarchy, retrieves the entity's parent.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetOrigin | GetOrigin]]
| <code>Vector GetOrigin()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetOwner | GetOwner]]
| <code>handle GetOwner()</code>
| Gets this entity's owner
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetOwnerEntity | GetOwnerEntity]]
| <code>handle GetOwnerEntity()</code>
| Get the owner entity, if there is one
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetRightVector | GetRightVector]]
| <code>Vector GetRightVector()</code>
| Get the right vector of the entity.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetRootMoveParent | GetRootMoveParent]]
| <code>handle GetRootMoveParent()</code>
| If in hierarchy, walks up the hierarchy to find the root parent.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetSoundDuration | GetSoundDuration]]
| <code>float GetSoundDuration(string soundname, string actormodel)</code>
| Returns float duration of the sound. Takes soundname and optional actormodelname.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetTeam | GetTeam]]
| <code>int GetTeam()</code>
| Get the team number of this entity.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetTeamNumber | GetTeamNumber]]
| <code>int GetTeamNumber()</code>
| Get the team number of this entity.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetUpVector | GetUpVector]]
| <code>Vector GetUpVector()</code>
| Get the up vector of the entity.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.GetVelocity | GetVelocity]]
| <code>Vector GetVelocity()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.HasAttribute | HasAttribute]]
| <code>bool HasAttribute(string pName)</code>
| See if an entity has a particular attribute.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.IsAlive | IsAlive]]
| <code>bool IsAlive()</code>
| Is this entity alive?
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.IsNPC | IsNPC]]
| <code>bool IsNPC()</code>
| Is this entity an CAI_BaseNPC?
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.IsPlayer | IsPlayer]]
| <code>bool IsPlayer()</code>
| Is this entity a player?
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.Kill | Kill]]
| <code>void Kill()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.NextMovePeer | NextMovePeer]]
| <code>handle NextMovePeer()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.OverrideFriction | OverrideFriction]]
| <code>void OverrideFriction(float duration, float friction)</code>
| Takes duration, value for a temporary override.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.PrecacheScriptSound | PrecacheScriptSound]]
| <code>void PrecacheScriptSound(string soundname)</code>
| Precache a sound for later playing.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.RemoveEffects | RemoveEffects]]
| <code>void RemoveEffects(int nFlags)</code>
| RemoveEffects( int ): Removes the render effect flag.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.SetAbsAngles | SetAbsAngles]]
| <code>void SetAbsAngles(float fPitch, float fYaw, float fRoll)</code>
| Set entity pitch, yaw, roll by component.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.SetAbsOrigin | SetAbsOrigin]]
| <code>void SetAbsOrigin(Vector origin)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.SetAbsScale | SetAbsScale]]
| <code>void SetAbsScale(float flScale)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.SetAngles | SetAngles]]
| <code>void SetAngles(float fPitch, float fYaw, float fRoll)</code>
| Set entity pitch, yaw, roll by component.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.SetAngularVelocity | SetAngularVelocity]]
| <code>void SetAngularVelocity(float pitchVel, float yawVel, float rollVel)</code>
| Set the local angular velocity - takes float pitch,yaw,roll velocities
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.SetConstraint | SetConstraint]]
| <code>void SetConstraint(Vector vPos)</code>
| Set the position of the constraint.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.SetContext | SetContext]]
| <code>void SetContext(string pName, string pValue, float duration)</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').
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.SetContextNum | SetContextNum]]
| <code>void SetContextNum(string pName, float fValue, float duration)</code>
| 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/CBaseEntity.SetContextThink | SetContextThink]]
| <code>void SetContextThink(string pszContextName, handle hThinkFunc, float flInterval)</code>
| Set a think function on this entity.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.SetEntityName | SetEntityName]]
| <code>void SetEntityName(string pName)</code>
| Set the name of an entity.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.SetForwardVector | SetForwardVector]]
| <code>void SetForwardVector(Vector v)</code>
| Set the orientation of the entity to have this forward vector.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.SetFriction | SetFriction]]
| <code>void SetFriction(float flFriction)</code>
| Set PLAYER friction, ignored for objects.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.SetGravity | SetGravity]]
| <code>void SetGravity(float flGravity)</code>
| Set PLAYER gravity, ignored for objects.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.SetHealth | SetHealth]]
| <code>void SetHealth(int nHealth)</code>
| Set the health of this entity.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.SetLocalAngles | SetLocalAngles]]
| <code>void SetLocalAngles(float fPitch, float fYaw, float fRoll)</code>
| Set entity local pitch, yaw, roll by component
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.SetLocalOrigin | SetLocalOrigin]]
| <code>void SetLocalOrigin(Vector origin)</code>
| Set entity local origin from a Vector
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.SetLocalScale | SetLocalScale]]
| <code>void SetLocalScale(float flScale)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.SetMass | SetMass]]
| <code>void SetMass(float flMass)</code>
| Set the mass of an entity. (does nothing if it doesn't have a physics object)
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.SetMaxHealth | SetMaxHealth]]
| <code>void SetMaxHealth(int amt)</code>
| Set the maximum health of this entity.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.SetOrigin | SetOrigin]]
| <code>void SetOrigin(Vector v)</code>
| Sets the location of this entity
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.SetOwner | SetOwner]]
| <code>void SetOwner(handle pOwner)</code>
| Sets this entity's owner
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.SetParent | SetParent]]
| <code>void SetParent(handle hParent, string pAttachmentname)</code>
| Set the parent for this entity.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.SetTeam | SetTeam]]
| <code>void SetTeam(int iTeamNum)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.SetVelocity | SetVelocity]]
| <code>void SetVelocity(Vector vecVelocity)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.StopSound | StopSound]]
| <code>void StopSound(string soundname)</code>
| Stops a named sound playing from this entity.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.TakeDamage | TakeDamage]]
| <code>int TakeDamage(handle hInfo)</code>
| Apply damage to this entity. Use CreateDamageInfo() to create a damageinfo object.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.TransformPointEntityToWorld | TransformPointEntityToWorld]]
| <code>Vector TransformPointEntityToWorld(Vector vPoint)</code>
| Returns the input Vector transformed from entity to world space
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.TransformPointWorldToEntity | TransformPointWorldToEntity]]
| <code>Vector TransformPointWorldToEntity(Vector vPoint)</code>
| Returns the input Vector transformed from world to entity space
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.Trigger | Trigger]]
| <code>void Trigger()</code>
| Fires off this entity's OnTrigger responses.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseEntity.ValidatePrivateScriptScope | ValidatePrivateScriptScope]]
| <code>void ValidatePrivateScriptScope()</code>
| Validates the private script scope and creates it if one doesn't exist.
|}


''void'' '''Defeated'''()
==== CBaseFlex ====
Kills the ancient, etc.
:::::extends [[#CBaseAnimating|CBaseAnimating]]
''No Description Set''
{| class="standard-table" style="width: 100%;"
! Function
! Signature
! Description
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseFlex.GetCurrentScene | GetCurrentScene]]
| <code>handle GetCurrentScene()</code>
| Returns the instance of the oldest active scene entity (if any).
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseFlex.GetSceneByIndex | GetSceneByIndex]]
| <code>handle GetSceneByIndex(int index)</code>
| Returns the instance of the scene entity at the specified index.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseFlex.ScriptPlayScene | ScriptPlayScene]]
| <code>float ScriptPlayScene(string pszScene, float flDelay)</code>
| ( vcd file, delay ) - play specified vcd file
|}


''void'' '''ResetToHeroSelection'''()
==== CBaseModelEntity ====
Restart the game at hero selection
:::::extends [[#CBaseEntity|CBaseEntity]]
''No Description Set''
{| class="standard-table" style="width: 100%;"
! Function
! Signature
! Description
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseModelEntity.GetMaterialGroupHash | GetMaterialGroupHash]]
| <code>unsigned GetMaterialGroupHash()</code>
| GetMaterialGroupHash(): Get the material group hash of this entity.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseModelEntity.GetMaterialGroupMask | GetMaterialGroupMask]]
| <code>uint64 GetMaterialGroupMask()</code>
| GetMaterialGroupMask(): Get the mesh group mask of this entity.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseModelEntity.GetRenderAlpha | GetRenderAlpha]]
| <code>int GetRenderAlpha()</code>
| GetRenderAlpha(): Get the alpha modulation of this entity.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseModelEntity.GetRenderColor | GetRenderColor]]
| <code>Vector GetRenderColor()</code>
| GetRenderColor(): Get the render color of the entity.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseModelEntity.SetBodygroup | SetBodygroup]]
| <code>void SetBodygroup(int iGroup, int iValue)</code>
| Sets a bodygroup.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseModelEntity.SetBodygroupByName | SetBodygroupByName]]
| <code>void SetBodygroupByName(string pName, int iValue)</code>
| Sets a bodygroup by name.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseModelEntity.SetLightGroup | SetLightGroup]]
| <code>void SetLightGroup(string pLightGroup)</code>
| SetLightGroup( string ): Sets the light group of the entity.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseModelEntity.SetMaterialGroup | SetMaterialGroup]]
| <code>void SetMaterialGroup(string pMaterialGroup)</code>
| SetMaterialGroup( string ): Set the material group of this entity.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseModelEntity.SetMaterialGroupHash | SetMaterialGroupHash]]
| <code>void SetMaterialGroupHash(unsigned nHash)</code>
| SetMaterialGroupHash( uint32 ): Set the material group hash of this entity.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseModelEntity.SetMaterialGroupMask | SetMaterialGroupMask]]
| <code>void SetMaterialGroupMask(uint64 nMeshGroupMask)</code>
| SetMaterialGroupMask( uint64 ): Set the mesh group mask of this entity.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseModelEntity.SetModel | SetModel]]
| <code>void SetModel(string pModelName)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseModelEntity.SetRenderAlpha | SetRenderAlpha]]
| <code>void SetRenderAlpha(int nAlpha)</code>
| SetRenderAlpha( int ): Set the alpha modulation of this entity.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseModelEntity.SetRenderColor | SetRenderColor]]
| <code>void SetRenderColor(int r, int g, int b)</code>
| SetRenderColor( r, g, b ): Sets the render color of the entity.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseModelEntity.SetRenderMode | SetRenderMode]]
| <code>void SetRenderMode(int nMode)</code>
| SetRenderMode( int ): Sets the render mode of the entity.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseModelEntity.SetSingleMeshGroup | SetSingleMeshGroup]]
| <code>void SetSingleMeshGroup(string pMeshGroupName)</code>
| SetSingleMeshGroup( string ): Set a single mesh group for this entity.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseModelEntity.SetSize | SetSize]]
| <code>void SetSize(Vector mins, Vector maxs)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseModelEntity.SetSkin | SetSkin]]
| <code>void SetSkin(int iSkin)</code>
| Set skin (int).
|}


''void'' '''SendCustomMessage'''(''string'', ''int'', ''int'')
==== CBasePlayer ====
Sends a ''string'' to the defined team.
:::::extends [[#CBaseCombatCharacter|CBaseCombatCharacter]]
''No Description Set''
{| class="standard-table" style="width: 100%;"
! Function
! Signature
! Description
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBasePlayer.AreChaperoneBoundsVisible | AreChaperoneBoundsVisible]]
| <code>bool AreChaperoneBoundsVisible()</code>
| 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.  
|}


''void'' '''SetCreepMinimapIconScale'''(''float'')
==== CBaseTrigger ====
(flMinimapCreepIconScale) - Scale the creep icons on the minimap.
:::::extends [[#CBaseEntity|CBaseEntity]]
''No Description Set''
{| class="standard-table" style="width: 100%;"
! Function
! Signature
! Description
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBaseTrigger.Disable | Disable]]
| <code>void Disable()</code>
| 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.  
|}


''float'' '''GetNianFightStartTime'''()
==== CBodyComponent ====
Gets the start time for the Nian fight
''No Description Set''
{| class="standard-table" style="width: 100%;"
! Function
! Signature
! Description
|-
| [[Dota 2 Workshop Tools/Scripting/API/CBodyComponent.AddImpulseAtPosition | AddImpulseAtPosition]]
| <code>void AddImpulseAtPosition(Vector Vector_1, Vector Vector_2)</code>
| 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>
| Add linear and angular velocity to the physics object
|-
| [[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>
|}


''int'' '''NumDroppedItems'''()
==== CCustomGameEventManager ====
Returns the number of items currently dropped on the ground
''Global accessor variable: <code>CustomGameEventManager</code>''
{| class="standard-table" style="width: 100%;"
! Function
! Signature
! Description
|-
| [[Dota 2 Workshop Tools/Scripting/API/CCustomGameEventManager.RegisterListener | RegisterListener]]
| <code>int RegisterListener(string string_1, handle handle_2)</code>
| ( 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
|}


''void'' '''SetGoldTickTime'''(''float'')
==== CCustomNetTableManager ====
Set the time ''int''erval between auto gold increases.
''Global accessor variable: <code>CustomNetTables</code>''
{| class="standard-table" style="width: 100%;"
! Function
! Signature
! Description
|-
| [[Dota 2 Workshop Tools/Scripting/API/CCustomNetTableManager.GetTableValue | GetTableValue]]
| <code>table GetTableValue(string string_1, string string_2)</code>
| ( 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 )
|}


''bool'' '''GetMatchSignoutComplete'''()
==== CDOTABaseAbility ====
Have we received the post match signout message that includes reward information
:::::extends [[#CBaseEntity|CBaseEntity]]
''No Description Set''
{| class="standard-table" style="width: 100%;"
! Function
! Signature
! Description
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.CanAbilityBeUpgraded | CanAbilityBeUpgraded]]
| <code><unknown> CanAbilityBeUpgraded()</code>
|-
| [[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/CDOTABaseAbility.ContinueCasting | ContinueCasting]]
| <code>bool ContinueCasting()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.CreateVisibilityNode | CreateVisibilityNode]]
| <code>void CreateVisibilityNode(Vector vLocation, float fRadius, float fDuration)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.DecrementModifierRefCount | DecrementModifierRefCount]]
| <code>void DecrementModifierRefCount()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.EndChannel | EndChannel]]
| <code>void EndChannel(bool bInterrupted)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.EndCooldown | EndCooldown]]
| <code>void EndCooldown()</code>
| Clear the cooldown remaining on this ability.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetAOERadius | GetAOERadius]]
| <code>int GetAOERadius()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetAbilityDamage | GetAbilityDamage]]
| <code>int GetAbilityDamage()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetAbilityDamageType | GetAbilityDamageType]]
| <code>int GetAbilityDamageType()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetAbilityIndex | GetAbilityIndex]]
| <code>int GetAbilityIndex()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetAbilityKeyValues | GetAbilityKeyValues]]
| <code>table GetAbilityKeyValues()</code>
| Gets the key values definition for this ability.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetAbilityName | GetAbilityName]]
| <code>string GetAbilityName()</code>
| Returns the name of this ability.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetAbilityTargetFlags | GetAbilityTargetFlags]]
| <code>int GetAbilityTargetFlags()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetAbilityTargetTeam | GetAbilityTargetTeam]]
| <code>int GetAbilityTargetTeam()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetAbilityTargetType | GetAbilityTargetType]]
| <code>int GetAbilityTargetType()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetAbilityType | GetAbilityType]]
| <code>int GetAbilityType()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetAnimationIgnoresModelScale | GetAnimationIgnoresModelScale]]
| <code>bool GetAnimationIgnoresModelScale()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetAssociatedPrimaryAbilities | GetAssociatedPrimaryAbilities]]
| <code>string GetAssociatedPrimaryAbilities()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetAssociatedSecondaryAbilities | GetAssociatedSecondaryAbilities]]
| <code>string GetAssociatedSecondaryAbilities()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetAutoCastState | GetAutoCastState]]
| <code>bool GetAutoCastState()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetBackswingTime | GetBackswingTime]]
| <code>float GetBackswingTime()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetBehavior | GetBehavior]]
| <code>int GetBehavior()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetCastPoint | GetCastPoint]]
| <code>float GetCastPoint()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetCastRange | GetCastRange]]
| <code>int GetCastRange(Vector vLocation, handle hTarget)</code>
| Gets the cast range of the ability.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetCaster | GetCaster]]
| <code>handle GetCaster()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetChannelStartTime | GetChannelStartTime]]
| <code>float GetChannelStartTime()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetChannelTime | GetChannelTime]]
| <code>float GetChannelTime()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetChannelledManaCostPerSecond | GetChannelledManaCostPerSecond]]
| <code>int GetChannelledManaCostPerSecond(int iLevel)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetCloneSource | GetCloneSource]]
| <code>handle GetCloneSource()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetConceptRecipientType | GetConceptRecipientType]]
| <code>int GetConceptRecipientType()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetCooldown | GetCooldown]]
| <code>float GetCooldown(int iLevel)</code>
| Get the cooldown duration for this ability at a given level, not the amount of cooldown actually left.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetCooldownTime | GetCooldownTime]]
| <code>float GetCooldownTime()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetCooldownTimeRemaining | GetCooldownTimeRemaining]]
| <code>float GetCooldownTimeRemaining()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetCursorPosition | GetCursorPosition]]
| <code>Vector GetCursorPosition()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetCursorTarget | GetCursorTarget]]
| <code>handle GetCursorTarget()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetCursorTargetingNothing | GetCursorTargetingNothing]]
| <code>bool GetCursorTargetingNothing()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetDuration | GetDuration]]
| <code>float GetDuration()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetEffectiveCooldown | GetEffectiveCooldown]]
| <code>float GetEffectiveCooldown(int iLevel)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetGoldCost | GetGoldCost]]
| <code>int GetGoldCost(int iLevel)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetGoldCostForUpgrade | GetGoldCostForUpgrade]]
| <code>int GetGoldCostForUpgrade(int iLevel)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetHeroLevelRequiredToUpgrade | GetHeroLevelRequiredToUpgrade]]
| <code>int GetHeroLevelRequiredToUpgrade()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetIntrinsicModifierName | GetIntrinsicModifierName]]
| <code>string GetIntrinsicModifierName()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetLevel | GetLevel]]
| <code>int GetLevel()</code>
| Get the current level of the ability.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetLevelSpecialValueFor | GetLevelSpecialValueFor]]
| <code>table GetLevelSpecialValueFor(string szName, int nLevel)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetManaCost | GetManaCost]]
| <code>int GetManaCost(int iLevel)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetMaxLevel | GetMaxLevel]]
| <code>int GetMaxLevel()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetModifierValue | GetModifierValue]]
| <code>float GetModifierValue()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetModifierValueBonus | GetModifierValueBonus]]
| <code>float GetModifierValueBonus()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetPlaybackRateOverride | GetPlaybackRateOverride]]
| <code>float GetPlaybackRateOverride()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetSharedCooldownName | GetSharedCooldownName]]
| <code>string GetSharedCooldownName()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetSpecialValueFor | GetSpecialValueFor]]
| <code>table GetSpecialValueFor(string szName)</code>
| Gets a value from this ability's special value block for its current level.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetStolenActivityModifier | GetStolenActivityModifier]]
| <code>string GetStolenActivityModifier()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetToggleState | GetToggleState]]
| <code>bool GetToggleState()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.GetUpgradeRecommended | GetUpgradeRecommended]]
| <code>bool GetUpgradeRecommended()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.HeroXPChange | HeroXPChange]]
| <code>bool HeroXPChange(float flXP)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.IncrementModifierRefCount | IncrementModifierRefCount]]
| <code>void IncrementModifierRefCount()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.IsActivated | IsActivated]]
| <code>bool IsActivated()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.IsAttributeBonus | IsAttributeBonus]]
| <code>bool IsAttributeBonus()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.IsChanneling | IsChanneling]]
| <code>bool IsChanneling()</code>
| Returns whether the ability is currently channeling.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.IsCooldownReady | IsCooldownReady]]
| <code>bool IsCooldownReady()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.IsCosmetic | IsCosmetic]]
| <code>bool IsCosmetic(handle hEntity)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.IsFullyCastable | IsFullyCastable]]
| <code>bool IsFullyCastable()</code>
| Returns whether the ability can be cast.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.IsHidden | IsHidden]]
| <code>bool IsHidden()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.IsHiddenAsSecondaryAbility | IsHiddenAsSecondaryAbility]]
| <code>bool IsHiddenAsSecondaryAbility()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.IsHiddenWhenStolen | IsHiddenWhenStolen]]
| <code>bool IsHiddenWhenStolen()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.IsInAbilityPhase | IsInAbilityPhase]]
| <code>bool IsInAbilityPhase()</code>
| Returns whether the ability is currently casting.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.IsItem | IsItem]]
| <code>bool IsItem()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.IsOwnersGoldEnough | IsOwnersGoldEnough]]
| <code>bool IsOwnersGoldEnough(int nIssuerPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.IsOwnersGoldEnoughForUpgrade | IsOwnersGoldEnoughForUpgrade]]
| <code>bool IsOwnersGoldEnoughForUpgrade()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.IsOwnersManaEnough | IsOwnersManaEnough]]
| <code>bool IsOwnersManaEnough()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.IsPassive | IsPassive]]
| <code>bool IsPassive()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.IsRefreshable | IsRefreshable]]
| <code>bool IsRefreshable()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.IsSharedWithTeammates | IsSharedWithTeammates]]
| <code>bool IsSharedWithTeammates()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.IsStealable | IsStealable]]
| <code>bool IsStealable()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.IsStolen | IsStolen]]
| <code>bool IsStolen()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.IsToggle | IsToggle]]
| <code>bool IsToggle()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.IsTrained | IsTrained]]
| <code>bool IsTrained()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.MarkAbilityButtonDirty | MarkAbilityButtonDirty]]
| <code>void MarkAbilityButtonDirty()</code>
| Mark the ability button for this ability as needing a refresh.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.NumModifiersUsingAbility | NumModifiersUsingAbility]]
| <code>int NumModifiersUsingAbility()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.OnAbilityPhaseInterrupted | OnAbilityPhaseInterrupted]]
| <code>void OnAbilityPhaseInterrupted()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.OnAbilityPhaseStart | OnAbilityPhaseStart]]
| <code>bool OnAbilityPhaseStart()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.OnAbilityPinged | OnAbilityPinged]]
| <code>void OnAbilityPinged(int nPlayerID, bool bCtrlHeld)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.OnChannelFinish | OnChannelFinish]]
| <code>void OnChannelFinish(bool bInterrupted)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.OnChannelThink | OnChannelThink]]
| <code>void OnChannelThink(float flInterval)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.OnHeroCalculateStatBonus | OnHeroCalculateStatBonus]]
| <code>void OnHeroCalculateStatBonus()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.OnHeroLevelUp | OnHeroLevelUp]]
| <code>void OnHeroLevelUp()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.OnOwnerDied | OnOwnerDied]]
| <code>void OnOwnerDied()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.OnOwnerSpawned | OnOwnerSpawned]]
| <code>void OnOwnerSpawned()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.OnSpellStart | OnSpellStart]]
| <code>void OnSpellStart()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.OnToggle | OnToggle]]
| <code>void OnToggle()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.OnUpgrade | OnUpgrade]]
| <code>void OnUpgrade()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.PayGoldCost | PayGoldCost]]
| <code>void PayGoldCost()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.PayGoldCostForUpgrade | PayGoldCostForUpgrade]]
| <code>void PayGoldCostForUpgrade()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.PayManaCost | PayManaCost]]
| <code>void PayManaCost()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.PlaysDefaultAnimWhenStolen | PlaysDefaultAnimWhenStolen]]
| <code>bool PlaysDefaultAnimWhenStolen()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.ProcsMagicStick | ProcsMagicStick]]
| <code>bool ProcsMagicStick()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.RefCountsModifiers | RefCountsModifiers]]
| <code>bool RefCountsModifiers()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.RefreshCharges | RefreshCharges]]
| <code>void RefreshCharges()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.RefundManaCost | RefundManaCost]]
| <code>void RefundManaCost()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.ResetToggleOnRespawn | ResetToggleOnRespawn]]
| <code>bool ResetToggleOnRespawn()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.SetAbilityIndex | SetAbilityIndex]]
| <code>void SetAbilityIndex(int iIndex)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.SetActivated | SetActivated]]
| <code>void SetActivated(bool bActivated)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.SetChanneling | SetChanneling]]
| <code>void SetChanneling(bool bChanneling)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.SetFrozenCooldown | SetFrozenCooldown]]
| <code>void SetFrozenCooldown(bool bFrozenCooldown)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.SetHidden | SetHidden]]
| <code>void SetHidden(bool bHidden)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.SetInAbilityPhase | SetInAbilityPhase]]
| <code>void SetInAbilityPhase(bool bInAbilityPhase)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.SetLevel | SetLevel]]
| <code>void SetLevel(int iLevel)</code>
| Sets the level of this ability.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.SetOverrideCastPoint | SetOverrideCastPoint]]
| <code>void SetOverrideCastPoint(float flCastPoint)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.SetRefCountsModifiers | SetRefCountsModifiers]]
| <code>void SetRefCountsModifiers(bool bRefCounts)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.SetStealable | SetStealable]]
| <code>void SetStealable(bool bStealable)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.SetStolen | SetStolen]]
| <code>void SetStolen(bool bStolen)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.SetUpgradeRecommended | SetUpgradeRecommended]]
| <code>void SetUpgradeRecommended(bool bUpgradeRecommended)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.ShouldUseResources | ShouldUseResources]]
| <code>bool ShouldUseResources()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.SpeakAbilityConcept | SpeakAbilityConcept]]
| <code>void SpeakAbilityConcept(int iConcept)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.SpeakTrigger | SpeakTrigger]]
| <code><unknown> SpeakTrigger()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.StartCooldown | StartCooldown]]
| <code>void StartCooldown(float flCooldown)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.ToggleAbility | ToggleAbility]]
| <code>void ToggleAbility()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.ToggleAutoCast | ToggleAutoCast]]
| <code>void ToggleAutoCast()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.UpgradeAbility | UpgradeAbility]]
| <code>void UpgradeAbility(bool bSupressSpeech)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseAbility.UseResources | UseResources]]
| <code>void UseResources(bool bMana, bool bGold, bool bCooldown)</code>
|}


''int'' '''GetDifficulty'''()
==== CDOTABaseGameMode ====
Returns difficulty level of the custom game mode
:::::extends [[#CBaseEntity|CBaseEntity]]
''No Description Set''
{| class="standard-table" style="width: 100%;"
! Function
! Signature
! Description
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.AddRealTimeCombatAnalyzerQuery | AddRealTimeCombatAnalyzerQuery]]
| <code>int AddRealTimeCombatAnalyzerQuery(handle hQueryTable, handle hPlayer, string pszQueryName)</code>
| Begin tracking a sequence of events using the real time combat analyzer.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.AreWeatherEffectsDisabled | AreWeatherEffectsDisabled]]
| <code>bool AreWeatherEffectsDisabled()</code>
| Get if weather effects are disabled on the client.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.ClearBountyRunePickupFilter | ClearBountyRunePickupFilter]]
| <code>void ClearBountyRunePickupFilter()</code>
| Clear the script filter that controls bounty rune pickup behavior.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.ClearDamageFilter | ClearDamageFilter]]
| <code>void ClearDamageFilter()</code>
| Clear the script filter that controls how a unit takes damage.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.ClearExecuteOrderFilter | ClearExecuteOrderFilter]]
| <code>void ClearExecuteOrderFilter()</code>
| Clear the script filter that controls when a unit picks up an item.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.ClearHealingFilter | ClearHealingFilter]]
| <code>void ClearHealingFilter()</code>
| Clear the script filter that controls how a unit heals.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.ClearItemAddedToInventoryFilter | ClearItemAddedToInventoryFilter]]
| <code>void ClearItemAddedToInventoryFilter()</code>
| Clear the script filter that controls the item added to inventory filter.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.ClearModifierGainedFilter | ClearModifierGainedFilter]]
| <code>void ClearModifierGainedFilter()</code>
| Clear the script filter that controls the modifier filter.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.ClearModifyExperienceFilter | ClearModifyExperienceFilter]]
| <code>void ClearModifyExperienceFilter()</code>
| Clear the script filter that controls how hero experience is modified.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.ClearModifyGoldFilter | ClearModifyGoldFilter]]
| <code>void ClearModifyGoldFilter()</code>
| Clear the script filter that controls how hero gold is modified.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.ClearRuneSpawnFilter | ClearRuneSpawnFilter]]
| <code>void ClearRuneSpawnFilter()</code>
| Clear the script filter that controls what rune spawns.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.ClearTrackingProjectileFilter | ClearTrackingProjectileFilter]]
| <code>void ClearTrackingProjectileFilter()</code>
| Clear the script filter that controls when tracking projectiles are launched.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.DisableHudFlip | DisableHudFlip]]
| <code>void DisableHudFlip(bool bDisable)</code>
| Use to disable hud flip for this mod
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.GetAlwaysShowPlayerInventory | GetAlwaysShowPlayerInventory]]
| <code>bool GetAlwaysShowPlayerInventory()</code>
| Show the player hero's inventory in the HUD, regardless of what unit is selected.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.GetAlwaysShowPlayerNames | GetAlwaysShowPlayerNames]]
| <code>bool GetAlwaysShowPlayerNames()</code>
| Get whether player names are always shown, regardless of client setting.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.GetAnnouncerDisabled | GetAnnouncerDisabled]]
| <code>bool GetAnnouncerDisabled()</code>
| Are in-game announcers disabled?
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.GetCameraDistanceOverride | GetCameraDistanceOverride]]
| <code>float GetCameraDistanceOverride()</code>
| Set a different camera distance; dota default is 1134.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.GetCustomAttributeDerivedStatValue | GetCustomAttributeDerivedStatValue]]
| <code>float GetCustomAttributeDerivedStatValue(int nDerivedStatType, handle hHero)</code>
| Get current derived stat value constant.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.GetCustomBackpackCooldownPercent | GetCustomBackpackCooldownPercent]]
| <code>float GetCustomBackpackCooldownPercent()</code>
| Get the current rate cooldown ticks down for items in the backpack.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.GetCustomBackpackSwapCooldown | GetCustomBackpackSwapCooldown]]
| <code>float GetCustomBackpackSwapCooldown()</code>
| Get the current custom backpack swap cooldown.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.GetCustomBuybackCooldownEnabled | GetCustomBuybackCooldownEnabled]]
| <code>bool GetCustomBuybackCooldownEnabled()</code>
| Turns on capability to define custom buyback cooldowns.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.GetCustomBuybackCostEnabled | GetCustomBuybackCostEnabled]]
| <code>bool GetCustomBuybackCostEnabled()</code>
| Turns on capability to define custom buyback costs.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.GetCustomGlyphCooldown | GetCustomGlyphCooldown]]
| <code>float GetCustomGlyphCooldown()</code>
| Get the current custom glyph cooldown.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.GetCustomHeroMaxLevel | GetCustomHeroMaxLevel]]
| <code>int GetCustomHeroMaxLevel()</code>
| Allows definition of the max level heroes can achieve (default is 25).
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.GetCustomScanCooldown | GetCustomScanCooldown]]
| <code>float GetCustomScanCooldown()</code>
| Get the current custom scan cooldown.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.GetFixedRespawnTime | GetFixedRespawnTime]]
| <code>float GetFixedRespawnTime()</code>
| Gets the fixed respawn time.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.GetFogOfWarDisabled | GetFogOfWarDisabled]]
| <code>bool GetFogOfWarDisabled()</code>
| Turn the fog of war on or off.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.GetGoldSoundDisabled | GetGoldSoundDisabled]]
| <code>bool GetGoldSoundDisabled()</code>
| Turn the sound when gold is acquired off/on.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.GetHUDVisible | GetHUDVisible]]
| <code>bool GetHUDVisible(int iElement)</code>
| Returns the HUD element visibility.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.GetMaximumAttackSpeed | GetMaximumAttackSpeed]]
| <code>int GetMaximumAttackSpeed()</code>
| Get the maximum attack speed for units.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.GetMinimumAttackSpeed | GetMinimumAttackSpeed]]
| <code>int GetMinimumAttackSpeed()</code>
| Get the minimum attack speed for units.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.GetRecommendedItemsDisabled | GetRecommendedItemsDisabled]]
| <code>bool GetRecommendedItemsDisabled()</code>
| Turn the panel for showing recommended items at the shop off/on.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.GetRespawnTimeScale | GetRespawnTimeScale]]
| <code>float GetRespawnTimeScale()</code>
| Returns the scale applied to non-fixed respawn times.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.GetStashPurchasingDisabled | GetStashPurchasingDisabled]]
| <code>bool GetStashPurchasingDisabled()</code>
| 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/CDOTABaseGameMode.GetStickyItemDisabled | GetStickyItemDisabled]]
| <code>bool GetStickyItemDisabled()</code>
| Hide the sticky item in the quickbuy.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.GetTopBarTeamValuesOverride | GetTopBarTeamValuesOverride]]
| <code>bool GetTopBarTeamValuesOverride()</code>
| Override the values of the team values on the top game bar.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.GetTopBarTeamValuesVisible | GetTopBarTeamValuesVisible]]
| <code>bool GetTopBarTeamValuesVisible()</code>
| Turning on/off the team values on the top game bar.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.GetTowerBackdoorProtectionEnabled | GetTowerBackdoorProtectionEnabled]]
| <code>bool GetTowerBackdoorProtectionEnabled()</code>
| Gets whether tower backdoor protection is enabled or not.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.GetUseCustomHeroLevels | GetUseCustomHeroLevels]]
| <code>bool GetUseCustomHeroLevels()</code>
| Are custom-defined XP values for hero level ups in use?
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.IsBuybackEnabled | IsBuybackEnabled]]
| <code>bool IsBuybackEnabled()</code>
| Enables or disables buyback completely.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.IsDaynightCycleDisabled | IsDaynightCycleDisabled]]
| <code>bool IsDaynightCycleDisabled()</code>
| Is the day/night cycle disabled?
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.ListenForQueryFailed | ListenForQueryFailed]]
| <code>void ListenForQueryFailed(handle hFunction, handle hContext)</code>
| Set function and context for real time combat analyzer query failed.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.ListenForQueryProgressChanged | ListenForQueryProgressChanged]]
| <code>void ListenForQueryProgressChanged(handle hFunction, handle hContext)</code>
| Set function and context for real time combat analyzer query progress changed.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.ListenForQuerySucceeded | ListenForQuerySucceeded]]
| <code>void ListenForQuerySucceeded(handle hFunction, handle hContext)</code>
| Set function and context for real time combat analyzer query succeeded.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.RemoveRealTimeCombatAnalyzerQuery | RemoveRealTimeCombatAnalyzerQuery]]
| <code>void RemoveRealTimeCombatAnalyzerQuery(int nQueryID)</code>
| Stop tracking a combat analyzer query.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetAbilityTuningValueFilter | SetAbilityTuningValueFilter]]
| <code>void SetAbilityTuningValueFilter(handle hFunction, handle hContext)</code>
| 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/CDOTABaseGameMode.SetAlwaysShowPlayerInventory | SetAlwaysShowPlayerInventory]]
| <code>void SetAlwaysShowPlayerInventory(bool bAlwaysShow)</code>
| Show the player hero's inventory in the HUD, regardless of what unit is selected.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetAlwaysShowPlayerNames | SetAlwaysShowPlayerNames]]
| <code>void SetAlwaysShowPlayerNames(bool bEnabled)</code>
| Set whether player names are always shown, regardless of client setting.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetAnnouncerDisabled | SetAnnouncerDisabled]]
| <code>void SetAnnouncerDisabled(bool bDisabled)</code>
| Mutes the in-game announcer.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetBotThinkingEnabled | SetBotThinkingEnabled]]
| <code>void SetBotThinkingEnabled(bool bEnabled)</code>
| Enables/Disables bots in custom games. Note: this will only work with default heroes in the dota map.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetBotsAlwaysPushWithHuman | SetBotsAlwaysPushWithHuman]]
| <code>void SetBotsAlwaysPushWithHuman(bool bAlwaysPush)</code>
| Set if the bots should try their best to push with a human player.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetBotsInLateGame | SetBotsInLateGame]]
| <code>void SetBotsInLateGame(bool bLateGame)</code>
| Set if bots should enable their late game behavior.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetBotsMaxPushTier | SetBotsMaxPushTier]]
| <code>void SetBotsMaxPushTier(int nMaxTier)</code>
| Set the max tier of tower that bots want to push. (-1 to disable)
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetBountyRunePickupFilter | SetBountyRunePickupFilter]]
| <code>void SetBountyRunePickupFilter(handle hFunction, handle hContext)</code>
| 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/CDOTABaseGameMode.SetBountyRuneSpawnInterval | SetBountyRuneSpawnInterval]]
| <code>void SetBountyRuneSpawnInterval(float flInterval)</code>
| Set bounty rune spawn rate
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetBuybackEnabled | SetBuybackEnabled]]
| <code>void SetBuybackEnabled(bool bEnabled)</code>
| Enables or disables buyback completely.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetCameraDistanceOverride | SetCameraDistanceOverride]]
| <code>void SetCameraDistanceOverride(float flCameraDistanceOverride)</code>
| Set a different camera distance; dota default is 1134.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetCameraSmoothCountOverride | SetCameraSmoothCountOverride]]
| <code>void SetCameraSmoothCountOverride(int nSmoothCount)</code>
| Set a different camera smooth count; dota default is 8.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetCustomAttributeDerivedStatValue | SetCustomAttributeDerivedStatValue]]
| <code>void SetCustomAttributeDerivedStatValue(int nStatType, float flNewValue)</code>
| Modify derived stat value constants. ( AttributeDerivedStat eStatType, float flNewValue.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetCustomBackpackCooldownPercent | SetCustomBackpackCooldownPercent]]
| <code>void SetCustomBackpackCooldownPercent(float flPercent)</code>
| Set the rate cooldown ticks down for items in the backpack.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetCustomBackpackSwapCooldown | SetCustomBackpackSwapCooldown]]
| <code>void SetCustomBackpackSwapCooldown(float flCooldown)</code>
| Set a custom cooldown for swapping items into the backpack.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetCustomBuybackCooldownEnabled | SetCustomBuybackCooldownEnabled]]
| <code>void SetCustomBuybackCooldownEnabled(bool bEnabled)</code>
| Turns on capability to define custom buyback cooldowns.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetCustomBuybackCostEnabled | SetCustomBuybackCostEnabled]]
| <code>void SetCustomBuybackCostEnabled(bool bEnabled)</code>
| Turns on capability to define custom buyback costs.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetCustomGameForceHero | SetCustomGameForceHero]]
| <code>void SetCustomGameForceHero(string pHeroName)</code>
| 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/CDOTABaseGameMode.SetCustomGlyphCooldown | SetCustomGlyphCooldown]]
| <code>void SetCustomGlyphCooldown(float flCooldown)</code>
| Set a custom cooldown for team Glyph ability.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetCustomHeroMaxLevel | SetCustomHeroMaxLevel]]
| <code>void SetCustomHeroMaxLevel(int int_1)</code>
| Allows definition of the max level heroes can achieve (default is 25).
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetCustomScanCooldown | SetCustomScanCooldown]]
| <code>void SetCustomScanCooldown(float flCooldown)</code>
| Set a custom cooldown for team Scan ability.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetCustomTerrainWeatherEffect | SetCustomTerrainWeatherEffect]]
| <code>void SetCustomTerrainWeatherEffect(string pszEffectName)</code>
| 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/CDOTABaseGameMode.SetCustomXPRequiredToReachNextLevel | SetCustomXPRequiredToReachNextLevel]]
| <code>void SetCustomXPRequiredToReachNextLevel(handle hTable)</code>
| Allows definition of a table of hero XP values.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetDamageFilter | SetDamageFilter]]
| <code>void SetDamageFilter(handle hFunction, handle hContext)</code>
| 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/CDOTABaseGameMode.SetDaynightCycleDisabled | SetDaynightCycleDisabled]]
| <code>void SetDaynightCycleDisabled(bool bDisable)</code>
| Enable or disable the day/night cycle.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetDeathOverlayDisabled | SetDeathOverlayDisabled]]
| <code>void SetDeathOverlayDisabled(bool bDisabled)</code>
| Specify whether the full screen death overlay effect plays when the selected hero dies.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetDraftingBanningTimeOverride | SetDraftingBanningTimeOverride]]
| <code>void SetDraftingBanningTimeOverride(float flValue)</code>
| Set drafting hero banning time
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetDraftingHeroPickSelectTimeOverride | SetDraftingHeroPickSelectTimeOverride]]
| <code>void SetDraftingHeroPickSelectTimeOverride(float flValue)</code>
| Set drafting hero pick time
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetExecuteOrderFilter | SetExecuteOrderFilter]]
| <code>void SetExecuteOrderFilter(handle hFunction, handle hContext)</code>
| 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/CDOTABaseGameMode.SetFixedRespawnTime | SetFixedRespawnTime]]
| <code>void SetFixedRespawnTime(float flFixedRespawnTime)</code>
| Set a fixed delay for all players to respawn after.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetFogOfWarDisabled | SetFogOfWarDisabled]]
| <code>void SetFogOfWarDisabled(bool bDisabled)</code>
| Turn the fog of war on or off.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetFountainConstantManaRegen | SetFountainConstantManaRegen]]
| <code>void SetFountainConstantManaRegen(float flConstantManaRegen)</code>
| Set the constant rate that the fountain will regen mana. (-1 for default)
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetFountainPercentageHealthRegen | SetFountainPercentageHealthRegen]]
| <code>void SetFountainPercentageHealthRegen(float flPercentageHealthRegen)</code>
| Set the percentage rate that the fountain will regen health. (-1 for default)
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetFountainPercentageManaRegen | SetFountainPercentageManaRegen]]
| <code>void SetFountainPercentageManaRegen(float flPercentageManaRegen)</code>
| Set the percentage rate that the fountain will regen mana. (-1 for default)
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetFreeCourierModeEnabled | SetFreeCourierModeEnabled]]
| <code>void SetFreeCourierModeEnabled(bool bEnabled)</code>
| If set to true, enable 7.23 free courier mode.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetFriendlyBuildingMoveToEnabled | SetFriendlyBuildingMoveToEnabled]]
| <code>void SetFriendlyBuildingMoveToEnabled(bool bEnabled)</code>
| Allows clicks on friendly buildings to be handled normally.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetGoldSoundDisabled | SetGoldSoundDisabled]]
| <code>void SetGoldSoundDisabled(bool bDisabled)</code>
| Turn the sound when gold is acquired off/on.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetHUDVisible | SetHUDVisible]]
| <code>void SetHUDVisible(int iHUDElement, bool bVisible)</code>
| Set the HUD element visibility.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetHealingFilter | SetHealingFilter]]
| <code>void SetHealingFilter(handle hFunction, handle hContext)</code>
| 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/CDOTABaseGameMode.SetHudCombatEventsDisabled | SetHudCombatEventsDisabled]]
| <code>void SetHudCombatEventsDisabled(bool bDisabled)</code>
| Specify whether the default combat events will show in the HUD.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetItemAddedToInventoryFilter | SetItemAddedToInventoryFilter]]
| <code>void SetItemAddedToInventoryFilter(handle hFunction, handle hContext)</code>
| 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/CDOTABaseGameMode.SetKillableTombstones | SetKillableTombstones]]
| <code>void SetKillableTombstones(bool bEnabled)</code>
| Set whether tombstones can be channeled to be removed by enemy heroes.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetKillingSpreeAnnouncerDisabled | SetKillingSpreeAnnouncerDisabled]]
| <code>void SetKillingSpreeAnnouncerDisabled(bool bDisabled)</code>
| Mutes the in-game killing spree announcer.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetLoseGoldOnDeath | SetLoseGoldOnDeath]]
| <code>void SetLoseGoldOnDeath(bool bEnabled)</code>
| Use to disable gold loss on death.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetMaximumAttackSpeed | SetMaximumAttackSpeed]]
| <code>void SetMaximumAttackSpeed(int nMaxSpeed)</code>
| Set the maximum attack speed for units.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetMinimumAttackSpeed | SetMinimumAttackSpeed]]
| <code>void SetMinimumAttackSpeed(int nMinSpeed)</code>
| Set the minimum attack speed for units.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetModifierGainedFilter | SetModifierGainedFilter]]
| <code>void SetModifierGainedFilter(handle hFunction, handle hContext)</code>
| Set a filter function to control modifiers that are gained, return false to destroy modifier.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetModifyExperienceFilter | SetModifyExperienceFilter]]
| <code>void SetModifyExperienceFilter(handle hFunction, handle hContext)</code>
| 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/CDOTABaseGameMode.SetModifyGoldFilter | SetModifyGoldFilter]]
| <code>void SetModifyGoldFilter(handle hFunction, handle hContext)</code>
| 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/CDOTABaseGameMode.SetOverrideSelectionEntity | SetOverrideSelectionEntity]]
| <code>void SetOverrideSelectionEntity(handle hOverrideEntity)</code>
| Set an override for the default selection entity, instead of each player's hero.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetPauseEnabled | SetPauseEnabled]]
| <code>void SetPauseEnabled(bool bEnabled)</code>
| Set pausing enabled/disabled
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetPowerRuneSpawnInterval | SetPowerRuneSpawnInterval]]
| <code>void SetPowerRuneSpawnInterval(float flInterval)</code>
| Set power rune spawn rate
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetRecommendedItemsDisabled | SetRecommendedItemsDisabled]]
| <code>void SetRecommendedItemsDisabled(bool bDisabled)</code>
| Turn the panel for showing recommended items at the shop off/on.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetRemoveIllusionsOnDeath | SetRemoveIllusionsOnDeath]]
| <code>void SetRemoveIllusionsOnDeath(bool bRemove)</code>
| Make it so illusions are immediately removed upon death, rather than sticking around for a few seconds.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetRespawnTimeScale | SetRespawnTimeScale]]
| <code>void SetRespawnTimeScale(float flValue)</code>
| Sets the scale applied to non-fixed respawn times. 1 = default DOTA respawn calculations.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetRuneEnabled | SetRuneEnabled]]
| <code>void SetRuneEnabled(int nRune, bool bEnabled)</code>
| Set if a given type of rune is enabled.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetRuneSpawnFilter | SetRuneSpawnFilter]]
| <code>void SetRuneSpawnFilter(handle hFunction, handle hContext)</code>
| 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/CDOTABaseGameMode.SetSelectionGoldPenaltyEnabled | SetSelectionGoldPenaltyEnabled]]
| <code>void SetSelectionGoldPenaltyEnabled(bool bEnabled)</code>
| Enable/disable gold penalty for late picking.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetStashPurchasingDisabled | SetStashPurchasingDisabled]]
| <code>void SetStashPurchasingDisabled(bool bDisabled)</code>
| 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/CDOTABaseGameMode.SetStickyItemDisabled | SetStickyItemDisabled]]
| <code>void SetStickyItemDisabled(bool bDisabled)</code>
| Hide the sticky item in the quickbuy.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetTopBarTeamValue | SetTopBarTeamValue]]
| <code>void SetTopBarTeamValue(int iTeam, int nValue)</code>
| Set the team values on the top game bar.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetTopBarTeamValuesOverride | SetTopBarTeamValuesOverride]]
| <code>void SetTopBarTeamValuesOverride(bool bOverride)</code>
| Override the values of the team values on the top game bar.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetTopBarTeamValuesVisible | SetTopBarTeamValuesVisible]]
| <code>void SetTopBarTeamValuesVisible(bool bVisible)</code>
| Turning on/off the team values on the top game bar.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetTowerBackdoorProtectionEnabled | SetTowerBackdoorProtectionEnabled]]
| <code>void SetTowerBackdoorProtectionEnabled(bool bEnabled)</code>
| Enables/Disables tower backdoor protection.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetTrackingProjectileFilter | SetTrackingProjectileFilter]]
| <code>void SetTrackingProjectileFilter(handle hFunction, handle hContext)</code>
| 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/CDOTABaseGameMode.SetUnseenFogOfWarEnabled | SetUnseenFogOfWarEnabled]]
| <code>void SetUnseenFogOfWarEnabled(bool bEnabled)</code>
| 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/CDOTABaseGameMode.SetUseCustomHeroLevels | SetUseCustomHeroLevels]]
| <code>void SetUseCustomHeroLevels(bool bEnabled)</code>
| 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/CDOTABaseGameMode.SetUseDefaultDOTARuneSpawnLogic | SetUseDefaultDOTARuneSpawnLogic]]
| <code>void SetUseDefaultDOTARuneSpawnLogic(bool bEnabled)</code>
| If set to true, use current rune spawn rules.  Either setting respects custom spawn intervals.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTABaseGameMode.SetWeatherEffectsDisabled | SetWeatherEffectsDisabled]]
| <code>void SetWeatherEffectsDisabled(bool bDisable)</code>
| Set if weather effects are disabled.
|}


''void'' '''ResetDefeated'''()
==== CDOTAGameManager ====
Restart after killing the ancient, etc.
''No Description Set''
{| class="standard-table" style="width: 100%;"
! Function
! Signature
! Description
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGameManager.GetHeroDataByName_Script | GetHeroDataByName_Script]]
| <code>table GetHeroDataByName_Script(string string_1)</code>
| Get the hero unit 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGameManager.GetHeroIDByName | GetHeroIDByName]]
| <code>int GetHeroIDByName(string string_1)</code>
| Get the hero ID given the hero name.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGameManager.GetHeroNameByID | GetHeroNameByID]]
| <code>string GetHeroNameByID(int int_1)</code>
| Get the hero name given a hero ID.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGameManager.GetHeroNameForUnitName | GetHeroNameForUnitName]]
| <code>string GetHeroNameForUnitName(string string_1)</code>
| Get the hero name given a unit name.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGameManager.GetHeroUnitNameByID | GetHeroUnitNameByID]]
| <code>string GetHeroUnitNameByID(int int_1)</code>
| Get the hero unit name given the hero ID.  
|}


''int'' '''GetNianTotalDamageTaken'''()
==== CDOTAGamerules ====
For New Bloom, get total damage taken by the Nian / Year Beast
''Global accessor variable: <code>GameRules</code>''
{| class="standard-table" style="width: 100%;"
! Function
! Signature
! Description
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.AddBotPlayerWithEntityScript | AddBotPlayerWithEntityScript]]
| <code>handle AddBotPlayerWithEntityScript(string string_1, string string_2, int int_3, string string_4)</code>
| Spawn a bot player of the passed hero name, player name, and team.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.AddEventMetadataLeaderboardEntry | AddEventMetadataLeaderboardEntry]]
| <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>
| Event-only ( string szNameSuffix, int nStars, int nMaxStars, int nExtraData1, int nExtraData2 )
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.AddItemToWhiteList | AddItemToWhiteList]]
| <code>void AddItemToWhiteList(string string_1)</code>
| Add an item to the whitelist
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.AddMinimapDebugPoint | AddMinimapDebugPoint]]
| <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>
| Add a point on the minimap.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.AddMinimapDebugPointForTeam | AddMinimapDebugPointForTeam]]
| <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>
| Add a point on the minimap for a specific team.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.BeginNightstalkerNight | BeginNightstalkerNight]]
| <code>void BeginNightstalkerNight(float float_1)</code>
| Begin night stalker night.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.BeginTemporaryNight | BeginTemporaryNight]]
| <code>void BeginTemporaryNight(float float_1)</code>
| Begin temporary night.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.BotPopulate | BotPopulate]]
| <code>void BotPopulate()</code>
| Fills all the teams with bots if cheat mode is enabled.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.Defeated | Defeated]]
| <code>void Defeated()</code>
| Kills the ancient, etc.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.DidMatchSignoutTimeOut | DidMatchSignoutTimeOut]]
| <code>bool DidMatchSignoutTimeOut()</code>
| true when we have waited some time after end of the game and not received signout
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.EnableCustomGameSetupAutoLaunch | EnableCustomGameSetupAutoLaunch]]
| <code>void EnableCustomGameSetupAutoLaunch(bool bool_1)</code>
| Enabled (true) or disable (false) auto launch for custom game setup.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.FinishCustomGameSetup | FinishCustomGameSetup]]
| <code>void FinishCustomGameSetup()</code>
| Indicate that the custom game setup phase is complete, and advance to the game.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.ForceCreepSpawn | ForceCreepSpawn]]
| <code>void ForceCreepSpawn()</code>
| Spawn the next wave of creeps.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.ForceGameStart | ForceGameStart]]
| <code>void ForceGameStart()</code>
| Transition game state to DOTA_GAMERULES_STATE_GAME_IN_PROGRESS
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.GetCustomGameDifficulty | GetCustomGameDifficulty]]
| <code>int GetCustomGameDifficulty()</code>
| Returns the difficulty level of the custom game mode
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.GetCustomGameTeamMaxPlayers | GetCustomGameTeamMaxPlayers]]
| <code>int GetCustomGameTeamMaxPlayers(int int_1)</code>
| Get whether a team is selectable during game setup
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.GetDOTATime | GetDOTATime]]
| <code>float GetDOTATime(bool bool_1, bool bool_2)</code>
| (b IncludePregameTime b IncludeNegativeTime) Returns the actual DOTA in-game clock time.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.GetDifficulty | GetDifficulty]]
| <code>int GetDifficulty()</code>
| Returns difficulty level of the custom game mode
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.GetDroppedItem | GetDroppedItem]]
| <code>handle GetDroppedItem(int int_1)</code>
| Gets the Xth dropped item
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.GetGameFrameTime | GetGameFrameTime]]
| <code>float GetGameFrameTime()</code>
| Returns the number of seconds elapsed since the last frame was renderered. This time doesn't count up when the game is paused
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.GetGameModeEntity | GetGameModeEntity]]
| <code>handle GetGameModeEntity()</code>
| Get the game mode entity
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.GetGameSessionConfigValue | GetGameSessionConfigValue]]
| <code>string GetGameSessionConfigValue(string string_1, string string_2)</code>
| Get a string value from the game session config (map options)
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.GetGameTime | GetGameTime]]
| <code>float GetGameTime()</code>
| Returns the number of seconds elapsed since map start. This time doesn't count up when the game is paused
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.GetMatchID | GetMatchID]]
| <code>uint64 GetMatchID()</code>
| Get the MatchID for this game.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.GetMatchSignoutComplete | GetMatchSignoutComplete]]
| <code>bool GetMatchSignoutComplete()</code>
| Have we received the post match signout message that includes reward information
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.GetNianTotalDamageTaken | GetNianTotalDamageTaken]]
| <code>int GetNianTotalDamageTaken()</code>
| For New Bloom, get total damage taken by the Nian / Year Beast  
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.GetPlayerCustomGameAccountRecord | GetPlayerCustomGameAccountRecord]]
| <code>table GetPlayerCustomGameAccountRecord(int int_1)</code>
| (Preview/Unreleased) Gets the player's custom game account record, as it looked at the start of this session
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.GetStateTransitionTime | GetStateTransitionTime]]
| <code>float GetStateTransitionTime()</code>
| Get time remaining between state changes.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.GetTimeOfDay | GetTimeOfDay]]
| <code>float GetTimeOfDay()</code>
| Get the time of day
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.GetWeatherWindDirection | GetWeatherWindDirection]]
| <code>Vector GetWeatherWindDirection()</code>
| Get Weather Wind Direction Vector
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.IsCheatMode | IsCheatMode]]
| <code>bool IsCheatMode()</code>
| Are cheats enabled on the server
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.IsDaytime | IsDaytime]]
| <code>bool IsDaytime()</code>
| Is it day time?
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.IsGamePaused | IsGamePaused]]
| <code>bool IsGamePaused()</code>
| Returns whether the game is paused.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.IsHeroRespawnEnabled | IsHeroRespawnEnabled]]
| <code>bool IsHeroRespawnEnabled()</code>
| Returns whether hero respawn is enabled.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.IsInBanPhase | IsInBanPhase]]
| <code>bool IsInBanPhase()</code>
| Are we in the ban phase of hero pick?
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.IsItemInWhiteList | IsItemInWhiteList]]
| <code>bool IsItemInWhiteList(string string_1)</code>
| Query an item in the whitelist
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.IsNightstalkerNight | IsNightstalkerNight]]
| <code>bool IsNightstalkerNight()</code>
| Is it night stalker night-time?
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.IsTemporaryNight | IsTemporaryNight]]
| <code>bool IsTemporaryNight()</code>
| Is it temporarily night-time?
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.LockCustomGameSetupTeamAssignment | LockCustomGameSetupTeamAssignment]]
| <code>void LockCustomGameSetupTeamAssignment(bool bool_1)</code>
| Lock (true) or unlock (false) team assignemnt. If team assignment is locked players cannot change teams.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.MakeTeamLose | MakeTeamLose]]
| <code>void MakeTeamLose(int int_1)</code>
| Makes the specified team lose
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.NumDroppedItems | NumDroppedItems]]
| <code>int NumDroppedItems()</code>
| Returns the number of items currently dropped on the ground
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.PlayerHasCustomGameHostPrivileges | PlayerHasCustomGameHostPrivileges]]
| <code>bool PlayerHasCustomGameHostPrivileges(handle handle_1)</code>
| Whether a player has custom game host privileges (shuffle teams, etc.)
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.Playtesting_UpdateAddOnKeyValues | Playtesting_UpdateAddOnKeyValues]]
| <code>void Playtesting_UpdateAddOnKeyValues()</code>
| Updates custom hero, unit and ability KeyValues in memory with the latest values from disk
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.PrepareSpawners | PrepareSpawners]]
| <code>void PrepareSpawners(float float_1)</code>
| Prepare Dota lane style spawners with a given interval
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.RemoveItemFromWhiteList | RemoveItemFromWhiteList]]
| <code>void RemoveItemFromWhiteList(string string_1)</code>
| Remove an item from the whitelist
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.ResetDefeated | ResetDefeated]]
| <code>void ResetDefeated()</code>
| Restart after killing the ancient, etc.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.ResetGameTime | ResetGameTime]]
| <code>void ResetGameTime()</code>
| Restart gametime from 0
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.ResetToCustomGameSetup | ResetToCustomGameSetup]]
| <code>void ResetToCustomGameSetup()</code>
| Restart at custom game setup.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.ResetToHeroSelection | ResetToHeroSelection]]
| <code>void ResetToHeroSelection()</code>
| Restart the game at hero selection
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.SendCustomMessage | SendCustomMessage]]
| <code>void SendCustomMessage(string string_1, int int_2, int int_3)</code>
| Sends a message on behalf of a player.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.SendCustomMessageToTeam | SendCustomMessageToTeam]]
| <code>void SendCustomMessageToTeam(string string_1, int int_2, int int_3, int int_4)</code>
| Sends a message on behalf of a player to the specified team.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.SetCreepMinimapIconScale | SetCreepMinimapIconScale]]
| <code>void SetCreepMinimapIconScale(float float_1)</code>
| (flMinimapCreepIconScale) - Scale the creep icons on the minimap.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.SetCreepSpawningEnabled | SetCreepSpawningEnabled]]
| <code>void SetCreepSpawningEnabled(bool bool_1)</code>
| Sets whether the regular Dota creeps spawn.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.SetCustomGameAccountRecordSaveFunction | SetCustomGameAccountRecordSaveFunction]]
| <code>void SetCustomGameAccountRecordSaveFunction(handle handle_1, handle handle_2)</code>
| (Preview/Unreleased) Sets a callback to handle saving custom game account records (callback is passed a Player ID and should return a flat simple table)
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.SetCustomGameAllowBattleMusic | SetCustomGameAllowBattleMusic]]
| <code>void SetCustomGameAllowBattleMusic(bool bool_1)</code>
| Sets a flag to enable/disable the default music handling code for custom games
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.SetCustomGameAllowHeroPickMusic | SetCustomGameAllowHeroPickMusic]]
| <code>void SetCustomGameAllowHeroPickMusic(bool bool_1)</code>
| Sets a flag to enable/disable the default music handling code for custom games
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.SetCustomGameAllowMusicAtGameStart | SetCustomGameAllowMusicAtGameStart]]
| <code>void SetCustomGameAllowMusicAtGameStart(bool bool_1)</code>
| Sets a flag to enable/disable the default music handling code for custom games
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.SetCustomGameDifficulty | SetCustomGameDifficulty]]
| <code>void SetCustomGameDifficulty(int int_1)</code>
| Set the difficulty level of the custom game mode
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.SetCustomGameEndDelay | SetCustomGameEndDelay]]
| <code>void SetCustomGameEndDelay(float float_1)</code>
| Sets the game end delay.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.SetCustomGameSetupAutoLaunchDelay | SetCustomGameSetupAutoLaunchDelay]]
| <code>void SetCustomGameSetupAutoLaunchDelay(float float_1)</code>
| Set the amount of time to wait for auto launch.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.SetCustomGameSetupRemainingTime | SetCustomGameSetupRemainingTime]]
| <code>void SetCustomGameSetupRemainingTime(float float_1)</code>
| Set the amount of remaining time, in seconds, for custom game setup. 0 = finish immediately, -1 = wait forever
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.SetCustomGameSetupTimeout | SetCustomGameSetupTimeout]]
| <code>void SetCustomGameSetupTimeout(float float_1)</code>
| Setup (pre-gameplay) phase timeout. 0 = instant, -1 = forever (until FinishCustomGameSetup is called)
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.SetCustomGameTeamMaxPlayers | SetCustomGameTeamMaxPlayers]]
| <code>void SetCustomGameTeamMaxPlayers(int int_1, int int_2)</code>
| Set whether a team is selectable during game setup
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.SetCustomVictoryMessage | SetCustomVictoryMessage]]
| <code>void SetCustomVictoryMessage(string string_1)</code>
| Sets the victory message.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.SetCustomVictoryMessageDuration | SetCustomVictoryMessageDuration]]
| <code>void SetCustomVictoryMessageDuration(float float_1)</code>
| Sets the victory message duration.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.SetEventMetadataCustomTable | SetEventMetadataCustomTable]]
| <code>bool SetEventMetadataCustomTable(handle handle_1)</code>
| Event-only ( table hMetadataTable )
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.SetEventSignoutCustomTable | SetEventSignoutCustomTable]]
| <code>bool SetEventSignoutCustomTable(handle handle_1)</code>
| Event-only ( table hMetadataTable )
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.SetFirstBloodActive | SetFirstBloodActive]]
| <code>void SetFirstBloodActive(bool bool_1)</code>
| Sets whether First Blood has been triggered.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.SetGameWinner | SetGameWinner]]
| <code>void SetGameWinner(int int_1)</code>
| Makes the specified team win
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.SetGoldPerTick | SetGoldPerTick]]
| <code>void SetGoldPerTick(int int_1)</code>
| Set the auto gold increase per timed interval.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.SetGoldTickTime | SetGoldTickTime]]
| <code>void SetGoldTickTime(float float_1)</code>
| Set the time interval between auto gold increases.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.SetHeroMinimapIconScale | SetHeroMinimapIconScale]]
| <code>void SetHeroMinimapIconScale(float float_1)</code>
| (flMinimapHeroIconScale) - Scale the hero minimap icons on the minimap.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.SetHeroRespawnEnabled | SetHeroRespawnEnabled]]
| <code>void SetHeroRespawnEnabled(bool bool_1)</code>
| Control if the normal DOTA hero respawn rules apply.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.SetHeroSelectPenaltyTime | SetHeroSelectPenaltyTime]]
| <code>void SetHeroSelectPenaltyTime(float float_1)</code>
| Sets amount of penalty time before randoming a hero
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.SetHeroSelectionTime | SetHeroSelectionTime]]
| <code>void SetHeroSelectionTime(float float_1)</code>
| Sets the amount of time players have to pick their hero.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.SetHideKillMessageHeaders | SetHideKillMessageHeaders]]
| <code>void SetHideKillMessageHeaders(bool bool_1)</code>
| Sets whether the multikill, streak, and first-blood banners appear at the top of the screen.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.SetOverlayHealthBarUnit | SetOverlayHealthBarUnit]]
| <code>void SetOverlayHealthBarUnit(handle handle_1, int int_2)</code>
| Show this unit's health on the overlay health bar
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.SetPostGameTime | SetPostGameTime]]
| <code>void SetPostGameTime(float float_1)</code>
| Sets the amount of time players have between the game ending and the server disconnecting them.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.SetPreGameTime | SetPreGameTime]]
| <code>void SetPreGameTime(float float_1)</code>
| Sets the amount of time players have between picking their hero and game start.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.SetRuneMinimapIconScale | SetRuneMinimapIconScale]]
| <code>void SetRuneMinimapIconScale(float float_1)</code>
| (flMinimapRuneIconScale) - Scale the rune icons on the minimap.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.SetRuneSpawnTime | SetRuneSpawnTime]]
| <code>void SetRuneSpawnTime(float float_1)</code>
| Sets the amount of time between rune spawns.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.SetSafeToLeave | SetSafeToLeave]]
| <code>void SetSafeToLeave(bool bool_1)</code>
| (bSafeToLeave) - Mark this game as safe to leave.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.SetSameHeroSelectionEnabled | SetSameHeroSelectionEnabled]]
| <code>void SetSameHeroSelectionEnabled(bool bool_1)</code>
| When true, players can repeatedly pick the same hero.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.SetShowcaseTime | SetShowcaseTime]]
| <code>void SetShowcaseTime(float float_1)</code>
| Sets the amount of time players have between the strategy phase and entering the pre-game phase.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.SetStartingGold | SetStartingGold]]
| <code>void SetStartingGold(int int_1)</code>
| Set the starting gold amount.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.SetStrategyTime | SetStrategyTime]]
| <code>void SetStrategyTime(float float_1)</code>
| Sets the amount of time players have between the hero selection and entering the showcase phase.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.SetTimeOfDay | SetTimeOfDay]]
| <code>void SetTimeOfDay(float float_1)</code>
| Set the time of day.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.SetTreeRegrowTime | SetTreeRegrowTime]]
| <code>void SetTreeRegrowTime(float float_1)</code>
| Sets the tree regrow time in seconds.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.SetUseBaseGoldBountyOnHeroes | SetUseBaseGoldBountyOnHeroes]]
| <code>void SetUseBaseGoldBountyOnHeroes(bool bool_1)</code>
| Heroes will use the basic NPC functionality for determining their bounty, rather than DOTA specific formulas.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.SetUseCustomHeroXPValues | SetUseCustomHeroXPValues]]
| <code>void SetUseCustomHeroXPValues(bool bool_1)</code>
| Allows heroes in the map to give a specific amount of XP (this value must be set).
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.SetUseUniversalShopMode | SetUseUniversalShopMode]]
| <code>void SetUseUniversalShopMode(bool bool_1)</code>
| When true, all items are available at as long as any shop is in range.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.SetWeatherWindDirection | SetWeatherWindDirection]]
| <code>void SetWeatherWindDirection(Vector Vector_1)</code>
| Set Weather Wind Direction Vector
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.SetWhiteListEnabled | SetWhiteListEnabled]]
| <code>void SetWhiteListEnabled(bool bool_1)</code>
| Item whitelist functionality enable/disable
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.SpawnAndReleaseCreeps | SpawnAndReleaseCreeps]]
| <code>void SpawnAndReleaseCreeps()</code>
| Spawn and release the next creep wave from Dota lane style spawners.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAGamerules.State_Get | State_Get]]
| <code>int State_Get()</code>
| Get the current Gamerules state
|}


''void'' '''SetHeroRespawnEnabled'''(''bool'')
==== CDOTAPlayer ====
Control if the normal DOTA hero respawn rules apply.
:::::extends [[#CBaseAnimating|CBaseAnimating]]
''No Description Set''
{| class="standard-table" style="width: 100%;"
! Function
! Signature
! Description
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAPlayer.CheckForCourierSpawning | CheckForCourierSpawning]]
| <code>void CheckForCourierSpawning(handle hHero)</code>
| Attempt to spawn the appropriate couriers for this mode.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAPlayer.GetAssignedHero | GetAssignedHero]]
| <code>handle GetAssignedHero()</code>
| Get the player's hero.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAPlayer.GetPlayerID | GetPlayerID]]
| <code>int GetPlayerID()</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]]
| <code>void MakeRandomHeroSelection()</code>
| Randoms this player's hero.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAPlayer.SetAssignedHeroEntity | SetAssignedHeroEntity]]
| <code>void SetAssignedHeroEntity(handle hHero)</code>
| Sets this player's hero .
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAPlayer.SetKillCamUnit | SetKillCamUnit]]
| <code>void SetKillCamUnit(handle hEntity)</code>
| Set the kill cam unit for this hero.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAPlayer.SetMusicStatus | SetMusicStatus]]
| <code>void SetMusicStatus(int nMusicStatus, float flIntensity)</code>
| (nMusicStatus, flIntensity) - Set the music status for this player, note this will only really apply if dota_music_battle_enable is off.  
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAPlayer.SetSelectedHero | SetSelectedHero]]
| <code>void SetSelectedHero(string pszHeroName)</code>
| Sets this player's hero selection.
|}


''void'' '''SetGameWinner'''(''int'')
==== CDOTATutorial ====
Makes ths specified team win
''Global accessor variable: <code>Tutorial</code>''
{| class="standard-table" style="width: 100%;"
! Function
! Signature
! Description
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTATutorial.AddBot | AddBot]]
| <code>bool AddBot(string string_1, string string_2, string string_3, bool bool_4)</code>
| Add a computer controlled bot.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTATutorial.AddQuest | AddQuest]]
| <code>void AddQuest(string string_1, int int_2, string string_3, string string_4)</code>
| Add a quest to the quest log
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTATutorial.AddShopWhitelistItem | AddShopWhitelistItem]]
| <code>void AddShopWhitelistItem(string string_1)</code>
| Add an item to the shop whitelist.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTATutorial.CompleteQuest | CompleteQuest]]
| <code>void CompleteQuest(string string_1)</code>
| Complete a quest,
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTATutorial.CreateLocationTask | CreateLocationTask]]
| <code>void CreateLocationTask(Vector Vector_1)</code>
| Add a task to move to a specific location
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTATutorial.EnableCreepAggroViz | EnableCreepAggroViz]]
| <code>void EnableCreepAggroViz(bool bool_1)</code>
| Alert the player when a creep becomes agro to their hero.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTATutorial.EnablePlayerOffscreenTip | EnablePlayerOffscreenTip]]
| <code>void EnablePlayerOffscreenTip(bool bool_1)</code>
| Enable the tip to alert players how to find their hero.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTATutorial.EnableTowerAggroViz | EnableTowerAggroViz]]
| <code>void EnableTowerAggroViz(bool bool_1)</code>
| Alert the player when a tower becomes agro to their hero.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTATutorial.FinishTutorial | FinishTutorial]]
| <code>void FinishTutorial()</code>
| End the tutorial.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTATutorial.ForceGameStart | ForceGameStart]]
| <code>void ForceGameStart()</code>
| Force the start of the game.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTATutorial.GetTimeFrozen | GetTimeFrozen]]
| <code>bool GetTimeFrozen()</code>
| Is our time frozen?
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTATutorial.IsItemInWhiteList | IsItemInWhiteList]]
| <code>bool IsItemInWhiteList(string string_1)</code>
| Is this item currently in the white list.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTATutorial.RemoveShopWhitelistItem | RemoveShopWhitelistItem]]
| <code>void RemoveShopWhitelistItem(string string_1)</code>
| Remove an item from the shop whitelist.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTATutorial.SelectHero | SelectHero]]
| <code>void SelectHero(string string_1)</code>
| Select a hero for the local player
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTATutorial.SelectPlayerTeam | SelectPlayerTeam]]
| <code>void SelectPlayerTeam(string string_1)</code>
| Select the team for the local player
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTATutorial.SetItemGuide | SetItemGuide]]
| <code>void SetItemGuide(string string_1)</code>
| Set the current item guide.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTATutorial.SetOrModifyPlayerGold | SetOrModifyPlayerGold]]
| <code>void SetOrModifyPlayerGold(int int_1, bool bool_2)</code>
| Set gold amount for the tutorial player. (int) GoldAmount, (bool) true=Set, false=Modify
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTATutorial.SetQuickBuy | SetQuickBuy]]
| <code>void SetQuickBuy(string string_1)</code>
| Set players quick buy item.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTATutorial.SetShopOpen | SetShopOpen]]
| <code>void SetShopOpen(bool bool_1)</code>
| Set the shop open or closed.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTATutorial.SetTimeFrozen | SetTimeFrozen]]
| <code>void SetTimeFrozen(bool bool_1)</code>
| Set if we should freeze time or not.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTATutorial.SetTutorialConvar | SetTutorialConvar]]
| <code>void SetTutorialConvar(string string_1, string string_2)</code>
| Set a tutorial convar
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTATutorial.SetTutorialUI | SetTutorialUI]]
| <code>void SetTutorialUI(int int_1)</code>
| Set the UI to use a reduced version to focus attention to specific elements.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTATutorial.SetWhiteListEnabled | SetWhiteListEnabled]]
| <code>void SetWhiteListEnabled(bool bool_1)</code>
| Set if we should whitelist shop items.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTATutorial.StartTutorialMode | StartTutorialMode]]
| <code>void StartTutorialMode()</code>
| Initialize Tutorial Mode
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTATutorial.UpgradePlayerAbility | UpgradePlayerAbility]]
| <code>void UpgradePlayerAbility(string string_1)</code>
| Upgrade a specific ability for the local hero
|}


''void'' '''SetHeroSelectionTime'''(''float'')
==== CDOTAVoteSystem ====
Sets the amount of time players have to pick their hero.
''No Description Set''
{| class="standard-table" style="width: 100%;"
! Function
! Signature
! Description
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTAVoteSystem.StartVote | StartVote]]
| <code>void StartVote(handle handle_1)</code>
| Starts a vote, based upon a table of parameters
|}


''void'' '''SetUseUniversalShopMode'''(''bool'')
==== CDOTA_Ability_Animation_Attack ====
When true, all items are available at as long as any shop is in range.
:::::extends [[#CDOTABaseAbility|CDOTABaseAbility]]
''No Description Set''
{| class="standard-table" style="width: 100%;"
! Function
! Signature
! Description
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Ability_Animation_Attack.SetPlaybackRate | SetPlaybackRate]]
| <code>void SetPlaybackRate(float flRate)</code>
| Override playbackrate
|}


''void'' '''SetCustomGameDifficulty'''(''int'')
==== CDOTA_Ability_Animation_TailSpin ====
Set the difficulty level of the custom game mode
:::::extends [[#CDOTABaseAbility|CDOTABaseAbility]]
''No Description Set''
{| class="standard-table" style="width: 100%;"
! Function
! Signature
! Description
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Ability_Animation_TailSpin.SetPlaybackRate | SetPlaybackRate]]
| <code>void SetPlaybackRate(float flRate)</code>
| Override playbackrate
|}


''void'' '''SetUseCustomHeroXPValues'''(''bool'')
==== CDOTA_Ability_DataDriven ====
Allows heroes in the map to give a specific amount of XP (this value must be set).
:::::extends [[#CDOTABaseAbility|CDOTABaseAbility]]
''No Description Set''
{| class="standard-table" style="width: 100%;"
! Function
! Signature
! Description
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Ability_DataDriven.ApplyDataDrivenModifier | ApplyDataDrivenModifier]]
| <code>handle ApplyDataDrivenModifier(handle hCaster, handle hTarget, string pszModifierName, handle hModifierTable)</code>
| Applies a data driven modifier to the target
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Ability_DataDriven.ApplyDataDrivenThinker | ApplyDataDrivenThinker]]
| <code>handle ApplyDataDrivenThinker(handle hCaster, Vector vLocation, string pszModifierName, handle hModifierTable)</code>
| Applies a data driven thinker at the location
|}


''void'' '''Playtesting_UpdateAddOnKeyValues'''()
==== CDOTA_Ability_Lua ====
Updates custom hero, unit and ability KeyValues in memory with the latest values from disk
:::::extends [[#CDOTABaseAbility|CDOTABaseAbility]]
''No Description Set''
{| class="standard-table" style="width: 100%;"
! Function
! Signature
! Description
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Ability_Lua.CastFilterResult | CastFilterResult]]
| <code>int CastFilterResult()</code>
| Determine whether an issued command with no target is valid.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Ability_Lua.CastFilterResultLocation | CastFilterResultLocation]]
| <code>int CastFilterResultLocation(Vector vLocation)</code>
| (Vector vLocation) Determine whether an issued command on a location is valid.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Ability_Lua.CastFilterResultTarget | CastFilterResultTarget]]
| <code>int CastFilterResultTarget(handle hTarget)</code>
| (HSCRIPT hTarget) Determine whether an issued command on a target is valid.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Ability_Lua.GetAOERadius | GetAOERadius]]
| <code>float GetAOERadius()</code>
| Controls the size of the AOE casting cursor.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Ability_Lua.GetAssociatedPrimaryAbilities | GetAssociatedPrimaryAbilities]]
| <code>string GetAssociatedPrimaryAbilities()</code>
| Returns abilities that are stolen simultaneously, or otherwise related in functionality.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Ability_Lua.GetAssociatedSecondaryAbilities | GetAssociatedSecondaryAbilities]]
| <code>string GetAssociatedSecondaryAbilities()</code>
| Returns other abilities that are stolen simultaneously, or otherwise related in functionality.  Generally hidden abilities.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Ability_Lua.GetBehavior | GetBehavior]]
| <code>int GetBehavior()</code>
| Return cast behavior type of this ability.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Ability_Lua.GetCastAnimation | GetCastAnimation]]
| <code>int GetCastAnimation()</code>
| Return casting animation of this ability.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Ability_Lua.GetCastPoint | GetCastPoint]]
| <code>float GetCastPoint()</code>
| Return cast point of this ability.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Ability_Lua.GetCastRange | GetCastRange]]
| <code>int GetCastRange(Vector vLocation, handle hTarget)</code>
| Return cast range of this ability.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Ability_Lua.GetChannelAnimation | GetChannelAnimation]]
| <code>int GetChannelAnimation()</code>
| Return channel animation of this ability.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Ability_Lua.GetChannelTime | GetChannelTime]]
| <code>float GetChannelTime()</code>
| Return the channel time of this ability.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Ability_Lua.GetChannelledManaCostPerSecond | GetChannelledManaCostPerSecond]]
| <code>int GetChannelledManaCostPerSecond(int iLevel)</code>
| Return mana cost at the given level per second while channeling (-1 is current).
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Ability_Lua.GetConceptRecipientType | GetConceptRecipientType]]
| <code>int GetConceptRecipientType()</code>
| Return who hears speech when this spell is cast.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Ability_Lua.GetCooldown | GetCooldown]]
| <code>float GetCooldown(int iLevel)</code>
| Return cooldown of this ability.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Ability_Lua.GetCustomCastError | GetCustomCastError]]
| <code>string GetCustomCastError()</code>
| Return the error string of a failed command with no target.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Ability_Lua.GetCustomCastErrorLocation | GetCustomCastErrorLocation]]
| <code>string GetCustomCastErrorLocation(Vector vLocation)</code>
| (Vector vLocation) Return the error string of a failed command on a location.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Ability_Lua.GetCustomCastErrorTarget | GetCustomCastErrorTarget]]
| <code>string GetCustomCastErrorTarget(handle hTarget)</code>
| (HSCRIPT hTarget) Return the error string of a failed command on a target.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Ability_Lua.GetGoldCost | GetGoldCost]]
| <code>int GetGoldCost(int iLevel)</code>
| Return gold cost at the given level (-1 is current).
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Ability_Lua.GetIntrinsicModifierName | GetIntrinsicModifierName]]
| <code>string GetIntrinsicModifierName()</code>
| Returns the name of the modifier applied passively by this ability.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Ability_Lua.GetManaCost | GetManaCost]]
| <code>int GetManaCost(int iLevel)</code>
| Return mana cost at the given level (-1 is current).
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Ability_Lua.GetPlaybackRateOverride | GetPlaybackRateOverride]]
| <code>float GetPlaybackRateOverride()</code>
| Return the animation rate of the cast animation.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Ability_Lua.IsHiddenAbilityCastable | IsHiddenAbilityCastable]]
| <code>bool IsHiddenAbilityCastable()</code>
| Returns true if this ability can be used when not on the action panel.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Ability_Lua.IsHiddenWhenStolen | IsHiddenWhenStolen]]
| <code>bool IsHiddenWhenStolen()</code>
| Returns true if this ability is hidden when stolen by Spell Steal.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Ability_Lua.IsRefreshable | IsRefreshable]]
| <code>bool IsRefreshable()</code>
| Returns true if this ability is refreshed by Refresher Orb.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Ability_Lua.IsStealable | IsStealable]]
| <code>bool IsStealable()</code>
| Returns true if this ability can be stolen by Spell Steal.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Ability_Lua.OnAbilityPhaseInterrupted | OnAbilityPhaseInterrupted]]
| <code>void OnAbilityPhaseInterrupted()</code>
| Cast time did not complete successfully.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Ability_Lua.OnAbilityPhaseStart | OnAbilityPhaseStart]]
| <code>bool OnAbilityPhaseStart()</code>
| Cast time begins (return true for successful cast).
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Ability_Lua.OnAbilityPinged | OnAbilityPinged]]
| <code>void OnAbilityPinged(int nPlayerID, bool bCtrlHeld)</code>
| The ability was pinged (nPlayerID, bCtrlHeld).
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Ability_Lua.OnChannelFinish | OnChannelFinish]]
| <code>void OnChannelFinish(bool bInterrupted)</code>
| (bool bInterrupted) Channel finished.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Ability_Lua.OnChannelThink | OnChannelThink]]
| <code>void OnChannelThink(float flInterval)</code>
| (float flInterval) Channeling is taking place.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Ability_Lua.OnHeroCalculateStatBonus | OnHeroCalculateStatBonus]]
| <code>void OnHeroCalculateStatBonus()</code>
| Caster (hero only) gained a level, skilled an ability, or received a new stat bonus.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Ability_Lua.OnHeroDiedNearby | OnHeroDiedNearby]]
| <code>void OnHeroDiedNearby(handle unit, handle attacker, handle table)</code>
| A hero has died in the vicinity (ie Urn), takes table of params.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Ability_Lua.OnHeroLevelUp | OnHeroLevelUp]]
| <code>void OnHeroLevelUp()</code>
| Caster gained a level.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Ability_Lua.OnInventoryContentsChanged | OnInventoryContentsChanged]]
| <code>void OnInventoryContentsChanged()</code>
| Caster inventory changed.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Ability_Lua.OnItemEquipped | OnItemEquipped]]
| <code>void OnItemEquipped(handle hItem)</code>
| ( HSCRIPT hItem ) Caster equipped item.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Ability_Lua.OnOwnerDied | OnOwnerDied]]
| <code>void OnOwnerDied()</code>
| Caster died.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Ability_Lua.OnOwnerSpawned | OnOwnerSpawned]]
| <code>void OnOwnerSpawned()</code>
| Caster respawned or spawned for the first time.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Ability_Lua.OnProjectileHit | OnProjectileHit]]
| <code>bool OnProjectileHit(handle hTarget, Vector vLocation)</code>
| (HSCRIPT hTarget, Vector vLocation) Projectile has collided with a given target or reached its destination (target is invalid).
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Ability_Lua.OnProjectileHitHandle | OnProjectileHitHandle]]
| <code>bool OnProjectileHitHandle(handle hTarget, Vector vLocation, int iProjectileHandle)</code>
| (HSCRIPT hTarget, Vector vLocation, int nHandle) Projectile has collided with a given target or reached its destination (target is invalid).
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Ability_Lua.OnProjectileHit_ExtraData | OnProjectileHit_ExtraData]]
| <code>bool OnProjectileHit_ExtraData(handle hTarget, Vector vLocation, handle table)</code>
| (HSCRIPT hTarget, Vector vLocation, table kv) Projectile has collided with a given target or reached its destination (target is invalid).
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Ability_Lua.OnProjectileThink | OnProjectileThink]]
| <code>void OnProjectileThink(Vector vLocation)</code>
| (Vector vLocation) Projectile is actively moving.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Ability_Lua.OnProjectileThinkHandle | OnProjectileThinkHandle]]
| <code>void OnProjectileThinkHandle(int iProjectileHandle)</code>
| (int nProjectileHandle) Projectile is actively moving.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Ability_Lua.OnProjectileThink_ExtraData | OnProjectileThink_ExtraData]]
| <code>void OnProjectileThink_ExtraData(Vector vLocation, handle table)</code>
| (Vector vLocation, table kv ) Projectile is actively moving.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Ability_Lua.OnSpellStart | OnSpellStart]]
| <code>void OnSpellStart()</code>
| Cast time finished, spell effects begin.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Ability_Lua.OnStolen | OnStolen]]
| <code>void OnStolen(handle hSourceAbility)</code>
| ( HSCRIPT hAbility ) Special behavior when stolen by Spell Steal.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Ability_Lua.OnToggle | OnToggle]]
| <code>void OnToggle()</code>
| Ability is toggled on/off.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Ability_Lua.OnUnStolen | OnUnStolen]]
| <code>void OnUnStolen()</code>
| Special behavior when lost by Spell Steal.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Ability_Lua.OnUpgrade | OnUpgrade]]
| <code>void OnUpgrade()</code>
| Ability gained a level.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Ability_Lua.ProcsMagicStick | ProcsMagicStick]]
| <code>bool ProcsMagicStick()</code>
| Returns true if this ability will generate magic stick charges for nearby enemies.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Ability_Lua.ResetToggleOnRespawn | ResetToggleOnRespawn]]
| <code>bool ResetToggleOnRespawn()</code>
| Returns true if this ability should return to the default toggle state when its parent respawns.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Ability_Lua.SpeakTrigger | SpeakTrigger]]
| <code>int SpeakTrigger()</code>
| Return the type of speech used.
|}


''bool'' '''IsDaytime'''()
==== CDOTA_Ability_Nian_Dive ====
Is it day time.
:::::extends [[#CDOTABaseAbility|CDOTABaseAbility]]
''No Description Set''
{| class="standard-table" style="width: 100%;"
! Function
! Signature
! Description
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Ability_Nian_Dive.SetPlaybackRate | SetPlaybackRate]]
| <code>void SetPlaybackRate(float flRate)</code>
| Override playbackrate
|}


''handle'' '''GetDroppedItem'''(''int'')
==== CDOTA_Ability_Nian_Leap ====
Gets the Xth dropped item
:::::extends [[#CDOTABaseAbility|CDOTABaseAbility]]
''No Description Set''
{| class="standard-table" style="width: 100%;"
! Function
! Signature
! Description
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Ability_Nian_Leap.SetPlaybackRate | SetPlaybackRate]]
| <code>void SetPlaybackRate(float flRate)</code>
| Override playbackrate
|}


''void'' '''SetTreeRegrowTime'''(''float'')
==== CDOTA_Ability_Nian_Roar ====
Sets the tree regrow time in seconds.
:::::extends [[#CDOTABaseAbility|CDOTABaseAbility]]
''No Description Set''
{| class="standard-table" style="width: 100%;"
! Function
! Signature
! Description
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Ability_Nian_Roar.GetCastCount | GetCastCount]]
| <code>int GetCastCount()</code>
| Number of times Nian has used the roar
|}


''void'' '''SetFirstBloodActive'''(''bool'')
==== CDOTA_BaseNPC ====
Sets whether First Blood has been triggered.
:::::extends [[#CBaseFlex|CBaseFlex]]
''No Description Set''
{| class="standard-table" style="width: 100%;"
! Function
! Signature
! Description
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.AddAbility | AddAbility]]
| <code>handle AddAbility(string pszAbilityName)</code>
| Add an ability to this unit by name.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.AddActivityModifier | AddActivityModifier]]
| <code>void AddActivityModifier(string szName)</code>
| Add an activity modifier that affects future StartGesture calls
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.AddItem | AddItem]]
| <code>handle AddItem(handle hItem)</code>
| Add an item to this unit's inventory.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.AddItemByName | AddItemByName]]
| <code>handle AddItemByName(string pszItemName)</code>
| Add an item to this unit's inventory.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.AddNewModifier | AddNewModifier]]
| <code>handle AddNewModifier(handle hCaster, handle hAbility, string pszScriptName, handle hModifierTable)</code>
| Add a modifier to this unit.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.AddNoDraw | AddNoDraw]]
| <code>void AddNoDraw()</code>
| Adds the no draw flag.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.AddSpeechBubble | AddSpeechBubble]]
| <code>void AddSpeechBubble(int iBubble, string pszSpeech, float flDuration, unsigned unOffsetX, unsigned unOffsetY)</code>
| Add a speech bubble(1-4 live at a time) to this NPC.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.AlertNearbyUnits | AlertNearbyUnits]]
| <code>void AlertNearbyUnits(handle hAttacker, handle hAbility)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.AngerNearbyUnits | AngerNearbyUnits]]
| <code>void AngerNearbyUnits()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.AttackNoEarlierThan | AttackNoEarlierThan]]
| <code>void AttackNoEarlierThan(float flTime)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.AttackReady | AttackReady]]
| <code>bool AttackReady()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.BoundingRadius2D | BoundingRadius2D]]
| <code>float BoundingRadius2D()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.CanEntityBeSeenByMyTeam | CanEntityBeSeenByMyTeam]]
| <code>bool CanEntityBeSeenByMyTeam(handle hEntity)</code>
| Check FoW to see if an entity is visible.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.CanSellItems | CanSellItems]]
| <code>bool CanSellItems()</code>
| Query if this unit can sell items.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.CastAbilityImmediately | CastAbilityImmediately]]
| <code>void CastAbilityImmediately(handle hAbility, int iPlayerIndex)</code>
| Cast an ability immediately.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.CastAbilityNoTarget | CastAbilityNoTarget]]
| <code>void CastAbilityNoTarget(handle hAbility, int iPlayerIndex)</code>
| Cast an ability with no target.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.CastAbilityOnPosition | CastAbilityOnPosition]]
| <code>void CastAbilityOnPosition(Vector vPosition, handle hAbility, int iPlayerIndex)</code>
| Cast an ability on a position.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.CastAbilityOnTarget | CastAbilityOnTarget]]
| <code>void CastAbilityOnTarget(handle hTarget, handle hAbility, int iPlayerIndex)</code>
| Cast an ability on a target entity.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.CastAbilityToggle | CastAbilityToggle]]
| <code>void CastAbilityToggle(handle hAbility, int iPlayerIndex)</code>
| Toggle an ability.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.ClearActivityModifiers | ClearActivityModifiers]]
| <code>void ClearActivityModifiers()</code>
| Clear Activity modifiers
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.DestroyAllSpeechBubbles | DestroyAllSpeechBubbles]]
| <code>void DestroyAllSpeechBubbles()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.DisassembleItem | DisassembleItem]]
| <code>void DisassembleItem(handle hItem)</code>
| Disassemble the passed item in this unit's inventory.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.DropItemAtPosition | DropItemAtPosition]]
| <code>void DropItemAtPosition(Vector vDest, handle hItem)</code>
| Drop an item at a given point.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.DropItemAtPositionImmediate | DropItemAtPositionImmediate]]
| <code>void DropItemAtPositionImmediate(handle hItem, Vector vPosition)</code>
| Immediately drop a carried item at a given position.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.EjectItemFromStash | EjectItemFromStash]]
| <code>void EjectItemFromStash(handle hItem)</code>
| Drops the selected item out of this unit's stash.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.FaceTowards | FaceTowards]]
| <code>void FaceTowards(Vector vTarget)</code>
| This unit will be set to face the target point.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.FadeGesture | FadeGesture]]
| <code>void FadeGesture(int nActivity)</code>
| Fade and remove the given gesture activity.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.FindAbilityByName | FindAbilityByName]]
| <code>handle FindAbilityByName(string pAbilityName)</code>
| Retrieve an ability by name from the unit.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.FindAllModifiers | FindAllModifiers]]
| <code>table FindAllModifiers()</code>
| Returns a table of all of the modifiers on the NPC.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.FindAllModifiersByName | FindAllModifiersByName]]
| <code>table FindAllModifiersByName(string pszScriptName)</code>
| Returns a table of all of the modifiers on the NPC with the passed name (modifierName)
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.FindItemInInventory | FindItemInInventory]]
| <code>handle FindItemInInventory(string pszItemName)</code>
| Get handle to first item in inventory, else nil.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.FindModifierByName | FindModifierByName]]
| <code>handle FindModifierByName(string pszScriptName)</code>
| Return a handle to the modifier of the given name if found, else nil (string Name )
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.FindModifierByNameAndCaster | FindModifierByNameAndCaster]]
| <code>handle FindModifierByNameAndCaster(string pszScriptName, handle hCaster)</code>
| Return a handle to the modifier of the given name from the passed caster if found, else nil ( string Name, hCaster )
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.ForceKill | ForceKill]]
| <code>void ForceKill(bool bReincarnate)</code>
| Kill this unit immediately.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.ForcePlayActivityOnce | ForcePlayActivityOnce]]
| <code>void ForcePlayActivityOnce(int nActivity)</code>
| Play an activity once, and then go back to idle.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetAbilityByIndex | GetAbilityByIndex]]
| <code>handle GetAbilityByIndex(int iIndex)</code>
| Retrieve an ability by index from the unit.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetAbilityCount | GetAbilityCount]]
| <code>int GetAbilityCount()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetAcquisitionRange | GetAcquisitionRange]]
| <code>float GetAcquisitionRange()</code>
| Gets the range at which this unit will auto-acquire.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetAdditionalBattleMusicWeight | GetAdditionalBattleMusicWeight]]
| <code>float GetAdditionalBattleMusicWeight()</code>
| Combat involving this creature will have this weight added to the music calcuations.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetAggroTarget | GetAggroTarget]]
| <code>handle GetAggroTarget()</code>
| Returns this unit's aggro target.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetAttackAnimationPoint | GetAttackAnimationPoint]]
| <code>float GetAttackAnimationPoint()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetAttackCapability | GetAttackCapability]]
| <code>int GetAttackCapability()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetAttackDamage | GetAttackDamage]]
| <code>int GetAttackDamage()</code>
| Returns a random integer between the minimum and maximum base damage of the unit.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetAttackRangeBuffer | GetAttackRangeBuffer]]
| <code>float GetAttackRangeBuffer()</code>
| Gets the attack range buffer.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetAttackSpeed | GetAttackSpeed]]
| <code>float GetAttackSpeed()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetAttackTarget | GetAttackTarget]]
| <code>handle GetAttackTarget()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetAttacksPerSecond | GetAttacksPerSecond]]
| <code>float GetAttacksPerSecond()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetAverageTrueAttackDamage | GetAverageTrueAttackDamage]]
| <code>int GetAverageTrueAttackDamage(handle hTarget)</code>
| Returns the average value of the minimum and maximum damage values.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetBaseAttackRange | GetBaseAttackRange]]
| <code>int GetBaseAttackRange()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetBaseAttackTime | GetBaseAttackTime]]
| <code>float GetBaseAttackTime()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetBaseDamageMax | GetBaseDamageMax]]
| <code>int GetBaseDamageMax()</code>
| Get the maximum attack damage of this unit.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetBaseDamageMin | GetBaseDamageMin]]
| <code>int GetBaseDamageMin()</code>
| Get the minimum attack damage of this unit.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetBaseDayTimeVisionRange | GetBaseDayTimeVisionRange]]
| <code>int GetBaseDayTimeVisionRange()</code>
| Returns the vision range before modifiers.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetBaseHealthRegen | GetBaseHealthRegen]]
| <code>float GetBaseHealthRegen()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetBaseMagicalResistanceValue | GetBaseMagicalResistanceValue]]
| <code>float GetBaseMagicalResistanceValue()</code>
| Returns base magical armor value.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetBaseMaxHealth | GetBaseMaxHealth]]
| <code>float GetBaseMaxHealth()</code>
| Gets the base max health value.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetBaseMoveSpeed | GetBaseMoveSpeed]]
| <code>float GetBaseMoveSpeed()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetBaseNightTimeVisionRange | GetBaseNightTimeVisionRange]]
| <code>int GetBaseNightTimeVisionRange()</code>
| Returns the vision range after modifiers.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetBonusManaRegen | GetBonusManaRegen]]
| <code>float GetBonusManaRegen()</code>
| This Mana regen is derived from constant bonuses like Basilius.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetCastPoint | GetCastPoint]]
| <code>float GetCastPoint(bool bAttack)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetCastRangeBonus | GetCastRangeBonus]]
| <code>float GetCastRangeBonus()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetCloneSource | GetCloneSource]]
| <code>handle GetCloneSource()</code>
| Get clone source (Meepo Prime, if this is a Meepo)
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetCollisionPadding | GetCollisionPadding]]
| <code>float GetCollisionPadding()</code>
| Returns the size of the collision padding around the hull.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetCooldownReduction | GetCooldownReduction]]
| <code>float GetCooldownReduction()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetCreationTime | GetCreationTime]]
| <code>float GetCreationTime()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetCurrentActiveAbility | GetCurrentActiveAbility]]
| <code>handle GetCurrentActiveAbility()</code>
| Get the ability this unit is currently casting.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetCurrentVisionRange | GetCurrentVisionRange]]
| <code>int GetCurrentVisionRange()</code>
| Gets the current vision range.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetCursorCastTarget | GetCursorCastTarget]]
| <code>handle GetCursorCastTarget()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetCursorPosition | GetCursorPosition]]
| <code>Vector GetCursorPosition()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetCursorTargetingNothing | GetCursorTargetingNothing]]
| <code>bool GetCursorTargetingNothing()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetDayTimeVisionRange | GetDayTimeVisionRange]]
| <code>int GetDayTimeVisionRange()</code>
| Returns the vision range after modifiers.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetDeathXP | GetDeathXP]]
| <code>int GetDeathXP()</code>
| Get the XP bounty on this unit.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetDisplayAttackSpeed | GetDisplayAttackSpeed]]
| <code>float GetDisplayAttackSpeed()</code>
| Attack speed expressed as constant value
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetEvasion | GetEvasion]]
| <code>float GetEvasion()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetForceAttackTarget | GetForceAttackTarget]]
| <code>handle GetForceAttackTarget()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetGoldBounty | GetGoldBounty]]
| <code>int GetGoldBounty()</code>
| Get the gold bounty on this unit.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetHasteFactor | GetHasteFactor]]
| <code>float GetHasteFactor()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetHealthDeficit | GetHealthDeficit]]
| <code>int GetHealthDeficit()</code>
| Returns integer amount of health missing from max.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetHealthPercent | GetHealthPercent]]
| <code>int GetHealthPercent()</code>
| Get the current health percent of the unit.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetHealthRegen | GetHealthRegen]]
| <code>float GetHealthRegen()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetHullRadius | GetHullRadius]]
| <code>float GetHullRadius()</code>
| Get the collision hull radius of this NPC.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetIdealSpeed | GetIdealSpeed]]
| <code>float GetIdealSpeed()</code>
| Returns speed after all modifiers.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetIdealSpeedNoSlows | GetIdealSpeedNoSlows]]
| <code>float GetIdealSpeedNoSlows()</code>
| Returns speed after all modifiers, but excluding those that reduce speed.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetIncreasedAttackSpeed | GetIncreasedAttackSpeed]]
| <code>float GetIncreasedAttackSpeed()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetInitialGoalEntity | GetInitialGoalEntity]]
| <code>handle GetInitialGoalEntity()</code>
| Returns the initial waypoint goal for this NPC.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetInitialGoalPosition | GetInitialGoalPosition]]
| <code>Vector GetInitialGoalPosition()</code>
| Get waypoint position for this NPC.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetItemInSlot | GetItemInSlot]]
| <code>handle GetItemInSlot(int i)</code>
| Returns nth item in inventory slot (index is zero based).
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetLastAttackTime | GetLastAttackTime]]
| <code>float GetLastAttackTime()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetLastDamageTime | GetLastDamageTime]]
| <code>float GetLastDamageTime()</code>
| Get the last time this NPC took damage
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetLastIdleChangeTime | GetLastIdleChangeTime]]
| <code>float GetLastIdleChangeTime()</code>
| Get the last game time that this unit switched to/from idle state.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetLevel | GetLevel]]
| <code>int GetLevel()</code>
| Returns the level of this unit.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetMagicalArmorValue | GetMagicalArmorValue]]
| <code>float GetMagicalArmorValue()</code>
| Returns current magical armor value.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetMainControllingPlayer | GetMainControllingPlayer]]
| <code>int GetMainControllingPlayer()</code>
| Returns the player ID of the controlling player.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetMana | GetMana]]
| <code>float GetMana()</code>
| Get the mana on this unit.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetManaPercent | GetManaPercent]]
| <code>int GetManaPercent()</code>
| Get the percent of mana remaining.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetManaRegen | GetManaRegen]]
| <code>float GetManaRegen()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetMaxMana | GetMaxMana]]
| <code>float GetMaxMana()</code>
| Get the maximum mana of this unit.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetMaximumGoldBounty | GetMaximumGoldBounty]]
| <code>int GetMaximumGoldBounty()</code>
| Get the maximum gold bounty for this unit.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetMinimumGoldBounty | GetMinimumGoldBounty]]
| <code>int GetMinimumGoldBounty()</code>
| Get the minimum gold bounty for this unit.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetModelRadius | GetModelRadius]]
| <code>float GetModelRadius()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetModifierCount | GetModifierCount]]
| <code>int GetModifierCount()</code>
| How many modifiers does this unit have?
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetModifierNameByIndex | GetModifierNameByIndex]]
| <code>string GetModifierNameByIndex(int nIndex)</code>
| Get a modifier name by index.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetModifierStackCount | GetModifierStackCount]]
| <code>int GetModifierStackCount(string pszScriptName, handle hCaster)</code>
| Gets the stack count of a given modifier.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetMoveSpeedModifier | GetMoveSpeedModifier]]
| <code>float GetMoveSpeedModifier(float flBaseSpeed, bool bReturnUnslowed)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetMustReachEachGoalEntity | GetMustReachEachGoalEntity]]
| <code>bool GetMustReachEachGoalEntity()</code>
| Set whether this NPC is required to reach each goal entity, rather than being allowed to unkink their path.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetNeverMoveToClearSpace | GetNeverMoveToClearSpace]]
| <code>bool GetNeverMoveToClearSpace()</code>
| If set to true, we will never attempt to move this unit to clear space, even when it unphases.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetNightTimeVisionRange | GetNightTimeVisionRange]]
| <code>int GetNightTimeVisionRange()</code>
| Returns the vision range after modifiers.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetOpposingTeamNumber | GetOpposingTeamNumber]]
| <code>int GetOpposingTeamNumber()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetPaddedCollisionRadius | GetPaddedCollisionRadius]]
| <code>float GetPaddedCollisionRadius()</code>
| Get the collision hull radius (including padding) of this NPC.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetPhysicalArmorBaseValue | GetPhysicalArmorBaseValue]]
| <code>float GetPhysicalArmorBaseValue()</code>
| Returns base physical armor value.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetPhysicalArmorValue | GetPhysicalArmorValue]]
| <code>float GetPhysicalArmorValue(bool bIgnoreBase)</code>
| Returns current physical armor value.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetPlayerOwner | GetPlayerOwner]]
| <code>handle GetPlayerOwner()</code>
| Returns the player that owns this unit.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetPlayerOwnerID | GetPlayerOwnerID]]
| <code>int GetPlayerOwnerID()</code>
| Get the owner player ID for this unit.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetProjectileSpeed | GetProjectileSpeed]]
| <code>int GetProjectileSpeed()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetRangeToUnit | GetRangeToUnit]]
| <code>float GetRangeToUnit(handle hNPC)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetRangedProjectileName | GetRangedProjectileName]]
| <code>string GetRangedProjectileName()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetSecondsPerAttack | GetSecondsPerAttack]]
| <code>float GetSecondsPerAttack()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetSpellAmplification | GetSpellAmplification]]
| <code>float GetSpellAmplification(bool bBaseOnly)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetStatusResistance | GetStatusResistance]]
| <code>float GetStatusResistance()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetTotalPurchasedUpgradeGoldCost | GetTotalPurchasedUpgradeGoldCost]]
| <code>int GetTotalPurchasedUpgradeGoldCost()</code>
| Get how much gold has been spent on ability upgrades.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetUnitLabel | GetUnitLabel]]
| <code>string GetUnitLabel()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GetUnitName | GetUnitName]]
| <code>string GetUnitName()</code>
| Get the name of this unit.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.GiveMana | GiveMana]]
| <code>void GiveMana(float flMana)</code>
| Give mana to this unit, this can be used for mana gained by abilities or item usage.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.HasAbility | HasAbility]]
| <code>bool HasAbility(string pszAbilityName)</code>
| See whether this unit has an ability by name.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.HasAnyActiveAbilities | HasAnyActiveAbilities]]
| <code>bool HasAnyActiveAbilities()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.HasAttackCapability | HasAttackCapability]]
| <code>bool HasAttackCapability()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.HasFlyMovementCapability | HasFlyMovementCapability]]
| <code>bool HasFlyMovementCapability()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.HasFlyingVision | HasFlyingVision]]
| <code>bool HasFlyingVision()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.HasGroundMovementCapability | HasGroundMovementCapability]]
| <code>bool HasGroundMovementCapability()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.HasInventory | HasInventory]]
| <code>bool HasInventory()</code>
| Does this unit have an inventory.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.HasItemInInventory | HasItemInInventory]]
| <code>bool HasItemInInventory(string pItemName)</code>
| See whether this unit has an item by name.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.HasModifier | HasModifier]]
| <code>bool HasModifier(string pszScriptName)</code>
| Sees if this unit has a given modifier.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.HasMovementCapability | HasMovementCapability]]
| <code>bool HasMovementCapability()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.HasScepter | HasScepter]]
| <code>bool HasScepter()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.Heal | Heal]]
| <code>void Heal(float flAmount, handle hInflictor)</code>
| Heal this unit.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.Hold | Hold]]
| <code>void Hold()</code>
| Hold position.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.Interrupt | Interrupt]]
| <code>void Interrupt()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.InterruptChannel | InterruptChannel]]
| <code>void InterruptChannel()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.InterruptMotionControllers | InterruptMotionControllers]]
| <code>void InterruptMotionControllers(bool bFindClearSpace)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.IsAlive | IsAlive]]
| <code>bool IsAlive()</code>
| Is this unit alive?
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.IsAncient | IsAncient]]
| <code>bool IsAncient()</code>
| Is this unit an Ancient?
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.IsAttackImmune | IsAttackImmune]]
| <code>bool IsAttackImmune()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.IsAttacking | IsAttacking]]
| <code>bool IsAttacking()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.IsAttackingEntity | IsAttackingEntity]]
| <code>bool IsAttackingEntity(handle hEntity)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.IsBarracks | IsBarracks]]
| <code>bool IsBarracks()</code>
| Is this unit a Barracks?
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.IsBlind | IsBlind]]
| <code>bool IsBlind()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.IsBlockDisabled | IsBlockDisabled]]
| <code>bool IsBlockDisabled()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.IsBoss | IsBoss]]
| <code>bool IsBoss()</code>
| Is this unit a boss?
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.IsBuilding | IsBuilding]]
| <code>bool IsBuilding()</code>
| Is this unit a building?
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.IsChanneling | IsChanneling]]
| <code>bool IsChanneling()</code>
| Is this unit currently channeling a spell?
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.IsClone | IsClone]]
| <code>bool IsClone()</code>
| Is this unit a clone? (Meepo)
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.IsCommandRestricted | IsCommandRestricted]]
| <code>bool IsCommandRestricted()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.IsConsideredHero | IsConsideredHero]]
| <code>bool IsConsideredHero()</code>
| Is this unit a considered a hero for targeting purposes?
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.IsControllableByAnyPlayer | IsControllableByAnyPlayer]]
| <code>bool IsControllableByAnyPlayer()</code>
| Is this unit controlled by any non-bot player?
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.IsCourier | IsCourier]]
| <code>bool IsCourier()</code>
| Is this unit a courier?
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.IsCreature | IsCreature]]
| <code>bool IsCreature()</code>
| Is this a Creature type NPC?
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.IsCreep | IsCreep]]
| <code>bool IsCreep()</code>
| Is this unit a creep?
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.IsDeniable | IsDeniable]]
| <code>bool IsDeniable()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.IsDisarmed | IsDisarmed]]
| <code>bool IsDisarmed()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.IsDominated | IsDominated]]
| <code>bool IsDominated()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.IsEvadeDisabled | IsEvadeDisabled]]
| <code>bool IsEvadeDisabled()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.IsFort | IsFort]]
| <code>bool IsFort()</code>
| Is this unit an Ancient?
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.IsFrozen | IsFrozen]]
| <code>bool IsFrozen()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.IsHero | IsHero]]
| <code>bool IsHero()</code>
| Is this a hero or hero illusion?
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.IsHexed | IsHexed]]
| <code>bool IsHexed()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.IsIdle | IsIdle]]
| <code>bool IsIdle()</code>
| Is this creature currently idle?
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.IsIllusion | IsIllusion]]
| <code>bool IsIllusion()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.IsInRangeOfShop | IsInRangeOfShop]]
| <code>bool IsInRangeOfShop(int nShopType, bool bPhysical)</code>
| Ask whether this unit is in range of the specified shop ( DOTA_SHOP_TYPE shop, bool bMustBePhysicallyNear
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.IsInvisible | IsInvisible]]
| <code>bool IsInvisible()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.IsInvulnerable | IsInvulnerable]]
| <code>bool IsInvulnerable()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.IsLowAttackPriority | IsLowAttackPriority]]
| <code>bool IsLowAttackPriority()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.IsMagicImmune | IsMagicImmune]]
| <code>bool IsMagicImmune()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.IsMovementImpaired | IsMovementImpaired]]
| <code>bool IsMovementImpaired()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.IsMoving | IsMoving]]
| <code>bool IsMoving()</code>
| Is this unit moving?
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.IsMuted | IsMuted]]
| <code>bool IsMuted()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.IsNeutralUnitType | IsNeutralUnitType]]
| <code>bool IsNeutralUnitType()</code>
| Is this a neutral?
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.IsNightmared | IsNightmared]]
| <code>bool IsNightmared()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.IsOpposingTeam | IsOpposingTeam]]
| <code>bool IsOpposingTeam(int nTeam)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.IsOther | IsOther]]
| <code>bool IsOther()</code>
| Is this unit a ward-type unit?
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.IsOutOfGame | IsOutOfGame]]
| <code>bool IsOutOfGame()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.IsOwnedByAnyPlayer | IsOwnedByAnyPlayer]]
| <code>bool IsOwnedByAnyPlayer()</code>
| Is this unit owned by any non-bot player?
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.IsPhantom | IsPhantom]]
| <code>bool IsPhantom()</code>
| Is this a phantom unit?
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.IsPhantomBlocker | IsPhantomBlocker]]
| <code>bool IsPhantomBlocker()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.IsPhased | IsPhased]]
| <code>bool IsPhased()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.IsPositionInRange | IsPositionInRange]]
| <code>bool IsPositionInRange(Vector vPosition, float flRange)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.IsRangedAttacker | IsRangedAttacker]]
| <code>bool IsRangedAttacker()</code>
| Is this unit a ranged attacker?
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.IsRealHero | IsRealHero]]
| <code>bool IsRealHero()</code>
| Is this a real hero?
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.IsRooted | IsRooted]]
| <code>bool IsRooted()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.IsShrine | IsShrine]]
| <code>bool IsShrine()</code>
| Is this a shrine?
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.IsSilenced | IsSilenced]]
| <code>bool IsSilenced()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.IsSpeciallyDeniable | IsSpeciallyDeniable]]
| <code>bool IsSpeciallyDeniable()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.IsStunned | IsStunned]]
| <code>bool IsStunned()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.IsSummoned | IsSummoned]]
| <code>bool IsSummoned()</code>
| Is this unit summoned?
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.IsTempestDouble | IsTempestDouble]]
| <code>bool IsTempestDouble()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.IsTower | IsTower]]
| <code>bool IsTower()</code>
| Is this a tower?
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.IsUnableToMiss | IsUnableToMiss]]
| <code>bool IsUnableToMiss()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.IsUnselectable | IsUnselectable]]
| <code>bool IsUnselectable()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.IsUntargetable | IsUntargetable]]
| <code>bool IsUntargetable()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.Kill | Kill]]
| <code>void Kill(handle hAbility, handle hAttacker)</code>
| Kills this NPC, with the params Ability and Attacker.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.MakeIllusion | MakeIllusion]]
| <code>void MakeIllusion()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.MakePhantomBlocker | MakePhantomBlocker]]
| <code>void MakePhantomBlocker()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.MakeVisibleDueToAttack | MakeVisibleDueToAttack]]
| <code>void MakeVisibleDueToAttack(int iTeam, float flRadius)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.MakeVisibleToTeam | MakeVisibleToTeam]]
| <code>void MakeVisibleToTeam(int iTeam, float flDuration)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.ManageModelChanges | ManageModelChanges]]
| <code>void ManageModelChanges()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.ModifyHealth | ModifyHealth]]
| <code>void ModifyHealth(int iDesiredHealthValue, handle hAbility, bool bLethal, int iAdditionalFlags)</code>
| Sets the health to a specific value, with optional flags or inflictors.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.MoveToNPC | MoveToNPC]]
| <code>void MoveToNPC(handle hNPC)</code>
| Move to follow a unit.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.MoveToNPCToGiveItem | MoveToNPCToGiveItem]]
| <code>void MoveToNPCToGiveItem(handle hNPC, handle hItem)</code>
| Give an item to another unit.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.MoveToPosition | MoveToPosition]]
| <code>void MoveToPosition(Vector vDest)</code>
| Issue a Move-To command.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.MoveToPositionAggressive | MoveToPositionAggressive]]
| <code>void MoveToPositionAggressive(Vector vDest)</code>
| Issue an Attack-Move-To command.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.MoveToTargetToAttack | MoveToTargetToAttack]]
| <code>void MoveToTargetToAttack(handle hTarget)</code>
| Move to a target to attack.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.NoHealthBar | NoHealthBar]]
| <code>bool NoHealthBar()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.NoTeamMoveTo | NoTeamMoveTo]]
| <code>bool NoTeamMoveTo()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.NoTeamSelect | NoTeamSelect]]
| <code>bool NoTeamSelect()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.NoUnitCollision | NoUnitCollision]]
| <code>bool NoUnitCollision()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.NotOnMinimap | NotOnMinimap]]
| <code>bool NotOnMinimap()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.NotOnMinimapForEnemies | NotOnMinimapForEnemies]]
| <code>bool NotOnMinimapForEnemies()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.NotifyWearablesOfModelChange | NotifyWearablesOfModelChange]]
| <code>void NotifyWearablesOfModelChange(bool bOriginalModel)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.PassivesDisabled | PassivesDisabled]]
| <code>bool PassivesDisabled()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.PatrolToPosition | PatrolToPosition]]
| <code>void PatrolToPosition(Vector vDest)</code>
| Issue a Patrol-To command.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.PerformAttack | PerformAttack]]
| <code>void PerformAttack(handle hTarget, bool bUseCastAttackOrb, bool bProcessProcs, bool bSkipCooldown, bool bIgnoreInvis, bool bUseProjectile, bool bFakeAttack, bool bNeverMiss)</code>
| Performs an attack on a target.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.PickupDroppedItem | PickupDroppedItem]]
| <code>void PickupDroppedItem(handle hItem)</code>
| Pick up a dropped item.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.PickupRune | PickupRune]]
| <code>void PickupRune(handle hItem)</code>
| Pick up a rune.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.PlayVCD | PlayVCD]]
| <code>void PlayVCD(string pVCD)</code>
| Play a VCD on the NPC.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.ProvidesVision | ProvidesVision]]
| <code>bool ProvidesVision()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.Purge | Purge]]
| <code>void Purge(bool bRemovePositiveBuffs, bool bRemoveDebuffs, bool bFrameOnly, bool bRemoveStuns, bool bRemoveExceptions)</code>
| (bool RemovePositiveBuffs, bool RemoveDebuffs, bool BuffsCreatedThisFrameOnly, bool RemoveStuns, bool RemoveExceptions
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.ReduceMana | ReduceMana]]
| <code>void ReduceMana(float flAmount)</code>
| Remove mana from this unit, this can be used for involuntary mana loss, not for mana that is spent.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.RemoveAbility | RemoveAbility]]
| <code>void RemoveAbility(string pszAbilityName)</code>
| Remove an ability from this unit by name.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.RemoveAbilityByHandle | RemoveAbilityByHandle]]
| <code>void RemoveAbilityByHandle(handle hAbility)</code>
| Remove the passed ability from this unit.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.RemoveGesture | RemoveGesture]]
| <code>void RemoveGesture(int nActivity)</code>
| Remove the given gesture activity.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.RemoveHorizontalMotionController | RemoveHorizontalMotionController]]
| <code>void RemoveHorizontalMotionController(handle hBuff)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.RemoveItem | RemoveItem]]
| <code>void RemoveItem(handle hItem)</code>
| Removes the passed item from this unit's inventory and deletes it.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.RemoveModifierByName | RemoveModifierByName]]
| <code>void RemoveModifierByName(string pszScriptName)</code>
| Removes a modifier.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.RemoveModifierByNameAndCaster | RemoveModifierByNameAndCaster]]
| <code>void RemoveModifierByNameAndCaster(string pszScriptName, handle hCaster)</code>
| Removes a modifier that was cast by the given caster.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.RemoveNoDraw | RemoveNoDraw]]
| <code>void RemoveNoDraw()</code>
| Remove the no draw flag.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.RemoveVerticalMotionController | RemoveVerticalMotionController]]
| <code>void RemoveVerticalMotionController(handle hBuff)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.RespawnUnit | RespawnUnit]]
| <code>void RespawnUnit()</code>
| Respawns the target unit if it can be respawned.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.Script_GetAttackRange | Script_GetAttackRange]]
| <code>float Script_GetAttackRange()</code>
| Gets this unit's attack range after all modifiers.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.SellItem | SellItem]]
| <code>void SellItem(handle hItem)</code>
| Sells the passed item in this unit's inventory.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.SetAbilityByIndex | SetAbilityByIndex]]
| <code>void SetAbilityByIndex(handle hAbility, int iIndex)</code>
| Set the ability by index.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.SetAcquisitionRange | SetAcquisitionRange]]
| <code>void SetAcquisitionRange(int nRange)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.SetAdditionalBattleMusicWeight | SetAdditionalBattleMusicWeight]]
| <code>void SetAdditionalBattleMusicWeight(float flWeight)</code>
| Combat involving this creature will have this weight added to the music calcuations.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.SetAggroTarget | SetAggroTarget]]
| <code>void SetAggroTarget(handle hAggroTarget)</code>
| Set this unit's aggro target to a specified unit.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.SetAttackCapability | SetAttackCapability]]
| <code>void SetAttackCapability(int iAttackCapabilities)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.SetAttacking | SetAttacking]]
| <code>void SetAttacking(handle hAttackTarget)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.SetBaseAttackTime | SetBaseAttackTime]]
| <code>void SetBaseAttackTime(float flBaseAttackTime)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.SetBaseDamageMax | SetBaseDamageMax]]
| <code>void SetBaseDamageMax(int nMax)</code>
| Sets the maximum base damage.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.SetBaseDamageMin | SetBaseDamageMin]]
| <code>void SetBaseDamageMin(int nMin)</code>
| Sets the minimum base damage.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.SetBaseHealthRegen | SetBaseHealthRegen]]
| <code>void SetBaseHealthRegen(float flHealthRegen)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.SetBaseMagicalResistanceValue | SetBaseMagicalResistanceValue]]
| <code>void SetBaseMagicalResistanceValue(float flMagicalResistanceValue)</code>
| Sets base magical armor value.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.SetBaseManaRegen | SetBaseManaRegen]]
| <code>void SetBaseManaRegen(float flManaRegen)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.SetBaseMaxHealth | SetBaseMaxHealth]]
| <code>void SetBaseMaxHealth(float flBaseMaxHealth)</code>
| Set a new base max health value.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.SetBaseMoveSpeed | SetBaseMoveSpeed]]
| <code>void SetBaseMoveSpeed(int iMoveSpeed)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.SetCanSellItems | SetCanSellItems]]
| <code>void SetCanSellItems(bool bCanSell)</code>
| Set whether or not this unit is allowed to sell items (bCanSellItems)
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.SetControllableByPlayer | SetControllableByPlayer]]
| <code>void SetControllableByPlayer(int iIndex, bool bSkipAdjustingPosition)</code>
| Set this unit controllable by the player with the passed ID.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.SetCursorCastTarget | SetCursorCastTarget]]
| <code>void SetCursorCastTarget(handle hEntity)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.SetCursorPosition | SetCursorPosition]]
| <code>void SetCursorPosition(Vector vLocation)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.SetCursorTargetingNothing | SetCursorTargetingNothing]]
| <code>void SetCursorTargetingNothing(bool bTargetingNothing)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.SetCustomHealthLabel | SetCustomHealthLabel]]
| <code>void SetCustomHealthLabel(string pLabel, int r, int g, int b)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.SetDayTimeVisionRange | SetDayTimeVisionRange]]
| <code>void SetDayTimeVisionRange(int iRange)</code>
| Set the base vision range.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.SetDeathXP | SetDeathXP]]
| <code>void SetDeathXP(int iXPBounty)</code>
| Set the XP bounty on this unit.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.SetForceAttackTarget | SetForceAttackTarget]]
| <code>void SetForceAttackTarget(handle hNPC)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.SetForceAttackTargetAlly | SetForceAttackTargetAlly]]
| <code>void SetForceAttackTargetAlly(handle hNPC)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.SetHasInventory | SetHasInventory]]
| <code>void SetHasInventory(bool bHasInventory)</code>
| Set if this unit has an inventory.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.SetHullRadius | SetHullRadius]]
| <code>void SetHullRadius(float flHullRadius)</code>
| Set the collision hull radius of this NPC.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.SetIdleAcquire | SetIdleAcquire]]
| <code>void SetIdleAcquire(bool bIdleAcquire)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.SetInitialGoalEntity | SetInitialGoalEntity]]
| <code>void SetInitialGoalEntity(handle hGoal)</code>
| Sets the initial waypoint goal for this NPC.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.SetInitialGoalPosition | SetInitialGoalPosition]]
| <code>void SetInitialGoalPosition(Vector vPosition)</code>
| Set waypoint position for this NPC.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.SetMana | SetMana]]
| <code>void SetMana(float flMana)</code>
| Set the mana on this unit.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.SetMaxMana | SetMaxMana]]
| <code>void SetMaxMana(float flMaxMana)</code>
| Set the maximum mana of this unit.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.SetMaximumGoldBounty | SetMaximumGoldBounty]]
| <code>void SetMaximumGoldBounty(int iGoldBountyMax)</code>
| Set the maximum gold bounty for this unit.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.SetMinimumGoldBounty | SetMinimumGoldBounty]]
| <code>void SetMinimumGoldBounty(int iGoldBountyMin)</code>
| Set the minimum gold bounty for this unit.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.SetModifierStackCount | SetModifierStackCount]]
| <code>void SetModifierStackCount(string pszScriptName, handle hCaster, int nStackCount)</code>
| Sets the stack count of a given modifier.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.SetMoveCapability | SetMoveCapability]]
| <code>void SetMoveCapability(int iMoveCapabilities)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.SetMustReachEachGoalEntity | SetMustReachEachGoalEntity]]
| <code>void SetMustReachEachGoalEntity(bool must)</code>
| Set whether this NPC is required to reach each goal entity, rather than being allowed to unkink their path.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.SetNeverMoveToClearSpace | SetNeverMoveToClearSpace]]
| <code>void SetNeverMoveToClearSpace(bool neverMoveToClearSpace)</code>
| If set to true, we will never attempt to move this unit to clear space, even when it unphases.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.SetNightTimeVisionRange | SetNightTimeVisionRange]]
| <code>void SetNightTimeVisionRange(int iRange)</code>
| Returns the vision range after modifiers.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.SetOrigin | SetOrigin]]
| <code>void SetOrigin(Vector vLocation)</code>
| Set the unit's origin.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.SetOriginalModel | SetOriginalModel]]
| <code>void SetOriginalModel(string pszModelName)</code>
| Sets the original model of this entity, which it will tend to fall back to anytime its state changes.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.SetPhysicalArmorBaseValue | SetPhysicalArmorBaseValue]]
| <code>void SetPhysicalArmorBaseValue(float flPhysicalArmorValue)</code>
| Sets base physical armor value.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.SetRangedProjectileName | SetRangedProjectileName]]
| <code>void SetRangedProjectileName(string pProjectileName)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.SetRevealRadius | SetRevealRadius]]
| <code>void SetRevealRadius(float revealRadius)</code>
| sets the client side map reveal radius for this unit
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.SetShouldDoFlyHeightVisual | SetShouldDoFlyHeightVisual]]
| <code>void SetShouldDoFlyHeightVisual(bool bShouldVisuallyFly)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.SetStolenScepter | SetStolenScepter]]
| <code>void SetStolenScepter(bool bStolenScepter)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.SetUnitCanRespawn | SetUnitCanRespawn]]
| <code>void SetUnitCanRespawn(bool bCanRespawn)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.SetUnitName | SetUnitName]]
| <code>void SetUnitName(string pName)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.ShouldIdleAcquire | ShouldIdleAcquire]]
| <code>bool ShouldIdleAcquire()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.SpendMana | SpendMana]]
| <code>void SpendMana(float flManaSpent, handle hAbility)</code>
| Spend mana from this unit, this can be used for spending mana from abilities or item usage.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.StartGesture | StartGesture]]
| <code>void StartGesture(int nActivity)</code>
| Add the given gesture activity.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.StartGestureWithPlaybackRate | StartGestureWithPlaybackRate]]
| <code>void StartGestureWithPlaybackRate(int nActivity, float flRate)</code>
| Add the given gesture activity with a playback rate override.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.Stop | Stop]]
| <code>void Stop()</code>
| Stop the current order.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.StopFacing | StopFacing]]
| <code>void StopFacing()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.SwapAbilities | SwapAbilities]]
| <code>void SwapAbilities(string pAbilityName1, string pAbilityName2, bool bEnable1, bool bEnable2)</code>
| Swaps the slots of the two passed abilities and sets them enabled/disabled.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.SwapItems | SwapItems]]
| <code>void SwapItems(int nSlot1, int nSlot2)</code>
| Swap the contents of two item slots (slot1, slot2)
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.TakeItem | TakeItem]]
| <code>handle TakeItem(handle hItem)</code>
| Removed the passed item from this unit's inventory.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.TimeUntilNextAttack | TimeUntilNextAttack]]
| <code>float TimeUntilNextAttack()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.TriggerModifierDodge | TriggerModifierDodge]]
| <code>bool TriggerModifierDodge()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.TriggerSpellAbsorb | TriggerSpellAbsorb]]
| <code>bool TriggerSpellAbsorb(handle hAbility)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.TriggerSpellReflect | TriggerSpellReflect]]
| <code>void TriggerSpellReflect(handle hAbility)</code>
| Trigger the Lotus Orb-like effect.(hAbility)
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.UnHideAbilityToSlot | UnHideAbilityToSlot]]
| <code>void UnHideAbilityToSlot(string pszAbilityName, string pszReplacedAbilityName)</code>
| Makes the first ability unhidden, and puts it where second ability currently is. Will do nothing if the first ability is already unhidden and in a valid slot.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC.UnitCanRespawn | UnitCanRespawn]]
| <code>bool UnitCanRespawn()</code>
|}


''handle'' '''GetGameModeEntity'''()
==== CDOTA_BaseNPC_Building ====
Get the game mode entity
:::::extends [[#CDOTA_BaseNPC|CDOTA_BaseNPC]]
''No Description Set''
{| class="standard-table" style="width: 100%;"
! Function
! Signature
! Description
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Building.GetInvulnCount | GetInvulnCount]]
| <code>int GetInvulnCount()</code>
| Get the invulnerability count for a building.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Building.SetInvulnCount | SetInvulnCount]]
| <code>void SetInvulnCount(int nInvulnCount)</code>
| Set the invulnerability counter of this building.
|}


''bool'' '''DidMatchSignoutTimeOut'''()
==== CDOTA_BaseNPC_Creature ====
true when we have waited some time after end of the game and not received signout
:::::extends [[#CDOTA_BaseNPC|CDOTA_BaseNPC]]
''No Description Set''
{| class="standard-table" style="width: 100%;"
! Function
! Signature
! Description
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Creature.AddItemDrop | AddItemDrop]]
| <code>void AddItemDrop(handle hDropData)</code>
| Add the specified item drop to this creature.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Creature.CreatureLevelUp | CreatureLevelUp]]
| <code>void CreatureLevelUp(int iLevels)</code>
| Level the creature up by the specified number of levels
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Creature.IsChampion | IsChampion]]
| <code>bool IsChampion()</code>
| Is this unit a champion?
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Creature.RemoveAllItemDrops | RemoveAllItemDrops]]
| <code>void RemoveAllItemDrops()</code>
| Remove all item drops from this creature.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Creature.SetArmorGain | SetArmorGain]]
| <code>void SetArmorGain(float flArmorGain)</code>
| Set the armor gained per level on this creature.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Creature.SetAttackTimeGain | SetAttackTimeGain]]
| <code>void SetAttackTimeGain(float flAttackTimeGain)</code>
| Set the attack time gained per level on this creature.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Creature.SetBountyGain | SetBountyGain]]
| <code>void SetBountyGain(int nBountyGain)</code>
| Set the bounty gold gained per level on this creature.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Creature.SetChampion | SetChampion]]
| <code>void SetChampion(bool bIsChampion)</code>
| Flag this unit as a champion creature.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Creature.SetDamageGain | SetDamageGain]]
| <code>void SetDamageGain(int nDamageGain)</code>
| Set the damage gained per level on this creature.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Creature.SetDisableResistanceGain | SetDisableResistanceGain]]
| <code>void SetDisableResistanceGain(float flDisableResistanceGain)</code>
| Set the disable resistance gained per level on this creature.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Creature.SetHPGain | SetHPGain]]
| <code>void SetHPGain(int nHPGain)</code>
| Set the hit points gained per level on this creature.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Creature.SetHPRegenGain | SetHPRegenGain]]
| <code>void SetHPRegenGain(float flHPRegenGain)</code>
| Set the hit points regen gained per level on this creature.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Creature.SetMagicResistanceGain | SetMagicResistanceGain]]
| <code>void SetMagicResistanceGain(float flMagicResistanceGain)</code>
| Set the magic resistance gained per level on this creature.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Creature.SetManaGain | SetManaGain]]
| <code>void SetManaGain(int nManaGain)</code>
| Set the mana points gained per level on this creature.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Creature.SetManaRegenGain | SetManaRegenGain]]
| <code>void SetManaRegenGain(float flManaRegenGain)</code>
| Set the mana points regen gained per level on this creature.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Creature.SetMoveSpeedGain | SetMoveSpeedGain]]
| <code>void SetMoveSpeedGain(int nMoveSpeedGain)</code>
| Set the move speed gained per level on this creature.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Creature.SetRequiresReachingEndPath | SetRequiresReachingEndPath]]
| <code>void SetRequiresReachingEndPath(bool bRequiresReachingEndPath)</code>
| Set whether creatures require reaching their end path before becoming idle
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Creature.SetXPGain | SetXPGain]]
| <code>void SetXPGain(int nXPGain)</code>
| Set the XP gained per level on this creature.
|}


''void'' '''SetTimeOfDay'''(''float'')
==== CDOTA_BaseNPC_Hero ====
Set the time of day.
:::::extends [[#CDOTA_BaseNPC|CDOTA_BaseNPC]]
''No Description Set''
{| class="standard-table" style="width: 100%;"
! Function
! Signature
! Description
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.AddExperience | AddExperience]]
| <code>bool AddExperience(float flXP, int nReason, bool bApplyBotDifficultyScaling, bool bIncrementTotal)</code>
| Params: Float XP, Bool applyBotDifficultyScaling
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.Buyback | Buyback]]
| <code>void Buyback()</code>
| Spend the gold and buyback with this hero.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.CalculateStatBonus | CalculateStatBonus]]
| <code>void CalculateStatBonus()</code>
| Recalculate all stats after the hero gains stats.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.CanEarnGold | CanEarnGold]]
| <code>bool CanEarnGold()</code>
| Returns boolean value result of buyback gold limit time less than game time.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.ClearLastHitMultikill | ClearLastHitMultikill]]
| <code>void ClearLastHitMultikill()</code>
| Value is stored in PlayerResource.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.ClearLastHitStreak | ClearLastHitStreak]]
| <code>void ClearLastHitStreak()</code>
| Value is stored in PlayerResource.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.ClearStreak | ClearStreak]]
| <code>void ClearStreak()</code>
| Value is stored in PlayerResource.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.GetAbilityPoints | GetAbilityPoints]]
| <code>int GetAbilityPoints()</code>
| Gets the current unspent ability points.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.GetAdditionalOwnedUnits | GetAdditionalOwnedUnits]]
| <code>table GetAdditionalOwnedUnits()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.GetAgility | GetAgility]]
| <code>float GetAgility()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.GetAgilityGain | GetAgilityGain]]
| <code>float GetAgilityGain()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.GetAssists | GetAssists]]
| <code>int GetAssists()</code>
| Value is stored in PlayerResource.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.GetAttacker | GetAttacker]]
| <code>int GetAttacker(int nIndex)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.GetBaseAgility | GetBaseAgility]]
| <code>float GetBaseAgility()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.GetBaseDamageMax | GetBaseDamageMax]]
| <code>int GetBaseDamageMax()</code>
| Hero damage is also affected by attributes.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.GetBaseDamageMin | GetBaseDamageMin]]
| <code>int GetBaseDamageMin()</code>
| Hero damage is also affected by attributes.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.GetBaseIntellect | GetBaseIntellect]]
| <code>float GetBaseIntellect()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.GetBaseManaRegen | GetBaseManaRegen]]
| <code>float GetBaseManaRegen()</code>
| Returns the base mana regen.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.GetBaseStrength | GetBaseStrength]]
| <code>float GetBaseStrength()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.GetBonusDamageFromPrimaryStat | GetBonusDamageFromPrimaryStat]]
| <code>int GetBonusDamageFromPrimaryStat()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.GetBuybackCooldownTime | GetBuybackCooldownTime]]
| <code>float GetBuybackCooldownTime()</code>
| Return float value for the amount of time left on cooldown for this hero's buyback.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.GetBuybackCost | GetBuybackCost]]
| <code>int GetBuybackCost(bool bReturnOldValues)</code>
| Return integer value for the gold cost of a buyback.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.GetBuybackGoldLimitTime | GetBuybackGoldLimitTime]]
| <code>float GetBuybackGoldLimitTime()</code>
| Returns the amount of time gold gain is limited after buying back.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.GetCurrentXP | GetCurrentXP]]
| <code>int GetCurrentXP()</code>
| Returns the amount of XP 
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.GetDeathGoldCost | GetDeathGoldCost]]
| <code>int GetDeathGoldCost()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.GetDeaths | GetDeaths]]
| <code>int GetDeaths()</code>
| Value is stored in PlayerResource.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.GetDenies | GetDenies]]
| <code>int GetDenies()</code>
| Value is stored in PlayerResource.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.GetGold | GetGold]]
| <code>int GetGold()</code>
| Returns gold amount for the player owning this hero
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.GetGoldBounty | GetGoldBounty]]
| <code>int GetGoldBounty()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.GetIncreasedAttackSpeed | GetIncreasedAttackSpeed]]
| <code>float GetIncreasedAttackSpeed()</code>
| Hero attack speed is also affected by agility.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.GetIntellect | GetIntellect]]
| <code>float GetIntellect()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.GetIntellectGain | GetIntellectGain]]
| <code>float GetIntellectGain()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.GetKills | GetKills]]
| <code>int GetKills()</code>
| Value is stored in PlayerResource.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.GetLastHits | GetLastHits]]
| <code>int GetLastHits()</code>
| Value is stored in PlayerResource.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.GetMostRecentDamageTime | GetMostRecentDamageTime]]
| <code>float GetMostRecentDamageTime()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.GetMultipleKillCount | GetMultipleKillCount]]
| <code>int GetMultipleKillCount()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.GetNumAttackers | GetNumAttackers]]
| <code>int GetNumAttackers()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.GetNumItemsInInventory | GetNumItemsInInventory]]
| <code>int GetNumItemsInInventory()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.GetNumItemsInStash | GetNumItemsInStash]]
| <code>int GetNumItemsInStash()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.GetPhysicalArmorBaseValue | GetPhysicalArmorBaseValue]]
| <code>float GetPhysicalArmorBaseValue()</code>
| Hero armor is affected by attributes.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.GetPlayerID | GetPlayerID]]
| <code>int GetPlayerID()</code>
| Returns player ID of the player owning this hero
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.GetPrimaryAttribute | GetPrimaryAttribute]]
| <code>int GetPrimaryAttribute()</code>
| 0 = strength, 1 = agility, 2 = intelligence.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.GetPrimaryStatValue | GetPrimaryStatValue]]
| <code>float GetPrimaryStatValue()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.GetRespawnTime | GetRespawnTime]]
| <code>float GetRespawnTime()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.GetRespawnsDisabled | GetRespawnsDisabled]]
| <code>bool GetRespawnsDisabled()</code>
| Is this hero prevented from respawning?
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.GetStreak | GetStreak]]
| <code>int GetStreak()</code>
| Value is stored in PlayerResource.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.GetStrength | GetStrength]]
| <code>float GetStrength()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.GetStrengthGain | GetStrengthGain]]
| <code>float GetStrengthGain()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.GetTimeUntilRespawn | GetTimeUntilRespawn]]
| <code>float GetTimeUntilRespawn()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.GetTogglableWearable | GetTogglableWearable]]
| <code>handle GetTogglableWearable(int nSlotType)</code>
| Get wearable entity in slot (slot)
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.HasAnyAvailableInventorySpace | HasAnyAvailableInventorySpace]]
| <code>bool HasAnyAvailableInventorySpace()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.HasFlyingVision | HasFlyingVision]]
| <code>bool HasFlyingVision()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.HasOwnerAbandoned | HasOwnerAbandoned]]
| <code>bool HasOwnerAbandoned()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.HasRoomForItem | HasRoomForItem]]
| <code>int HasRoomForItem(string pItemName, bool bIncludeStashCombines, bool bAllowSelling)</code>
| Args: const char* pItemName, bool bIncludeStashCombines, bool bAllowSelling
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.HeroLevelUp | HeroLevelUp]]
| <code>void HeroLevelUp(bool bPlayEffects)</code>
| Levels up the hero, true or false to play effects.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.IncrementAssists | IncrementAssists]]
| <code>void IncrementAssists(int iKillerID)</code>
| Value is stored in PlayerResource.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.IncrementDeaths | IncrementDeaths]]
| <code>void IncrementDeaths(int iKillerID)</code>
| Value is stored in PlayerResource.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.IncrementDenies | IncrementDenies]]
| <code>void IncrementDenies()</code>
| Value is stored in PlayerResource.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.IncrementKills | IncrementKills]]
| <code>void IncrementKills(int iVictimID)</code>
| Passed ID is for the victim, killer ID is ID of the current hero.  Value is stored in PlayerResource.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.IncrementLastHitMultikill | IncrementLastHitMultikill]]
| <code>void IncrementLastHitMultikill()</code>
| Value is stored in PlayerResource.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.IncrementLastHitStreak | IncrementLastHitStreak]]
| <code>void IncrementLastHitStreak()</code>
| Value is stored in PlayerResource.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.IncrementLastHits | IncrementLastHits]]
| <code>void IncrementLastHits()</code>
| Value is stored in PlayerResource.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.IncrementNearbyCreepDeaths | IncrementNearbyCreepDeaths]]
| <code>void IncrementNearbyCreepDeaths()</code>
| Value is stored in PlayerResource.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.IncrementStreak | IncrementStreak]]
| <code>void IncrementStreak()</code>
| Value is stored in PlayerResource.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.IsBuybackDisabledByReapersScythe | IsBuybackDisabledByReapersScythe]]
| <code>bool IsBuybackDisabledByReapersScythe()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.IsReincarnating | IsReincarnating]]
| <code>bool IsReincarnating()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.IsStashEnabled | IsStashEnabled]]
| <code>bool IsStashEnabled()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.KilledHero | KilledHero]]
| <code>void KilledHero(handle hHero, handle hInflictor)</code>
| Args: Hero, Inflictor
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.ModifyAgility | ModifyAgility]]
| <code>void ModifyAgility(float flNewAgility)</code>
| Adds passed value to base attribute value, then calls CalculateStatBonus.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.ModifyGold | ModifyGold]]
| <code>int ModifyGold(int iGoldChange, bool bReliable, int iReason)</code>
| Gives this hero some gold.  Args: int nGoldChange, bool bReliable, int reason
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.ModifyIntellect | ModifyIntellect]]
| <code>void ModifyIntellect(float flNewIntellect)</code>
| Adds passed value to base attribute value, then calls CalculateStatBonus.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.ModifyStrength | ModifyStrength]]
| <code>void ModifyStrength(float flNewStrength)</code>
| Adds passed value to base attribute value, then calls CalculateStatBonus.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.PerformTaunt | PerformTaunt]]
| <code>void PerformTaunt()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.RecordLastHit | RecordLastHit]]
| <code>void RecordLastHit()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.RespawnHero | RespawnHero]]
| <code>void RespawnHero(bool bBuyBack, bool bRespawnPenalty)</code>
| Respawn this hero.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.SetAbilityPoints | SetAbilityPoints]]
| <code>void SetAbilityPoints(int iPoints)</code>
| Sets the current unspent ability points.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.SetBaseAgility | SetBaseAgility]]
| <code>void SetBaseAgility(float flAgility)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.SetBaseIntellect | SetBaseIntellect]]
| <code>void SetBaseIntellect(float flIntellect)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.SetBaseStrength | SetBaseStrength]]
| <code>void SetBaseStrength(float flStrength)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.SetBotDifficulty | SetBotDifficulty]]
| <code>void SetBotDifficulty(int nDifficulty)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.SetBuyBackDisabledByReapersScythe | SetBuyBackDisabledByReapersScythe]]
| <code>void SetBuyBackDisabledByReapersScythe(bool bBuybackDisabled)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.SetBuybackCooldownTime | SetBuybackCooldownTime]]
| <code>void SetBuybackCooldownTime(float flTime)</code>
| Sets the buyback cooldown time.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.SetBuybackGoldLimitTime | SetBuybackGoldLimitTime]]
| <code>void SetBuybackGoldLimitTime(float flTime)</code>
| Set the amount of time gold gain is limited after buying back.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.SetCustomDeathXP | SetCustomDeathXP]]
| <code>void SetCustomDeathXP(int iValue)</code>
| Sets a custom experience value for this hero.  Note, GameRules boolean must be set for this to work!
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.SetGold | SetGold]]
| <code>void SetGold(int iGold, bool bReliable)</code>
| Sets the gold amount for the player owning this hero
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.SetPlayerID | SetPlayerID]]
| <code>void SetPlayerID(int iPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.SetPrimaryAttribute | SetPrimaryAttribute]]
| <code>void SetPrimaryAttribute(int nPrimaryAttribute)</code>
| Set this hero's primary attribute value.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.SetRespawnPosition | SetRespawnPosition]]
| <code>void SetRespawnPosition(Vector vOrigin)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.SetRespawnsDisabled | SetRespawnsDisabled]]
| <code>void SetRespawnsDisabled(bool bDisableRespawns)</code>
| Prevent this hero from respawning.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.SetStashEnabled | SetStashEnabled]]
| <code>void SetStashEnabled(bool bEnabled)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.SetTimeUntilRespawn | SetTimeUntilRespawn]]
| <code>void SetTimeUntilRespawn(float time)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.ShouldDoFlyHeightVisual | ShouldDoFlyHeightVisual]]
| <code>bool ShouldDoFlyHeightVisual()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.SpendGold | SpendGold]]
| <code>void SpendGold(int iCost, int iReason)</code>
| Args: int nGold, int nReason
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.UnitCanRespawn | UnitCanRespawn]]
| <code>bool UnitCanRespawn()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.UpgradeAbility | UpgradeAbility]]
| <code>void UpgradeAbility(handle hAbility)</code>
| This upgrades the passed ability if it exists and the hero has enough ability points.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Hero.WillReincarnate | WillReincarnate]]
| <code>bool WillReincarnate()</code>
|}


''int'' '''GetCustomGameDifficulty'''()
==== CDOTA_BaseNPC_RotatableBuilding ====
Returns the difficulty level of the custom game mode
:::::extends [[#CDOTA_BaseNPC|CDOTA_BaseNPC]]
''No Description Set''
{| class="standard-table" style="width: 100%;"
! Function
! Signature
! Description
|}


''void'' '''SetOverlayHealthBarUnit'''(''handle'', ''int'')
==== CDOTA_BaseNPC_Shop ====
Show this unit's health on the overlay health bar
:::::extends [[#CDOTA_BaseNPC_Building|CDOTA_BaseNPC_Building]]
''No Description Set''
{| class="standard-table" style="width: 100%;"
! Function
! Signature
! Description
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Shop.GetShopType | GetShopType]]
| <code>int GetShopType()</code>
| Get the DOTA_SHOP_TYPE
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Shop.SetShopType | SetShopType]]
| <code>void SetShopType(int eShopType)</code>
| Set the DOTA_SHOP_TYPE.
|}


''void'' '''SetSameHeroSelectionEnabled'''(''bool'')
==== CDOTA_BaseNPC_Trap_Ward ====
When true, players can repeatedly pick the same hero.
:::::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_BaseNPC_Trap_Ward.GetTrapTarget | GetTrapTarget]]
| <code>Vector GetTrapTarget()</code>
| Get the trap target for this entity.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_BaseNPC_Trap_Ward.SetAnimation | SetAnimation]]
| <code>void SetAnimation(string pAnimation)</code>
| Set the animation sequence for this entity.  
|}


''void'' '''SetGoldPerTick'''(''int'')
==== CDOTA_Buff ====
Set the auto gold increase per timed ''int''erval.
''No Description Set''
{| class="standard-table" style="width: 100%;"
! Function
! Signature
! Description
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Buff.AddParticle | AddParticle]]
| <code>void AddParticle(int i, bool bDestroyImmediately, bool bStatusEffect, int iPriority, bool bHeroEffect, bool bOverheadEffect)</code>
| (index, bDestroyImmediately, bStatusEffect, priority, bHeroEffect, bOverheadEffect
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Buff.DecrementStackCount | DecrementStackCount]]
| <code>void DecrementStackCount()</code>
| Decrease this modifier's stack count by 1.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Buff.Destroy | Destroy]]
| <code>void Destroy()</code>
| Run all associated destroy functions, then remove the modifier.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Buff.ForceRefresh | ForceRefresh]]
| <code>void ForceRefresh()</code>
| Run all associated refresh functions on this modifier as if it was re-applied.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Buff.GetAbility | GetAbility]]
| <code>handle GetAbility()</code>
| Get the ability that generated the modifier.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Buff.GetAuraDuration | GetAuraDuration]]
| <code>float GetAuraDuration()</code>
| Returns aura stickiness (default 0.5)
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Buff.GetAuraOwner | GetAuraOwner]]
| <code>handle GetAuraOwner()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Buff.GetCaster | GetCaster]]
| <code>handle GetCaster()</code>
| Get the owner of the ability responsible for the modifier.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Buff.GetClass | GetClass]]
| <code>string GetClass()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Buff.GetCreationTime | GetCreationTime]]
| <code>float GetCreationTime()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Buff.GetDieTime | GetDieTime]]
| <code>float GetDieTime()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Buff.GetDuration | GetDuration]]
| <code>float GetDuration()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Buff.GetElapsedTime | GetElapsedTime]]
| <code>float GetElapsedTime()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Buff.GetLastAppliedTime | GetLastAppliedTime]]
| <code>float GetLastAppliedTime()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Buff.GetName | GetName]]
| <code>string GetName()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Buff.GetParent | GetParent]]
| <code>handle GetParent()</code>
| Get the unit the modifier is parented to.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Buff.GetRemainingTime | GetRemainingTime]]
| <code>float GetRemainingTime()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Buff.GetSerialNumber | GetSerialNumber]]
| <code>int GetSerialNumber()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Buff.GetStackCount | GetStackCount]]
| <code>int GetStackCount()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Buff.HasFunction | HasFunction]]
| <code>bool HasFunction(int iFunction)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Buff.IncrementStackCount | IncrementStackCount]]
| <code>void IncrementStackCount()</code>
| Increase this modifier's stack count by 1.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Buff.IsDebuff | IsDebuff]]
| <code>bool IsDebuff()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Buff.IsHexDebuff | IsHexDebuff]]
| <code>bool IsHexDebuff()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Buff.IsStunDebuff | IsStunDebuff]]
| <code>bool IsStunDebuff()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Buff.SetDuration | SetDuration]]
| <code>void SetDuration(float flDuration, bool bInformClient)</code>
| (flTime, bInformClients)
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Buff.SetStackCount | SetStackCount]]
| <code>void SetStackCount(int iCount)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Buff.StartIntervalThink | StartIntervalThink]]
| <code>void StartIntervalThink(float flInterval)</code>
| Start this modifier's think function (OnIntervalThink) with the given interval (float).  To stop, call with -1.  
|}


''void'' '''SetPreGameTime'''(''float'')
==== CDOTA_CustomUIManager ====
Sets the amount of time players have between picking their hero and game start.
''Global accessor variable: <code>CustomUI</code>''
{| class="standard-table" style="width: 100%;"
! Function
! Signature
! Description
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_CustomUIManager.DynamicHud_Create | DynamicHud_Create]]
| <code>void DynamicHud_Create(int int_1, string string_2, string string_3, handle handle_4)</code>
| Create a new custom UI HUD element for the specified player(s). ( int PlayerID /*-1 means everyone*/, string ElementID /* should be unique */, string LayoutFileName, table DialogVariables /* can be nil */ )
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_CustomUIManager.DynamicHud_Destroy | DynamicHud_Destroy]]
| <code>void DynamicHud_Destroy(int int_1, string string_2)</code>
| Destroy a custom hud element ( int PlayerID /*-1 means everyone*/, string ElementID )
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_CustomUIManager.DynamicHud_SetDialogVariables | DynamicHud_SetDialogVariables]]
| <code>void DynamicHud_SetDialogVariables(int int_1, string string_2, handle handle_3)</code>
| Add or modify dialog variables for an existing custom hud element ( int PlayerID /*-1 means everyone*/, string ElementID, table DialogVariables )
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_CustomUIManager.DynamicHud_SetVisible | DynamicHud_SetVisible]]
| <code>void DynamicHud_SetVisible(int int_1, string string_2, bool bool_3)</code>
| Toggle the visibility of an existing custom hud element ( int PlayerID /*-1 means everyone*/, string ElementID, bool Visible )
|}


''float'' '''GetGameTime'''()
==== CDOTA_Item ====
Returns the number of seconds elapsed since map start. This time doesn't count up when the game is paused
:::::extends [[#CDOTABaseAbility|CDOTABaseAbility]]
''No Description Set''
{| class="standard-table" style="width: 100%;"
! Function
! Signature
! Description
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item.CanBeUsedOutOfInventory | CanBeUsedOutOfInventory]]
| <code>bool CanBeUsedOutOfInventory()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item.GetContainer | GetContainer]]
| <code>handle GetContainer()</code>
| Get the container for this item.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item.GetCost | GetCost]]
| <code>int GetCost()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item.GetCurrentCharges | GetCurrentCharges]]
| <code>int GetCurrentCharges()</code>
| Get the number of charges this item currently has.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item.GetInitialCharges | GetInitialCharges]]
| <code>int GetInitialCharges()</code>
| Get the initial number of charges this item has.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item.GetItemSlot | GetItemSlot]]
| <code>int GetItemSlot()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item.GetItemState | GetItemState]]
| <code>int GetItemState()</code>
| Gets whether item is unequipped or ready.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item.GetParent | GetParent]]
| <code>handle GetParent()</code>
| Get the parent for this item.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item.GetPurchaseTime | GetPurchaseTime]]
| <code>float GetPurchaseTime()</code>
| Get the purchase time of this item
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item.GetPurchaser | GetPurchaser]]
| <code>handle GetPurchaser()</code>
| Get the purchaser for this item.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item.GetSecondaryCharges | GetSecondaryCharges]]
| <code>int GetSecondaryCharges()</code>
| Get the number of secondary charges this item currently has.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item.GetShareability | GetShareability]]
| <code>int GetShareability()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item.IsAlertableItem | IsAlertableItem]]
| <code>bool IsAlertableItem()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item.IsCastOnPickup | IsCastOnPickup]]
| <code>bool IsCastOnPickup()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item.IsCombinable | IsCombinable]]
| <code>bool IsCombinable()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item.IsDisassemblable | IsDisassemblable]]
| <code>bool IsDisassemblable()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item.IsDroppable | IsDroppable]]
| <code>bool IsDroppable()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item.IsInBackpack | IsInBackpack]]
| <code>bool IsInBackpack()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item.IsItem | IsItem]]
| <code>bool IsItem()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item.IsKillable | IsKillable]]
| <code>bool IsKillable()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item.IsMuted | IsMuted]]
| <code>bool IsMuted()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item.IsPermanent | IsPermanent]]
| <code>bool IsPermanent()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item.IsPurchasable | IsPurchasable]]
| <code>bool IsPurchasable()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item.IsRecipe | IsRecipe]]
| <code>bool IsRecipe()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item.IsRecipeGenerated | IsRecipeGenerated]]
| <code>bool IsRecipeGenerated()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item.IsSellable | IsSellable]]
| <code>bool IsSellable()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item.IsStackable | IsStackable]]
| <code>bool IsStackable()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item.LaunchLoot | LaunchLoot]]
| <code>void LaunchLoot(bool bAutoUse, float flHeight, float flDuration, Vector vEndPoint)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item.LaunchLootInitialHeight | LaunchLootInitialHeight]]
| <code>void LaunchLootInitialHeight(bool bAutoUse, float flInitialHeight, float flLaunchHeight, float flDuration, Vector vEndPoint)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item.OnEquip | OnEquip]]
| <code>void OnEquip()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item.OnUnequip | OnUnequip]]
| <code>void OnUnequip()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item.RequiresCharges | RequiresCharges]]
| <code>bool RequiresCharges()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item.SetCanBeUsedOutOfInventory | SetCanBeUsedOutOfInventory]]
| <code>void SetCanBeUsedOutOfInventory(bool bValue)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item.SetCastOnPickup | SetCastOnPickup]]
| <code>void SetCastOnPickup(bool bCastOnPickUp)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item.SetCurrentCharges | SetCurrentCharges]]
| <code>void SetCurrentCharges(int iCharges)</code>
| Set the number of charges on this item
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item.SetDroppable | SetDroppable]]
| <code>void SetDroppable(bool bDroppable)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item.SetItemState | SetItemState]]
| <code>void SetItemState(int iState)</code>
| Sets whether item is unequipped or ready.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item.SetPurchaseTime | SetPurchaseTime]]
| <code>void SetPurchaseTime(float flTime)</code>
| Set the purchase time of this item
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item.SetPurchaser | SetPurchaser]]
| <code>void SetPurchaser(handle hPurchaser)</code>
| Set the purchaser of record for this item.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item.SetSecondaryCharges | SetSecondaryCharges]]
| <code>void SetSecondaryCharges(int iCharges)</code>
| Set the number of secondary charges on this item
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item.SetSellable | SetSellable]]
| <code>void SetSellable(bool bSellable)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item.SetShareability | SetShareability]]
| <code>void SetShareability(int iShareability)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item.SetStacksWithOtherOwners | SetStacksWithOtherOwners]]
| <code>void SetStacksWithOtherOwners(bool bStacksWithOtherOwners)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item.SpendCharge | SpendCharge]]
| <code>void SpendCharge()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item.StacksWithOtherOwners | StacksWithOtherOwners]]
| <code>bool StacksWithOtherOwners()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item.Think | Think]]
| <code>void Think()</code>
| Think this item
|}


''void'' '''SetUseBaseGoldBountyOnHeroes'''(''bool'')
==== CDOTA_ItemSpawner ====
Heroes will use the basic NPC functionality for determining their bounty, rather than DOTA specific formulas.
:::::extends [[#CBaseEntity|CBaseEntity]]
''No Description Set''
{| class="standard-table" style="width: 100%;"
! Function
! Signature
! Description
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_ItemSpawner.GetItemName | GetItemName]]
| <code>string GetItemName()</code>
| Returns the item name
|}


''void'' '''SetRuneSpawnTime'''(''float'')
==== CDOTA_Item_DataDriven ====
Sets the amount of time between rune spawns.
:::::extends [[#CDOTA_Item|CDOTA_Item]]
''No Description Set''
{| class="standard-table" style="width: 100%;"
! Function
! Signature
! Description
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item_DataDriven.ApplyDataDrivenModifier | ApplyDataDrivenModifier]]
| <code>void ApplyDataDrivenModifier(handle hCaster, handle hTarget, string pszModifierName, handle hModifierTable)</code>
| Applies a data driven modifier to the target
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item_DataDriven.ApplyDataDrivenThinker | ApplyDataDrivenThinker]]
| <code>handle ApplyDataDrivenThinker(handle hCaster, Vector vLocation, string pszModifierName, handle hModifierTable)</code>
| Applies a data driven thinker at the location
|}


''void'' '''SetNianFightStartTime'''(''float'')
==== CDOTA_Item_Lua ====
Sets the start time for the Nian fight
:::::extends [[#CDOTA_Item|CDOTA_Item]]
''No Description Set''
{| class="standard-table" style="width: 100%;"
! Function
! Signature
! Description
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item_Lua.CanUnitPickUp | CanUnitPickUp]]
| <code>bool CanUnitPickUp(handle hUnit)</code>
| Returns true if this item can be picked up by the target unit.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item_Lua.CastFilterResult | CastFilterResult]]
| <code>int CastFilterResult()</code>
| Determine whether an issued command with no target is valid.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item_Lua.CastFilterResultLocation | CastFilterResultLocation]]
| <code>int CastFilterResultLocation(Vector vLocation)</code>
| (Vector vLocation) Determine whether an issued command on a location is valid.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item_Lua.CastFilterResultTarget | CastFilterResultTarget]]
| <code>int CastFilterResultTarget(handle hTarget)</code>
| (HSCRIPT hTarget) Determine whether an issued command on a target is valid.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item_Lua.GetAssociatedPrimaryAbilities | GetAssociatedPrimaryAbilities]]
| <code>string GetAssociatedPrimaryAbilities()</code>
| Returns abilities that are stolen simultaneously, or otherwise related in functionality.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item_Lua.GetAssociatedSecondaryAbilities | GetAssociatedSecondaryAbilities]]
| <code>string GetAssociatedSecondaryAbilities()</code>
| Returns other abilities that are stolen simultaneously, or otherwise related in functionality.  Generally hidden abilities.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item_Lua.GetBehavior | GetBehavior]]
| <code>int GetBehavior()</code>
| Return cast behavior type of this ability.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item_Lua.GetCastRange | GetCastRange]]
| <code>int GetCastRange(Vector vLocation, handle hTarget)</code>
| Return cast range of this ability.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item_Lua.GetChannelTime | GetChannelTime]]
| <code>float GetChannelTime()</code>
| Return the channel time of this ability.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item_Lua.GetChannelledManaCostPerSecond | GetChannelledManaCostPerSecond]]
| <code>int GetChannelledManaCostPerSecond(int iLevel)</code>
| Return mana cost at the given level per second while channeling (-1 is current).
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item_Lua.GetConceptRecipientType | GetConceptRecipientType]]
| <code>int GetConceptRecipientType()</code>
| Return who hears speech when this spell is cast.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item_Lua.GetCooldown | GetCooldown]]
| <code>float GetCooldown(int iLevel)</code>
| Return cooldown of this ability.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item_Lua.GetCustomCastError | GetCustomCastError]]
| <code>string GetCustomCastError()</code>
| Return the error string of a failed command with no target.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item_Lua.GetCustomCastErrorLocation | GetCustomCastErrorLocation]]
| <code>string GetCustomCastErrorLocation(Vector vLocation)</code>
| (Vector vLocation) Return the error string of a failed command on a location.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item_Lua.GetCustomCastErrorTarget | GetCustomCastErrorTarget]]
| <code>string GetCustomCastErrorTarget(handle hTarget)</code>
| (HSCRIPT hTarget) Return the error string of a failed command on a target.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item_Lua.GetGoldCost | GetGoldCost]]
| <code>int GetGoldCost(int iLevel)</code>
| Return gold cost at the given level (-1 is current).
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item_Lua.GetIntrinsicModifierName | GetIntrinsicModifierName]]
| <code>string GetIntrinsicModifierName()</code>
| Returns the name of the modifier applied passively by this ability.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item_Lua.GetManaCost | GetManaCost]]
| <code>int GetManaCost(int iLevel)</code>
| Return mana cost at the given level (-1 is current).
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item_Lua.GetPlaybackRateOverride | GetPlaybackRateOverride]]
| <code>float GetPlaybackRateOverride()</code>
| Return the animation rate of the cast animation.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item_Lua.IsHiddenAbilityCastable | IsHiddenAbilityCastable]]
| <code>bool IsHiddenAbilityCastable()</code>
| Returns true if this ability can be used when not on the action panel.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item_Lua.IsHiddenWhenStolen | IsHiddenWhenStolen]]
| <code>bool IsHiddenWhenStolen()</code>
| Returns true if this ability is hidden when stolen by Spell Steal.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item_Lua.IsMuted | IsMuted]]
| <code>bool IsMuted()</code>
| Returns whether this item is muted or not.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item_Lua.IsRefreshable | IsRefreshable]]
| <code>bool IsRefreshable()</code>
| Returns true if this ability is refreshed by Refresher Orb.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item_Lua.IsStealable | IsStealable]]
| <code>bool IsStealable()</code>
| Returns true if this ability can be stolen by Spell Steal.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item_Lua.OnAbilityPhaseInterrupted | OnAbilityPhaseInterrupted]]
| <code>void OnAbilityPhaseInterrupted()</code>
| Cast time did not complete successfully.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item_Lua.OnAbilityPhaseStart | OnAbilityPhaseStart]]
| <code>bool OnAbilityPhaseStart()</code>
| Cast time begins (return true for successful cast).
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item_Lua.OnChannelFinish | OnChannelFinish]]
| <code>void OnChannelFinish(bool bInterrupted)</code>
| (bool bInterrupted) Channel finished.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item_Lua.OnChannelThink | OnChannelThink]]
| <code>void OnChannelThink(float flInterval)</code>
| (float flInterval) Channeling is taking place.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item_Lua.OnHeroCalculateStatBonus | OnHeroCalculateStatBonus]]
| <code>void OnHeroCalculateStatBonus()</code>
| Caster (hero only) gained a level, skilled an ability, or received a new stat bonus.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item_Lua.OnHeroDiedNearby | OnHeroDiedNearby]]
| <code>void OnHeroDiedNearby(handle unit, handle attacker, handle table)</code>
| A hero has died in the vicinity (ie Urn), takes table of params.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item_Lua.OnHeroLevelUp | OnHeroLevelUp]]
| <code>void OnHeroLevelUp()</code>
| Caster gained a level.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item_Lua.OnInventoryContentsChanged | OnInventoryContentsChanged]]
| <code>void OnInventoryContentsChanged()</code>
| Caster inventory changed.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item_Lua.OnItemEquipped | OnItemEquipped]]
| <code>void OnItemEquipped(handle hItem)</code>
| ( HSCRIPT hItem ) Caster equipped item.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item_Lua.OnOwnerDied | OnOwnerDied]]
| <code>void OnOwnerDied()</code>
| Caster died.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item_Lua.OnOwnerSpawned | OnOwnerSpawned]]
| <code>void OnOwnerSpawned()</code>
| Caster respawned or spawned for the first time.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item_Lua.OnProjectileHit | OnProjectileHit]]
| <code>bool OnProjectileHit(handle hTarget, Vector vLocation)</code>
| (HSCRIPT hTarget, Vector vLocation) Projectile has collided with a given target or reached its destination (target is invalid).
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item_Lua.OnProjectileThink | OnProjectileThink]]
| <code>void OnProjectileThink(Vector vLocation)</code>
| (Vector vLocation) Projectile is actively moving.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item_Lua.OnSpellStart | OnSpellStart]]
| <code>void OnSpellStart()</code>
| Cast time finished, spell effects begin.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item_Lua.OnStolen | OnStolen]]
| <code>void OnStolen(handle hSourceAbility)</code>
| ( HSCRIPT hAbility ) Special behavior when stolen by Spell Steal.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item_Lua.OnToggle | OnToggle]]
| <code>void OnToggle()</code>
| Ability is toggled on/off.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item_Lua.OnUnStolen | OnUnStolen]]
| <code>void OnUnStolen()</code>
| Special behavior when lost by Spell Steal.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item_Lua.OnUpgrade | OnUpgrade]]
| <code>void OnUpgrade()</code>
| Ability gained a level.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item_Lua.ProcsMagicStick | ProcsMagicStick]]
| <code>bool ProcsMagicStick()</code>
| Returns true if this ability will generate magic stick charges for nearby enemies.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item_Lua.SpeakTrigger | SpeakTrigger]]
| <code>int SpeakTrigger()</code>
| Return the type of speech used.
|}


''void'' '''SetHeroMinimapIconSize'''(''int'')
==== CDOTA_Item_Physical ====
(nMinimapHeroIconSize) - Set the hero minimap icon size.
:::::extends [[#CBaseAnimating|CBaseAnimating]]
''No Description Set''
{| class="standard-table" style="width: 100%;"
! Function
! Signature
! Description
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item_Physical.GetContainedItem | GetContainedItem]]
| <code>handle GetContainedItem()</code>
| Returned the contained item.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item_Physical.GetCreationTime | GetCreationTime]]
| <code>float GetCreationTime()</code>
| Returns the game time when this item was created in the world
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Item_Physical.SetContainedItem | SetContainedItem]]
| <code>void SetContainedItem(handle hItem)</code>
| Set the contained item.  
|}


''void'' '''SetSafeToLeave'''(''bool'')
==== CDOTA_MapTree ====
(bSafeToLeave) - Mark this game as safe to leave.
:::::extends [[#CBaseEntity|CBaseEntity]]
''No Description Set''
{| class="standard-table" style="width: 100%;"
! Function
! Signature
! Description
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_MapTree.CutDown | CutDown]]
| <code>void CutDown(int nTeamNumberKnownTo)</code>
| Cuts down this tree. Parameters: int nTeamNumberKnownTo (-1 = invalid team)  
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_MapTree.CutDownRegrowAfter | CutDownRegrowAfter]]
| <code>void CutDownRegrowAfter(float flRegrowAfter, int nTeamNumberKnownTo)</code>
| Cuts down this tree. Parameters: float flRegrowAfter (-1 = never regrow), int nTeamNumberKnownTo (-1 = invalid team)
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_MapTree.GrowBack | GrowBack]]
| <code>void GrowBack()</code>
| Grows back the tree if it was cut down.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_MapTree.IsStanding | IsStanding]]
| <code>bool IsStanding()</code>
| Returns true if the tree is standing, false if it has been cut down
|}


''float'' '''GetTimeOfDay'''()
==== CDOTA_Modifier_Lua ====
Get the time of day
:::::extends [[#CDOTA_Buff|CDOTA_Buff]]
''No Description Set''
{| class="standard-table" style="width: 100%;"
! Function
! Signature
! Description
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Modifier_Lua.AllowIllusionDuplicate | AllowIllusionDuplicate]]
| <code>bool AllowIllusionDuplicate()</code>
| True/false if this modifier is active on illusions.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Modifier_Lua.CanParentBeAutoAttacked | CanParentBeAutoAttacked]]
| <code>bool CanParentBeAutoAttacked()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Modifier_Lua.DestroyOnExpire | DestroyOnExpire]]
| <code>bool DestroyOnExpire()</code>
| True/false if this buff is removed when the duration expires.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Modifier_Lua.GetAttributes | GetAttributes]]
| <code>int GetAttributes()</code>
| Return the types of attributes applied to this modifier (enum value from DOTAModifierAttribute_t
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Modifier_Lua.GetAuraDuration | GetAuraDuration]]
| <code>float GetAuraDuration()</code>
| Returns aura stickiness
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Modifier_Lua.GetAuraEntityReject | GetAuraEntityReject]]
| <code>bool GetAuraEntityReject(handle hEntity)</code>
| Return true/false if this entity should receive the aura under specific conditions
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Modifier_Lua.GetAuraRadius | GetAuraRadius]]
| <code>int GetAuraRadius()</code>
| Return the range around the parent this aura tries to apply its buff.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Modifier_Lua.GetAuraSearchFlags | GetAuraSearchFlags]]
| <code>int GetAuraSearchFlags()</code>
| Return the unit flags this aura respects when placing buffs.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Modifier_Lua.GetAuraSearchTeam | GetAuraSearchTeam]]
| <code>int GetAuraSearchTeam()</code>
| Return the teams this aura applies its buff to.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Modifier_Lua.GetAuraSearchType | GetAuraSearchType]]
| <code>int GetAuraSearchType()</code>
| Return the unit classifications this aura applies its buff to.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Modifier_Lua.GetEffectAttachType | GetEffectAttachType]]
| <code>int GetEffectAttachType()</code>
| Return the attach type of the particle system from GetEffectName.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Modifier_Lua.GetEffectName | GetEffectName]]
| <code>string GetEffectName()</code>
| Return the name of the particle system that is created while this modifier is active.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Modifier_Lua.GetHeroEffectName | GetHeroEffectName]]
| <code>string GetHeroEffectName()</code>
| Return the name of the hero effect particle system that is created while this modifier is active.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Modifier_Lua.GetModifierAura | GetModifierAura]]
| <code>string GetModifierAura()</code>
| The name of the secondary modifier that will be applied by this modifier (if it is an aura).
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Modifier_Lua.GetPriority | GetPriority]]
| <code>int GetPriority()</code>
| Return the priority order this modifier will be applied over others.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Modifier_Lua.GetStatusEffectName | GetStatusEffectName]]
| <code>string GetStatusEffectName()</code>
| Return the name of the status effect particle system that is created while this modifier is active.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Modifier_Lua.GetTexture | GetTexture]]
| <code>string GetTexture()</code>
| Return the name of the buff icon to be shown for this modifier.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Modifier_Lua.HeroEffectPriority | HeroEffectPriority]]
| <code>int HeroEffectPriority()</code>
| Relationship of this hero effect with those from other buffs (higher is more likely to be shown).
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Modifier_Lua.IsAura | IsAura]]
| <code>bool IsAura()</code>
| True/false if this modifier is an aura.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Modifier_Lua.IsAuraActiveOnDeath | IsAuraActiveOnDeath]]
| <code>bool IsAuraActiveOnDeath()</code>
| True/false if this aura provides buffs when the parent is dead.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Modifier_Lua.IsDebuff | IsDebuff]]
| <code>bool IsDebuff()</code>
| True/false if this modifier should be displayed as a debuff.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Modifier_Lua.IsHidden | IsHidden]]
| <code>bool IsHidden()</code>
| True/false if this modifier should be displayed on the buff bar.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Modifier_Lua.IsPermanent | IsPermanent]]
| <code>bool IsPermanent()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Modifier_Lua.IsPurgable | IsPurgable]]
| <code>bool IsPurgable()</code>
| True/false if this modifier can be purged.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Modifier_Lua.IsPurgeException | IsPurgeException]]
| <code>bool IsPurgeException()</code>
| True/false if this modifier can be purged by strong dispels.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Modifier_Lua.IsStunDebuff | IsStunDebuff]]
| <code>bool IsStunDebuff()</code>
| True/false if this modifier is considered a stun for purge reasons.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Modifier_Lua.OnCreated | OnCreated]]
| <code>void OnCreated(handle table)</code>
| Runs when the modifier is created.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Modifier_Lua.OnDestroy | OnDestroy]]
| <code>void OnDestroy()</code>
| Runs when the modifier is destroyed (after unit loses modifier).
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Modifier_Lua.OnIntervalThink | OnIntervalThink]]
| <code>void OnIntervalThink()</code>
| Runs when the think interval occurs.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Modifier_Lua.OnRefresh | OnRefresh]]
| <code>void OnRefresh(handle table)</code>
| Runs when the modifier is refreshed.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Modifier_Lua.OnRemoved | OnRemoved]]
| <code>void OnRemoved()</code>
| Runs when the modifier is destroyed (before unit loses modifier).
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Modifier_Lua.OnStackCountChanged | OnStackCountChanged]]
| <code>void OnStackCountChanged(int iStackCount)</code>
| Runs when stack count changes (param is old count).
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Modifier_Lua.RemoveOnDeath | RemoveOnDeath]]
| <code>bool RemoveOnDeath()</code>
| True/false if this modifier is removed when the parent dies.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Modifier_Lua.ShouldUseOverheadOffset | ShouldUseOverheadOffset]]
| <code>bool ShouldUseOverheadOffset()</code>
| Apply the overhead offset to the attached effect.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Modifier_Lua.StatusEffectPriority | StatusEffectPriority]]
| <code>int StatusEffectPriority()</code>
| Relationship of this status effect with those from other buffs (higher is more likely to be shown).
|}


''void'' '''SetRuneMinimapIconScale'''(''float'')
==== CDOTA_Modifier_Lua_Horizontal_Motion ====
(flMinimapRuneIconScale) - Scale the rune icons on the minimap.
:::::extends [[#CDOTA_Modifier_Lua|CDOTA_Modifier_Lua]]
''No Description Set''
{| class="standard-table" style="width: 100%;"
! Function
! Signature
! Description
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Modifier_Lua_Horizontal_Motion.ApplyHorizontalMotionController | ApplyHorizontalMotionController]]
| <code>bool ApplyHorizontalMotionController()</code>
| Starts the horizontal motion controller effects for this buff.  Returns true if successful.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Modifier_Lua_Horizontal_Motion.GetPriority | GetPriority]]
| <code>int GetPriority()</code>
| Get the priority
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Modifier_Lua_Horizontal_Motion.OnHorizontalMotionInterrupted | OnHorizontalMotionInterrupted]]
| <code>void OnHorizontalMotionInterrupted()</code>
| Called when the motion gets interrupted.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Modifier_Lua_Horizontal_Motion.SetPriority | SetPriority]]
| <code>void SetPriority(int nMotionPriority)</code>
| Set the priority
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Modifier_Lua_Horizontal_Motion.UpdateHorizontalMotion | UpdateHorizontalMotion]]
| <code>void UpdateHorizontalMotion(handle me, float dt)</code>
| Perform any motion from the given interval on the NPC.  
|}


= Class CToneMapControllerComponent =
==== CDOTA_Modifier_Lua_Motion_Both ====
:::::extends [[#CDOTA_Modifier_Lua|CDOTA_Modifier_Lua]]
''No Description Set''
{| class="standard-table" style="width: 100%;"
! Function
! Signature
! Description
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Modifier_Lua_Motion_Both.ApplyHorizontalMotionController | ApplyHorizontalMotionController]]
| <code>bool ApplyHorizontalMotionController()</code>
| Starts the horizontal motion controller effects for this buff.  Returns true if successful.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Modifier_Lua_Motion_Both.ApplyVerticalMotionController | ApplyVerticalMotionController]]
| <code>bool ApplyVerticalMotionController()</code>
| Starts the vertical motion controller effects for this buff.  Returns true if successful.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Modifier_Lua_Motion_Both.GetPriority | GetPriority]]
| <code>int GetPriority()</code>
| Get the priority
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Modifier_Lua_Motion_Both.OnHorizontalMotionInterrupted | OnHorizontalMotionInterrupted]]
| <code>void OnHorizontalMotionInterrupted()</code>
| Called when the motion gets interrupted.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Modifier_Lua_Motion_Both.OnVerticalMotionInterrupted | OnVerticalMotionInterrupted]]
| <code>void OnVerticalMotionInterrupted()</code>
| Called when the motion gets interrupted.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Modifier_Lua_Motion_Both.SetPriority | SetPriority]]
| <code>void SetPriority(int nMotionPriority)</code>
| Set the priority
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Modifier_Lua_Motion_Both.UpdateHorizontalMotion | UpdateHorizontalMotion]]
| <code>void UpdateHorizontalMotion(handle me, float dt)</code>
| Perform any motion from the given interval on the NPC.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Modifier_Lua_Motion_Both.UpdateVerticalMotion | UpdateVerticalMotion]]
| <code>void UpdateVerticalMotion(handle me, float dt)</code>
| Perform any motion from the given interval on the NPC.
|}


''float'' '''GetMinExposure'''()
==== CDOTA_Modifier_Lua_Vertical_Motion ====
Gets min exposure for this tonemap controller
:::::extends [[#CDOTA_Modifier_Lua|CDOTA_Modifier_Lua]]
''No Description Set''
{| class="standard-table" style="width: 100%;"
! Function
! Signature
! Description
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Modifier_Lua_Vertical_Motion.ApplyVerticalMotionController | ApplyVerticalMotionController]]
| <code>bool ApplyVerticalMotionController()</code>
| Starts the vertical motion controller effects for this buff.  Returns true if successful.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Modifier_Lua_Vertical_Motion.GetMotionPriority | GetMotionPriority]]
| <code>int GetMotionPriority()</code>
| Get the priority
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Modifier_Lua_Vertical_Motion.OnVerticalMotionInterrupted | OnVerticalMotionInterrupted]]
| <code>void OnVerticalMotionInterrupted()</code>
| Called when the motion gets interrupted.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Modifier_Lua_Vertical_Motion.SetMotionPriority | SetMotionPriority]]
| <code>void SetMotionPriority(int nMotionPriority)</code>
| Set the priority
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Modifier_Lua_Vertical_Motion.UpdateVerticalMotion | UpdateVerticalMotion]]
| <code>void UpdateVerticalMotion(handle me, float dt)</code>
| Perform any motion from the given interval on the NPC.
|}


''float'' '''GetMaxExposure'''()
==== CDOTA_PlayerResource ====
Gets max exposure for this tonemap controller
:::::extends [[#CBaseEntity|CBaseEntity]]
''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]]
| <code>void AddAegisPickup(int iPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.AddClaimedFarm | AddClaimedFarm]]
| <code>void AddClaimedFarm(int iPlayerID, float flFarmValue, bool bEarnedValue)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.AddGoldSpentOnSupport | AddGoldSpentOnSupport]]
| <code>void AddGoldSpentOnSupport(int iPlayerID, int iCost)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.AddRunePickup | AddRunePickup]]
| <code>void AddRunePickup(int iPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.AreUnitsSharedWithPlayerID | AreUnitsSharedWithPlayerID]]
| <code>bool AreUnitsSharedWithPlayerID(int nUnitOwnerPlayerID, int nOtherPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.CanRepick | CanRepick]]
| <code>bool CanRepick(int iPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.ClearKillsMatrix | ClearKillsMatrix]]
| <code>void ClearKillsMatrix(int iPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.ClearLastHitMultikill | ClearLastHitMultikill]]
| <code>void ClearLastHitMultikill(int iPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.ClearLastHitStreak | ClearLastHitStreak]]
| <code>void ClearLastHitStreak(int iPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.ClearRawPlayerDamageMatrix | ClearRawPlayerDamageMatrix]]
| <code>void ClearRawPlayerDamageMatrix(int iPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.ClearStreak | ClearStreak]]
| <code>void ClearStreak(int iPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetAegisPickups | GetAegisPickups]]
| <code>int GetAegisPickups(int iPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetAssists | GetAssists]]
| <code>int GetAssists(int iPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetBroadcasterChannel | GetBroadcasterChannel]]
| <code>unsigned GetBroadcasterChannel(int iPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetBroadcasterChannelSlot | GetBroadcasterChannelSlot]]
| <code>unsigned GetBroadcasterChannelSlot(int iPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetClaimedDenies | GetClaimedDenies]]
| <code>int GetClaimedDenies(int iPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetClaimedFarm | GetClaimedFarm]]
| <code>float GetClaimedFarm(int iPlayerID, bool bOnlyEarned)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetClaimedMisses | GetClaimedMisses]]
| <code>int GetClaimedMisses(int iPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetConnectionState | GetConnectionState]]
| <code><unknown> GetConnectionState(int iPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetCreepDamageTaken | GetCreepDamageTaken]]
| <code>int GetCreepDamageTaken(int iPlayerID, bool bTotal)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetCustomBuybackCooldown | GetCustomBuybackCooldown]]
| <code>float GetCustomBuybackCooldown(int iPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetCustomBuybackCost | GetCustomBuybackCost]]
| <code>int GetCustomBuybackCost(int iPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetCustomTeamAssignment | GetCustomTeamAssignment]]
| <code>int GetCustomTeamAssignment(int iPlayerID)</code>
| Get the current custom team assignment for this player.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetDamageDoneToHero | GetDamageDoneToHero]]
| <code>int GetDamageDoneToHero(int iPlayerID, int iVictimID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetDeaths | GetDeaths]]
| <code>int GetDeaths(int iPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetDenies | GetDenies]]
| <code>int GetDenies(int iPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetEventPointsForPlayerID | GetEventPointsForPlayerID]]
| <code>unsigned GetEventPointsForPlayerID(int nPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetEventPremiumPoints | GetEventPremiumPoints]]
| <code>unsigned GetEventPremiumPoints(int nPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetEventRanks | GetEventRanks]]
| <code><unknown> GetEventRanks(int nPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetGold | GetGold]]
| <code>int GetGold(int iPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetGoldLostToDeath | GetGoldLostToDeath]]
| <code>int GetGoldLostToDeath(int iPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetGoldPerMin | GetGoldPerMin]]
| <code>float GetGoldPerMin(int iPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetGoldSpentOnBuybacks | GetGoldSpentOnBuybacks]]
| <code>int GetGoldSpentOnBuybacks(int iPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetGoldSpentOnConsumables | GetGoldSpentOnConsumables]]
| <code>int GetGoldSpentOnConsumables(int iPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetGoldSpentOnItems | GetGoldSpentOnItems]]
| <code>int GetGoldSpentOnItems(int iPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetGoldSpentOnSupport | GetGoldSpentOnSupport]]
| <code>int GetGoldSpentOnSupport(int iPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetHealing | GetHealing]]
| <code>float GetHealing(int iPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetHeroDamageTaken | GetHeroDamageTaken]]
| <code>int GetHeroDamageTaken(int iPlayerID, bool bTotal)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetKills | GetKills]]
| <code>int GetKills(int iPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetKillsDoneToHero | GetKillsDoneToHero]]
| <code>int GetKillsDoneToHero(int iPlayerID, int iVictimID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetLastHitMultikill | GetLastHitMultikill]]
| <code>int GetLastHitMultikill(int iPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetLastHitStreak | GetLastHitStreak]]
| <code>int GetLastHitStreak(int iPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetLastHits | GetLastHits]]
| <code>int GetLastHits(int iPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetLevel | GetLevel]]
| <code>int GetLevel(int iPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetMisses | GetMisses]]
| <code>int GetMisses(int iPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetNearbyCreepDeaths | GetNearbyCreepDeaths]]
| <code>int GetNearbyCreepDeaths(int iPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetNetWorth | GetNetWorth]]
| <code>int GetNetWorth(int iPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetNthCourierForTeam | GetNthCourierForTeam]]
| <code>handle GetNthCourierForTeam(int nCourierIndex, int nTeamNumber)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetNthPlayerIDOnTeam | GetNthPlayerIDOnTeam]]
| <code>int GetNthPlayerIDOnTeam(int iTeamNumber, int iNthPlayer)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetNumConsumablesPurchased | GetNumConsumablesPurchased]]
| <code>int GetNumConsumablesPurchased(int iPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetNumCouriersForTeam | GetNumCouriersForTeam]]
| <code>int GetNumCouriersForTeam(int nTeamNumber)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetNumItemsPurchased | GetNumItemsPurchased]]
| <code>int GetNumItemsPurchased(int iPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetPartyID | GetPartyID]]
| <code>uint64 GetPartyID(int iPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetPlayer | GetPlayer]]
| <code>handle GetPlayer(int iPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetPlayerCount | GetPlayerCount]]
| <code>int GetPlayerCount()</code>
| Includes spectators and players not assigned to a team
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetPlayerCountForTeam | GetPlayerCountForTeam]]
| <code>int GetPlayerCountForTeam(int iTeam)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetPlayerLoadedCompletely | GetPlayerLoadedCompletely]]
| <code>bool GetPlayerLoadedCompletely(int iPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetPlayerName | GetPlayerName]]
| <code>string GetPlayerName(int iPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetRawPlayerDamage | GetRawPlayerDamage]]
| <code>int GetRawPlayerDamage(int iPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetReliableGold | GetReliableGold]]
| <code>int GetReliableGold(int iPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetRespawnSeconds | GetRespawnSeconds]]
| <code>int GetRespawnSeconds(int iPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetRoshanKills | GetRoshanKills]]
| <code>int GetRoshanKills(int iPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetRunePickups | GetRunePickups]]
| <code>int GetRunePickups(int iPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetSelectedHeroEntity | GetSelectedHeroEntity]]
| <code>handle GetSelectedHeroEntity(int iPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetSelectedHeroID | GetSelectedHeroID]]
| <code>int GetSelectedHeroID(int iPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetSelectedHeroName | GetSelectedHeroName]]
| <code>string GetSelectedHeroName(int iPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetSteamAccountID | GetSteamAccountID]]
| <code>unsigned GetSteamAccountID(int iPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetSteamID | GetSteamID]]
| <code>uint64 GetSteamID(int iPlayerID)</code>
| Get the 64 bit steam ID for a given player.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetStreak | GetStreak]]
| <code>int GetStreak(int iPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetStuns | GetStuns]]
| <code>float GetStuns(int iPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetTeam | GetTeam]]
| <code>int GetTeam(int iPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetTeamKills | GetTeamKills]]
| <code>int GetTeamKills(int iTeam)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetTeamPlayerCount | GetTeamPlayerCount]]
| <code>int GetTeamPlayerCount()</code>
| Players on a valid team (radiant, dire, or custom*) who haven't abandoned the game
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetTimeOfLastConsumablePurchase | GetTimeOfLastConsumablePurchase]]
| <code>float GetTimeOfLastConsumablePurchase(int iPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetTimeOfLastDeath | GetTimeOfLastDeath]]
| <code>float GetTimeOfLastDeath(int iPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetTimeOfLastItemPurchase | GetTimeOfLastItemPurchase]]
| <code>float GetTimeOfLastItemPurchase(int iPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetTotalEarnedGold | GetTotalEarnedGold]]
| <code>int GetTotalEarnedGold(int iPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetTotalEarnedXP | GetTotalEarnedXP]]
| <code>int GetTotalEarnedXP(int iPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetTotalGoldSpent | GetTotalGoldSpent]]
| <code>int GetTotalGoldSpent(int iPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetTowerDamageTaken | GetTowerDamageTaken]]
| <code>int GetTowerDamageTaken(int iPlayerID, bool bTotal)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetTowerKills | GetTowerKills]]
| <code>int GetTowerKills(int iPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetUnitShareMaskForPlayer | GetUnitShareMaskForPlayer]]
| <code>int GetUnitShareMaskForPlayer(int nPlayerID, int nOtherPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetUnreliableGold | GetUnreliableGold]]
| <code>int GetUnreliableGold(int iPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.GetXPPerMin | GetXPPerMin]]
| <code>float GetXPPerMin(int iPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.HasCustomGameTicketForPlayerID | HasCustomGameTicketForPlayerID]]
| <code>bool HasCustomGameTicketForPlayerID(int iPlayerID)</code>
| Does this player have a custom game ticket for this game?
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.HasRandomed | HasRandomed]]
| <code>bool HasRandomed(int iPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.HasSelectedHero | HasSelectedHero]]
| <code>bool HasSelectedHero(int iPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.HaveAllPlayersJoined | HaveAllPlayersJoined]]
| <code>bool HaveAllPlayersJoined()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.IncrementAssists | IncrementAssists]]
| <code>void IncrementAssists(int iPlayerID, int iVictimID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.IncrementClaimedDenies | IncrementClaimedDenies]]
| <code>void IncrementClaimedDenies(int iPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.IncrementClaimedMisses | IncrementClaimedMisses]]
| <code>void IncrementClaimedMisses(int iPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.IncrementDeaths | IncrementDeaths]]
| <code>void IncrementDeaths(int iPlayerID, int iKillerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.IncrementDenies | IncrementDenies]]
| <code>void IncrementDenies(int iPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.IncrementKills | IncrementKills]]
| <code>void IncrementKills(int iPlayerID, int iVictimID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.IncrementLastHitMultikill | IncrementLastHitMultikill]]
| <code>void IncrementLastHitMultikill(int iPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.IncrementLastHitStreak | IncrementLastHitStreak]]
| <code>void IncrementLastHitStreak(int iPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.IncrementLastHits | IncrementLastHits]]
| <code>void IncrementLastHits(int iPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.IncrementMisses | IncrementMisses]]
| <code>void IncrementMisses(int iPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.IncrementNearbyCreepDeaths | IncrementNearbyCreepDeaths]]
| <code>void IncrementNearbyCreepDeaths(int iPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.IncrementStreak | IncrementStreak]]
| <code>void IncrementStreak(int iPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.IncrementTotalEarnedXP | IncrementTotalEarnedXP]]
| <code>void IncrementTotalEarnedXP(int iPlayerID, int iXP, int nReason)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.IsBroadcaster | IsBroadcaster]]
| <code>bool IsBroadcaster(int iPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.IsDisableHelpSetForPlayerID | IsDisableHelpSetForPlayerID]]
| <code>bool IsDisableHelpSetForPlayerID(int nPlayerID, int nOtherPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.IsFakeClient | IsFakeClient]]
| <code>bool IsFakeClient(int iPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.IsHeroSelected | IsHeroSelected]]
| <code>bool IsHeroSelected(string pHeroname)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.IsHeroSharedWithPlayerID | IsHeroSharedWithPlayerID]]
| <code>bool IsHeroSharedWithPlayerID(int nUnitOwnerPlayerID, int nOtherPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.IsValidPlayer | IsValidPlayer]]
| <code>bool IsValidPlayer(int iPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.IsValidPlayerID | IsValidPlayerID]]
| <code>bool IsValidPlayerID(int iPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.IsValidTeamPlayer | IsValidTeamPlayer]]
| <code>bool IsValidTeamPlayer(int iPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.IsValidTeamPlayerID | IsValidTeamPlayerID]]
| <code>bool IsValidTeamPlayerID(int iPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.ModifyGold | ModifyGold]]
| <code>int ModifyGold(int iPlayerID, int iGoldChange, bool bReliable, int nReason)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.NumPlayers | NumPlayers]]
| <code>int NumPlayers()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.NumTeamPlayers | NumTeamPlayers]]
| <code>int NumTeamPlayers()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.RecordConsumableAbilityChargeChange | RecordConsumableAbilityChargeChange]]
| <code>void RecordConsumableAbilityChargeChange(int iPlayerID, int item_definition_index, int nChargeIncrementOrDecrement)</code>
| Increment or decrement consumable charges (nPlayerID, item_definition_index, nChargeIncrementOrDecrement)
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.ReplaceHeroWith | ReplaceHeroWith]]
| <code>handle ReplaceHeroWith(int iPlayerID, string pszHeroClass, int nGold, int nXP)</code>
| (playerID, heroClassName, gold, XP) - replaces the player's hero with a new one of the specified class, gold and XP
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.ResetBuybackCostTime | ResetBuybackCostTime]]
| <code>void ResetBuybackCostTime(int nPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.ResetTotalEarnedGold | ResetTotalEarnedGold]]
| <code>void ResetTotalEarnedGold(int iPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.SetBuybackCooldownTime | SetBuybackCooldownTime]]
| <code>void SetBuybackCooldownTime(int nPlayerID, float flBuybackCooldown)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.SetBuybackGoldLimitTime | SetBuybackGoldLimitTime]]
| <code>void SetBuybackGoldLimitTime(int nPlayerID, float flBuybackCooldown)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.SetCameraTarget | SetCameraTarget]]
| <code>void SetCameraTarget(int nPlayerID, handle hTarget)</code>
| (playerID, entity) - force the given player's camera to follow the given entity
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.SetCanRepick | SetCanRepick]]
| <code>void SetCanRepick(int iPlayerID, bool bCanRepick)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.SetCustomBuybackCooldown | SetCustomBuybackCooldown]]
| <code>void SetCustomBuybackCooldown(int iPlayerID, float flCooldownTime)</code>
| Set the buyback cooldown for this player.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.SetCustomBuybackCost | SetCustomBuybackCost]]
| <code>void SetCustomBuybackCost(int iPlayerID, int iGoldCost)</code>
| Set the buyback cost for this player.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.SetCustomPlayerColor | SetCustomPlayerColor]]
| <code>void SetCustomPlayerColor(int iPlayerID, int r, int g, int b)</code>
| Set custom color for player (minimap, scoreboard, etc)
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.SetCustomTeamAssignment | SetCustomTeamAssignment]]
| <code>void SetCustomTeamAssignment(int iPlayerID, int iTeamAssignment)</code>
| Set custom team assignment for this player.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.SetGold | SetGold]]
| <code>void SetGold(int iPlayerID, int iGold, bool bReliable)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.SetHasRandomed | SetHasRandomed]]
| <code>void SetHasRandomed(int iPlayerID)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.SetLastBuybackTime | SetLastBuybackTime]]
| <code>void SetLastBuybackTime(int iPlayerID, int iLastBuybackTime)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.SetOverrideSelectionEntity | SetOverrideSelectionEntity]]
| <code>void SetOverrideSelectionEntity(int nPlayerID, handle hEntity)</code>
| Set the forced selection entity for a player.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.SetUnitShareMaskForPlayer | SetUnitShareMaskForPlayer]]
| <code>void SetUnitShareMaskForPlayer(int nPlayerID, int nOtherPlayerID, int nFlag, bool bState)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.SpendGold | SpendGold]]
| <code>void SpendGold(int iPlayerID, int iCost, int iReason)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.UpdateTeamSlot | UpdateTeamSlot]]
| <code>void UpdateTeamSlot(int iPlayerID, int iTeamNumber, int desiredSlot)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_PlayerResource.WhoSelectedHero | WhoSelectedHero]]
| <code>int WhoSelectedHero(string pHeroFilename)</code>
|}


''float'' '''GetBloomScale'''()
==== CDOTA_ShopTrigger ====
Gets bloomscale for this tonemap controller
:::::extends [[#CBaseTrigger|CBaseTrigger]]
''No Description Set''
{| class="standard-table" style="width: 100%;"
! Function
! Signature
! Description
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_ShopTrigger.GetShopType | GetShopType]]
| <code>int GetShopType()</code>
| Get the DOTA_SHOP_TYPE
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_ShopTrigger.SetShopType | SetShopType]]
| <code>void SetShopType(int eShopType)</code>
| Set the DOTA_SHOP_TYPE.
|}


''void'' '''SetMaxExposure'''(''float'')
==== CDOTA_SimpleObstruction ====
Sets max exposure for this tonemap controller
:::::extends [[#CBaseEntity|CBaseEntity]]
''No Description Set''
{| class="standard-table" style="width: 100%;"
! Function
! Signature
! Description
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_SimpleObstruction.IsEnabled | IsEnabled]]
| <code>bool IsEnabled()</code>
| Returns whether the obstruction is currently active
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_SimpleObstruction.SetEnabled | SetEnabled]]
| <code>void SetEnabled(bool bEnabled, bool bForce)</code>
| Enable or disable the obstruction
|}


''void'' '''SetMinExposure'''(''float'')
==== CDOTA_Unit_Courier ====
Sets min exposure for this tonemap controller
:::::extends [[#CDOTA_BaseNPC|CDOTA_BaseNPC]]
''No Description Set''
{| class="standard-table" style="width: 100%;"
! Function
! Signature
! Description
|}


''void'' '''SetBloomScale'''(''float'')
==== CDOTA_Unit_Nian ====
Sets bloom scale for this tonemap controller
:::::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]]
| <code>handle GetHorn()</code>
| Is the Nian horn?
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Unit_Nian.GetTail | GetTail]]
| <code>handle GetTail()</code>
| Is the Nian's tail broken?
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Unit_Nian.IsHornAlive | IsHornAlive]]
| <code>bool IsHornAlive()</code>
| Is the Nian's horn broken?
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDOTA_Unit_Nian.IsTailAlive | IsTailAlive]]
| <code>bool IsTailAlive()</code>
| Is the Nian's tail broken?
|}


= Class CDebugOverlayScriptHelper =
==== CDebugOverlayScriptHelper ====
''No Description Set''
{| class="standard-table" style="width: 100%;"
! Function
! Signature
! Description
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDebugOverlayScriptHelper.Axis | Axis]]
| <code>void Axis(Vector Vector_1, Quaternion Quaternion_2, float float_3, bool bool_4, float float_5)</code>
| Draws an axis. Specify origin + orientation in world space.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDebugOverlayScriptHelper.Box | Box]]
| <code>void Box(Vector Vector_1, Vector Vector_2, int int_3, int int_4, int int_5, int int_6, bool bool_7, float float_8)</code>
| Draws a world-space axis-aligned box. Specify bounds in world space.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDebugOverlayScriptHelper.BoxAngles | BoxAngles]]
| <code>void BoxAngles(Vector Vector_1, Vector Vector_2, Vector Vector_3, Quaternion Quaternion_4, int int_5, int int_6, int int_7, int int_8, bool bool_9, float float_10)</code>
| Draws an oriented box at the origin. Specify bounds in local space.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDebugOverlayScriptHelper.Capsule | Capsule]]
| <code>void Capsule(Vector Vector_1, Quaternion Quaternion_2, float float_3, float float_4, int int_5, int int_6, int int_7, int int_8, bool bool_9, float float_10)</code>
| Draws a capsule. Specify base in world space.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDebugOverlayScriptHelper.Circle | Circle]]
| <code>void Circle(Vector Vector_1, Quaternion Quaternion_2, float float_3, int int_4, int int_5, int int_6, int int_7, bool bool_8, float float_9)</code>
| Draws a circle. Specify center in world space.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDebugOverlayScriptHelper.CircleScreenOriented | CircleScreenOriented]]
| <code>void CircleScreenOriented(Vector Vector_1, float float_2, int int_3, int int_4, int int_5, int int_6, bool bool_7, float float_8)</code>
| Draws a circle oriented to the screen. Specify center in world space.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDebugOverlayScriptHelper.Cone | Cone]]
| <code>void Cone(Vector Vector_1, Vector Vector_2, float float_3, float float_4, int int_5, int int_6, int int_7, int int_8, bool bool_9, float float_10)</code>
| Draws a wireframe cone. Specify endpoint and direction in world space.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDebugOverlayScriptHelper.Cross | Cross]]
| <code>void Cross(Vector Vector_1, float float_2, int int_3, int int_4, int int_5, int int_6, bool bool_7, float float_8)</code>
| Draws a screen-aligned cross. Specify origin in world space.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDebugOverlayScriptHelper.Cross3D | Cross3D]]
| <code>void Cross3D(Vector Vector_1, float float_2, int int_3, int int_4, int int_5, int int_6, bool bool_7, float float_8)</code>
| Draws a world-aligned cross. Specify origin in world space.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDebugOverlayScriptHelper.Cross3DOriented | Cross3DOriented]]
| <code>void Cross3DOriented(Vector Vector_1, Quaternion Quaternion_2, float float_3, int int_4, int int_5, int int_6, int int_7, bool bool_8, float float_9)</code>
| Draws an oriented cross. Specify origin in world space.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDebugOverlayScriptHelper.DrawTickMarkedLine | DrawTickMarkedLine]]
| <code>void DrawTickMarkedLine(Vector Vector_1, Vector Vector_2, float float_3, int int_4, int int_5, int int_6, int int_7, int int_8, bool bool_9, float float_10)</code>
| Draws a dashed line. Specify endpoints in world space.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDebugOverlayScriptHelper.EntityAttachments | EntityAttachments]]
| <code>void EntityAttachments(ehandle ehandle_1, float float_2, float float_3)</code>
| Draws the attachments of the entity
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDebugOverlayScriptHelper.EntityAxis | EntityAxis]]
| <code>void EntityAxis(ehandle ehandle_1, float float_2, bool bool_3, float float_4)</code>
| Draws the axis of the entity origin
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDebugOverlayScriptHelper.EntityBounds | EntityBounds]]
| <code>void EntityBounds(ehandle ehandle_1, int int_2, int int_3, int int_4, int int_5, bool bool_6, float float_7)</code>
| Draws bounds of an entity
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDebugOverlayScriptHelper.EntitySkeleton | EntitySkeleton]]
| <code>void EntitySkeleton(ehandle ehandle_1, float float_2)</code>
| Draws the skeleton of the entity
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDebugOverlayScriptHelper.EntityText | EntityText]]
| <code>void EntityText(ehandle ehandle_1, int int_2, string string_3, int int_4, int int_5, int int_6, int int_7, float float_8)</code>
| Draws text on an entity
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDebugOverlayScriptHelper.FilledRect2D | FilledRect2D]]
| <code>void FilledRect2D(Vector2D Vector2D_1, Vector2D Vector2D_2, int int_3, int int_4, int int_5, int int_6, float float_7)</code>
| Draws a screen-space filled 2D rectangle. Coordinates are in pixels.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDebugOverlayScriptHelper.HorzArrow | HorzArrow]]
| <code>void HorzArrow(Vector Vector_1, Vector Vector_2, float float_3, int int_4, int int_5, int int_6, int int_7, bool bool_8, float float_9)</code>
| Draws a horizontal arrow. Specify endpoints in world space.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDebugOverlayScriptHelper.Line | Line]]
| <code>void Line(Vector Vector_1, Vector Vector_2, int int_3, int int_4, int int_5, int int_6, bool bool_7, float float_8)</code>
| Draws a line between two points
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDebugOverlayScriptHelper.Line2D | Line2D]]
| <code>void Line2D(Vector2D Vector2D_1, Vector2D Vector2D_2, int int_3, int int_4, int int_5, int int_6, float float_7)</code>
| Draws a line between two points in screenspace
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDebugOverlayScriptHelper.PopDebugOverlayScope | PopDebugOverlayScope]]
| <code>void PopDebugOverlayScope()</code>
| Pops the identifier used to group overlays. Overlays marked with this identifier can be deleted in a big batch.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDebugOverlayScriptHelper.PushAndClearDebugOverlayScope | PushAndClearDebugOverlayScope]]
| <code>void PushAndClearDebugOverlayScope(utlstringtoken utlstringtoken_1)</code>
| Pushes an identifier used to group overlays. Deletes all existing overlays using this overlay id.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDebugOverlayScriptHelper.PushDebugOverlayScope | PushDebugOverlayScope]]
| <code>void PushDebugOverlayScope(utlstringtoken utlstringtoken_1)</code>
| Pushes an identifier used to group overlays. Overlays marked with this identifier can be deleted in a big batch.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDebugOverlayScriptHelper.RemoveAllInScope | RemoveAllInScope]]
| <code>void RemoveAllInScope(utlstringtoken utlstringtoken_1)</code>
| Removes all overlays marked with a specific identifier, regardless of their lifetime.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDebugOverlayScriptHelper.SolidCone | SolidCone]]
| <code>void SolidCone(Vector Vector_1, Vector Vector_2, float float_3, float float_4, int int_5, int int_6, int int_7, int int_8, bool bool_9, float float_10)</code>
| Draws a solid cone. Specify endpoint and direction in world space.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDebugOverlayScriptHelper.Sphere | Sphere]]
| <code>void Sphere(Vector Vector_1, float float_2, int int_3, int int_4, int int_5, int int_6, bool bool_7, float float_8)</code>
| Draws a wireframe sphere. Specify center in world space.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDebugOverlayScriptHelper.SweptBox | SweptBox]]
| <code>void SweptBox(Vector Vector_1, Vector Vector_2, Vector Vector_3, Vector Vector_4, Quaternion Quaternion_5, int int_6, int int_7, int int_8, int int_9, float float_10)</code>
| Draws a swept box. Specify endpoints in world space and the bounds in local space.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDebugOverlayScriptHelper.Text | Text]]
| <code>void Text(Vector Vector_1, int int_2, string string_3, float float_4, int int_5, int int_6, int int_7, int int_8, float float_9)</code>
| Draws 2D text. Specify origin in world space.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDebugOverlayScriptHelper.Texture | Texture]]
| <code>void Texture(string string_1, Vector2D Vector2D_2, Vector2D Vector2D_3, int int_4, int int_5, int int_6, int int_7, Vector2D Vector2D_8, Vector2D Vector2D_9, float float_10)</code>
| Draws a screen-space texture. Coordinates are in pixels.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDebugOverlayScriptHelper.Triangle | Triangle]]
| <code>void Triangle(Vector Vector_1, Vector Vector_2, Vector Vector_3, int int_4, int int_5, int int_6, int int_7, bool bool_8, float float_9)</code>
| Draws a filled triangle. Specify vertices in world space.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDebugOverlayScriptHelper.UnitTestCycleOverlayRenderType | UnitTestCycleOverlayRenderType]]
| <code>void UnitTestCycleOverlayRenderType()</code>
| Toggles the overlay render type, for unit tests
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDebugOverlayScriptHelper.VectorText3D | VectorText3D]]
| <code>void VectorText3D(Vector Vector_1, Quaternion Quaternion_2, string string_3, int int_4, int int_5, int int_6, int int_7, bool bool_8, float float_9)</code>
| Draws 3D text. Specify origin + orientation in world space.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDebugOverlayScriptHelper.VertArrow | VertArrow]]
| <code>void VertArrow(Vector Vector_1, Vector Vector_2, float float_3, int int_4, int int_5, int int_6, int int_7, bool bool_8, float float_9)</code>
| Draws a vertical arrow. Specify endpoints in world space.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDebugOverlayScriptHelper.YawArrow | YawArrow]]
| <code>void YawArrow(Vector Vector_1, float float_2, float float_3, float float_4, int int_5, int int_6, int int_7, int int_8, bool bool_9, float float_10)</code>
| Draws a arrow associated with a specific yaw. Specify endpoints in world space.
|}


''void'' '''VertArrow'''(''Vector'', ''Vector'', ''float'', ''int'', ''int'', ''int'', ''int'', ''bool'', ''float'')
==== CDotaQuest ====
Draws a vertical arrow. Specify endpoint's in world space.
:::::extends [[#CBaseEntity|CBaseEntity]]
''No Description Set''
{| class="standard-table" style="width: 100%;"
! Function
! Signature
! Description
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDotaQuest.AddSubquest | AddSubquest]]
| <code>void AddSubquest(handle hSubquest)</code>
| Add a subquest to this quest
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDotaQuest.CompleteQuest | CompleteQuest]]
| <code>void CompleteQuest()</code>
| Mark this quest complete
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDotaQuest.GetSubquest | GetSubquest]]
| <code>handle GetSubquest(int nIndex)</code>
| Finds a subquest from this quest by index
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDotaQuest.GetSubquestByName | GetSubquestByName]]
| <code>handle GetSubquestByName(string pszName)</code>
| Finds a subquest from this quest by name
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDotaQuest.RemoveSubquest | RemoveSubquest]]
| <code>void RemoveSubquest(handle hSubquest)</code>
| Remove a subquest from this quest
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDotaQuest.SetTextReplaceString | SetTextReplaceString]]
| <code>void SetTextReplaceString(string pszString)</code>
| Set the text replace string for this quest
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDotaQuest.SetTextReplaceValue | SetTextReplaceValue]]
| <code>void SetTextReplaceValue(int valueSlot, int value)</code>
| Set a quest value
|}


''void'' '''Sphere'''(''Vector'', ''float'', ''int'', ''int'', ''int'', ''int'', ''bool'', ''float'')
==== CDotaSubquestBase ====
Draws a wireframe sphere. Specify center in world space.
:::::extends [[#CBaseEntity|CBaseEntity]]
''No Description Set''
{| class="standard-table" style="width: 100%;"
! Function
! Signature
! Description
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDotaSubquestBase.CompleteSubquest | CompleteSubquest]]
| <code>void CompleteSubquest()</code>
| Mark this subquest complete
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDotaSubquestBase.SetTextReplaceString | SetTextReplaceString]]
| <code>void SetTextReplaceString(string pszString)</code>
| Set the text replace string for this subquest
|-
| [[Dota 2 Workshop Tools/Scripting/API/CDotaSubquestBase.SetTextReplaceValue | SetTextReplaceValue]]
| <code>void SetTextReplaceValue(int valueSlot, int value)</code>
| Set a subquest value
|}


''void'' '''YawArrow'''(''Vector'', ''float'', ''float'', ''float'', ''int'', ''int'', ''int'', ''int'', ''bool'', ''float'')
==== CEntities ====
Draws a arrow associated with a specific yaw. Specify endpoint's in world space.
''Global accessor variable: <code>Entities</code>''
{| class="standard-table" style="width: 100%;"
! Function
! Signature
! Description
|-
| [[Dota 2 Workshop Tools/Scripting/API/CEntities.CreateByClassname | CreateByClassname]]
| <code>handle CreateByClassname(string string_1)</code>
| Creates an entity by classname
|-
| [[Dota 2 Workshop Tools/Scripting/API/CEntities.FindAllByClassname | FindAllByClassname]]
| <code>table FindAllByClassname(string string_1)</code>
| Finds all entities by class name. Returns an array containing all the found entities.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CEntities.FindAllByClassnameWithin | FindAllByClassnameWithin]]
| <code>table FindAllByClassnameWithin(string string_1, Vector Vector_2, float float_3)</code>
| Find entities by class name within a radius.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CEntities.FindAllByModel | FindAllByModel]]
| <code>table FindAllByModel(string string_1)</code>
| Find entities by model name.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CEntities.FindAllByName | FindAllByName]]
| <code>table FindAllByName(string string_1)</code>
| Find all entities by name. Returns an array containing all the found entities in it.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CEntities.FindAllByNameWithin | FindAllByNameWithin]]
| <code>table FindAllByNameWithin(string string_1, Vector Vector_2, float float_3)</code>
| Find entities by name within a radius.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CEntities.FindAllByTarget | FindAllByTarget]]
| <code>table FindAllByTarget(string string_1)</code>
| Find entities by targetname.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CEntities.FindAllInSphere | FindAllInSphere]]
| <code>table FindAllInSphere(Vector Vector_1, float float_2)</code>
| Find entities within a radius.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CEntities.FindByClassname | FindByClassname]]
| <code>handle FindByClassname(handle handle_1, string string_2)</code>
| Find entities by class name. Pass 'null' to start an iteration, or reference to a previously found entity to continue a search
|-
| [[Dota 2 Workshop Tools/Scripting/API/CEntities.FindByClassnameNearest | FindByClassnameNearest]]
| <code>handle FindByClassnameNearest(string string_1, Vector Vector_2, float float_3)</code>
| Find entities by class name nearest to a point.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CEntities.FindByClassnameWithin | FindByClassnameWithin]]
| <code>handle FindByClassnameWithin(handle handle_1, string string_2, Vector Vector_3, float float_4)</code>
| Find entities by class name within a radius. Pass 'null' to start an iteration, or reference to a previously found entity to continue a search
|-
| [[Dota 2 Workshop Tools/Scripting/API/CEntities.FindByModel | FindByModel]]
| <code>handle FindByModel(handle handle_1, string string_2)</code>
| Find entities by model name. Pass 'null' to start an iteration, or reference to a previously found entity to continue a search
|-
| [[Dota 2 Workshop Tools/Scripting/API/CEntities.FindByModelWithin | FindByModelWithin]]
| <code>handle FindByModelWithin(handle handle_1, string string_2, Vector Vector_3, float float_4)</code>
| Find entities by model name within a radius. Pass 'null' to start an iteration, or reference to a previously found entity to continue a search
|-
| [[Dota 2 Workshop Tools/Scripting/API/CEntities.FindByName | FindByName]]
| <code>handle FindByName(handle handle_1, string string_2)</code>
| Find entities by name. Pass 'null' to start an iteration, or reference to a previously found entity to continue a search
|-
| [[Dota 2 Workshop Tools/Scripting/API/CEntities.FindByNameNearest | FindByNameNearest]]
| <code>handle FindByNameNearest(string string_1, Vector Vector_2, float float_3)</code>
| Find entities by name nearest to a point.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CEntities.FindByNameWithin | FindByNameWithin]]
| <code>handle FindByNameWithin(handle handle_1, string string_2, Vector Vector_3, float float_4)</code>
| Find entities by name within a radius. Pass 'null' to start an iteration, or reference to a previously found entity to continue a search
|-
| [[Dota 2 Workshop Tools/Scripting/API/CEntities.FindByTarget | FindByTarget]]
| <code>handle FindByTarget(handle handle_1, string string_2)</code>
| Find entities by targetname. Pass 'null' to start an iteration, or reference to a previously found entity to continue a search
|-
| [[Dota 2 Workshop Tools/Scripting/API/CEntities.FindInSphere | FindInSphere]]
| <code>handle FindInSphere(handle handle_1, Vector Vector_2, float float_3)</code>
| Find entities within a radius. Pass 'null' to start an iteration, or reference to a previously found entity to continue a search
|-
| [[Dota 2 Workshop Tools/Scripting/API/CEntities.First | First]]
| <code>handle First()</code>
| Begin an iteration over the list of entities
|-
| [[Dota 2 Workshop Tools/Scripting/API/CEntities.GetLocalPlayer | GetLocalPlayer]]
| <code>handle GetLocalPlayer()</code>
| Get the local player.  
|-
| [[Dota 2 Workshop Tools/Scripting/API/CEntities.Next | Next]]
| <code>handle Next(handle handle_1)</code>
| Continue an iteration over the list of entities, providing reference to a previously found entity
|}


''void'' '''Capsule'''(''Vector'', ''Quaternion'', ''float'', ''float'', ''int'', ''int'', ''int'', ''int'', ''bool'', ''float'')
==== CEntityInstance ====
Draws a capsule. Specify base in world space.
''No Description Set''
{| class="standard-table" style="width: 100%;"
! Function
! Signature
! Description
|-
| [[Dota 2 Workshop Tools/Scripting/API/CEntityInstance.ConnectOutput | ConnectOutput]]
| <code>void ConnectOutput(string string_1, string string_2)</code>
| Adds an I/O connection that will call the named function on this entity when the specified output fires.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CEntityInstance.Destroy | Destroy]]
| <code>void Destroy()</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CEntityInstance.DisconnectOutput | DisconnectOutput]]
| <code>void DisconnectOutput(string string_1, string string_2)</code>
| Removes a connected script function from an I/O event on this entity.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CEntityInstance.DisconnectRedirectedOutput | DisconnectRedirectedOutput]]
| <code>void DisconnectRedirectedOutput(string string_1, string string_2, handle handle_3)</code>
| Removes a connected script function from an I/O event on the passed entity.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CEntityInstance.FireOutput | FireOutput]]
| <code>void FireOutput(string string_1, handle handle_2, handle handle_3, table table_4, float float_5)</code>
| Fire an entity output
|-
| [[Dota 2 Workshop Tools/Scripting/API/CEntityInstance.GetClassname | GetClassname]]
| <code>string GetClassname()</code>
|-
| [[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>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CEntityInstance.GetIntAttr | GetIntAttr]]
| <code>int GetIntAttr(string string_1)</code>
| Get Integer Attribute
|-
| [[Dota 2 Workshop Tools/Scripting/API/CEntityInstance.GetName | GetName]]
| <code>string GetName()</code>
|-
| [[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 string_1, string string_2, handle handle_3)</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 string_1, int int_2)</code>
| Set Integer Attribute
|-
| [[Dota 2 Workshop Tools/Scripting/API/CEntityInstance.entindex | entindex]]
| <code>int entindex()</code>
|}


''void'' '''SweptBox'''(''Vector'', ''Vector'', ''Vector'', ''Vector'', ''Quaternion'', ''int'', ''int'', ''int'', ''int'', ''float'')
==== CEntityScriptFramework ====
Draws a swept box. Specify endpoint's in world space and the bounds in local space.
''No Description Set''
{| class="standard-table" style="width: 100%;"
! Function
! Signature
! Description
|}


''void'' '''EntitySkeleton'''(''ehandle'', ''float'')
==== CEnvEntityMaker ====
Draws the skeleton of the entity
:::::extends [[#CBaseEntity|CBaseEntity]]
''No Description Set''
{| class="standard-table" style="width: 100%;"
! Function
! Signature
! Description
|-
| [[Dota 2 Workshop Tools/Scripting/API/CEnvEntityMaker.SpawnEntity | SpawnEntity]]
| <code>void SpawnEntity()</code>
| Create an entity at the location of the maker
|-
| [[Dota 2 Workshop Tools/Scripting/API/CEnvEntityMaker.SpawnEntityAtEntityOrigin | SpawnEntityAtEntityOrigin]]
| <code>void SpawnEntityAtEntityOrigin(handle hEntity)</code>
| Create an entity at the location of a specified entity instance
|-
| [[Dota 2 Workshop Tools/Scripting/API/CEnvEntityMaker.SpawnEntityAtLocation | SpawnEntityAtLocation]]
| <code>void SpawnEntityAtLocation(Vector vecAlternateOrigin, Vector vecAlternateAngles)</code>
| Create an entity at a specified location and orientaton, orientation is Euler angle in degrees (pitch, yaw, roll)
|-
| [[Dota 2 Workshop Tools/Scripting/API/CEnvEntityMaker.SpawnEntityAtNamedEntityOrigin | SpawnEntityAtNamedEntityOrigin]]
| <code>void SpawnEntityAtNamedEntityOrigin(string pszName)</code>
| Create an entity at the location of a named entity  
|}


''void'' '''Line2D'''(''Vector''2D, ''Vector''2D, ''int'', ''int'', ''int'', ''int'', ''float'')
==== CEnvProjectedTexture ====
Draws a line between two point's in screenspace
:::::extends [[#CBaseEntity|CBaseEntity]]
''No Description Set''
{| class="standard-table" style="width: 100%;"
! Function
! Signature
! Description
|-
| [[Dota 2 Workshop Tools/Scripting/API/CEnvProjectedTexture.SetFarRange | SetFarRange]]
| <code>void SetFarRange(float flRange)</code>
| Set light maximum range
|-
| [[Dota 2 Workshop Tools/Scripting/API/CEnvProjectedTexture.SetLinearAttenuation | SetLinearAttenuation]]
| <code>void SetLinearAttenuation(float flAtten)</code>
| Set light linear attenuation value
|-
| [[Dota 2 Workshop Tools/Scripting/API/CEnvProjectedTexture.SetNearRange | SetNearRange]]
| <code>void SetNearRange(float flRange)</code>
| Set light minimum range
|-
| [[Dota 2 Workshop Tools/Scripting/API/CEnvProjectedTexture.SetQuadraticAttenuation | SetQuadraticAttenuation]]
| <code>void SetQuadraticAttenuation(float flAtten)</code>
| Set light quadratic attenuation value
|-
| [[Dota 2 Workshop Tools/Scripting/API/CEnvProjectedTexture.SetVolumetrics | SetVolumetrics]]
| <code>void SetVolumetrics(bool bOn, float flIntensity, float flNoise, int nPlanes, float flPlaneOffset)</code>
| Turn on/off light volumetrics: bool bOn, float flIntensity, float flNoise, int nPlanes, float flPlaneOffset
|}


''void'' '''Texture'''(''string'', ''Vector''2D, ''Vector''2D, ''int'', ''int'', ''int'', ''int'', ''Vector''2D, ''Vector''2D, ''float'')
==== CInfoData ====
Draws a screen-space texture. Coordinates are in pixels.
:::::extends [[#CBaseEntity|CBaseEntity]]
''No Description Set''
{| class="standard-table" style="width: 100%;"
! Function
! Signature
! Description
|-
| [[Dota 2 Workshop Tools/Scripting/API/CInfoData.QueryColor | QueryColor]]
| <code>Vector QueryColor(utlstringtoken tok, Vector vDefault)</code>
| Query color data for this key
|-
| [[Dota 2 Workshop Tools/Scripting/API/CInfoData.QueryFloat | QueryFloat]]
| <code>float QueryFloat(utlstringtoken tok, float flDefault)</code>
| Query float data for this key
|-
| [[Dota 2 Workshop Tools/Scripting/API/CInfoData.QueryInt | QueryInt]]
| <code>int QueryInt(utlstringtoken tok, int nDefault)</code>
| Query int data for this key
|-
| [[Dota 2 Workshop Tools/Scripting/API/CInfoData.QueryNumber | QueryNumber]]
| <code>float QueryNumber(utlstringtoken tok, float flDefault)</code>
| Query number data for this key
|-
| [[Dota 2 Workshop Tools/Scripting/API/CInfoData.QueryString | QueryString]]
| <code>string QueryString(utlstringtoken tok, string pDefault)</code>
| Query string data for this key
|-
| [[Dota 2 Workshop Tools/Scripting/API/CInfoData.QueryVector | QueryVector]]
| <code>Vector QueryVector(utlstringtoken tok, Vector vDefault)</code>
| Query vector data for this key
|}


''void'' '''EntityAxis'''(''ehandle'', ''float'', ''bool'', ''float'')
==== CInfoWorldLayer ====
Draws the axis of the entity origin
:::::extends [[#CBaseEntity|CBaseEntity]]
''No Description Set''
{| class="standard-table" style="width: 100%;"
! Function
! Signature
! Description
|-
| [[Dota 2 Workshop Tools/Scripting/API/CInfoWorldLayer.HideWorldLayer | HideWorldLayer]]
| <code>void HideWorldLayer()</code>
| Hides this layer
|-
| [[Dota 2 Workshop Tools/Scripting/API/CInfoWorldLayer.ShowWorldLayer | ShowWorldLayer]]
| <code>void ShowWorldLayer()</code>
| Shows this layer
|}


''void'' '''Cross3D'''(''Vector'', ''float'', ''int'', ''int'', ''int'', ''int'', ''bool'', ''float'')
==== CLogicScript ====
Draws a world-aligned cross. Specify origin in world space.
:::::extends [[#CBaseEntity|CBaseEntity]]
''No Description Set''
{| class="standard-table" style="width: 100%;"
! Function
! Signature
! Description
|}


''void'' '''PushAndClearDebugOverlayScope'''(''utlstringtoken'')
==== CMarkupVolumeTagged ====
Pushes an identifier used to group overlays. Deletes all existing overlays using this overlay id.
:::::extends [[#CBaseEntity|CBaseEntity]]
''No Description Set''
{| class="standard-table" style="width: 100%;"
! Function
! Signature
! Description
|-
| [[Dota 2 Workshop Tools/Scripting/API/CMarkupVolumeTagged.HasTag | HasTag]]
| <code>bool HasTag(string pszTagName)</code>
| Does this volume have the given tag.  
|}


''void'' '''Triangle'''(''Vector'', ''Vector'', ''Vector'', ''int'', ''int'', ''int'', ''int'', ''bool'', ''float'')
==== CNativeOutputs ====
Draws a filled triangle. Specify vertices in world space.
''No Description Set''
{| class="standard-table" style="width: 100%;"
! Function
! Signature
! Description
|-
| [[Dota 2 Workshop Tools/Scripting/API/CNativeOutputs.AddOutput | AddOutput]]
| <code>void AddOutput(string string_1, string string_2)</code>
| Add an output
|-
| [[Dota 2 Workshop Tools/Scripting/API/CNativeOutputs.Init | Init]]
| <code>void Init(int int_1)</code>
| Initialize with number of outputs
|}


''void'' '''Line'''(''Vector'', ''Vector'', ''int'', ''int'', ''int'', ''int'', ''bool'', ''float'')
==== CParticleSystem ====
Draws a line between two point's
:::::extends [[#CBaseModelEntity|CBaseModelEntity]]
''No Description Set''
{| class="standard-table" style="width: 100%;"
! Function
! Signature
! Description
|}


''void'' '''BoxAngles'''(''Vector'', ''Vector'', ''Vector'', ''Quaternion'', ''int'', ''int'', ''int'', ''int'', ''bool'', ''float'')
==== CPhysicsProp ====
Draws an oriented box at the origin. Specify bounds in local space.
:::::extends [[#CBaseAnimating|CBaseAnimating]]
''No Description Set''
{| class="standard-table" style="width: 100%;"
! Function
! Signature
! Description
|-
| [[Dota 2 Workshop Tools/Scripting/API/CPhysicsProp.DisableMotion | DisableMotion]]
| <code>void DisableMotion()</code>
| Disable motion for the prop
|-
| [[Dota 2 Workshop Tools/Scripting/API/CPhysicsProp.EnableMotion | EnableMotion]]
| <code>void EnableMotion()</code>
| Enable motion for the prop
|-
| [[Dota 2 Workshop Tools/Scripting/API/CPhysicsProp.SetDynamicVsDynamicContinuous | SetDynamicVsDynamicContinuous]]
| <code>void SetDynamicVsDynamicContinuous(bool bIsDynamicVsDynamicContinuousEnabled)</code>
| Enable/disable dynamic vs dynamic continuous collision traces
|}


''void'' '''Axis'''(''Vector'', ''Quaternion'', ''float'', ''bool'', ''float'')
==== CPointClientUIWorldPanel ====
Draws an axis. Specify origin + orientation in world space.
:::::extends [[#CBaseModelEntity|CBaseModelEntity]]
''No Description Set''
{| class="standard-table" style="width: 100%;"
! Function
! Signature
! Description
|-
| [[Dota 2 Workshop Tools/Scripting/API/CPointClientUIWorldPanel.AcceptUserInput | AcceptUserInput]]
| <code>void AcceptUserInput()</code>
| Tells the panel to accept user input.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CPointClientUIWorldPanel.AddCSSClasses | AddCSSClasses]]
| <code>void AddCSSClasses(string pszClasses)</code>
| Adds CSS class(es) to the panel
|-
| [[Dota 2 Workshop Tools/Scripting/API/CPointClientUIWorldPanel.IgnoreUserInput | IgnoreUserInput]]
| <code>void IgnoreUserInput()</code>
| Tells the panel to ignore user input.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CPointClientUIWorldPanel.IsGrabbable | IsGrabbable]]
| <code>bool IsGrabbable()</code>
| Returns whether this entity is grabbable.  
|-
| [[Dota 2 Workshop Tools/Scripting/API/CPointClientUIWorldPanel.RemoveCSSClasses | RemoveCSSClasses]]
| <code>void RemoveCSSClasses(string pszClasses)</code>
| Remove CSS class(es) from the panel
|}


''void'' '''DrawTickMarkedLine'''(''Vector'', ''Vector'', ''float'', ''int'', ''int'', ''int'', ''int'', ''int'', ''bool'', ''float'')
==== CPointTemplate ====
Draws a dashed line. Specify endpoint's in world space.
:::::extends [[#CBaseEntity|CBaseEntity]]
''No Description Set''
{| class="standard-table" style="width: 100%;"
! Function
! Signature
! Description
|-
| [[Dota 2 Workshop Tools/Scripting/API/CPointTemplate.DeleteCreatedSpawnGroups | DeleteCreatedSpawnGroups]]
| <code>void DeleteCreatedSpawnGroups()</code>
| DeleteCreatedSpawnGroups() : Deletes any spawn groups that this point_template has spawned. Note: The point_template will not be deleted by this.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CPointTemplate.ForceSpawn | ForceSpawn]]
| <code>void ForceSpawn()</code>
| ForceSpawn() : Spawns all of the entities the point_template is pointing at.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CPointTemplate.GetSpawnedEntities | GetSpawnedEntities]]
| <code>handle GetSpawnedEntities()</code>
| GetSpawnedEntities() : Get the list of the most recent spawned entities
|-
| [[Dota 2 Workshop Tools/Scripting/API/CPointTemplate.SetSpawnCallback | SetSpawnCallback]]
| <code>void SetSpawnCallback(handle hCallbackFunc, handle hCallbackScope)</code>
| SetSpawnCallback( hCallbackFunc, hCallbackScope, hCallbackData ) : Set a callback for when the template spawns entities. The spawned entities will be passed in as an array.  
|}


''void'' '''CircleScreenOriented'''(''Vector'', ''float'', ''int'', ''int'', ''int'', ''int'', ''bool'', ''float'')
==== CPointWorldText ====
Draws a circle oriented to the screen. Specify center in world space.
:::::extends [[#CBaseModelEntity|CBaseModelEntity]]
''No Description Set''
{| class="standard-table" style="width: 100%;"
! Function
! Signature
! Description
|-
| [[Dota 2 Workshop Tools/Scripting/API/CPointWorldText.SetMessage | SetMessage]]
| <code>void SetMessage(string pMessage)</code>
| Set the message on this entity.  
|}


''void'' '''Cross'''(''Vector'', ''float'', ''int'', ''int'', ''int'', ''int'', ''bool'', ''float'')
==== CPropHMDAvatar ====
Draws a screen-aligned cross. Specify origin in world space.
:::::extends [[#CBaseAnimating|CBaseAnimating]]
''No Description Set''
{| class="standard-table" style="width: 100%;"
! Function
! Signature
! Description
|-
| [[Dota 2 Workshop Tools/Scripting/API/CPropHMDAvatar.GetVRHand | GetVRHand]]
| <code>handle GetVRHand(int nHandID)</code>
| Get VR hand by ID
|}


''void'' '''EntityText'''(''ehandle'', ''int'', ''string'', ''int'', ''int'', ''int'', ''int'', ''float'')
==== CPropVRHand ====
Draws text on an entity
:::::extends [[#CBaseAnimating|CBaseAnimating]]
''No Description Set''
{| class="standard-table" style="width: 100%;"
! Function
! Signature
! Description
|-
| [[Dota 2 Workshop Tools/Scripting/API/CPropVRHand.AddHandAttachment | AddHandAttachment]]
| <code>void AddHandAttachment(handle hAttachment)</code>
| Add the attachment to this hand
|-
| [[Dota 2 Workshop Tools/Scripting/API/CPropVRHand.AddHandModelOverride | AddHandModelOverride]]
| <code>handle AddHandModelOverride(string pModelName)</code>
| Add a model override for this hand
|-
| [[Dota 2 Workshop Tools/Scripting/API/CPropVRHand.FindHandModelOverride | FindHandModelOverride]]
| <code>handle FindHandModelOverride(string pModelName)</code>
| Find a specific model override for this hand
|-
| [[Dota 2 Workshop Tools/Scripting/API/CPropVRHand.FireHapticPulse | FireHapticPulse]]
| <code>void FireHapticPulse(int nStrength)</code>
| Fire a haptic pulse on this hand. [0,2] for strength.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CPropVRHand.FireHapticPulsePrecise | FireHapticPulsePrecise]]
| <code>void FireHapticPulsePrecise(int nPulseDuration)</code>
| Fire a haptic pulse on this hand. Specify the duration in micro seconds.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CPropVRHand.GetHandAttachment | GetHandAttachment]]
| <code>handle GetHandAttachment()</code>
| Get the attachment on this hand
|-
| [[Dota 2 Workshop Tools/Scripting/API/CPropVRHand.GetHandID | GetHandID]]
| <code>int GetHandID()</code>
| Get hand ID
|-
| [[Dota 2 Workshop Tools/Scripting/API/CPropVRHand.GetLiteralHandType | GetLiteralHandType]]
| <code>int GetLiteralHandType()</code>
| Get literal type for this hand
|-
| [[Dota 2 Workshop Tools/Scripting/API/CPropVRHand.GetPlayer | GetPlayer]]
| <code>handle GetPlayer()</code>
| Get the player for this hand
|-
| [[Dota 2 Workshop Tools/Scripting/API/CPropVRHand.GetVelocity | GetVelocity]]
| <code>Vector GetVelocity()</code>
| Get the filtered controller velocity.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CPropVRHand.RemoveAllHandModelOverrides | RemoveAllHandModelOverrides]]
| <code>void RemoveAllHandModelOverrides()</code>
| Remove all model overrides for this hand
|-
| [[Dota 2 Workshop Tools/Scripting/API/CPropVRHand.RemoveHandAttachmentByHandle | RemoveHandAttachmentByHandle]]
| <code>void RemoveHandAttachmentByHandle(handle hAttachment)</code>
| Remove hand attachment by handle
|-
| [[Dota 2 Workshop Tools/Scripting/API/CPropVRHand.RemoveHandModelOverride | RemoveHandModelOverride]]
| <code>void RemoveHandModelOverride(string pModelName)</code>
| Remove a model override for this hand
|-
| [[Dota 2 Workshop Tools/Scripting/API/CPropVRHand.SetHandAttachment | SetHandAttachment]]
| <code>void SetHandAttachment(handle hAttachment)</code>
| Set the attachment for this hand
|}


''void'' '''Circle'''(''Vector'', ''Quaternion'', ''float'', ''int'', ''int'', ''int'', ''int'', ''bool'', ''float'')
==== CSceneEntity ====
Draws a circle. Specify center in world space.
:::::extends [[#CBaseEntity|CBaseEntity]]
''No Description Set''
{| class="standard-table" style="width: 100%;"
! Function
! Signature
! Description
|-
| [[Dota 2 Workshop Tools/Scripting/API/CSceneEntity.AddBroadcastTeamTarget | AddBroadcastTeamTarget]]
| <code>void AddBroadcastTeamTarget(int int_1)</code>
| Adds a team (by index) to the broadcast list
|-
| [[Dota 2 Workshop Tools/Scripting/API/CSceneEntity.Cancel | Cancel]]
| <code>void Cancel()</code>
| Cancel scene playback
|-
| [[Dota 2 Workshop Tools/Scripting/API/CSceneEntity.EstimateLength | EstimateLength]]
| <code>float EstimateLength()</code>
| Returns length of this scene in seconds.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CSceneEntity.FindCamera | FindCamera]]
| <code>handle FindCamera()</code>
| Get the camera
|-
| [[Dota 2 Workshop Tools/Scripting/API/CSceneEntity.FindNamedEntity | FindNamedEntity]]
| <code>handle FindNamedEntity(string string_1)</code>
| given an entity reference, such as !target, get actual entity from scene object
|-
| [[Dota 2 Workshop Tools/Scripting/API/CSceneEntity.IsPaused | IsPaused]]
| <code>bool IsPaused()</code>
| If this scene is currently paused.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CSceneEntity.IsPlayingBack | IsPlayingBack]]
| <code>bool IsPlayingBack()</code>
| If this scene is currently playing.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CSceneEntity.LoadSceneFromString | LoadSceneFromString]]
| <code>bool LoadSceneFromString(string string_1, string string_2)</code>
| given a dummy scene name and a vcd string, load the scene
|-
| [[Dota 2 Workshop Tools/Scripting/API/CSceneEntity.RemoveBroadcastTeamTarget | RemoveBroadcastTeamTarget]]
| <code>void RemoveBroadcastTeamTarget(int int_1)</code>
| Removes a team (by index) from the broadcast list
|-
| [[Dota 2 Workshop Tools/Scripting/API/CSceneEntity.Start | Start]]
| <code>void Start(handle handle_1)</code>
| Start scene playback, takes activatorEntity as param
|}


''void'' '''EntityAttachments'''(''ehandle'', ''float'')
==== CScriptHeroList ====
Draws the attachments of the entity
''Global accessor variable: <code>HeroList</code>''
{| class="standard-table" style="width: 100%;"
! Function
! Signature
! Description
|-
| [[Dota 2 Workshop Tools/Scripting/API/CScriptHeroList.GetAllHeroes | GetAllHeroes]]
| <code>table GetAllHeroes()</code>
| Returns all the heroes in the world
|-
| [[Dota 2 Workshop Tools/Scripting/API/CScriptHeroList.GetHero | GetHero]]
| <code>handle GetHero(int int_1)</code>
| Get the Nth hero in the Hero List
|-
| [[Dota 2 Workshop Tools/Scripting/API/CScriptHeroList.GetHeroCount | GetHeroCount]]
| <code>int GetHeroCount()</code>
| Returns the number of heroes in the world
|}


''void'' '''PopDebugOverlayScope'''()
==== CScriptKeyValues ====
Pops the identifier used to group overlays. Overlays marked with this identifier can be deleted in a big batch.
''No Description Set''
{| class="standard-table" style="width: 100%;"
! Function
! Signature
! Description
|-
| [[Dota 2 Workshop Tools/Scripting/API/CScriptKeyValues.GetValue | GetValue]]
| <code>table GetValue(string string_1)</code>
| Reads a spawn key
|}


''void'' '''Cone'''(''Vector'', ''Vector'', ''float'', ''float'', ''int'', ''int'', ''int'', ''int'', ''bool'', ''float'')
==== CScriptParticleManager ====
Draws a wireframe cone. Specify endpoint and direction in world space.
''Global accessor variable: <code>ParticleManager</code>''
{| class="standard-table" style="width: 100%;"
! Function
! Signature
! Description
|-
| [[Dota 2 Workshop Tools/Scripting/API/CScriptParticleManager.CreateParticle | CreateParticle]]
| <code>int CreateParticle(string string_1, int int_2, handle handle_3)</code>
| Creates a new particle effect
|-
| [[Dota 2 Workshop Tools/Scripting/API/CScriptParticleManager.CreateParticleForPlayer | CreateParticleForPlayer]]
| <code>int CreateParticleForPlayer(string string_1, int int_2, handle handle_3, handle handle_4)</code>
| Creates a new particle effect that only plays for the specified player
|-
| [[Dota 2 Workshop Tools/Scripting/API/CScriptParticleManager.CreateParticleForTeam | CreateParticleForTeam]]
| <code>int CreateParticleForTeam(string string_1, int int_2, handle handle_3, int int_4)</code>
| Creates a new particle effect that only plays for the specified team
|-
| [[Dota 2 Workshop Tools/Scripting/API/CScriptParticleManager.DestroyParticle | DestroyParticle]]
| <code>void DestroyParticle(int int_1, bool bool_2)</code>
| (int index, bool bDestroyImmediately) - Destroy a particle, if bDestroyImmediately destroy it without playing end caps.
|-
| [[Dota 2 Workshop Tools/Scripting/API/CScriptParticleManager.GetParticleReplacement | GetParticleReplacement]]
| <code>string GetParticleReplacement(string string_1, handle handle_2)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CScriptParticleManager.ReleaseParticleIndex | ReleaseParticleIndex]]
| <code>void ReleaseParticleIndex(int int_1)</code>
| Frees the specified particle index
|-
| [[Dota 2 Workshop Tools/Scripting/API/CScriptParticleManager.SetParticleAlwaysSimulate | SetParticleAlwaysSimulate]]
| <code>void SetParticleAlwaysSimulate(int int_1)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CScriptParticleManager.SetParticleControl | SetParticleControl]]
| <code>void SetParticleControl(int int_1, int int_2, Vector Vector_3)</code>
| Set the control point data for a control on a particle effect
|-
| [[Dota 2 Workshop Tools/Scripting/API/CScriptParticleManager.SetParticleControlEnt | SetParticleControlEnt]]
| <code>void SetParticleControlEnt(int int_1, int int_2, handle handle_3, int int_4, string string_5, Vector Vector_6, bool bool_7)</code>
|-
| [[Dota 2 Workshop Tools/Scripting/API/CScriptParticleManager.SetParticleControlFallback | SetParticleControlFallback]]
| <code>void SetParticleControlFallback(int int_1, int int_2, Vector Vector_3)</code>
| (int iIndex, int iPoint, Vector vecPosition)
|-
| [[Dota 2 Workshop Tools/Scripting/API/CScriptParticleManager.SetParticleControlForward | SetParticleControlForward]]
| <code>void SetParticleControlForward(int int_1, int int_2, Vector Vector_3)</code>
| (int nFXIndex, int nPoint, vForward)
|-
| [[Dota 2 Workshop Tools/Scripting/API/CScriptParticleManager.SetParticleControlOrientation | SetParticleControlOrientation]]
| <code>void SetParticleControlOrientation(int int_1, int int_2, Vector Vector_3, Vector Vector_4, Vector Vector_5)</code>
| (int nFXIndex, int nPoint, vForward, vRight, vUp) - Set the orientation for a control on a particle effect (NOTE: This is left handed -- bad!!)
|-
| [[Dota 2 Workshop Tools/Scripting/API/CScriptParticleManager.SetParticleControlOrientationFLU | SetParticleControlOrientationFLU]]
| <code>void SetParticleControlOrientationFLU(int int_1, int int_2, Vector Vector_3, Vector Vector_4, Vector Vector_5)</code>
| (int nFXIndex, int nPoint, Vector vecForward, Vector vecLeft, Vector vecUp) - Set the orientation for a control on a particle effect
|-
| [[Dota 2 Workshop Tools/Scripting/API/CScriptParticleManager.SetParticleFoWProperties | SetParticleFoWProperties]]
| <code>void SetParticleFoWProperties(int int_1, int int_2, int int_3, float float_4)</code>
| int nfxindex, int nPoint, int nPoint2, float flRadius
|-
| [[Dota 2 Workshop Tools/Scripting/API/CScriptParticleManager.SetParticleShouldCheckFoW | SetParticleShouldCheckFoW]]
| <code>bool SetParticleShouldCheckFoW(int int_1, bool bool_2)</code>
| int nfxindex, bool bCheckFoW
|}


''void'' '''Box'''(''Vector'', ''Vector'', ''int'', ''int'', ''int'', ''int'', ''bool'', ''float'')
==== CScriptPrecacheContext ====
Draws a world-space axis-aligned box. Specify bounds in world space.
''No Description Set''
{| class="standard-table" style="width: 100%;"
! Function
! Signature
! Description
|-
| [[Dota 2 Workshop Tools/Scripting/API/CScriptPrecacheContext.AddResource | AddResource]]
| <code>void AddResource(string string_1)</code>
| Precaches a specific resource
|-
| [[Dota 2 Workshop Tools/Scripting/API/CScriptPrecacheContext.GetValue | GetValue]]
| <code>table GetValue(string string_1)</code>
| Reads a spawn key
|}


''void'' '''Cross3DOriented'''(''Vector'', ''Quaternion'', ''float'', ''int'', ''int'', ''int'', ''int'', ''bool'', ''float'')
==== Convars ====
Draws an oriented cross. Specify origin in world space.
:::::extends [[#Convars|Convars]]
''Global accessor variable: <code>Convars</code>''
{| class="standard-table" style="width: 100%;"
! Function
! Signature
! Description
|-
| [[Dota 2 Workshop Tools/Scripting/API/Convars.GetBool | GetBool]]
| <code>table GetBool(string string_1)</code>
| GetBool(name) : returns the convar as a boolean flag.
|-
| [[Dota 2 Workshop Tools/Scripting/API/Convars.GetCommandClient | GetCommandClient]]
| <code>handle GetCommandClient()</code>
| GetCommandClient() : returns the player who issued this console command.
|-
| [[Dota 2 Workshop Tools/Scripting/API/Convars.GetDOTACommandClient | GetDOTACommandClient]]
| <code>handle GetDOTACommandClient()</code>
| GetDOTACommandClient() : returns the DOTA player who issued this console command.
|-
| [[Dota 2 Workshop Tools/Scripting/API/Convars.GetFloat | GetFloat]]
| <code>table GetFloat(string string_1)</code>
| GetFloat(name) : returns the convar as a float. May return null if no such convar.
|-
| [[Dota 2 Workshop Tools/Scripting/API/Convars.GetInt | GetInt]]
| <code>table GetInt(string string_1)</code>
| GetInt(name) : returns the convar as an int. May return null if no such convar.
|-
| [[Dota 2 Workshop Tools/Scripting/API/Convars.GetStr | GetStr]]
| <code>table GetStr(string string_1)</code>
| GetStr(name) : returns the convar as a string. May return null if no such convar.
|-
| [[Dota 2 Workshop Tools/Scripting/API/Convars.RegisterCommand | RegisterCommand]]
| <code>void RegisterCommand(string string_1, handle handle_2, string string_3, int int_4)</code>
| RegisterCommand(name, fn, helpString, flags) : register a console command.
|-
| [[Dota 2 Workshop Tools/Scripting/API/Convars.RegisterConvar | RegisterConvar]]
| <code>void RegisterConvar(string string_1, string string_2, string string_3, int int_4)</code>
| RegisterConvar(name, defaultValue, helpString, flags): register a new console variable.
|-
| [[Dota 2 Workshop Tools/Scripting/API/Convars.SetBool | SetBool]]
| <code>void SetBool(string string_1, bool bool_2)</code>
| SetBool(name, val) : sets the value of the convar to the bool.
|-
| [[Dota 2 Workshop Tools/Scripting/API/Convars.SetFloat | SetFloat]]
| <code>void SetFloat(string string_1, float float_2)</code>
| SetFloat(name, val) : sets the value of the convar to the float.
|-
| [[Dota 2 Workshop Tools/Scripting/API/Convars.SetInt | SetInt]]
| <code>void SetInt(string string_1, int int_2)</code>
| SetInt(name, val) : sets the value of the convar to the int.
|-
| [[Dota 2 Workshop Tools/Scripting/API/Convars.SetStr | SetStr]]
| <code>void SetStr(string string_1, string string_2)</code>
| SetStr(name, val) : sets the value of the convar to the string.  
|}


''void'' '''RemoveAllInScope'''(''utlstringtoken'')
==== GlobalSys ====
Removes all overlays marked with a specific identifier, regardless of their lifetime.
:::::extends [[#GlobalSys|GlobalSys]]
''No Description Set''
{| class="standard-table" style="width: 100%;"
! Function
! Signature
! Description
|-
| [[Dota 2 Workshop Tools/Scripting/API/GlobalSys.CommandLineCheck | CommandLineCheck]]
| <code>table CommandLineCheck(string string_1)</code>
| CommandLineCheck(name) : returns true if the command line param was used, otherwise false.
|-
| [[Dota 2 Workshop Tools/Scripting/API/GlobalSys.CommandLineFloat | CommandLineFloat]]
| <code>table CommandLineFloat(string string_1, float float_2)</code>
| CommandLineFloat(name) : returns the command line param as a float.
|-
| [[Dota 2 Workshop Tools/Scripting/API/GlobalSys.CommandLineInt | CommandLineInt]]
| <code>table CommandLineInt(string string_1, int int_2)</code>
| CommandLineInt(name) : returns the command line param as an int.
|-
| [[Dota 2 Workshop Tools/Scripting/API/GlobalSys.CommandLineStr | CommandLineStr]]
| <code>table CommandLineStr(string string_1, string string_2)</code>
| CommandLineStr(name) : returns the command line param as a string.  
|}


''void'' '''EntityBounds'''(''ehandle'', ''int'', ''int'', ''int'', ''int'', ''bool'', ''float'')
==== GridNav ====
Draws bounds of an entity
:::::extends [[#GridNav|GridNav]]
''No Description Set''
{| class="standard-table" style="width: 100%;"
! Function
! Signature
! Description
|-
| [[Dota 2 Workshop Tools/Scripting/API/GridNav.CanFindPath | CanFindPath]]
| <code>bool CanFindPath(Vector Vector_1, Vector Vector_2)</code>
| Determine if it is possible to reach the specified end point from the specified start point. bool (vStart, vEnd)
|-
| [[Dota 2 Workshop Tools/Scripting/API/GridNav.DestroyTreesAroundPoint | DestroyTreesAroundPoint]]
| <code>void DestroyTreesAroundPoint(Vector Vector_1, float float_2, bool bool_3)</code>
| Destroy all trees in the area(vPosition, flRadius, bFullCollision
|-
| [[Dota 2 Workshop Tools/Scripting/API/GridNav.FindPathLength | FindPathLength]]
| <code>float FindPathLength(Vector Vector_1, Vector Vector_2)</code>
| Find a path between the two points an return the length of the path. If there is not a path between the points the returned value will be -1. float (vStart, vEnd )
|-
| [[Dota 2 Workshop Tools/Scripting/API/GridNav.GetAllTreesAroundPoint | GetAllTreesAroundPoint]]
| <code>table GetAllTreesAroundPoint(Vector Vector_1, float float_2, bool bool_3)</code>
| Returns a table full of tree HSCRIPTS (vPosition, flRadius, bFullCollision).
|-
| [[Dota 2 Workshop Tools/Scripting/API/GridNav.GridPosToWorldCenterX | GridPosToWorldCenterX]]
| <code>float GridPosToWorldCenterX(int int_1)</code>
| Get the X position of the center of a given X index
|-
| [[Dota 2 Workshop Tools/Scripting/API/GridNav.GridPosToWorldCenterY | GridPosToWorldCenterY]]
| <code>float GridPosToWorldCenterY(int int_1)</code>
| Get the Y position of the center of a given Y index
|-
| [[Dota 2 Workshop Tools/Scripting/API/GridNav.IsBlocked | IsBlocked]]
| <code>bool IsBlocked(Vector Vector_1)</code>
| Checks whether the given position is blocked
|-
| [[Dota 2 Workshop Tools/Scripting/API/GridNav.IsNearbyTree | IsNearbyTree]]
| <code>bool IsNearbyTree(Vector Vector_1, float float_2, bool bool_3)</code>
| (position, radius, checkFullTreeRadius?) Checks whether there are any trees overlapping the given point
|-
| [[Dota 2 Workshop Tools/Scripting/API/GridNav.IsTraversable | IsTraversable]]
| <code>bool IsTraversable(Vector Vector_1)</code>
| Checks whether the given position is traversable
|-
| [[Dota 2 Workshop Tools/Scripting/API/GridNav.RegrowAllTrees | RegrowAllTrees]]
| <code>void RegrowAllTrees()</code>
| Causes all trees in the map to regrow
|-
| [[Dota 2 Workshop Tools/Scripting/API/GridNav.WorldToGridPosX | WorldToGridPosX]]
| <code>int WorldToGridPosX(float float_1)</code>
| Get the X index of a given world X position
|-
| [[Dota 2 Workshop Tools/Scripting/API/GridNav.WorldToGridPosY | WorldToGridPosY]]
| <code>int WorldToGridPosY(float float_1)</code>
| Get the Y index of a given world Y position
|}


''void'' '''''Vector''Text3D'''(''Vector'', ''Quaternion'', ''string'', ''int'', ''int'', ''int'', ''int'', ''bool'', ''float'')
==== ProjectileManager ====
Draws 3D text. Specify origin + orientation in world space.
:::::extends [[#ProjectileManager|ProjectileManager]]
''No Description Set''
{| class="standard-table" style="width: 100%;"
! Function
! Signature
! Description
|-
| [[Dota 2 Workshop Tools/Scripting/API/ProjectileManager.ChangeTrackingProjectileSpeed | ChangeTrackingProjectileSpeed]]
| <code>void ChangeTrackingProjectileSpeed(handle handle_1, int int_2)</code>
| Update speed
|-
| [[Dota 2 Workshop Tools/Scripting/API/ProjectileManager.CreateLinearProjectile | CreateLinearProjectile]]
| <code>int CreateLinearProjectile(handle handle_1)</code>
| Creates a linear projectile and returns the projectile ID
|-
| [[Dota 2 Workshop Tools/Scripting/API/ProjectileManager.CreateTrackingProjectile | CreateTrackingProjectile]]
| <code>void CreateTrackingProjectile(handle handle_1)</code>
| Creates a tracking projectile
|-
| [[Dota 2 Workshop Tools/Scripting/API/ProjectileManager.DestroyLinearProjectile | DestroyLinearProjectile]]
| <code>void DestroyLinearProjectile(int int_1)</code>
| Destroys the linear projectile matching the argument ID
|-
| [[Dota 2 Workshop Tools/Scripting/API/ProjectileManager.GetLinearProjectileLocation | GetLinearProjectileLocation]]
| <code>Vector GetLinearProjectileLocation(int int_1)</code>
| Returns current location of projectile
|-
| [[Dota 2 Workshop Tools/Scripting/API/ProjectileManager.GetLinearProjectileRadius | GetLinearProjectileRadius]]
| <code>float GetLinearProjectileRadius(int int_1)</code>
| Returns current radius of projectile
|-
| [[Dota 2 Workshop Tools/Scripting/API/ProjectileManager.GetLinearProjectileVelocity | GetLinearProjectileVelocity]]
| <code>Vector GetLinearProjectileVelocity(int int_1)</code>
| Returns a vector representing the current velocity of the projectile.
|-
| [[Dota 2 Workshop Tools/Scripting/API/ProjectileManager.ProjectileDodge | ProjectileDodge]]
| <code>void ProjectileDodge(handle handle_1)</code>
| Makes the specified unit dodge projectiles
|-
| [[Dota 2 Workshop Tools/Scripting/API/ProjectileManager.UpdateLinearProjectileDirection | UpdateLinearProjectileDirection]]
| <code>void UpdateLinearProjectileDirection(int int_1, Vector Vector_2, float float_3)</code>
| Update velocity
|}


''void'' '''FilledRect2D'''(''Vector''2D, ''Vector''2D, ''int'', ''int'', ''int'', ''int'', ''float'')
==== SteamInfo ====
Draws a screen-space filled 2D rectangle. Coordinates are in pixels.
:::::extends [[#SteamInfo|SteamInfo]]
''No Description Set''
{| class="standard-table" style="width: 100%;"
! Function
! Signature
! Description
|-
| [[Dota 2 Workshop Tools/Scripting/API/SteamInfo.IsPublicUniverse | IsPublicUniverse]]
| <code>bool IsPublicUniverse()</code>
| Is the script connected to the public Steam universe
|}


''void'' '''SolidCone'''(''Vector'', ''Vector'', ''float'', ''float'', ''int'', ''int'', ''int'', ''int'', ''bool'', ''float'')
Draws a solid cone. Specify endpoint and direction in world space.


''void'' '''UnitTestCycleOverlayRenderType'''()
=== Constants ===
Toggles the overlay render type, for unit tests
==== AbilityLearnResult_t ====
{| class="standard-table" style="width: 50%;"
! Name
! Value
! Description
|-
| ABILITY_CAN_BE_UPGRADED
| 0
|
|-
| ABILITY_CANNOT_BE_UPGRADED_NOT_UPGRADABLE
| 1
|
|-
| ABILITY_CANNOT_BE_UPGRADED_AT_MAX
| 2
|
|-
| ABILITY_CANNOT_BE_UPGRADED_REQUIRES_LEVEL
| 3
|
|-
| ABILITY_NOT_LEARNABLE
| 4
|
|}


''void'' '''HorzArrow'''(''Vector'', ''Vector'', ''float'', ''int'', ''int'', ''int'', ''int'', ''bool'', ''float'')
==== AttributeDerivedStats ====
Draws a horizontal arrow. Specify endpoint's in world space.
{| class="standard-table" style="width: 50%;"
! Name
! Value
! Description
|-
| DOTA_ATTRIBUTE_STRENGTH_HP
| 1
|
|-
| DOTA_ATTRIBUTE_STRENGTH_HP_REGEN
| 2
|
|-
| DOTA_ATTRIBUTE_AGILITY_DAMAGE
| 3
|
|-
| DOTA_ATTRIBUTE_AGILITY_ARMOR
| 4
|
|-
| DOTA_ATTRIBUTE_AGILITY_ATTACK_SPEED
| 5
|
|-
| DOTA_ATTRIBUTE_INTELLIGENCE_DAMAGE
| 6
|
|-
| DOTA_ATTRIBUTE_INTELLIGENCE_MANA
| 7
|
|-
| DOTA_ATTRIBUTE_INTELLIGENCE_MANA_REGEN
| 8
|
|}


''void'' '''PushDebugOverlayScope'''(''utlstringtoken'')
==== Attributes ====
Pushes an identifier used to group overlays. Overlays marked with this identifier can be deleted in a big batch.
{| class="standard-table" style="width: 50%;"
! Name
! Value
! Description
|-
| DOTA_ATTRIBUTE_INVALID
| -1
|
|-
| DOTA_ATTRIBUTE_STRENGTH
| 0
| Strength attribute.
|-
| DOTA_ATTRIBUTE_AGILITY
| 1
| Agility attribute.
|-
| DOTA_ATTRIBUTE_INTELLECT
| 2
| Intelligence attribute.
|-
| DOTA_ATTRIBUTE_MAX
| 3
|
|}


''void'' '''Text'''(''Vector'', ''int'', ''string'', ''float'', ''int'', ''int'', ''int'', ''int'', ''float'')
==== DAMAGE_TYPES ====
Draws 2D text. Specify origin in world space.
{| class="standard-table" style="width: 50%;"
! Name
! Value
! Description
|-
| DAMAGE_TYPE_NONE
| 0
|
|-
| DAMAGE_TYPE_PHYSICAL
| 1
| Physical, reduced by armor.
|-
| DAMAGE_TYPE_MAGICAL
| 2
| Magical, reduced by magic resistance.
|-
| DAMAGE_TYPE_PURE
| 4
| Pure, not reduced by anything.
|-
| DAMAGE_TYPE_ALL
| 7
|
|-
| DAMAGE_TYPE_HP_REMOVAL
| 8
| Deprecated.
|}


= Class CBaseFlex =
==== DOTAAbilitySpeakTrigger_t ====
{| class="standard-table" style="width: 50%;"
! Name
! Value
! Description
|-
| DOTA_ABILITY_SPEAK_START_ACTION_PHASE
| 0
|
|-
| DOTA_ABILITY_SPEAK_CAST
| 1
|
|}


''handle'' '''GetCurrentScene'''()
==== DOTADamageFlag_t ====
Returns the instance of the oldest active scene entity '''(if any).
{| class="standard-table" style="width: 50%;"
! Name
! Value
! Description
|-
| DOTA_DAMAGE_FLAG_NONE
| 0
|
|-
| DOTA_DAMAGE_FLAG_IGNORES_MAGIC_ARMOR
| 1
|
|-
| DOTA_DAMAGE_FLAG_IGNORES_PHYSICAL_ARMOR
| 2
|
|-
| DOTA_DAMAGE_FLAG_BYPASSES_INVULNERABILITY
| 4
|
|-
| DOTA_DAMAGE_FLAG_BYPASSES_BLOCK
| 8
|
|-
| DOTA_DAMAGE_FLAG_REFLECTION
| 16
|
|-
| DOTA_DAMAGE_FLAG_HPLOSS
| 32
|
|-
| DOTA_DAMAGE_FLAG_NO_DIRECTOR_EVENT
| 64
|
|-
| DOTA_DAMAGE_FLAG_NON_LETHAL
| 128
|
|-
| DOTA_DAMAGE_FLAG_USE_COMBAT_PROFICIENCY
| 256
|
|-
| DOTA_DAMAGE_FLAG_NO_DAMAGE_MULTIPLIERS
| 512
|
|}


''handle'' '''GetSceneByIndex'''(''int'')
==== DOTAHUDVisibility_t ====
Returns the instance of the scene entity at the specified index.
{| class="standard-table" style="width: 50%;"
! Name
! Value
! Description
|-
| DOTA_HUD_VISIBILITY_TOP_TIMEOFDAY
| 0
|
|-
| DOTA_HUD_VISIBILITY_TOP_HEROES
| 1
|
|-
| DOTA_HUD_VISIBILITY_TOP_SCOREBOARD
| 2
|
|-
| DOTA_HUD_VISIBILITY_ACTION_PANEL
| 3
|
|-
| DOTA_HUD_VISIBILITY_ACTION_MINIMAP
| 4
|
|-
| DOTA_HUD_VISIBILITY_INVENTORY_PANEL
| 5
|
|-
| DOTA_HUD_VISIBILITY_INVENTORY_SHOP
| 6
|
|-
| DOTA_HUD_VISIBILITY_INVENTORY_ITEMS
| 7
|
|-
| DOTA_HUD_VISIBILITY_INVENTORY_QUICKBUY
| 8
|
|-
| DOTA_HUD_VISIBILITY_INVENTORY_COURIER
| 9
|
|-
| DOTA_HUD_VISIBILITY_INVENTORY_PROTECT
| 10
|
|-
| DOTA_HUD_VISIBILITY_INVENTORY_GOLD
| 11
|
|-
| DOTA_HUD_VISIBILITY_SHOP_SUGGESTEDITEMS
| 12
|
|-
| DOTA_HUD_VISIBILITY_COUNT
| 13
|
|}


= Class CSceneEntity =
==== DOTAInventoryFlags_t ====
{| class="standard-table" style="width: 50%;"
! Name
! Value
! Description
|-
| DOTA_INVENTORY_ALLOW_NONE
| 0
|
|-
| DOTA_INVENTORY_ALLOW_MAIN
| 1
|
|-
| DOTA_INVENTORY_ALLOW_STASH
| 2
|
|-
| DOTA_INVENTORY_ALL_ACCESS
| 3
|
|-
| DOTA_INVENTORY_ALLOW_DROP_ON_GROUND
| 4
|
|-
| DOTA_INVENTORY_ALLOW_DROP_AT_FOUNTAIN
| 8
|
|-
| DOTA_INVENTORY_LIMIT_DROP_ON_GROUND
| 16
|
|}


''bool'' '''IsPaused'''()
==== DOTAMinimapEvent_t ====
If this scene is currently paused.
{| class="standard-table" style="width: 50%;"
! Name
! Value
! Description
|-
| DOTA_MINIMAP_EVENT_ANCIENT_UNDER_ATTACK
| 2
|
|-
| DOTA_MINIMAP_EVENT_BASE_UNDER_ATTACK
| 4
|
|-
| DOTA_MINIMAP_EVENT_BASE_GLYPHED
| 8
|
|-
| DOTA_MINIMAP_EVENT_TEAMMATE_UNDER_ATTACK
| 16
|
|-
| DOTA_MINIMAP_EVENT_TEAMMATE_TELEPORTING
| 32
|
|-
| DOTA_MINIMAP_EVENT_TEAMMATE_DIED
| 64
|
|-
| DOTA_MINIMAP_EVENT_TUTORIAL_TASK_ACTIVE
| 128
|
|-
| DOTA_MINIMAP_EVENT_TUTORIAL_TASK_FINISHED
| 256
|
|-
| DOTA_MINIMAP_EVENT_HINT_LOCATION
| 512
|
|-
| DOTA_MINIMAP_EVENT_ENEMY_TELEPORTING
| 1024
|
|-
| DOTA_MINIMAP_EVENT_CANCEL_TELEPORTING
| 2048
|
|}


''float'' '''EstimateLength'''()
==== DOTAModifierAttribute_t ====
Returns length of this scene in seconds.
{| class="standard-table" style="width: 50%;"
! Name
! Value
! Description
|-
| MODIFIER_ATTRIBUTE_NONE
| 0
|
|-
| MODIFIER_ATTRIBUTE_PERMANENT
| 1
| Modifier passively remains until strictly removed.
|-
| MODIFIER_ATTRIBUTE_MULTIPLE
| 2
| Allows modifier to stack with itself.
|-
| MODIFIER_ATTRIBUTE_IGNORE_INVULNERABLE
| 4
| Allows modifier to be assigned to invulnerable entities.
|}


''bool'' '''LoadSceneFromString'''(''string'', ''string'')
==== DOTAMusicStatus_t ====
given a dummy scene name and a vcd ''string'', load the scene
{| class="standard-table" style="width: 50%;"
! Name
! Value
! Description
|-
| DOTA_MUSIC_STATUS_NONE
| 0
|
|-
| DOTA_MUSIC_STATUS_EXPLORATION
| 1
|
|-
| DOTA_MUSIC_STATUS_BATTLE
| 2
|
|-
| DOTA_MUSIC_STATUS_PRE_GAME_EXPLORATION
| 3
|
|-
| DOTA_MUSIC_STATUS_DEAD
| 4
|
|-
| DOTA_MUSIC_STATUS_LAST
| 5
|
|}


''void'' '''Start'''(''handle'')
==== DOTASlotType_t ====
Start scene playback, takes activatorEntity as param
{| class="standard-table" style="width: 50%;"
! Name
! Value
! Description
|-
| DOTA_LOADOUT_TYPE_INVALID
| -1
|
|-
| DOTA_LOADOUT_TYPE_WEAPON
| 0
|
|-
| DOTA_LOADOUT_TYPE_OFFHAND_WEAPON
| 1
|
|-
| DOTA_LOADOUT_TYPE_WEAPON2
| 2
|
|-
| DOTA_LOADOUT_TYPE_OFFHAND_WEAPON2
| 3
|
|-
| DOTA_LOADOUT_TYPE_HEAD
| 4
|
|-
| DOTA_LOADOUT_TYPE_SHOULDER
| 5
|
|-
| DOTA_LOADOUT_TYPE_ARMS
| 6
|
|-
| DOTA_LOADOUT_TYPE_ARMOR
| 7
|
|-
| DOTA_LOADOUT_TYPE_BELT
| 8
|
|-
| DOTA_LOADOUT_TYPE_NECK
| 9
|
|-
| DOTA_LOADOUT_TYPE_BACK
| 10
|
|-
| DOTA_LOADOUT_TYPE_LEGS
| 11
|
|-
| DOTA_LOADOUT_TYPE_GLOVES
| 12
|
|-
| DOTA_LOADOUT_TYPE_TAIL
| 13
|
|-
| DOTA_LOADOUT_TYPE_MISC
| 14
|
|-
| DOTA_LOADOUT_TYPE_BODY_HEAD
| 15
|
|-
| DOTA_LOADOUT_TYPE_MOUNT
| 16
|
|-
| DOTA_LOADOUT_TYPE_SUMMON
| 17
|
|-
| DOTA_LOADOUT_TYPE_SHAPESHIFT
| 18
|
|-
| DOTA_LOADOUT_TYPE_TAUNT
| 19
|
|-
| DOTA_LOADOUT_TYPE_AMBIENT_EFFECTS
| 20
|
|-
| DOTA_LOADOUT_TYPE_ABILITY_ATTACK
| 21
|
|-
| DOTA_LOADOUT_TYPE_ABILITY1
| 22
|
|-
| DOTA_LOADOUT_TYPE_ABILITY2
| 23
|
|-
| DOTA_LOADOUT_TYPE_ABILITY3
| 24
|
|-
| DOTA_LOADOUT_TYPE_ABILITY4
| 25
|
|-
| DOTA_LOADOUT_TYPE_ABILITY_ULTIMATE
| 26
|
|-
| DOTA_LOADOUT_TYPE_VOICE
| 27
|
|-
| DOTA_LOADOUT_TYPE_ACTION_ITEM
| 28
|
|-
| DOTA_PLAYER_LOADOUT_START
| 28
|
|-
| DOTA_LOADOUT_TYPE_COURIER
| 29
|
|-
| DOTA_LOADOUT_TYPE_ANNOUNCER
| 30
|
|-
| DOTA_LOADOUT_TYPE_MEGA_KILLS
| 31
|
|-
| DOTA_LOADOUT_TYPE_MUSIC
| 32
|
|-
| DOTA_LOADOUT_TYPE_WARD
| 33
|
|-
| DOTA_LOADOUT_TYPE_HUD_SKIN
| 34
|
|-
| DOTA_LOADOUT_TYPE_LOADING_SCREEN
| 35
|
|-
| DOTA_LOADOUT_TYPE_WEATHER
| 36
|
|-
| DOTA_LOADOUT_TYPE_HEROIC_STATUE
| 37
|
|-
| DOTA_LOADOUT_TYPE_MULTIKILL_BANNER
| 38
|
|-
| DOTA_LOADOUT_TYPE_CURSOR_PACK
| 39
|
|-
| DOTA_LOADOUT_TYPE_TELEPORT_EFFECT
| 40
|
|-
| DOTA_LOADOUT_TYPE_BLINK_EFFECT
| 41
|
|-
| DOTA_LOADOUT_TYPE_TEAM_SHOWCASE
| 42
|
|-
| DOTA_PLAYER_LOADOUT_END
| 42
|
|-
| DOTA_LOADOUT_TYPE_NONE
| 43
|
|-
| DOTA_LOADOUT_TYPE_COUNT
| 44
|
|}


''handle'' '''FindCamera'''()
==== DOTASpeechType_t ====
Get the camera
{| class="standard-table" style="width: 50%;"
! Name
! Value
! Description
|-
| DOTA_SPEECH_USER_INVALID
| 0
|
|-
| DOTA_SPEECH_USER_SINGLE
| 1
|
|-
| DOTA_SPEECH_USER_TEAM
| 2
|
|-
| DOTA_SPEECH_USER_TEAM_NEARBY
| 3
|
|-
| DOTA_SPEECH_USER_NEARBY
| 4
|
|-
| DOTA_SPEECH_USER_ALL
| 5
|
|-
| DOTA_SPEECH_GOOD_TEAM
| 6
|
|-
| DOTA_SPEECH_BAD_TEAM
| 7
|
|-
| DOTA_SPEECH_SPECTATOR
| 8
|
|-
| DOTA_SPEECH_RECIPIENT_TYPE_MAX
| 9
|
|}


''void'' '''Cancel'''()
==== DOTATeam_t ====
Cancel scene playback
{| class="standard-table" style="width: 50%;"
! Name
! Value
! Description
|-
| DOTA_TEAM_FIRST
| 2
|
|-
| DOTA_TEAM_GOODGUYS
| 2
| Radiant team.
|-
| DOTA_TEAM_BADGUYS
| 3
| Dire team.
|-
| DOTA_TEAM_NEUTRALS
| 4
| Neutral.
|-
| DOTA_TEAM_NOTEAM
| 5
|
|-
| DOTA_TEAM_CUSTOM_1
| 6
|
|-
| DOTA_TEAM_CUSTOM_MIN
| 6
|
|-
| DOTA_TEAM_CUSTOM_2
| 7
|
|-
| DOTA_TEAM_CUSTOM_3
| 8
|
|-
| DOTA_TEAM_CUSTOM_COUNT
| 8
|
|-
| DOTA_TEAM_CUSTOM_4
| 9
|
|-
| DOTA_TEAM_CUSTOM_5
| 10
|
|-
| DOTA_TEAM_CUSTOM_6
| 11
|
|-
| DOTA_TEAM_CUSTOM_7
| 12
|
|-
| DOTA_TEAM_CUSTOM_8
| 13
|
|-
| DOTA_TEAM_CUSTOM_MAX
| 13
|
|-
| DOTA_TEAM_COUNT
| 14
|
|}


''bool'' '''IsPlayingBack'''()
==== DOTAUnitAttackCapability_t ====
If this scene is currently playing.
{| class="standard-table" style="width: 50%;"
! Name
! Value
! Description
|-
| DOTA_UNIT_CAP_NO_ATTACK
| 0
| Unit is unable to attack in any way.
|-
| DOTA_UNIT_CAP_MELEE_ATTACK
| 1
| Unit attacks are classified as melee (no uphill miss chance, attacks on enemies that are 350 over the attack range automatically miss).
|-
| DOTA_UNIT_CAP_RANGED_ATTACK
| 2
| Unit attacks are classified as ranged (can miss on uphill, disjointable, has projectile).
|}


''void'' '''AddBroadcastTeamTarget'''(''int'')
==== DOTAUnitMoveCapability_t ====
Adds a team (by index) to the broadcast list
{| class="standard-table" style="width: 50%;"
! Name
! Value
! Description
|-
| DOTA_UNIT_CAP_MOVE_NONE
| 0
| Unit cannot move in any way.
|-
| DOTA_UNIT_CAP_MOVE_GROUND
| 1
| Unit move while being obstructed by the terrain.
|-
| DOTA_UNIT_CAP_MOVE_FLY
| 2
| Unit ignores terrain.
|}


''void'' '''RemoveBroadcastTeamTarget'''(''int'')
==== DOTA_UNIT_ORDERS ====
Removes a team (by index) from the broadcast list
{| class="standard-table" style="width: 50%;"
! Name
! Value
! Description
|-
| DOTA_UNIT_ORDER_NONE
| 0
|
|-
| DOTA_UNIT_ORDER_MOVE_TO_POSITION
| 1
|
|-
| DOTA_UNIT_ORDER_MOVE_TO_TARGET
| 2
|
|-
| DOTA_UNIT_ORDER_ATTACK_MOVE
| 3
|
|-
| DOTA_UNIT_ORDER_ATTACK_TARGET
| 4
|
|-
| DOTA_UNIT_ORDER_CAST_POSITION
| 5
|
|-
| DOTA_UNIT_ORDER_CAST_TARGET
| 6
|
|-
| DOTA_UNIT_ORDER_CAST_TARGET_TREE
| 7
|
|-
| DOTA_UNIT_ORDER_CAST_NO_TARGET
| 8
|
|-
| DOTA_UNIT_ORDER_CAST_TOGGLE
| 9
|
|-
| DOTA_UNIT_ORDER_HOLD_POSITION
| 10
|
|-
| DOTA_UNIT_ORDER_TRAIN_ABILITY
| 11
|
|-
| DOTA_UNIT_ORDER_DROP_ITEM
| 12
|
|-
| DOTA_UNIT_ORDER_GIVE_ITEM
| 13
|
|-
| DOTA_UNIT_ORDER_PICKUP_ITEM
| 14
|
|-
| DOTA_UNIT_ORDER_PICKUP_RUNE
| 15
|
|-
| DOTA_UNIT_ORDER_PURCHASE_ITEM
| 16
|
|-
| DOTA_UNIT_ORDER_SELL_ITEM
| 17
|
|-
| DOTA_UNIT_ORDER_DISASSEMBLE_ITEM
| 18
|
|-
| DOTA_UNIT_ORDER_MOVE_ITEM
| 19
|
|-
| DOTA_UNIT_ORDER_CAST_TOGGLE_AUTO
| 20
|
|-
| DOTA_UNIT_ORDER_STOP
| 21
|
|-
| DOTA_UNIT_ORDER_TAUNT
| 22
|
|-
| DOTA_UNIT_ORDER_BUYBACK
| 23
|
|-
| DOTA_UNIT_ORDER_GLYPH
| 24
|
|-
| DOTA_UNIT_ORDER_EJECT_ITEM_FROM_STASH
| 25
|
|-
| DOTA_UNIT_ORDER_CAST_RUNE
| 26
|
|}


''handle'' '''FindNamedEntity'''(''string'')
==== DOTA_ABILITY_BEHAVIOR ====
given an entity reference, such as !target, get actual entity from scene object
{| class="standard-table" style="width: 50%;"
! Name
! Value
! Description
|-
| DOTA_ABILITY_BEHAVIOR_NONE
| 0
|
|-
| DOTA_ABILITY_BEHAVIOR_HIDDEN
| 1
| Ability doesn't appear on the HUD.
|-
| DOTA_ABILITY_BEHAVIOR_PASSIVE
| 2
| Ability is classified as passive, and cannot be pressed.
|-
| DOTA_ABILITY_BEHAVIOR_NO_TARGET
| 4
| Ability fires immediately when pressed.
|-
| DOTA_ABILITY_BEHAVIOR_UNIT_TARGET
| 8
| Ability needs a unit target to be cast.
|-
| DOTA_ABILITY_BEHAVIOR_POINT
| 16
| Ability needs a target point to be cast.
|-
| DOTA_ABILITY_BEHAVIOR_AOE
| 32
| Ability is considered an AoE ability, respecting "AOERadius" KV when drawing the AoE overlay.
|-
| DOTA_ABILITY_BEHAVIOR_NOT_LEARNABLE
| 64
| Ability cannot be skilled.
|-
| DOTA_ABILITY_BEHAVIOR_CHANNELLED
| 128
| Ability is considered a channeling ability.
|-
| DOTA_ABILITY_BEHAVIOR_ITEM
| 256
|
|-
| DOTA_ABILITY_BEHAVIOR_TOGGLE
| 512
| Ability can be toggled on and off.
|-
| DOTA_ABILITY_BEHAVIOR_DIRECTIONAL
| 1024
|
|-
| DOTA_ABILITY_BEHAVIOR_IMMEDIATE
| 2048
| Ability ignores cast points and is fired as soon as the skill is pressed.
|-
| DOTA_ABILITY_BEHAVIOR_AUTOCAST
| 4096
| Ability can be set to auto cast.
|-
| DOTA_ABILITY_BEHAVIOR_OPTIONAL_UNIT_TARGET
| 8192
|
|-
| DOTA_ABILITY_BEHAVIOR_OPTIONAL_POINT
| 16384
|
|-
| DOTA_ABILITY_BEHAVIOR_OPTIONAL_NO_TARGET
| 32768
|
|-
| DOTA_ABILITY_BEHAVIOR_AURA
| 65536
| Ability is considered an aura.
|-
| DOTA_ABILITY_BEHAVIOR_ATTACK
| 131072
|
|-
| DOTA_ABILITY_BEHAVIOR_DONT_RESUME_MOVEMENT
| 262144
| After casting that ability, the caster won't resume its last order.
|-
| DOTA_ABILITY_BEHAVIOR_ROOT_DISABLES
| 524288
| Ability cannot be cast while rooted.
|-
| DOTA_ABILITY_BEHAVIOR_UNRESTRICTED
| 1048576
|
|-
| DOTA_ABILITY_BEHAVIOR_IGNORE_PSEUDO_QUEUE
| 2097152
|
|-
| DOTA_ABILITY_BEHAVIOR_IGNORE_CHANNEL
| 4194304
|
|-
| DOTA_ABILITY_BEHAVIOR_DONT_CANCEL_MOVEMENT
| 8388608
| Ability doesn't stop the caster to be used.
|-
| DOTA_ABILITY_BEHAVIOR_DONT_ALERT_TARGET
| 16777216
|
|-
| DOTA_ABILITY_BEHAVIOR_DONT_RESUME_ATTACK
| 33554432
| After using ability, caster won't proceed to attack the nearby enemy (even if set otherwise in options)
|-
| DOTA_ABILITY_BEHAVIOR_NORMAL_WHEN_STOLEN
| 67108864
|
|-
| DOTA_ABILITY_BEHAVIOR_IGNORE_BACKSWING
| 134217728
| Ability ignores backswing animation.
|-
| DOTA_ABILITY_BEHAVIOR_RUNE_TARGET
| 268435456
| Ability can target runes.
|-
| DOTA_ABILITY_BEHAVIOR_DONT_CANCEL_CHANNEL
| 536870912
| Ability can be used without cancelling the current channel.
|-
| DOTA_ABILITY_LAST_BEHAVIOR
| 536870912
|
|}


= Class GridNav =
==== DOTA_HeroPickState ====
{| class="standard-table" style="width: 50%;"
! Name
! Value
! Description
|-
| DOTA_HEROPICK_STATE_NONE
| 0
|
|-
| DOTA_HEROPICK_STATE_AP_SELECT
| 1
|
|-
| DOTA_HEROPICK_STATE_SD_SELECT
| 2
|
|-
| DOTA_HEROPICK_STATE_INTRO_SELECT
| 3
|
|-
| DOTA_HEROPICK_STATE_RD_SELECT
| 4
|
|-
| DOTA_HEROPICK_STATE_CM_INTRO
| 5
|
|-
| DOTA_HEROPICK_STATE_CM_CAPTAINPICK
| 6
|
|-
| DOTA_HEROPICK_STATE_CM_BAN1
| 7
|
|-
| DOTA_HEROPICK_STATE_CM_BAN2
| 8
|
|-
| DOTA_HEROPICK_STATE_CM_BAN3
| 9
|
|-
| DOTA_HEROPICK_STATE_CM_BAN4
| 10
|
|-
| DOTA_HEROPICK_STATE_CM_BAN5
| 11
|
|-
| DOTA_HEROPICK_STATE_CM_BAN6
| 12
|
|-
| DOTA_HEROPICK_STATE_CM_BAN7
| 13
|
|-
| DOTA_HEROPICK_STATE_CM_BAN8
| 14
|
|-
| DOTA_HEROPICK_STATE_CM_BAN9
| 15
|
|-
| DOTA_HEROPICK_STATE_CM_BAN10
| 16
|
|-
| DOTA_HEROPICK_STATE_CM_SELECT1
| 17
|
|-
| DOTA_HEROPICK_STATE_CM_SELECT2
| 18
|
|-
| DOTA_HEROPICK_STATE_CM_SELECT3
| 19
|
|-
| DOTA_HEROPICK_STATE_CM_SELECT4
| 20
|
|-
| DOTA_HEROPICK_STATE_CM_SELECT5
| 21
|
|-
| DOTA_HEROPICK_STATE_CM_SELECT6
| 22
|
|-
| DOTA_HEROPICK_STATE_CM_SELECT7
| 23
|
|-
| DOTA_HEROPICK_STATE_CM_SELECT8
| 24
|
|-
| DOTA_HEROPICK_STATE_CM_SELECT9
| 25
|
|-
| DOTA_HEROPICK_STATE_CM_SELECT10
| 26
|
|-
| DOTA_HEROPICK_STATE_CM_PICK
| 27
|
|-
| DOTA_HEROPICK_STATE_AR_SELECT
| 28
|
|-
| DOTA_HEROPICK_STATE_MO_SELECT
| 29
|
|-
| DOTA_HEROPICK_STATE_FH_SELECT
| 30
|
|-
| DOTA_HEROPICK_STATE_CD_INTRO
| 31
|
|-
| DOTA_HEROPICK_STATE_CD_CAPTAINPICK
| 32
|
|-
| DOTA_HEROPICK_STATE_CD_BAN1
| 33
|
|-
| DOTA_HEROPICK_STATE_CD_BAN2
| 34
|
|-
| DOTA_HEROPICK_STATE_CD_BAN3
| 35
|
|-
| DOTA_HEROPICK_STATE_CD_BAN4
| 36
|
|-
| DOTA_HEROPICK_STATE_CD_BAN5
| 37
|
|-
| DOTA_HEROPICK_STATE_CD_BAN6
| 38
|
|-
| DOTA_HEROPICK_STATE_CD_SELECT1
| 39
|
|-
| DOTA_HEROPICK_STATE_CD_SELECT2
| 40
|
|-
| DOTA_HEROPICK_STATE_CD_SELECT3
| 41
|
|-
| DOTA_HEROPICK_STATE_CD_SELECT4
| 42
|
|-
| DOTA_HEROPICK_STATE_CD_SELECT5
| 43
|
|-
| DOTA_HEROPICK_STATE_CD_SELECT6
| 44
|
|-
| DOTA_HEROPICK_STATE_CD_SELECT7
| 45
|
|-
| DOTA_HEROPICK_STATE_CD_SELECT8
| 46
|
|-
| DOTA_HEROPICK_STATE_CD_SELECT9
| 47
|
|-
| DOTA_HEROPICK_STATE_CD_SELECT10
| 48
|
|-
| DOTA_HEROPICK_STATE_CD_PICK
| 49
|
|-
| DOTA_HEROPICK_STATE_BD_SELECT
| 50
|
|-
| DOTA_HERO_PICK_STATE_ABILITY_DRAFT_SELECT
| 51
|
|-
| DOTA_HERO_PICK_STATE_ARDM_SELECT
| 52
|
|-
| DOTA_HEROPICK_STATE_ALL_DRAFT_SELECT
| 53
|
|-
| DOTA_HERO_PICK_STATE_CUSTOMGAME_SELECT
| 54
|
|-
| DOTA_HEROPICK_STATE_COUNT
| 55
|
|}


''bool'' '''IsTraversable'''(''Vector'')
==== DOTA_MOTION_CONTROLLER_PRIORITY ====
Checks whether the given position is traversable
{| class="standard-table" style="width: 50%;"
! Name
! Value
! Description
|-
| DOTA_MOTION_CONTROLLER_PRIORITY_LOWEST
| 0
|
|-
| DOTA_MOTION_CONTROLLER_PRIORITY_LOW
| 1
|
|-
| DOTA_MOTION_CONTROLLER_PRIORITY_MEDIUM
| 2
|
|-
| DOTA_MOTION_CONTROLLER_PRIORITY_HIGH
| 3
|
|-
| DOTA_MOTION_CONTROLLER_PRIORITY_HIGHEST
| 4
|
|}


''bool'' '''IsNearbyTree'''(''Vector'', ''float'', ''bool'')
==== DOTA_RUNES ====
(position, radius, checkFullTreeRadius?) Checks whether there are any trees overlapping the given point
{| class="standard-table" style="width: 50%;"
! Name
! Value
! Description
|-
| DOTA_RUNE_INVALID
| -1
|
|-
| DOTA_RUNE_DOUBLEDAMAGE
| 0
|
|-
| DOTA_RUNE_HASTE
| 1
|
|-
| DOTA_RUNE_ILLUSION
| 2
|
|-
| DOTA_RUNE_INVISIBILITY
| 3
|
|-
| DOTA_RUNE_REGENERATION
| 4
|
|-
| DOTA_RUNE_BOUNTY
| 5
|
|-
| DOTA_RUNE_COUNT
| 6
|
|-
| DOTA_RUNE_HAUNTED
| 7
|
|-
| DOTA_RUNE_SPOOKY
| 8
|
|-
| DOTA_RUNE_RAPIER
| 9
|
|-
| DOTA_RUNE_TURBO
| 10
|
|-
| DOTA_RUNE_MYSTERY
| 11
|
|-
| DOTA_HALLOWEEN_RUNE_COUNT
| 12
|
|}


''bool'' '''IsBlocked'''(''Vector'')
==== DOTA_UNIT_TARGET_FLAGS ====
Checks whether the given position is blocked
{| class="standard-table" style="width: 50%;"
! Name
! Value
! Description
|-
| DOTA_UNIT_TARGET_FLAG_NONE
| 0
| No special flag rules.
|-
| DOTA_UNIT_TARGET_FLAG_RANGED_ONLY
| 2
| Targets only ranged units and heroes.
|-
| DOTA_UNIT_TARGET_FLAG_MELEE_ONLY
| 4
| Targets only melee units and heroes.
|-
| DOTA_UNIT_TARGET_FLAG_DEAD
| 8
| Targets dead units and heroes as well.
|-
| DOTA_UNIT_TARGET_FLAG_MAGIC_IMMUNE_ENEMIES
| 16
| Targets magic immune enemies as well.
|-
| DOTA_UNIT_TARGET_FLAG_NOT_MAGIC_IMMUNE_ALLIES
| 32
| Targets non-magic immune allies as well.
|-
| DOTA_UNIT_TARGET_FLAG_INVULNERABLE
| 64
| Targets invulnerable units/heroes as well.
|-
| DOTA_UNIT_TARGET_FLAG_FOW_VISIBLE
| 128
| Targets only those that are visible through the fog of war.
|-
| DOTA_UNIT_TARGET_FLAG_NO_INVIS
| 256
| Targets only those that are not invisible.
|-
| DOTA_UNIT_TARGET_FLAG_NOT_ANCIENTS
| 512
| Targets only those that are not considered ancients.
|-
| DOTA_UNIT_TARGET_FLAG_PLAYER_CONTROLLED
| 1024
| Targets player controlled units (ignores the rest of basic units).
|-
| DOTA_UNIT_TARGET_FLAG_NOT_DOMINATED
| 2048
| Targets only those that are not being dominated.
|-
| DOTA_UNIT_TARGET_FLAG_NOT_SUMMONED
| 4096
| Targets only those that are not summoned creatures.
|-
| DOTA_UNIT_TARGET_FLAG_NOT_ILLUSIONS
| 8192
| Targets only those that are not illusions.
|-
| DOTA_UNIT_TARGET_FLAG_NOT_ATTACK_IMMUNE
| 16384
| Targets only those that are not immune to attacks.
|-
| DOTA_UNIT_TARGET_FLAG_MANA_ONLY
| 32768
| Targets only those that has a mana bar.
|-
| DOTA_UNIT_TARGET_FLAG_CHECK_DISABLE_HELP
| 65536
|
|-
| DOTA_UNIT_TARGET_FLAG_NOT_CREEP_HERO
| 131072
| Targets only those that are not considered creep heroes.
|-
| DOTA_UNIT_TARGET_FLAG_OUT_OF_WORLD
| 262144
| Targets units/heroes that are hidden as well.
|-
| DOTA_UNIT_TARGET_FLAG_NOT_NIGHTMARED
| 524288
| Targets only those that are not nightmared.
|}


''int'' '''WorldToGridPosX'''(''float'')
==== DOTA_UNIT_TARGET_TEAM ====
Get the X index of a given world X position
{| class="standard-table" style="width: 50%;"
! Name
! Value
! Description
|-
| DOTA_UNIT_TARGET_TEAM_NONE
| 0
|
|-
| DOTA_UNIT_TARGET_TEAM_FRIENDLY
| 1
| Targets all those that are in the same team as the team that was declared the source.
|-
| DOTA_UNIT_TARGET_TEAM_ENEMY
| 2
| Targets all those that are not in the same team as the team that was declared the source.
|-
| DOTA_UNIT_TARGET_TEAM_BOTH
| 3
| Targets all entities from every team.
|-
| DOTA_UNIT_TARGET_TEAM_CUSTOM
| 4
|
|}


''float'' '''GridPosToWorldCenterX'''(''int'')
==== DOTA_UNIT_TARGET_TYPE ====
Get the X position of the center of a given X index
{| class="standard-table" style="width: 50%;"
! Name
! Value
! Description
|-
| DOTA_UNIT_TARGET_NONE
| 0
|
|-
| DOTA_UNIT_TARGET_HERO
| 1
| Targets heroes.
|-
| DOTA_UNIT_TARGET_CREEP
| 2
| Targets creeps.
|-
| DOTA_UNIT_TARGET_BUILDING
| 4
| Targets buildings.
|-
| DOTA_UNIT_TARGET_MECHANICAL
| 8
| Deprecated.
|-
| DOTA_UNIT_TARGET_COURIER
| 16
| Targets couriers.
|-
| DOTA_UNIT_TARGET_BASIC
| 18
| Targets units. (not necessarily creeps)
|-
| DOTA_UNIT_TARGET_OTHER
| 32
|
|-
| DOTA_UNIT_TARGET_ALL
| 63
| Targets everything (including buildings, couriers, Shrines etc)
|-
| DOTA_UNIT_TARGET_TREE
| 64
| Targets trees.
|-
| DOTA_UNIT_TARGET_CUSTOM
| 128
|
|}


''int'' '''WorldToGridPosY'''(''float'')
==== EDOTA_ModifyGold_Reason ====
Get the Y index of a given world Y position
{| class="standard-table" style="width: 50%;"
! Name
! Value
! Description
|-
| DOTA_ModifyGold_Unspecified
| 0
|
|-
| DOTA_ModifyGold_Death
| 1
|
|-
| DOTA_ModifyGold_Buyback
| 2
|
|-
| DOTA_ModifyGold_PurchaseConsumable
| 3
|
|-
| DOTA_ModifyGold_PurchaseItem
| 4
|
|-
| DOTA_ModifyGold_AbandonedRedistribute
| 5
|
|-
| DOTA_ModifyGold_SellItem
| 6
|
|-
| DOTA_ModifyGold_AbilityCost
| 7
|
|-
| DOTA_ModifyGold_CheatCommand
| 8
|
|-
| DOTA_ModifyGold_SelectionPenalty
| 9
|
|-
| DOTA_ModifyGold_GameTick
| 10
|
|-
| DOTA_ModifyGold_Building
| 11
|
|-
| DOTA_ModifyGold_HeroKill
| 12
|
|-
| DOTA_ModifyGold_CreepKill
| 13
|
|-
| DOTA_ModifyGold_RoshanKill
| 14
|
|-
| DOTA_ModifyGold_CourierKill
| 15
|
|-
| DOTA_ModifyGold_SharedGold
| 16
|
|}


''float'' '''GridPosToWorldCenterY'''(''int'')
==== EDOTA_ModifyXP_Reason ====
Get the Y position of the center of a given Y index
{| class="standard-table" style="width: 50%;"
! Name
! Value
! Description
|-
| DOTA_ModifyXP_Unspecified
| 0
|
|-
| DOTA_ModifyXP_HeroKill
| 1
|
|-
| DOTA_ModifyXP_CreepKill
| 2
|
|-
| DOTA_ModifyXP_RoshanKill
| 3
|
|}


''void'' '''RegrowAllTrees'''()
==== EShareAbility ====
Causes all trees in the map to regrow
{| class="standard-table" style="width: 50%;"
! Name
! Value
! Description
|-
| ITEM_FULLY_SHAREABLE
| 0
|
|-
| ITEM_PARTIALLY_SHAREABLE
| 1
|
|-
| ITEM_NOT_SHAREABLE
| 2
|
|}


= Class Convars =
==== LuaModifierType ====
{| class="standard-table" style="width: 50%;"
! Name
! Value
! Description
|-
| LUA_MODIFIER_MOTION_NONE
| 0
|
|-
| LUA_MODIFIER_MOTION_HORIZONTAL
| 1
|
|-
| LUA_MODIFIER_MOTION_VERTICAL
| 2
|
|-
| LUA_MODIFIER_MOTION_BOTH
| 3
|
|-
| LUA_MODIFIER_INVALID
| 4
|
|}


''table'' '''GetFloat'''(''string'')
==== ModifierPriority ====
GetFloat(name) : returns the convar as a ''float''. May return ''null'' if no such convar.
{| class="standard-table" style="width: 50%;"
! Name
! Value
! Description
|-
| MODIFIER_PRIORITY_LOW
| 0
|
|-
| MODIFIER_PRIORITY_NORMAL
| 1
|
|-
| MODIFIER_PRIORITY_HIGH
| 2
|
|-
| MODIFIER_PRIORITY_ULTRA
| 3
|
|-
| MODIFIER_PRIORITY_SUPER_ULTRA
| 4
|
|}


''table'' '''GetStr'''(''string'')
==== ParticleAttachment_t ====
GetStr(name) : returns the convar as a ''string''. May return ''null'' if no such convar.
{| class="standard-table" style="width: 50%;"
! Name
! Value
! Description
|-
| PATTACH_INVALID
| -1
|
|-
| PATTACH_ABSORIGIN
| 0
| Attaches the particle to the an origin.
|-
| PATTACH_ABSORIGIN_FOLLOW
| 1
| Attaches the particle to an origin, and causes it to follow the unit that is considered the source of the particle.
|-
| PATTACH_CUSTOMORIGIN
| 2
| Attaches the particle to a custom origin. (Requires passing a vector to the Control points)
|-
| PATTACH_CUSTOMORIGIN_FOLLOW
| 3
|
|-
| PATTACH_POINT
| 4
|
|-
| PATTACH_POINT_FOLLOW
| 5
|
|-
| PATTACH_EYES_FOLLOW
| 6
| Attaches the particle to the "eyes" of the entity.
|-
| PATTACH_OVERHEAD_FOLLOW
| 7
| Attaches the particle to be set above the head of the entity.
|-
| PATTACH_WORLDORIGIN
| 8
| Attaches the particle to the ground.
|-
| PATTACH_ROOTBONE_FOLLOW
| 9
|
|-
| PATTACH_RENDERORIGIN_FOLLOW
| 10
|
|-
| PATTACH_MAIN_VIEW
| 11
|
|-
| PATTACH_WATERWAKE
| 12
|
|-
| MAX_PATTACH_TYPES
| 13
|
|}


''void'' '''SetStr'''(''string'', ''string'')
==== UnitFilterResult ====
SetStr(name, val) : sets the value of the convar to the ''string''.
{| class="standard-table" style="width: 50%;"
! Name
! Value
! Description
|-
| UF_SUCCESS
| 0
|
|-
| UF_FAIL_FRIENDLY
| 1
|
|-
| UF_FAIL_ENEMY
| 2
|
|-
| UF_FAIL_HERO
| 3
|
|-
| UF_FAIL_CONSIDERED_HERO
| 4
|
|-
| UF_FAIL_CREEP
| 5
|
|-
| UF_FAIL_BUILDING
| 6
|
|-
| UF_FAIL_MECHANICAL
| 7
|
|-
| UF_FAIL_COURIER
| 8
|
|-
| UF_FAIL_OTHER
| 9
|
|-
| UF_FAIL_ANCIENT
| 10
|
|-
| UF_FAIL_ILLUSION
| 11
|
|-
| UF_FAIL_SUMMONED
| 12
|
|-
| UF_FAIL_DOMINATED
| 13
|
|-
| UF_FAIL_MELEE
| 14
|
|-
| UF_FAIL_RANGED
| 15
|
|-
| UF_FAIL_DEAD
| 16
|
|-
| UF_FAIL_MAGIC_IMMUNE_ALLY
| 17
|
|-
| UF_FAIL_MAGIC_IMMUNE_ENEMY
| 18
|
|-
| UF_FAIL_INVULNERABLE
| 19
|
|-
| UF_FAIL_IN_FOW
| 20
|
|-
| UF_FAIL_INVISIBLE
| 21
|
|-
| UF_FAIL_NOT_PLAYER_CONTROLLED
| 22
|
|-
| UF_FAIL_ATTACK_IMMUNE
| 23
|
|-
| UF_FAIL_CUSTOM
| 24
|
|-
| UF_FAIL_INVALID_LOCATION
| 25
|
|-
| UF_FAIL_DISABLE_HELP
| 26
|
|-
| UF_FAIL_OUT_OF_WORLD
| 27
|
|-
| UF_FAIL_NIGHTMARED
| 28
|
|}


''void'' '''SetInt'''(''string'', ''int'')
==== modifierstate ====
SetInt(name, val) : sets the value of the convar to the ''int''.
{| class="standard-table" style="width: 50%;"
! Name
! Value
! Description
|-
| MODIFIER_STATE_ROOTED
| 0
| Set to true to cause the parent to become rooted.
|-
| MODIFIER_STATE_DISARMED
| 1
| Set to true to cause the parent to become disarmed.
|-
| MODIFIER_STATE_ATTACK_IMMUNE
| 2
| Set to true to cause the parent to become attack immune.
|-
| MODIFIER_STATE_SILENCED
| 3
| Set to true to cause the parent to become silenced.
|-
| MODIFIER_STATE_MUTED
| 4
| Set to true to cause the parent to become muted.
|-
| MODIFIER_STATE_STUNNED
| 5
| Set to true to cause the parent to become stunned.
|-
| MODIFIER_STATE_HEXED
| 6
| Set to true to cause the parent to become hexed.
|-
| MODIFIER_STATE_INVISIBLE
| 7
| Set to true to cause the parent to become invisible.
|-
| MODIFIER_STATE_INVULNERABLE
| 8
| Set to true to cause the parent to become invulnerable.
|-
| MODIFIER_STATE_MAGIC_IMMUNE
| 9
| Set to true to cause the parent to become immune to magic.
|-
| MODIFIER_STATE_PROVIDES_VISION
| 10
| Set to true to cause the parent to share its vision with the source of the modifier.
|-
| MODIFIER_STATE_NIGHTMARED
| 11
| Set to true to cause the parent to become nightmared.
|-
| MODIFIER_STATE_BLOCK_DISABLED
| 12
| Set to true to cause the parent to become unable to block attacks.
|-
| MODIFIER_STATE_EVADE_DISABLED
| 13
| Set to true to cause the parent to become unable to evade attacks.
|-
| MODIFIER_STATE_UNSELECTABLE
| 14
| Set to true to cause the parent to make it unselectable.
|-
| MODIFIER_STATE_CANNOT_MISS
| 15
| Set to true to cause the parent to always hit its target.
|-
| MODIFIER_STATE_SPECIALLY_DENIABLE
| 16
| Set to true to cause allies to be able to deny the parent.
|-
| MODIFIER_STATE_FROZEN
| 17
| Set to true to cause the parent to become frozen.
|-
| MODIFIER_STATE_COMMAND_RESTRICTED
| 18
| Set to true to cause the parent to become unable to issue orders.
|-
| MODIFIER_STATE_NOT_ON_MINIMAP
| 19
| Set to true to cause the parent to become invisible on the minimap.
|-
| MODIFIER_STATE_NOT_ON_MINIMAP_FOR_ENEMIES
| 20
| Set to true to cause the parent to become invisible on the minimap for enemies.
|-
| MODIFIER_STATE_LOW_ATTACK_PRIORITY
| 21
| Set to true to cause the parent to become low attack priority, causing it to be the last to be hit when attack moving.
|-
| MODIFIER_STATE_NO_HEALTH_BAR
| 22
| Set to true to cause the parent to have its health bar disabled (invisible).
|-
| MODIFIER_STATE_FLYING
| 23
| Set to true to cause the parent to fly, ignoring terrains and increasing its offset from the ground.
|-
| MODIFIER_STATE_NO_UNIT_COLLISION
| 24
| Set to true to cause the parent to become phased.
|-
| MODIFIER_STATE_NO_TEAM_MOVE_TO
| 25
|
|-
| MODIFIER_STATE_NO_TEAM_SELECT
| 26
|
|-
| MODIFIER_STATE_PASSIVES_DISABLED
| 27
| Set to true to cause the parent to have its passives disabled.
|-
| MODIFIER_STATE_DOMINATED
| 28
| Set to true to cause the parent to become dominated.
|-
| MODIFIER_STATE_BLIND
| 29
| Set to true to cause the parent to become blind.
|-
| MODIFIER_STATE_OUT_OF_GAME
| 30
|
|-
| MODIFIER_STATE_FAKE_ALLY
| 31
|
|-
| MODIFIER_STATE_FLYING_FOR_PATHING_PURPOSES_ONLY
| 32
| Set to true to cause the parent to stay on the ground, but be considered flying when moving.
|-
| MODIFIER_STATE_TRUESIGHT_IMMUNE
| 33
| Set to true to cause the parent to become immune to truesight.
|-
| MODIFIER_STATE_LAST
| 34
|
|}


''void'' '''RegisterCommand'''(''string'', ''handle'', ''string'', ''int'')
==== quest_text_replace_values_t ====
RegisterCommand(name, fn, helpString, flags) : register a console command.
{| class="standard-table" style="width: 50%;"
! Name
! Value
! Description
|-
| QUEST_TEXT_REPLACE_VALUE_CURRENT_VALUE
| 0
|
|-
| QUEST_TEXT_REPLACE_VALUE_TARGET_VALUE
| 1
|
|-
| QUEST_TEXT_REPLACE_VALUE_ROUND
| 2
|
|-
| QUEST_TEXT_REPLACE_VALUE_REWARD
| 3
|
|-
| QUEST_NUM_TEXT_REPLACE_VALUES
| 4
|
|}


''handle'' '''GetDOTACommandClient'''()
==== Find Types ====
GetDOTACommandClient() : returns the DOTA player who issued this console command.
{| class="standard-table" style="width: 50%;"
! Name
! Value
! Description
|-
| FIND_UNITS_EVERYWHERE
| -1
| Find units in the whole map.
|-
| FIND_ANY_ORDER
| 0
| Random the order units are found.
|-
| FIND_CLOSEST
| 1
| Find units from the closest to the source to the farthest.
|-
| FIND_FARTHEST
| 2
| Find units from the farthest to the source to the farthest.
|}


''handle'' '''GetCommandClient'''()
==== subquest_text_replace_values_t ====
GetCommandClient() : returns the player who issued this console command.
{| class="standard-table" style="width: 50%;"
! Name
! Value
! Description
|-
| SUBQUEST_TEXT_REPLACE_VALUE_CURRENT_VALUE
| 0
|
|-
| SUBQUEST_TEXT_REPLACE_VALUE_TARGET_VALUE
| 1
|
|-
| SUBQUEST_NUM_TEXT_REPLACE_VALUES
| 2
|
|}


''table'' '''GetInt'''(''string'')
==== DOTAScriptInventorySlot_t ====
GetInt(name) : returns the convar as an ''int''. May return ''null'' if no such convar.
{| class="standard-table" style="width: 50%;"
! Name
! Value
! Description
|-
| DOTA_ITEM_SLOT_1
| 0
|
|-
| DOTA_ITEM_SLOT_2
| 1
|
|-
| DOTA_ITEM_SLOT_3
| 2
|
|-
| DOTA_ITEM_SLOT_4
| 3
|
|-
| DOTA_ITEM_SLOT_5
| 4
|
|-
| DOTA_ITEM_SLOT_6
| 5
|
|-
| DOTA_ITEM_SLOT_7
| 6
| Backpack slot 1
|-
| DOTA_ITEM_SLOT_8
| 7
| Backpack slot 2
|-
| DOTA_ITEM_SLOT_9
| 8
| Backpack slot 3
|-
| DOTA_STASH_SLOT_1
| 9
|
|-
| DOTA_STASH_SLOT_2
| 10
|
|-
| DOTA_STASH_SLOT_3
| 11
|
|-
| DOTA_STASH_SLOT_4
| 12
|
|-
| DOTA_STASH_SLOT_5
| 13
|
|-
| DOTA_STASH_SLOT_6
| 14
|
|-
| DOTA_ITEM_TP_SCROLL
| 15
|
|-
| DOTA_ITEM_NEUTRAL_SLOT
| 16
|
|-
| DOTA_ITEM_TRANSIENT_ITEM
| 17
|
|-
| DOTA_ITEM_TRANSIENT_RECIPE
| 18
|
|-
| DOTA_ITEM_TRANSIENT_CAST_ITEM
| 20
|
|}


''void'' '''SetFloat'''(''string'', ''float'')
==== DOTA_GameState ====
SetFloat(name, val) : sets the value of the convar to the ''float''.
{| class="standard-table" style="width: 50%;"
! Name
! Value
! Description
|-
| DOTA_GAMERULES_STATE_INIT
| 0
|
|-
| DOTA_GAMERULES_STATE_WAIT_FOR_PLAYERS_TO_LOAD
| 1
|
|-
| DOTA_GAMERULES_STATE_CUSTOM_GAME_SETUP
| 2
|
|-
| DOTA_GAMERULES_STATE_HERO_SELECTION
| 3
|
|-
| DOTA_GAMERULES_STATE_STRATEGY_TIME
| 4
|
|-
| DOTA_GAMERULES_STATE_TEAM_SHOWCASE
| 5
|
|-
| DOTA_GAMERULES_STATE_PRE_GAME
| 6
|
|-
| DOTA_GAMERULES_STATE_GAME_IN_PROGRESS
| 7
|
|-
| DOTA_GAMERULES_STATE_POST_GAME
| 8
|
|-
| DOTA_GAMERULES_STATE_DISCONNECT
| 9
|
|}


''void'' '''RegisterConvar'''(''string'', ''string'', ''string'', ''int'')
==== DOTALimits_t ====
RegisterConvar(name, defaultValue, helpString, flags): register a new console variable.
{| class="standard-table" style="width: 50%;"
! Name
! Value
! Description
|-
| DOTA_DEFAULT_MAX_TEAM
| 5
| Default number of players per team.
|-
| DOTA_DEFAULT_MAX_TEAM_PLAYERS
| 10
| Default number of non-spectator players supported.
|-
| DOTA_MAX_PLAYER_TEAMS
| 10
| Max number of player teams supported.
|-
| DOTA_MAX_TEAM
| 24
| Max number of players per team.
|-
| DOTA_MAX_TEAM_PLAYERS
| 24
| Max number of non-spectator players supported.
|-
| DOTA_MAX_SPECTATOR_TEAM_SIZE
| 40
| How many spectators can watch.
|-
| DOTA_MAX_PLAYERS
| 64
| Max number of players connected to the server including spectators.
|}


''table'' '''GetBool'''(''string'')
==== GameActivity_t ====
GetBool(name) : returns the convar as a boolean flag.
{| class="standard-table" style="width: 50%;"
! Name
! Value
! Description
|-
| ACT_DOTA_IDLE
| 1500
|
|-
| ACT_DOTA_IDLE_RARE
| 1501
|
|-
| ACT_DOTA_RUN
| 1502
|
|-
| ACT_DOTA_ATTACK
| 1503
|
|-
| ACT_DOTA_ATTACK2
| 1504
|
|-
| ACT_DOTA_ATTACK_EVENT
| 1505
|
|-
| ACT_DOTA_DIE
| 1506
|
|-
| ACT_DOTA_FLINCH
| 1507
|
|-
| ACT_DOTA_FLAIL
| 1508
|
|-
| ACT_DOTA_DISABLED
| 1509
|
|-
| ACT_DOTA_CAST_ABILITY_1
| 1510
|
|-
| ACT_DOTA_CAST_ABILITY_2
| 1511
|
|-
| ACT_DOTA_CAST_ABILITY_3
| 1512
|
|-
| ACT_DOTA_CAST_ABILITY_4
| 1513
|
|-
| ACT_DOTA_CAST_ABILITY_5
| 1514
|
|-
| ACT_DOTA_CAST_ABILITY_6
| 1515
|
|-
| ACT_DOTA_OVERRIDE_ABILITY_1
| 1516
|
|-
| ACT_DOTA_OVERRIDE_ABILITY_2
| 1517
|
|-
| ACT_DOTA_OVERRIDE_ABILITY_3
| 1518
|
|-
| ACT_DOTA_OVERRIDE_ABILITY_4
| 1519
|
|-
| ACT_DOTA_CHANNEL_ABILITY_1
| 1520
|
|-
| ACT_DOTA_CHANNEL_ABILITY_2
| 1521
|
|-
| ACT_DOTA_CHANNEL_ABILITY_3
| 1522
|
|-
| ACT_DOTA_CHANNEL_ABILITY_4
| 1523
|
|-
| ACT_DOTA_CHANNEL_ABILITY_5
| 1524
|
|-
| ACT_DOTA_CHANNEL_ABILITY_6
| 1525
|
|-
| ACT_DOTA_CHANNEL_END_ABILITY_1
| 1526
|
|-
| ACT_DOTA_CHANNEL_END_ABILITY_2
| 1527
|
|-
| ACT_DOTA_CHANNEL_END_ABILITY_3
| 1528
|
|-
| ACT_DOTA_CHANNEL_END_ABILITY_4
| 1529
|
|-
| ACT_DOTA_CHANNEL_END_ABILITY_5
| 1530
|
|-
| ACT_DOTA_CHANNEL_END_ABILITY_6
| 1531
|
|-
| ACT_DOTA_CONSTANT_LAYER
| 1532
|
|-
| ACT_DOTA_CAPTURE
| 1533
|
|-
| ACT_DOTA_SPAWN
| 1534
|
|-
| ACT_DOTA_KILLTAUNT
| 1535
|
|-
| ACT_DOTA_TAUNT
| 1536
|
|-
| ACT_DOTA_THIRST
| 1537
|
|-
| ACT_DOTA_CAST_DRAGONBREATH
| 1538
|
|-
| ACT_DOTA_ECHO_SLAM
| 1539
|
|-
| ACT_DOTA_CAST_ABILITY_1_END
| 1540
|
|-
| ACT_DOTA_CAST_ABILITY_2_END
| 1541
|
|-
| ACT_DOTA_CAST_ABILITY_3_END
| 1542
|
|-
| ACT_DOTA_CAST_ABILITY_4_END
| 1543
|
|-
| ACT_MIRANA_LEAP_END
| 1544
|
|-
| ACT_WAVEFORM_START
| 1545
|
|-
| ACT_WAVEFORM_END
| 1546
|
|-
| ACT_DOTA_CAST_ABILITY_ROT
| 1547
|
|-
| ACT_DOTA_DIE_SPECIAL
| 1548
|
|-
| ACT_DOTA_RATTLETRAP_BATTERYASSAULT
| 1549
|
|-
| ACT_DOTA_RATTLETRAP_POWERCOGS
| 1550
|
|-
| ACT_DOTA_RATTLETRAP_HOOKSHOT_START
| 1551
|
|-
| ACT_DOTA_RATTLETRAP_HOOKSHOT_LOOP
| 1552
|
|-
| ACT_DOTA_RATTLETRAP_HOOKSHOT_END
| 1553
|
|-
| ACT_STORM_SPIRIT_OVERLOAD_RUN_OVERRIDE
| 1554
|
|-
| ACT_DOTA_TINKER_REARM1
| 1555
|
|-
| ACT_DOTA_TINKER_REARM2
| 1556
|
|-
| ACT_DOTA_TINKER_REARM3
| 1557
|
|-
| ACT_TINY_AVALANCHE
| 1558
|
|-
| ACT_TINY_TOSS
| 1559
|
|-
| ACT_TINY_GROWL
| 1560
|
|-
| ACT_DOTA_WEAVERBUG_ATTACH
| 1561
|
|-
| ACT_DOTA_CAST_WILD_AXES_END
| 1562
|
|-
| ACT_DOTA_CAST_LIFE_BREAK_START
| 1563
|
|-
| ACT_DOTA_CAST_LIFE_BREAK_END
| 1564
|
|-
| ACT_DOTA_NIGHTSTALKER_TRANSITION
| 1565
|
|-
| ACT_DOTA_LIFESTEALER_RAGE
| 1566
|
|-
| ACT_DOTA_LIFESTEALER_OPEN_WOUNDS
| 1567
|
|-
| ACT_DOTA_SAND_KING_BURROW_IN
| 1568
|
|-
| ACT_DOTA_SAND_KING_BURROW_OUT
| 1569
|
|-
| ACT_DOTA_EARTHSHAKER_TOTEM_ATTACK
| 1570
|
|-
| ACT_DOTA_WHEEL_LAYER
| 1571
|
|-
| ACT_DOTA_ALCHEMIST_CHEMICAL_RAGE_START
| 1572
|
|-
| ACT_DOTA_ALCHEMIST_CONCOCTION
| 1573
|
|-
| ACT_DOTA_JAKIRO_LIQUIDFIRE_START
| 1574
|
|-
| ACT_DOTA_JAKIRO_LIQUIDFIRE_LOOP
| 1575
|
|-
| ACT_DOTA_LIFESTEALER_INFEST
| 1576
|
|-
| ACT_DOTA_LIFESTEALER_INFEST_END
| 1577
|
|-
| ACT_DOTA_LASSO_LOOP
| 1578
|
|-
| ACT_DOTA_ALCHEMIST_CONCOCTION_THROW
| 1579
|
|-
| ACT_DOTA_ALCHEMIST_CHEMICAL_RAGE_END
| 1580
|
|-
| ACT_DOTA_CAST_COLD_SNAP
| 1581
|
|-
| ACT_DOTA_CAST_GHOST_WALK
| 1582
|
|-
| ACT_DOTA_CAST_TORNADO
| 1583
|
|-
| ACT_DOTA_CAST_EMP
| 1584
|
|-
| ACT_DOTA_CAST_ALACRITY
| 1585
|
|-
| ACT_DOTA_CAST_CHAOS_METEOR
| 1586
|
|-
| ACT_DOTA_CAST_SUN_STRIKE
| 1587
|
|-
| ACT_DOTA_CAST_FORGE_SPIRIT
| 1588
|
|-
| ACT_DOTA_CAST_ICE_WALL
| 1589
|
|-
| ACT_DOTA_CAST_DEAFENING_BLAST
| 1590
|
|-
| ACT_DOTA_VICTORY
| 1591
|
|-
| ACT_DOTA_DEFEAT
| 1592
|
|-
| ACT_DOTA_SPIRIT_BREAKER_CHARGE_POSE
| 1593
|
|-
| ACT_DOTA_SPIRIT_BREAKER_CHARGE_END
| 1594
|
|-
| ACT_DOTA_TELEPORT
| 1595
|
|-
| ACT_DOTA_TELEPORT_END
| 1596
|
|-
| ACT_DOTA_CAST_REFRACTION
| 1597
|
|-
| ACT_DOTA_CAST_ABILITY_7
| 1598
|
|-
| ACT_DOTA_CANCEL_SIREN_SONG
| 1599
|
|-
| ACT_DOTA_CHANNEL_ABILITY_7
| 1600
|
|-
| ACT_DOTA_LOADOUT
| 1601
|
|-
| ACT_DOTA_FORCESTAFF_END
| 1602
|
|-
| ACT_DOTA_POOF_END
| 1603
|
|-
| ACT_DOTA_SLARK_POUNCE
| 1604
|
|-
| ACT_DOTA_MAGNUS_SKEWER_START
| 1605
|
|-
| ACT_DOTA_MAGNUS_SKEWER_END
| 1606
|
|-
| ACT_DOTA_MEDUSA_STONE_GAZE
| 1607
|
|-
| ACT_DOTA_RELAX_START
| 1608
|
|-
| ACT_DOTA_RELAX_LOOP
| 1609
|
|-
| ACT_DOTA_RELAX_END
| 1610
|
|-
| ACT_DOTA_CENTAUR_STAMPEDE
| 1611
|
|-
| ACT_DOTA_BELLYACHE_START
| 1612
|
|-
| ACT_DOTA_BELLYACHE_LOOP
| 1613
|
|-
| ACT_DOTA_BELLYACHE_END
| 1614
|
|-
| ACT_DOTA_ROQUELAIRE_LAND
| 1615
|
|-
| ACT_DOTA_ROQUELAIRE_LAND_IDLE
| 1616
|
|-
| ACT_DOTA_GREEVIL_CAST
| 1617
|
|-
| ACT_DOTA_GREEVIL_OVERRIDE_ABILITY
| 1618
|
|-
| ACT_DOTA_GREEVIL_HOOK_START
| 1619
|
|-
| ACT_DOTA_GREEVIL_HOOK_END
| 1620
|
|-
| ACT_DOTA_GREEVIL_BLINK_BONE
| 1621
|
|-
| ACT_DOTA_IDLE_SLEEPING
| 1622
|
|-
| ACT_DOTA_INTRO
| 1623
|
|-
| ACT_DOTA_GESTURE_POINT
| 1624
|
|-
| ACT_DOTA_GESTURE_ACCENT
| 1625
|
|-
| ACT_DOTA_SLEEPING_END
| 1626
|
|-
| ACT_DOTA_AMBUSH
| 1627
|
|-
| ACT_DOTA_ITEM_LOOK
| 1628
|
|-
| ACT_DOTA_STARTLE
| 1629
|
|-
| ACT_DOTA_FRUSTRATION
| 1630
|
|-
| ACT_DOTA_TELEPORT_REACT
| 1631
|
|-
| ACT_DOTA_TELEPORT_END_REACT
| 1632
|
|-
| ACT_DOTA_SHRUG
| 1633
|
|-
| ACT_DOTA_RELAX_LOOP_END
| 1634
|
|-
| ACT_DOTA_PRESENT_ITEM
| 1635
|
|-
| ACT_DOTA_IDLE_IMPATIENT
| 1636
|
|-
| ACT_DOTA_SHARPEN_WEAPON
| 1637
|
|-
| ACT_DOTA_SHARPEN_WEAPON_OUT
| 1638
|
|-
| ACT_DOTA_IDLE_SLEEPING_END
| 1639
|
|-
| ACT_DOTA_BRIDGE_DESTROY
| 1640
|
|-
| ACT_DOTA_TAUNT_SNIPER
| 1641
|
|-
| ACT_DOTA_DEATH_BY_SNIPER
| 1642
|
|-
| ACT_DOTA_LOOK_AROUND
| 1643
|
|-
| ACT_DOTA_CAGED_CREEP_RAGE
| 1644
|
|-
| ACT_DOTA_CAGED_CREEP_RAGE_OUT
| 1645
|
|-
| ACT_DOTA_CAGED_CREEP_SMASH
| 1646
|
|-
| ACT_DOTA_CAGED_CREEP_SMASH_OUT
| 1647
|
|-
| ACT_DOTA_IDLE_IMPATIENT_SWORD_TAP
| 1648
|
|-
| ACT_DOTA_INTRO_LOOP
| 1649
|
|-
| ACT_DOTA_BRIDGE_THREAT
| 1650
|
|-
| ACT_DOTA_DAGON
| 1651
|
|-
| ACT_DOTA_CAST_ABILITY_2_ES_ROLL_START
| 1652
|
|-
| ACT_DOTA_CAST_ABILITY_2_ES_ROLL
| 1653
|
|-
| ACT_DOTA_CAST_ABILITY_2_ES_ROLL_END
| 1654
|
|-
| ACT_DOTA_NIAN_PIN_START
| 1655
|
|-
| ACT_DOTA_NIAN_PIN_LOOP
| 1656
|
|-
| ACT_DOTA_NIAN_PIN_END
| 1657
|
|-
| ACT_DOTA_LEAP_STUN
| 1658
|
|-
| ACT_DOTA_LEAP_SWIPE
| 1659
|
|-
| ACT_DOTA_NIAN_INTRO_LEAP
| 1660
|
|-
| ACT_DOTA_AREA_DENY
| 1661
|
|-
| ACT_DOTA_NIAN_PIN_TO_STUN
| 1662
|
|-
| ACT_DOTA_RAZE_1
| 1663
|
|-
| ACT_DOTA_RAZE_2
| 1664
|
|-
| ACT_DOTA_RAZE_3
| 1665
|
|-
| ACT_DOTA_UNDYING_DECAY
| 1666
|
|-
| ACT_DOTA_UNDYING_SOUL_RIP
| 1667
|
|-
| ACT_DOTA_UNDYING_TOMBSTONE
| 1668
|
|-
| ACT_DOTA_WHIRLING_AXES_RANGED
| 1669
|
|-
| ACT_DOTA_SHALLOW_GRAVE
| 1670
|
|-
| ACT_DOTA_COLD_FEET
| 1671
|
|-
| ACT_DOTA_ICE_VORTEX
| 1672
|
|-
| ACT_DOTA_CHILLING_TOUCH
| 1673
|
|-
| ACT_DOTA_ENFEEBLE
| 1674
|
|-
| ACT_DOTA_FATAL_BONDS
| 1675
|
|-
| ACT_DOTA_MIDNIGHT_PULSE
| 1676
|
|-
| ACT_DOTA_ANCESTRAL_SPIRIT
| 1677
|
|-
| ACT_DOTA_THUNDER_STRIKE
| 1678
|
|-
| ACT_DOTA_KINETIC_FIELD
| 1679
|
|-
| ACT_DOTA_STATIC_STORM
| 1680
|
|-
| ACT_DOTA_MINI_TAUNT
| 1681
|
|-
| ACT_DOTA_ARCTIC_BURN_END
| 1682
|
|-
| ACT_DOTA_LOADOUT_RARE
| 1683
|
|-
| ACT_DOTA_SWIM
| 1684
|
|-
| ACT_DOTA_FLEE
| 1685
|
|-
| ACT_DOTA_TROT
| 1686
|
|-
| ACT_DOTA_SHAKE
| 1687
|
|-
| ACT_DOTA_SWIM_IDLE
| 1688
|
|-
| ACT_DOTA_WAIT_IDLE
| 1689
|
|-
| ACT_DOTA_GREET
| 1690
|
|-
| ACT_DOTA_TELEPORT_COOP_START
| 1691
|
|-
| ACT_DOTA_TELEPORT_COOP_WAIT
| 1692
|
|-
| ACT_DOTA_TELEPORT_COOP_END
| 1693
|
|-
| ACT_DOTA_TELEPORT_COOP_EXIT
| 1694
|
|-
| ACT_DOTA_SHOPKEEPER_PET_INTERACT
| 1695
|
|-
| ACT_DOTA_ITEM_PICKUP
| 1696
|
|-
| ACT_DOTA_ITEM_DROP
| 1697
|
|-
| ACT_DOTA_CAPTURE_PET
| 1698
|
|-
| ACT_DOTA_PET_WARD_OBSERVER
| 1699
|
|-
| ACT_DOTA_PET_WARD_SENTRY
| 1700
|
|-
| ACT_DOTA_PET_LEVEL
| 1701
|
|-
| ACT_DOTA_CAST_BURROW_END
| 1702
|
|-
| ACT_DOTA_LIFESTEALER_ASSIMILATE
| 1703
|
|-
| ACT_DOTA_LIFESTEALER_EJECT
| 1704
|
|-
| ACT_DOTA_ATTACK_EVENT_BASH
| 1705
|
|-
| ACT_DOTA_CAPTURE_RARE
| 1706
|
|-
| ACT_DOTA_AW_MAGNETIC_FIELD
| 1707
|
|-
| ACT_DOTA_CAST_GHOST_SHIP
| 1708
|
|}


''void'' '''SetBool'''(''string'', ''bool'')
==== modifierfunction ====
SetBool(name, val) : sets the value of the convar to the ''bool''.
{| class="standard-table" style="width: 100%;"
! Name
! Value
! Lua function
! Description
|-
| MODIFIER_PROPERTY_PREATTACK_BONUS_DAMAGE
| 0
| GetModifierPreAttack_BonusDamage
|
|-
| MODIFIER_PROPERTY_PREATTACK_BONUS_DAMAGE_PROC
| 1
| GetModifierPreAttack_BonusDamage_Proc
|
|-
| MODIFIER_PROPERTY_PREATTACK_BONUS_DAMAGE_POST_CRIT
| 2
| GetModifierPreAttack_BonusDamagePostCrit
|
|-
| MODIFIER_PROPERTY_BASEATTACK_BONUSDAMAGE
| 3
| GetModifierBaseAttack_BonusDamage
|
|-
| MODIFIER_PROPERTY_PROCATTACK_BONUS_DAMAGE_PHYSICAL
| 4
| GetModifierProcAttack_BonusDamage_Physical
|
|-
| MODIFIER_PROPERTY_PROCATTACK_BONUS_DAMAGE_MAGICAL
| 5
| GetModifierProcAttack_BonusDamage_Magical
|
|-
| MODIFIER_PROPERTY_PROCATTACK_BONUS_DAMAGE_PURE
| 6
| GetModifierProcAttack_BonusDamage_Pure
|
|-
| MODIFIER_PROPERTY_PROCATTACK_FEEDBACK
| 7
| GetModifierProcAttack_Feedback
|
|-
| MODIFIER_PROPERTY_PRE_ATTACK
| 8
| GetModifierPreAttack
|
|-
| MODIFIER_PROPERTY_INVISIBILITY_LEVEL
| 9
| GetModifierInvisibilityLevel
| Generates a level of opacity on the parent.
|-
| MODIFIER_PROPERTY_PERSISTENT_INVISIBILITY
| 10
| GetModifierPersistentInvisibility
|
|-
| MODIFIER_PROPERTY_MOVESPEED_BONUS_CONSTANT
| 11
| GetModifierMoveSpeedBonus_Constant
| Increases the move speed of the parent by a constant returned to it. Can get negative values.
|-
| MODIFIER_PROPERTY_MOVESPEED_BASE_OVERRIDE
| 12
| GetModifierMoveSpeedOverride
| changes the base move speed of the parent by a value returned to it. Minimum of 100 move speed.
|-
| MODIFIER_PROPERTY_MOVESPEED_BONUS_PERCENTAGE
| 13
| GetModifierMoveSpeedBonus_Percentage
| Increases the move speed of the parent by a percentage returned to it. Can get negative values.
|-
| MODIFIER_PROPERTY_MOVESPEED_BONUS_PERCENTAGE_UNIQUE
| 14
| GetModifierMoveSpeedBonus_Percentage_Unique
|
|-
| MODIFIER_PROPERTY_MOVESPEED_BONUS_PERCENTAGE_UNIQUE_2
| 15
| GetModifierMoveSpeedBonus_Percentage_Unique_2
|
|-
| MODIFIER_PROPERTY_MOVESPEED_BONUS_UNIQUE
| 16
| GetModifierMoveSpeedBonus_Special_Boots
|
|-
| MODIFIER_PROPERTY_MOVESPEED_BONUS_UNIQUE_2
| 17
| GetModifierMoveSpeedBonus_Special_Boots_2
|
|-
| MODIFIER_PROPERTY_MOVESPEED_ABSOLUTE
| 18
| GetModifierMoveSpeed_Absolute
| Sets the move speed of the parent to a value. Nothing can increase or decrease move speed.
|-
| MODIFIER_PROPERTY_MOVESPEED_ABSOLUTE_MIN
| 19
| GetModifierMoveSpeed_AbsoluteMin
| Sets the move speed of the parent to a minimum value. Nothing can decrease move speed below the chosen value.
|-
| MODIFIER_PROPERTY_MOVESPEED_LIMIT
| 20
| GetModifierMoveSpeed_Limit
| Sets the move speed limit of the parent.
|-
| MODIFIER_PROPERTY_MOVESPEED_MAX
| 21
| GetModifierMoveSpeed_Max
|
|-
| MODIFIER_PROPERTY_ATTACKSPEED_BASE_OVERRIDE
| 22
| GetModifierAttackSpeedBaseOverride
|
|-
| MODIFIER_PROPERTY_FIXED_ATTACK_RATE
| 23
| GetModifierAttackSpeedBaseOverride
|
|-
| MODIFIER_PROPERTY_ATTACKSPEED_BONUS_CONSTANT
| 24
| GetModifierAttackSpeedBonus_Constant
| Increases the attack speed of the parent by a constant returned to it. Can return negative values.
|-
| MODIFIER_PROPERTY_COOLDOWN_REDUCTION_CONSTANT
| 25
| GetModifierCooldownReduction_Constant
| Reduces the cooldown of all skills and items of the parent by a constant returned to it. Can get negative values to increase cooldowns instead.
|-
| MODIFIER_PROPERTY_BASE_ATTACK_TIME_CONSTANT
| 26
| GetModifierBaseAttackTimeConstant
| Decreases the base attack time of the parent by a constant returned to it. Can return negative values.
|-
| MODIFIER_PROPERTY_ATTACK_POINT_CONSTANT
| 27
| GetModifierAttackPointConstant
|
|-
| MODIFIER_PROPERTY_DAMAGEOUTGOING_PERCENTAGE
| 28
| GetModifierDamageOutgoing_Percentage
| Increases the raw damage that the parent deals by a percentage returned to it. Can return negative values.
|-
| MODIFIER_PROPERTY_DAMAGEOUTGOING_PERCENTAGE_ILLUSION
| 29
| GetModifierDamageOutgoing_Percentage_Illusion
|
|-
| MODIFIER_PROPERTY_TOTALDAMAGEOUTGOING_PERCENTAGE
| 30
| GetModifierTotalDamageOutgoing_Percentage
| Increases the damage of all sources that the parent deals by a percentage returned to it. Can return negative values.
|-
| MODIFIER_PROPERTY_SPELL_AMPLIFY_PERCENTAGE
| 31
| GetModifierSpellAmplify_Percentage
|
|-
| MODIFIER_PROPERTY_HP_REGEN_AMPLIFY_PERCENTAGE
| 32
| GetModifierHPRegenAmplify_Percentage
| Increases health regen and heal gained by parent by a percentage returned to it. Can return negative values.
|-
| MODIFIER_PROPERTY_MAGICDAMAGEOUTGOING_PERCENTAGE
| 33
| GetModifierMagicDamageOutgoing_Percentage
| Increases the magic damage that the parent deals by a percentage returned to it. Can return negative values.
|-
| MODIFIER_PROPERTY_BASEDAMAGEOUTGOING_PERCENTAGE
| 34
| GetModifierBaseDamageOutgoing_Percentage
| Increases the base damage of that the parent deals by a percentage returned to it. Can return negative values.
|-
| MODIFIER_PROPERTY_BASEDAMAGEOUTGOING_PERCENTAGE_UNIQUE
| 35
| GetModifierBaseDamageOutgoing_PercentageUnique
|
|-
| MODIFIER_PROPERTY_INCOMING_DAMAGE_PERCENTAGE
| 36
| GetModifierIncomingDamage_Percentage
| Increases the damage of all sources that the parent takes by a percentage returned to it. Can return negative values.
|-
| MODIFIER_PROPERTY_INCOMING_PHYSICAL_DAMAGE_PERCENTAGE
| 37
| GetModifierIncomingPhysicalDamage_Percentage
| Increases the damage of physical sources that the parent takes by a percentage returned to it. Can return negative values.
|-
| MODIFIER_PROPERTY_INCOMING_PHYSICAL_DAMAGE_CONSTANT
| 38
| GetModifierIncomingPhysicalDamageConstant
|
|-
| MODIFIER_PROPERTY_INCOMING_SPELL_DAMAGE_CONSTANT
| 39
| GetModifierIncomingSpellDamageConstant
| Increases the damage of magical sources that the parent takes by a percentage returned to it. Can return negative values.
|-
| MODIFIER_PROPERTY_EVASION_CONSTANT
| 40
| GetModifierEvasion_Constant
| Increases the evasion of the parent by a constant returned to it. Can return negative values.
|-
| MODIFIER_PROPERTY_NEGATIVE_EVASION_CONSTANT
| 41
| GetModifierNegativeEvasion_Constant
|
|-
| MODIFIER_PROPERTY_AVOID_DAMAGE
| 42
| GetModifierAvoidDamage
|
|-
| MODIFIER_PROPERTY_AVOID_SPELL
| 43
| GetModifierAvoidSpell
|
|-
| MODIFIER_PROPERTY_MISS_PERCENTAGE
| 44
| GetModifierMiss_Percentage
| Increases the chance of the parent to miss by a percentage returned to it. Can return negative values.
|-
| MODIFIER_PROPERTY_PHYSICAL_ARMOR_BONUS
| 45
| GetModifierPhysicalArmorBonus
| Increases the armor of the parent by a constant returned to it. Can return negative values.
|-
| MODIFIER_PROPERTY_PHYSICAL_ARMOR_BONUS_UNIQUE
| 46
| GetModifierPhysicalArmorBonusUnique
|
|-
| MODIFIER_PROPERTY_PHYSICAL_ARMOR_BONUS_UNIQUE_ACTIVE
| 47
| GetModifierPhysicalArmorBonusUniqueActive
|
|-
| MODIFIER_PROPERTY_IGNORE_PHYSICAL_ARMOR
| 48
| GetModifierIgnorePhysicalArmor
|
|-
| MODIFIER_PROPERTY_MAGICAL_RESISTANCE_DIRECT_MODIFICATION
| 49
| GetModifierMagicalResistanceDirectModification
|
|-
| MODIFIER_PROPERTY_MAGICAL_RESISTANCE_BONUS
| 50
| GetModifierMagicalResistanceBonus
| Increases the magical resistance of the parent by a constant returned to it. Can return negative values.
|-
| MODIFIER_PROPERTY_MAGICAL_RESISTANCE_DECREPIFY_UNIQUE
| 51
| GetModifierMagicalResistanceDecrepifyUnique
|
|-
| MODIFIER_PROPERTY_BASE_MANA_REGEN
| 52
| GetModifierBaseManaRegen
| Set the base mana regeneration of the parent by a constant returned to it. Can return negative values.
|-
| MODIFIER_PROPERTY_MANA_REGEN_CONSTANT
| 53
| GetModifierConstantManaRegen
| Increases the mana regeneration of the parent by a constant returned to it. Can return negative values.
|-
| MODIFIER_PROPERTY_MANA_REGEN_CONSTANT_UNIQUE
| 54
| GetModifierConstantManaRegenUnique
|
|-
| MODIFIER_PROPERTY_MANA_REGEN_PERCENTAGE
| 55
| GetModifierPercentageManaRegen
| Increases the mana regeneration of the parent by a percentage returned to it. Can return negative values.
|-
| MODIFIER_PROPERTY_MANA_REGEN_TOTAL_PERCENTAGE
| 56
| GetModifierTotalPercentageManaRegen
| Increases the total mana regeneration of the parent by a percentage returned to it. Can return negative values.
|-
| MODIFIER_PROPERTY_HEALTH_REGEN_CONSTANT
| 57
| GetModifierConstantHealthRegen
| Increases the health regeneration of the parent by a constant returned to it. Can return negative values.
|-
| MODIFIER_PROPERTY_HEALTH_REGEN_PERCENTAGE
| 58
| GetModifierHealthRegenPercentage
| Increases the evasion of the parent by a percentage returned to it. Can return negative values.
|-
| MODIFIER_PROPERTY_HEALTH_BONUS
| 59
| GetModifierHealthBonus
| Increases the maximum health of the parent by a constant returned to it. Can return negative values. Health is scaled to the same percentage as before the increase.
|-
| MODIFIER_PROPERTY_MANA_BONUS
| 60
| GetModifierManaBonus
| Increases the maximum mana of the parent by a constant returned to it. Can return negative values. Mana is scaled to the same percentage as before the increase.
|-
| MODIFIER_PROPERTY_EXTRA_STRENGTH_BONUS
| 61
| GetModifierExtraStrengthBonus
|
|-
| MODIFIER_PROPERTY_EXTRA_HEALTH_BONUS
| 62
| GetModifierExtraHealthBonus
| Increases the maximum health of the parent by a constant returned to it. Can return negative values. Ignores current health.
|-
| MODIFIER_PROPERTY_EXTRA_MANA_BONUS
| 63
| GetModifierExtraManaBonus
| Increases the maximum mana of the parent by a constant returned to it. Can return negative values. Ignores current mana.
|-
| MODIFIER_PROPERTY_EXTRA_HEALTH_PERCENTAGE
| 64
| GetModifierExtraHealthPercentage
| Increases the maximum health of the parent by a percentage returned to it. Can return negative values. Ignores current health.
|-
| MODIFIER_PROPERTY_STATS_STRENGTH_BONUS
| 65
| GetModifierBonusStats_Strength
| Increases the strength stat of the parent by a constant returned to it. Can return negative values.
|-
| MODIFIER_PROPERTY_STATS_AGILITY_BONUS
| 66
| GetModifierBonusStats_Agility
| Increases the agility stat of the parent by a constant returned to it. Can return negative values.
|-
| MODIFIER_PROPERTY_STATS_INTELLECT_BONUS
| 67
| GetModifierBonusStats_Intellect
| Increases the intelligence stat of the parent by a constant returned to it. Can return negative values.
|-
| MODIFIER_PROPERTY_CAST_RANGE_BONUS
| 68
| GetModifierCastRangeBonus
| Increases the cast range of the parent by a constant returned to it. Can return negative values.
|-
| MODIFIER_PROPERTY_CAST_RANGE_BONUS_STACKING
| 69
| GetModifierCastRangeBonusStacking
|
|-
| MODIFIER_PROPERTY_ATTACK_RANGE_BONUS
| 70
| GetModifierAttackRangeBonus
| Increases the attack range of the parent by a constant returned to it. Can return negative values.
|-
| MODIFIER_PROPERTY_ATTACK_RANGE_BONUS_UNIQUE
| 71
| GetModifierAttackRangeBonusUnique
|
|-
| MODIFIER_PROPERTY_MAX_ATTACK_RANGE
| 72
| GetModifierMaxAttackRange
|
|-
| MODIFIER_PROPERTY_PROJECTILE_SPEED_BONUS
| 73
| GetModifierProjectileSpeedBonus
| Increases the projectile speed of attacks sourced by the parent by a constant returned to it. Can return negative values.
|-
| MODIFIER_PROPERTY_REINCARNATION
| 74
| ReincarnateTime
|
|-
| MODIFIER_PROPERTY_RESPAWNTIME
| 75
| GetModifierConstantRespawnTime
| Increases the respawn time of the parent by a constant returned to it. Can return negative values.
|-
| MODIFIER_PROPERTY_RESPAWNTIME_PERCENTAGE
| 76
| GetModifierPercentageRespawnTime
| Increases the respawn time of the parent by a percentage returned to it. Can return negative values.
|-
| MODIFIER_PROPERTY_RESPAWNTIME_STACKING
| 77
| GetModifierStackingRespawnTime
| Increases the respawn time of the parent by a constant returned to it. Can return negative values. Stacks with other modifiers.
|-
| MODIFIER_PROPERTY_COOLDOWN_PERCENTAGE
| 78
| GetModifierPercentageCooldown
| Increases the cooldown of the parent by a percentage returned to it. Can return negative values.
|-
| MODIFIER_PROPERTY_COOLDOWN_PERCENTAGE_STACKING
| 79
| GetModifierPercentageCooldownStacking
|
|-
| MODIFIER_PROPERTY_CASTTIME_PERCENTAGE
| 80
| GetModifierPercentageCasttime
| Decreases the cast time of the parent's abilities by a percentage returned to it. Can return negative values.
|-
| MODIFIER_PROPERTY_MANACOST_PERCENTAGE
| 81
| GetModifierPercentageManacost
| Increases the mana cost of the parent's abilities by a percentage returned to it. Can return negative values.
|-
| MODIFIER_PROPERTY_DEATHGOLDCOST
| 82
| GetModifierConstantDeathGoldCost
|
|-
| MODIFIER_PROPERTY_EXP_RATE_BOOST
| 83
| GetModifierPercentageExpRateBoost
|
|-
| MODIFIER_PROPERTY_PREATTACK_CRITICALSTRIKE
| 84
| GetModifierPreAttack_CriticalStrike
| Procs a critical strike dealing the extra damage returned to it.
|-
| MODIFIER_PROPERTY_PREATTACK_TARGET_CRITICALSTRIKE
| 85
| GetModifierPreAttack_Target_CriticalStrike
|
|-
| MODIFIER_PROPERTY_MAGICAL_CONSTANT_BLOCK
| 86
| GetModifierMagical_ConstantBlock
|
|-
| MODIFIER_PROPERTY_PHYSICAL_CONSTANT_BLOCK
| 87
| GetModifierPhysical_ConstantBlock
| Blocks damage the parent takes by a constant returned to it. Can return negative values.
|-
| MODIFIER_PROPERTY_PHYSICAL_CONSTANT_BLOCK_SPECIAL
| 88
| GetModifierPhysical_ConstantBlockSpecial
|
|-
| MODIFIER_PROPERTY_TOTAL_CONSTANT_BLOCK_UNAVOIDABLE_PRE_ARMOR
| 89
| GetModifierPhysical_ConstantBlockUnavoidablePreArmor
|
|-
| MODIFIER_PROPERTY_TOTAL_CONSTANT_BLOCK
| 90
| GetModifierTotal_ConstantBlock
|
|-
| MODIFIER_PROPERTY_OVERRIDE_ANIMATION
| 91
| GetOverrideAnimation
| Forces the parent to play a specific animation.
|-
| MODIFIER_PROPERTY_OVERRIDE_ANIMATION_WEIGHT
| 92
| GetOverrideAnimationWeight
|
|-
| MODIFIER_PROPERTY_OVERRIDE_ANIMATION_RATE
| 93
| GetOverrideAnimationRate
|
|-
| MODIFIER_PROPERTY_ABSORB_SPELL
| 94
| GetAbsorbSpell
| Allows the parent to ignore targeted abilities. (Similar to linken's sphere)
|-
| MODIFIER_PROPERTY_REFLECT_SPELL
| 95
| GetReflectSpell
| Allows the parent to reflect targeted abilities. (Similar to Lotus Orb)
|-
| MODIFIER_PROPERTY_DISABLE_AUTOATTACK
| 96
| GetDisableAutoAttack
|
|-
| MODIFIER_PROPERTY_BONUS_DAY_VISION
| 97
| GetBonusDayVision
| Increases the vision of the parent during the day by a constant returned to it. Can return negative values.
|-
| MODIFIER_PROPERTY_BONUS_NIGHT_VISION
| 98
| GetBonusNightVision
| Increases the vision of the parent during the night by a constant returned to it. Can return negative values.
|-
| MODIFIER_PROPERTY_BONUS_NIGHT_VISION_UNIQUE
| 99
| GetBonusNightVisionUnique
|
|-
| MODIFIER_PROPERTY_BONUS_VISION_PERCENTAGE
| 100
| GetBonusVisionPercentage
| Increases the vision of the parent by a percentage returned to it. Can return negative values.
|-
| MODIFIER_PROPERTY_FIXED_DAY_VISION
| 101
| GetFixedDayVision
| Sets the vision of the parent during the day to a fixed value returned to it. Cannot be changed by any means.
|-
| MODIFIER_PROPERTY_FIXED_NIGHT_VISION
| 102
| GetFixedNightVision
| Sets the vision of the parent during the night to a fixed value returned to it. Cannot be changed by any means.
|-
| MODIFIER_PROPERTY_MIN_HEALTH
| 103
| GetMinHealth
|
|-
| MODIFIER_PROPERTY_ABSOLUTE_NO_DAMAGE_PHYSICAL
| 104
| GetAbsoluteNoDamagePhysical
|
|-
| MODIFIER_PROPERTY_ABSOLUTE_NO_DAMAGE_MAGICAL
| 105
| GetAbsoluteNoDamageMagical
|
|-
| MODIFIER_PROPERTY_ABSOLUTE_NO_DAMAGE_PURE
| 106
| GetAbsoluteNoDamagePure
|
|-
| MODIFIER_PROPERTY_IS_ILLUSION
| 107
| GetIsIllusion
|
|-
| MODIFIER_PROPERTY_ILLUSION_LABEL
| 108
| GetModifierIllusionLabel
|
|-
| MODIFIER_PROPERTY_SUPER_ILLUSION
| 109
| GetModifierSuperIllusion
|
|-
| MODIFIER_PROPERTY_SUPER_ILLUSION_WITH_ULTIMATE
| 110
| GetModifierSuperIllusionWithUltimate
|
|-
| MODIFIER_PROPERTY_TURN_RATE_PERCENTAGE
| 111
| GetModifierTurnRate_Percentage
| Increases the turn rate of the parent by a percentage returned to it. Can return negative values.
|-
| MODIFIER_PROPERTY_DISABLE_HEALING
| 112
| GetDisableHealing
| Negates healing applied to the parent.
|-
| MODIFIER_PROPERTY_ALWAYS_ALLOW_ATTACK
| 113
| GetAlwaysAllowAttack
|
|-
| MODIFIER_PROPERTY_OVERRIDE_ATTACK_MAGICAL
| 114
| GetOverrideAttackMagical
|
|-
| MODIFIER_PROPERTY_UNIT_STATS_NEEDS_REFRESH
| 115
| GetModifierUnitStatsNeedsRefresh
|
|-
| MODIFIER_PROPERTY_BOUNTY_CREEP_MULTIPLIER
| 116
| GetModifierBountyCreepMultiplier
|
|-
| MODIFIER_PROPERTY_BOUNTY_OTHER_MULTIPLIER
| 117
| GetModifierBountyOtherMultiplier
|
|-
| MODIFIER_EVENT_ON_SPELL_TARGET_READY
| 118
| OnSpellTargetReady
|
|-
| MODIFIER_EVENT_ON_ATTACK_RECORD
| 119
| OnAttackRecord
|
|-
| MODIFIER_EVENT_ON_ATTACK_START
| 120
| OnAttackStart
| Event that fires when an attack starts.
|-
| MODIFIER_EVENT_ON_ATTACK
| 121
| OnAttack
| Event that fires when an attack was completed, regardless of the result of it.
|-
| MODIFIER_EVENT_ON_ATTACK_LANDED
| 122
| OnAttackLanded
| Event that fires when an attack landed on its target successfully.
|-
| MODIFIER_EVENT_ON_ATTACK_FAIL
| 123
| OnAttackFail
| Event that fires when an attack failed to land on its target.
|-
| MODIFIER_EVENT_ON_ATTACK_ALLIED
| 124
| OnAttackAllied
| Event that fires when attacking allies.
|-
| MODIFIER_EVENT_ON_PROJECTILE_DODGE
| 125
| OnProjectileDodge
| Event that fires when dodging a projectile. (Disjointing it)
|-
| MODIFIER_EVENT_ON_ORDER
| 126
| OnOrder
| Event that fires when an order is given to the parent.
|-
| MODIFIER_EVENT_ON_UNIT_MOVED
| 127
| OnUnitMoved
| Event that fires when a unit moved.
|-
| MODIFIER_EVENT_ON_ABILITY_START
| 128
| OnAbilityStart
| Event that fires when starting to use an ability.
|-
| MODIFIER_EVENT_ON_ABILITY_EXECUTED
| 129
| OnAbilityExecuted
| Event that fires when finishing the ability phase stage of the ability.
|-
| MODIFIER_EVENT_ON_ABILITY_FULLY_CAST
| 130
| OnAbilityFullyCast
| Event that fires when the ability has completely activated.
|-
| MODIFIER_EVENT_ON_BREAK_INVISIBILITY
| 131
| OnBreakInvisibility
| Event that fires when breaking invisibility.
|-
| MODIFIER_EVENT_ON_ABILITY_END_CHANNEL
| 132
| OnAbilityEndChannel
| Event that fires when finishing a channel.
|-
| MODIFIER_EVENT_ON_PROCESS_UPGRADE
| 133
|
|
|-
| MODIFIER_EVENT_ON_REFRESH
| 134
|
|
|-
| MODIFIER_EVENT_ON_TAKEDAMAGE
| 135
| OnTakeDamage
| Event that fires when taking damage.
|-
| MODIFIER_EVENT_ON_STATE_CHANGED
| 136
| OnStateChanged
| Event that fires when a state is changed.
|-
| MODIFIER_EVENT_ON_ORB_EFFECT
| 137
|
|
|-
| MODIFIER_EVENT_ON_ATTACKED
| 138
| OnAttacked
| Event that fires when being attacked.
|-
| MODIFIER_EVENT_ON_DEATH
| 139
| OnDeath
| Event that fires when dying.
|-
| MODIFIER_EVENT_ON_RESPAWN
| 140
| OnRespawn
| Event that fires when respawning.
|-
| MODIFIER_EVENT_ON_SPENT_MANA
| 141
| OnSpentMana
| Event that fires when spending mana on items or abilities.
|-
| MODIFIER_EVENT_ON_TELEPORTING
| 142
| OnTeleporting
| Event that fires when starting to teleporting.
|-
| MODIFIER_EVENT_ON_TELEPORTED
| 143
| OnTeleported
| Event that fires when completing a teleport.
|-
| MODIFIER_EVENT_ON_SET_LOCATION
| 144
| OnSetLocation
|
|-
| MODIFIER_EVENT_ON_HEALTH_GAINED
| 145
| OnHealthGained
|
|-
| MODIFIER_EVENT_ON_MANA_GAINED
| 146
| OnManaGained
|
|-
| MODIFIER_EVENT_ON_TAKEDAMAGE_KILLCREDIT
| 147
| OnTakeDamageKillCredit
|
|-
| MODIFIER_EVENT_ON_HERO_KILLED
| 148
| OnHeroKilled
| Event that fires when a hero is killed.
|-
| MODIFIER_EVENT_ON_HEAL_RECEIVED
| 149
| OnHealReceived
| Event that fires when being healed.
|-
| MODIFIER_EVENT_ON_BUILDING_KILLED
| 150
| OnBuildingKilled
| Event that fires when a building is destroyed.
|-
| MODIFIER_EVENT_ON_MODEL_CHANGED
| 151
| OnModelChanged
| Event that fires when the model changes.
|-
| MODIFIER_EVENT_ON_MODIFIER_ADDED
| 152
| OnModifierAdded
|
|-
| MODIFIER_PROPERTY_TOOLTIP
| 153
| OnTooltip
|
|-
| MODIFIER_PROPERTY_MODEL_CHANGE
| 154
| GetModifierModelChange
| Changes the parent's model.
|-
| MODIFIER_PROPERTY_MODEL_SCALE
| 155
| GetModifierModelScale
| Changes the parent's model scale.
|-
| MODIFIER_PROPERTY_IS_SCEPTER
| 156
| GetModifierScepter
|
|-
| MODIFIER_PROPERTY_TRANSLATE_ACTIVITY_MODIFIERS
| 157
| GetActivityTranslationModifiers
|
|-
| MODIFIER_PROPERTY_TRANSLATE_ATTACK_SOUND
| 158
| GetAttackSound
|
|-
| MODIFIER_PROPERTY_LIFETIME_FRACTION
| 159
| GetUnitLifetimeFraction
|
|-
| MODIFIER_PROPERTY_PROVIDES_FOW_POSITION
| 160
| GetModifierProvidesFOWVision
| Return 1 if parent's model would show to his enemies.
|-
| MODIFIER_PROPERTY_SPELLS_REQUIRE_HP
| 161
| GetModifierSpellsRequireHP
|
|-
| MODIFIER_PROPERTY_FORCE_DRAW_MINIMAP
| 162
| GetForceDrawOnMinimap
|
|-
| MODIFIER_PROPERTY_DISABLE_TURNING
| 163
| GetModifierDisableTurning
|
|-
| MODIFIER_PROPERTY_IGNORE_CAST_ANGLE
| 164
| GetModifierIgnoreCastAngle
|
|-
| MODIFIER_PROPERTY_CHANGE_ABILITY_VALUE
| 165
| GetModifierChangeAbilityValue
|
|-
| MODIFIER_PROPERTY_ABILITY_LAYOUT
| 166
| GetModifierAbilityLayout
| Changes the ability layout.
|-
| MODIFIER_EVENT_ON_DOMINATED
| 167
| OnDominated
| An event that fires when a unit is being dominated.
|-
| MODIFIER_PROPERTY_TEMPEST_DOUBLE
| 168
| GetModifierTempestDouble
|
|-
| MODIFIER_PROPERTY_PRESERVE_PARTICLES_ON_MODEL_CHANGE
| 169
| PreserveParticlesOnModelChanged
|
|-
| MODIFIER_EVENT_ON_ATTACK_FINISHED
| 170
| OnAttackFinished
|
|-
| MODIFIER_PROPERTY_IGNORE_COOLDOWN
| 171
| GetModifierIgnoreCooldown
|
|-
| MODIFIER_PROPERTY_CAN_ATTACK_TREES
| 172
| GetModifierCanAttackTrees
|
|-
| MODIFIER_PROPERTY_VISUAL_Z_DELTA
| 173
| GetVisualZDelta
|
|-
| MODIFIER_PROPERTY_INCOMING_DAMAGE_ILLUSION
| 174
|
|
|-
| MODIFIER_FUNCTION_LAST
| 175
|
|
|-
| MODIFIER_FUNCTION_INVALID
| 255
|
|
|}


==== DOTA_CONNECTION_STATE ====
{| class="standard-table" style="width: 50%;"
! Name
! Value
! Description
|-
| DOTA_CONNECTION_STATE_UNKNOWN
| 0
|
|-
| DOTA_CONNECTION_STATE_NOT_YET_CONNECTED
| 1
|
|-
| DOTA_CONNECTION_STATE_CONNECTED
| 2
|
|-
| DOTA_CONNECTION_STATE_DISCONNECTED
| 3
|
|-
| DOTA_CONNECTION_STATE_ABANDONED
| 4
|
|-
| DOTA_CONNECTION_STATE_LOADING
| 5
|
|-
| DOTA_CONNECTION_STATE_FAILED
| 6
|
|}


{{shortpagetitle}}
{{shortpagetitle}}
[[Category:Dota 2 Workshop Tools]]
[[Category: Dota 2/Legacy]] <!-- Page originally created for Source 1 version. But it may also partially applies to Source 2 even through it was outdated. -->

Latest revision as of 00:11, 7 March 2025

English (en)Русский (ru)中文 (zh)Translate (Translate)
Broom icon.png
This article or section needs to be cleaned up to conform to a higher standard of quality because:
1500 subpages most of them useless
For help, see the VDC Editing Help and Wikipedia cleanup process. Also, remember to check for any notes left by the tagger at this article's talk page.

Note.pngNote: This page is automatically generated. Changes can be submitted on Jochnickels github page: https://github.com/Jochnickel/dota_wiki_dumper


This page outdated, use moddota.com/api instead

Accessing the DOTA 2 Scripting API from Lua

While Lua is dynamically typed, the DOTA 2 engine is written primarily in C++, which is 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.)

Functions

Global

Global functions. These can be called without any class.

Function Signature Description
AddFOWViewer void AddFOWViewer(int int_1, Vector Vector_2, float float_3, float float_4, bool bool_5) Add temporary vision for a given team ( nTeamID, vLocation, flRadius, flDuration, bObstructedVision)
AngleDiff float AngleDiff(float float_1, float float_2) Returns the number of degrees difference between two yaw angles
AppendToLogFile void AppendToLogFile(string string_1, string string_2) AppendToLogFile is deprecated. Print to the console for logging instead.
ApplyDamage float ApplyDamage(handle handle_1) ApplyDamage({victim = {}, attacker = {}, damage = 0, damage_type = DAMAGE_TYPE_MAGICAL, damage_flags = DOTA_DAMAGE_FLAG_IGNORES_MAGIC_ARMOR, ability = {}})
AxisAngleToQuaternion Quaternion AxisAngleToQuaternion(Vector Vector_1, float float_2) (vector,float) constructs a quaternion representing a rotation by angle around the specified vector axis
CalcClosestPointOnEntityOBB Vector CalcClosestPointOnEntityOBB(handle handle_1, Vector Vector_2) Compute the closest point on the OBB of an entity.
CalcDistanceBetweenEntityOBB float CalcDistanceBetweenEntityOBB(handle handle_1, handle handle_2) 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.
CalcDistanceToLineSegment2D float CalcDistanceToLineSegment2D(Vector Vector_1, Vector Vector_2, Vector Vector_3)
CancelEntityIOEvents void CancelEntityIOEvents(ehandle ehandle_1) Create all I/O events for a particular entity
ClearTeamCustomHealthbarColor void ClearTeamCustomHealthbarColor(int int_1) ( teamNumber )
CreateDamageInfo handle CreateDamageInfo(handle handle_1, handle handle_2, Vector Vector_3, Vector Vector_4, float float_5, int int_6) (hInflictor, hAttacker, flDamage) - Allocate a damageinfo object, used as an argument to TakeDamage(). Call DestroyDamageInfo( hInfo ) to free the object.
CreateEffect bool CreateEffect(handle handle_1) Pass table - Inputs: entity, effect
CreateHTTPRequest handle CreateHTTPRequest(string string_1, string string_2) Create an HTTP request.
CreateHTTPRequestScriptVM handle CreateHTTPRequestScriptVM(string string_1, string string_2) Create an HTTP request.
CreateHeroForPlayer handle CreateHeroForPlayer(string string_1, handle handle_2) Creates a DOTA hero by its dota_npc_units.txt name and sets it as the given player's controlled hero
CreateIllusions table CreateIllusions(handle handle_1, handle handle_2, handle handle_3, int int_4, int int_5, bool bool_6, bool bool_7) 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

CreateItem handle CreateItem(string string_1, handle handle_2, handle handle_3) Create a DOTA item
CreateItemOnPositionForLaunch handle CreateItemOnPositionForLaunch(Vector Vector_1, handle handle_2) Create a physical item at a given location, can start in air (but doesn't clear a space)
CreateItemOnPositionSync handle CreateItemOnPositionSync(Vector Vector_1, handle handle_2) Create a physical item at a given location
CreateModifierThinker handle CreateModifierThinker(handle handle_1, handle handle_2, string string_3, handle handle_4, Vector Vector_5, int int_6, bool bool_7) Create a modifier not associated with an NPC. ( hCaster, hAbility, modifierName, paramTable, vOrigin, nTeamNumber, bPhantomBlocker )
CreateSceneEntity handle CreateSceneEntity(string string_1) Create a scene entity to play the specified scene.
CreateTempTree handle CreateTempTree(Vector Vector_1, float float_2) Create a temporary tree, uses a default tree model. (vLocation, flDuration).
CreateTempTreeWithModel handle CreateTempTreeWithModel(Vector Vector_1, float float_2, string string_3) Create a temporary tree, specifying the tree model name. (vLocation, flDuration, szModelName).
CreateTrigger handle CreateTrigger(Vector Vector_1, Vector Vector_2, Vector Vector_3) CreateTrigger( vecMin, vecMax ) : Creates and returns an AABB trigger
CreateTriggerRadiusApproximate handle CreateTriggerRadiusApproximate(Vector Vector_1, float float_2) CreateTriggerRadiusApproximate( vecOrigin, flRadius ) : Creates and returns an AABB trigger thats bigger than the radius provided
CreateUnitByName handle CreateUnitByName(string string_1, Vector Vector_2, bool bool_3, handle handle_4, handle handle_5, int int_6) Creates a DOTA unit by its dota_npc_units.txt name
CreateUnitByNameAsync int CreateUnitByNameAsync(string string_1, Vector Vector_2, bool bool_3, handle handle_4, handle handle_5, int int_6, handle handle_7) Creates a DOTA unit by its dota_npc_units.txt name
CreateUnitFromTable handle CreateUnitFromTable(handle handle_1, Vector Vector_2) Creates a DOTA unit by its dota_npc_units.txt name from a table of entity key values and a position to spawn at.
CrossVectors Vector CrossVectors(Vector Vector_1, Vector Vector_2) (vector,vector) cross product between two vectors
DebugBreak void DebugBreak() Breaks in the debugger
DebugDrawBox 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) Draw a debug overlay box (origin, mins, maxs, forward, r, g, b, a, duration )
DebugDrawBoxDirection void DebugDrawBoxDirection(Vector Vector_1, Vector Vector_2, Vector Vector_3, Vector Vector_4, Vector Vector_5, float float_6, float float_7) Draw a debug forward box (cent, min, max, forward, vRgb, a, duration)
DebugDrawCircle void DebugDrawCircle(Vector Vector_1, Vector Vector_2, float float_3, float float_4, bool bool_5, float float_6) Draw a debug circle (center, vRgb, a, rad, ztest, duration)
DebugDrawClear void DebugDrawClear() Try to clear all the debug overlay info
DebugDrawLine void DebugDrawLine(Vector Vector_1, Vector Vector_2, int int_3, int int_4, int int_5, bool bool_6, float float_7) Draw a debug overlay line (origin, target, r, g, b, ztest, duration)
DebugDrawLine_vCol void DebugDrawLine_vCol(Vector Vector_1, Vector Vector_2, Vector Vector_3, bool bool_4, float float_5) Draw a debug line using color vec (start, end, vRgb, a, ztest, duration)
DebugDrawScreenTextLine 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) Draw text with a line offset (x, y, lineOffset, text, r, g, b, a, duration)
DebugDrawSphere void DebugDrawSphere(Vector Vector_1, Vector Vector_2, float float_3, float float_4, bool bool_5, float float_6) Draw a debug sphere (center, vRgb, a, rad, ztest, duration)
DebugDrawText void DebugDrawText(Vector Vector_1, string string_2, bool bool_3, float float_4) Draw text in 3d (origin, text, bViewCheck, duration)
DebugScreenTextPretty 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) Draw pretty debug text (x, y, lineOffset, text, r, g, b, a, duration, font, size, bBold)
DestroyDamageInfo void DestroyDamageInfo(handle handle_1) Free a damageinfo object that was created with CreateDamageInfo().
DoCleaveAttack 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) (hAttacker, hTarget, hAbility, fDamage, fRadius, effectName)
DoEntFire void DoEntFire(string string_1, string string_2, string string_3, float float_4, handle handle_5, handle handle_6) #EntFire:Generate and entity i/o event
DoEntFireByInstanceHandle void DoEntFireByInstanceHandle(handle handle_1, string string_2, string string_3, float float_4, handle handle_5, handle handle_6) #EntFireByHandle:Generate and entity i/o event
DoIncludeScript bool DoIncludeScript(string string_1, handle handle_2) Execute a script (internal)
DoScriptAssert void DoScriptAssert(bool bool_1, string string_2) #ScriptAssert:Asserts the passed in value. Prints out a message and brings up the assert dialog.
DoUniqueString string DoUniqueString(string string_1) #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.
DotProduct float DotProduct(Vector Vector_1, Vector Vector_2)
EmitAnnouncerSound void EmitAnnouncerSound(string string_1) Emit an announcer sound for all players.
EmitAnnouncerSoundForPlayer void EmitAnnouncerSoundForPlayer(string string_1, int int_2) Emit an announcer sound for a player.
EmitAnnouncerSoundForTeam void EmitAnnouncerSoundForTeam(string string_1, int int_2) Emit an announcer sound for a team.
EmitAnnouncerSoundForTeamOnLocation void EmitAnnouncerSoundForTeamOnLocation(string string_1, int int_2, Vector Vector_3) Emit an announcer sound for a team at a specific location.
EmitGlobalSound void EmitGlobalSound(string string_1) Play named sound for all players
EmitSoundOn void EmitSoundOn(string string_1, handle handle_2) Play named sound on Entity
EmitSoundOnClient void EmitSoundOnClient(string string_1, handle handle_2) Play named sound only on the client for the passed in player
EmitSoundOnLocationForAllies void EmitSoundOnLocationForAllies(Vector Vector_1, string string_2, handle handle_3) Emit a sound on a location from a unit, only for players allied with that unit (vLocation, soundName, hCaster
EmitSoundOnLocationWithCaster void EmitSoundOnLocationWithCaster(Vector Vector_1, string string_2, handle handle_3) Emit a sound on a location from a unit. (vLocation, soundName, hCaster).
EntIndexToHScript handle EntIndexToHScript(int int_1) Turn an entity index integer to an HScript representing that entity's script instance.
ExecuteOrderFromTable void ExecuteOrderFromTable(handle handle_1) Issue an order from a script table
ExponentialDecay float ExponentialDecay(float float_1, float float_2, float float_3) Smooth curve decreasing slower as it approaches zero
FindClearRandomPositionAroundUnit bool FindClearRandomPositionAroundUnit(handle handle_1, handle handle_2, int int_3) Finds a clear random position around a given target unit, using the target unit's padded collision radius.
FindClearSpaceForUnit bool FindClearSpaceForUnit(handle handle_1, Vector Vector_2, bool bool_3) Place a unit somewhere not already occupied.
FindUnitsInLine 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) Find units that intersect the given line with the given flags.
FindUnitsInRadius 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) Finds the units in a given radius with the given flags.
FireEntityIOInputNameOnly void FireEntityIOInputNameOnly(ehandle ehandle_1, string string_2) Fire Entity's Action Input w/no data
FireEntityIOInputString void FireEntityIOInputString(ehandle ehandle_1, string string_2, string string_3) Fire Entity's Action Input with passed String - you own the memory
FireEntityIOInputVec void FireEntityIOInputVec(ehandle ehandle_1, string string_2, Vector Vector_3) Fire Entity's Action Input with passed Vector - you own the memory
FireGameEvent void FireGameEvent(string string_1, handle handle_2) Fire a game event.
FireGameEventLocal void FireGameEventLocal(string string_1, handle handle_2) Fire a game event without broadcasting to the client.
FrameTime float FrameTime() Get the time spent on the server in the last frame
GetDedicatedServerKey string GetDedicatedServerKey(string string_1) ( version )
GetDedicatedServerKeyV2 string GetDedicatedServerKeyV2(string string_1) used in https://github.com/dota2unofficial/12v12/blob/master/game/scripts/vscripts/common/webapi.lua
GetEntityIndexForTreeId <unknown> GetEntityIndexForTreeId(unsigned unsigned_1) Get the enity index for a tree id specified as the entindex_target of a DOTA_UNIT_ORDER_CAST_TARGET_TREE.
GetFrameCount int GetFrameCount() Returns the engines current frame count
GetGroundHeight float GetGroundHeight(Vector Vector_1, handle handle_2)
GetGroundPosition Vector GetGroundPosition(Vector Vector_1, handle handle_2) Returns the supplied position moved to the ground. Second parameter is an NPC for measuring movement collision hull offset.
GetItemCost int GetItemCost(string string_1) Get the cost of an item by name.
GetItemDefOwnedCount int GetItemDefOwnedCount(int int_1, int int_2)
GetItemDefQuantity int GetItemDefQuantity(int int_1, int int_2)
GetListenServerHost handle GetListenServerHost() Get the local player on a listen server.
GetLobbyEventGameDetails table GetLobbyEventGameDetails() ( )
GetMapName string GetMapName() Get the name of the map.
GetMaxOutputDelay float GetMaxOutputDelay(ehandle ehandle_1, string string_2) Get the longest delay for all events attached to an output
GetPhysAngularVelocity Vector GetPhysAngularVelocity(handle handle_1) Get Angular Velocity for VPHYS or normal object. Returns a vector of the axis of rotation, multiplied by the degrees of rotation per second.
GetPhysVelocity Vector GetPhysVelocity(handle handle_1) Get Velocity for VPHYS or normal object
GetSystemDate string GetSystemDate() Get the current real world date
GetSystemTime string GetSystemTime() Get the current real world time
GetTargetAOELocation Vector GetTargetAOELocation(int int_1, int int_2, int int_3, Vector Vector_4, int int_5, int int_6, int int_7)
GetTargetLinearLocation Vector GetTargetLinearLocation(int int_1, int int_2, int int_3, Vector Vector_4, int int_5, int int_6, int int_7)
GetTeamHeroKills int GetTeamHeroKills(int int_1) ( int teamID )
GetTeamName string GetTeamName(int int_1) ( int teamID )
GetTreeIdForEntityIndex int GetTreeIdForEntityIndex(int int_1) Given and entity index of a tree, get the tree id for use for use with with unit orders.
GetWorldMaxX float GetWorldMaxX() Gets the world's maximum X position.
GetWorldMaxY float GetWorldMaxY() Gets the world's maximum Y position.
GetWorldMinX float GetWorldMinX() Gets the world's minimum X position.
GetWorldMinY float GetWorldMinY() Gets the world's minimum Y position.
InitLogFile void InitLogFile(string string_1, string string_2) InitLogFile is deprecated. Print to the console for logging instead.
IsClient bool IsClient() Returns true if this is lua running from the client.dll.
IsDedicatedServer bool IsDedicatedServer() Returns true if this server is a dedicated server.
IsInToolsMode bool IsInToolsMode() Returns true if this is lua running within tools mode.
IsLocationVisible bool IsLocationVisible(int int_1, Vector Vector_2) Ask fog of war if a location is visible to a certain team (nTeamNumber, vLocation).
IsMarkedForDeletion bool IsMarkedForDeletion(handle handle_1) Returns true if the entity is valid and marked for deletion.
IsServer bool IsServer() Returns true if this is lua running from the server.dll.
IsValidEntity bool IsValidEntity(handle handle_1) Checks to see if the given hScript is a valid entity
LerpVectors Vector LerpVectors(Vector Vector_1, Vector Vector_2, float float_3) (vector,vector,float) lerp between two vectors by a float factor returning new vector
LimitPathingSearchDepth void LimitPathingSearchDepth(float float_1) Set the limit on the pathfinding search space.
LinkLuaModifier void LinkLuaModifier(string string_1, string string_2, int int_3) Link a lua-defined modifier with the associated class ( className, fileName, LuaModifierType).
ListenToGameEvent int ListenToGameEvent(string string_1, handle handle_2, handle handle_3) Register as a listener for a game event from script.
LoadKeyValues table LoadKeyValues(string string_1) Creates a table from the specified keyvalues text file
LoadKeyValuesFromString table LoadKeyValuesFromString(string string_1) Creates a table from the specified keyvalues string
LocalTime table LocalTime() Get the current local time
MakeStringToken int MakeStringToken(string string_1) Checks to see if the given hScript is a valid entity
MinimapEvent void MinimapEvent(int int_1, handle handle_2, int int_3, int int_4, int int_5, int int_6) Start a minimap event. (nTeamID, hEntity, nXCoord, nYCoord, nEventType, nEventDuration).
Msg void Msg(string string_1) Print a message
PauseGame void PauseGame(bool bool_1) Pause or unpause the game.
PlayerInstanceFromIndex handle PlayerInstanceFromIndex(int int_1) Get a script instance of a player by index.
PrecacheEntityFromTable void PrecacheEntityFromTable(string string_1, handle handle_2, handle handle_3) Precache an entity from KeyValues in table
PrecacheEntityListFromTable void PrecacheEntityListFromTable(handle handle_1, handle handle_2) Precache a list of entity KeyValues tables
PrecacheItemByNameAsync void PrecacheItemByNameAsync(string string_1, handle handle_2) Asynchronously precaches a DOTA item by its dota_npc_items.txt name, provides a callback when it's finished.
PrecacheItemByNameSync void PrecacheItemByNameSync(string string_1, handle handle_2) Precaches a DOTA item by its dota_npc_items.txt name
PrecacheModel void PrecacheModel(string string_1, handle handle_2) ( modelName, context ) - Manually precache a single model
PrecacheResource void PrecacheResource(string string_1, string string_2, handle handle_3) Manually precache a single resource
PrecacheUnitByNameAsync void PrecacheUnitByNameAsync(string string_1, handle handle_2, int int_3) Asynchronously precaches a DOTA unit by its dota_npc_units.txt name, provides a callback when it's finished.
PrecacheUnitByNameSync void PrecacheUnitByNameSync(string string_1, handle handle_2, int int_3) Precaches a DOTA unit by its dota_npc_units.txt name
PrecacheUnitFromTableAsync void PrecacheUnitFromTableAsync(handle handle_1, handle handle_2) Precaches a DOTA unit from a table of entity key values.
PrecacheUnitFromTableSync void PrecacheUnitFromTableSync(handle handle_1, handle handle_2) Precaches a DOTA unit from a table of entity key values.
PrintLinkedConsoleMessage void PrintLinkedConsoleMessage(string string_1, string string_2) Print a console message with a linked console command
RandomFloat float RandomFloat(float float_1, float float_2) Get a random float within a range
RandomInt int RandomInt(int int_1, int int_2) Get a random int within a range
RandomVector Vector RandomVector(float float_1) Get a random 2D vector of the given length.
RegisterCustomAnimationScriptForModel void RegisterCustomAnimationScriptForModel(string string_1, string string_2) Register a custom animation script to run when a model loads
RegisterSpawnGroupFilterProxy void RegisterSpawnGroupFilterProxy(string string_1) Create a C proxy for a script-based spawn group filter
ReloadMOTD void ReloadMOTD() Reloads the MotD file
RemoveSpawnGroupFilterProxy void RemoveSpawnGroupFilterProxy(string string_1) Remove the C proxy for a script-based spawn group filter
ResolveNPCPositions void ResolveNPCPositions(Vector Vector_1, float float_2) Check and fix units that have been assigned a position inside collision radius of other NPCs.
RollPercentage bool RollPercentage(int int_1) (int nPct)
RotateOrientation QAngle RotateOrientation(QAngle QAngle_1, QAngle QAngle_2) Rotate a QAngle by another QAngle.
RotatePosition Vector RotatePosition(Vector Vector_1, QAngle QAngle_2, Vector Vector_3) Rotate a Vector around a point.
RotateQuaternionByAxisAngle Quaternion RotateQuaternionByAxisAngle(Quaternion Quaternion_1, Vector Vector_2, float float_3) (quaternion,vector,float) rotates a quaternion by the specified angle around the specified vector axis
RotationDelta QAngle RotationDelta(QAngle QAngle_1, QAngle QAngle_2) Find the delta between two QAngles.
RotationDeltaAsAngularVelocity Vector RotationDeltaAsAngularVelocity(QAngle QAngle_1, QAngle QAngle_2) converts delta QAngle to an angular velocity Vector
Say void Say(handle handle_1, string string_2, bool bool_3) Have Entity say string, and teamOnly or not
ScreenShake void ScreenShake(Vector Vector_1, float float_2, float float_3, float float_4, float float_5, int int_6, bool bool_7) Start a screenshake with the following parameters. vecCenter, flAmplitude, flFrequency, flDuration, flRadius, eCommand( SHAKE_START = 0, SHAKE_STOP = 1 ), bAirShake
SendOverheadEventMessage void SendOverheadEventMessage(handle handle_1, int int_2, handle handle_3, int int_4, handle handle_5) ( DOTAPlayer sendToPlayer, int iMessageType, Entity targetEntity, int iValue, DOTAPlayer sourcePlayer ) - sendToPlayer and sourcePlayer can be nil - iMessageType is one of OVERHEAD_ALERT_*
SendToConsole void SendToConsole(string string_1) Send a string to the console as a client command
SendToServerConsole void SendToServerConsole(string string_1) Send a string to the console as a server command
SetOpvarFloatAll void SetOpvarFloatAll(string string_1, string string_2, string string_3, float float_4) Sets an opvar value for all players
SetOpvarFloatPlayer void SetOpvarFloatPlayer(string string_1, string string_2, string string_3, float float_4, handle handle_5) Sets an opvar value for a single player
SetPhysAngularVelocity void SetPhysAngularVelocity(handle handle_1, Vector Vector_2) Set Angular Velocity for VPHYS or normal object, from a vector of the axis of rotation, multiplied by the degrees of rotation per second.
SetQuestName void SetQuestName(string string_1) Set the current quest name.
SetQuestPhase void SetQuestPhase(int int_1) Set the current quest phase.
SetRenderingEnabled void SetRenderingEnabled(ehandle ehandle_1, bool bool_2) Set rendering on/off for an ehandle
SetTeamCustomHealthbarColor void SetTeamCustomHealthbarColor(int int_1, int int_2, int int_3, int int_4) ( teamNumber, r, g, b )
ShowCustomHeaderMessage void ShowCustomHeaderMessage(string string_1, int int_2, int int_3, float float_4) ( const char *pszMessage, int nPlayerID, int nValue, float flTime ) - Supports localized strings - %s1 = PlayerName, %s2 = Value, %s3 = TeamName
ShowGenericPopup void ShowGenericPopup(string string_1, string string_2, string string_3, string string_4, int int_5) Show a generic popup dialog for all players.
ShowGenericPopupToPlayer void ShowGenericPopupToPlayer(handle handle_1, string string_2, string string_3, string string_4, string string_5, int int_6) Show a generic popup dialog to a specific player.
ShowMessage void ShowMessage(string string_1) Print a hud message on all clients
SpawnDOTAShopTriggerRadiusApproximate handle SpawnDOTAShopTriggerRadiusApproximate(Vector Vector_1, float float_2) (Vector vOrigin, float flRadius )
SpawnEntityFromTableSynchronous handle SpawnEntityFromTableSynchronous(string string_1, handle handle_2) Synchronously spawns a single entity from a table
SpawnEntityGroupFromTable bool SpawnEntityGroupFromTable(handle handle_1, bool bool_2, handle handle_3) Hierarchically spawn an entity group from a set of spawn tables.
SpawnEntityListFromTableAsynchronous int SpawnEntityListFromTableAsynchronous(handle handle_1, handle handle_2) Asynchronously spawn an entity group from a list of spawn tables. A callback will be triggered when the spawning is complete
SpawnEntityListFromTableSynchronous handle SpawnEntityListFromTableSynchronous(handle handle_1) Synchronously spawn an entity group from a list of spawn tables.
SplineQuaternions Quaternion SplineQuaternions(Quaternion Quaternion_1, Quaternion Quaternion_2, float float_3) (quaternion,quaternion,float) very basic interpolation of v0 to v1 over t on [0,1]
SplineVectors Vector SplineVectors(Vector Vector_1, Vector Vector_2, float float_3) (vector,vector,float) very basic interpolation of v0 to v1 over t on [0,1]
StartSoundEvent void StartSoundEvent(string string_1, handle handle_2) Start a sound event
StartSoundEventFromPosition void StartSoundEventFromPosition(string string_1, Vector Vector_2) Start a sound event from position
StartSoundEventFromPositionReliable void StartSoundEventFromPositionReliable(string string_1, Vector Vector_2) Start a sound event from position with reliable delivery
StartSoundEventFromPositionUnreliable void StartSoundEventFromPositionUnreliable(string string_1, Vector Vector_2) Start a sound event from position with optional delivery
StartSoundEventReliable void StartSoundEventReliable(string string_1, handle handle_2) Start a sound event with reliable delivery
StartSoundEventUnreliable void StartSoundEventUnreliable(string string_1, handle handle_2) Start a sound event with optional delivery
StopEffect void StopEffect(handle handle_1, string string_2) Pass entity and effect name
StopGlobalSound void StopGlobalSound(string string_1) Stop named sound for all players
StopListeningToAllGameEvents void StopListeningToAllGameEvents(handle handle_1) Stop listening to all game events within a specific context.
StopListeningToGameEvent bool StopListeningToGameEvent(int int_1) Stop listening to a particular game event.
StopSoundEvent void StopSoundEvent(string string_1, handle handle_2) Stops a sound event with optional delivery
StopSoundOn void StopSoundOn(string string_1, handle handle_2) Stop named sound on Entity
Time float Time() Get the current server time
TraceCollideable bool TraceCollideable(handle handle_1) Pass table - Inputs: start, end, ent, (optional mins, maxs) -- outputs: pos, fraction, hit, startsolid, normal
TraceHull bool TraceHull(handle handle_1) Pass table - Inputs: start, end, min, max, mask, ignore -- outputs: pos, fraction, hit, enthit, startsolid
TraceLine bool TraceLine(handle handle_1) Pass table - Inputs: startpos, endpos, mask, ignore -- outputs: pos, fraction, hit, enthit, startsolid
UTIL_AngleDiff float UTIL_AngleDiff(float float_1, float float_2) Returns the number of degrees difference between two yaw angles
UTIL_MessageText void UTIL_MessageText(int int_1, string string_2, int int_3, int int_4, int int_5, int int_6) Sends colored text to one client.
UTIL_MessageTextAll void UTIL_MessageTextAll(string string_1, int int_2, int int_3, int int_4, int int_5) Sends colored text to all clients.
UTIL_MessageTextAll_WithContext void UTIL_MessageTextAll_WithContext(string string_1, int int_2, int int_3, int int_4, int int_5, handle handle_6) Sends colored text to all clients. (Valid context keys: player_id, value, team_id)
UTIL_MessageText_WithContext 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) Sends colored text to one client. (Valid context keys: player_id, value, team_id)
UTIL_Remove void UTIL_Remove(handle handle_1) Removes the specified entity
UTIL_RemoveImmediate void UTIL_RemoveImmediate(handle handle_1) Immediately removes the specified entity
UTIL_ResetMessageText void UTIL_ResetMessageText(int int_1) Clear all message text on one client.
UTIL_ResetMessageTextAll void UTIL_ResetMessageTextAll() Clear all message text from all clients.
UnitFilter int UnitFilter(handle handle_1, int int_2, int int_3, int int_4, int int_5) Check if a unit passes a set of filters. (hNPC, nTargetTeam, nTargetType, nTargetFlags, nTeam
UnloadSpawnGroup void UnloadSpawnGroup(string string_1) Unload a spawn group by name
UnloadSpawnGroupByHandle void UnloadSpawnGroupByHandle(int int_1) Unload a spawn group by handle
UpdateEventPoints void UpdateEventPoints(handle handle_1) ( hEventPointData )
VectorAngles QAngle VectorAngles(Vector Vector_1)
VectorToAngles QAngle VectorToAngles(Vector Vector_1) Get Qangles (with no roll) for a Vector.
Warning void Warning(string string_1) Print a warning
cvar_getf float cvar_getf(string string_1) Gets the value of the given cvar, as a float.
cvar_setf bool cvar_setf(string string_1, float float_2) Sets the value of the given cvar, as a float.
rr_AddDecisionRule bool rr_AddDecisionRule(handle handle_1) Add a rule to the decision database.
rr_CommitAIResponse bool rr_CommitAIResponse(handle handle_1, handle handle_2) Commit the result of QueryBestResponse back to the given entity to play. Call with params (entity, airesponse)
rr_GetResponseTargets handle rr_GetResponseTargets() Retrieve a table of all available expresser targets, in the form { name : handle, name: handle }.
rr_QueryBestResponse bool rr_QueryBestResponse(handle handle_1, handle handle_2, handle handle_3) Params: (entity, query) : tests 'query' against entity's response system and returns the best response found (or null if none found).

CBaseAnimating

extends CBaseModelEntity

No Description Set

Function Signature Description
ActiveSequenceDuration float ActiveSequenceDuration() Returns the duration in seconds of the active sequence.
GetAttachmentAngles Vector GetAttachmentAngles(int iAttachment) Get the attachment id's angles as a p,y,r vector.
GetAttachmentForward Vector GetAttachmentForward(int iAttachment) Get the attachment id's forward vector.
GetAttachmentOrigin Vector GetAttachmentOrigin(int iAttachment) Get the attachment id's origin vector.
GetCycle float GetCycle() Get the cycle of the animation.
GetGraphParameter table GetGraphParameter(string pszParam) Get the value of the given animGraph parameter
GetModelScale float GetModelScale() Get scale of entity's model.
GetSequence string GetSequence() Returns the name of the active sequence.
IsSequenceFinished bool IsSequenceFinished() Ask whether the main sequence is done playing.
ResetSequence void ResetSequence(string pSequenceName) Sets the active sequence by name, resetting the current cycle.
ScriptLookupAttachment int ScriptLookupAttachment(string pAttachmentName) Get the named attachment id.
SequenceDuration float SequenceDuration(string pSequenceName) Returns the duration in seconds of the given sequence name.
SetGraphLookTarget void SetGraphLookTarget(Vector vValue) Pass the desired look target in world space to the graph
SetGraphParameter void SetGraphParameter(string pszParam, table svArg) Set the specific param value, type is inferred from the type in script
SetGraphParameterBool void SetGraphParameterBool(string szName, bool bValue) Set the specific param on or off
SetGraphParameterEnum void SetGraphParameterEnum(string szName, int nValue) Pass the enum (int) value to the specified param
SetGraphParameterFloat void SetGraphParameterFloat(string szName, float flValue) Pass the float value to the specified param
SetGraphParameterInt void SetGraphParameterInt(string szName, int nValue) Pass the int value to the specified param
SetGraphParameterVector void SetGraphParameterVector(string szName, Vector vValue) Pass the vector value to the specified param in the graph
SetModelScale void SetModelScale(float flScale) Set scale of entity's model.
SetPoseParameter float SetPoseParameter(string szName, float fValue) Set the specified pose parameter to the specified value.
SetSequence void SetSequence(string pSequenceName) Sets the active sequence by name, keeping the current cycle.
StopAnimation void StopAnimation() Stop the current animation by setting playback rate to 0.0.

CBaseCombatCharacter

extends CBaseFlex

No Description Set

Function Signature Description
GetEquippedWeapons table GetEquippedWeapons() GetEquippedWeapons() : Returns an array of all the equipped weapons
GetFaction int GetFaction() Get the combat character faction.
GetWeaponCount int GetWeaponCount() GetWeaponCount() : Gets the number of weapons currently equipped
ShootPosition Vector ShootPosition(int nHand, int nMuzzle) Returns the shoot position eyes (or hand in VR).

CBaseEntity

extends CEntityInstance

The base class for stuff

Function Signature Description
AddEffects void AddEffects(int nFlags) AddEffects( int ): Adds the render effect flag.
ApplyAbsVelocityImpulse void ApplyAbsVelocityImpulse(Vector vecImpulse) Apply a Velocity Impulse
ApplyLocalAngularVelocityImpulse void ApplyLocalAngularVelocityImpulse(Vector angImpulse) Apply an Ang Velocity Impulse
Attribute_GetFloatValue float Attribute_GetFloatValue(string pName, float flDefault) Get float value for an entity attribute.
Attribute_GetIntValue int Attribute_GetIntValue(string pName, int nDefault) Get int value for an entity attribute.
Attribute_SetFloatValue void Attribute_SetFloatValue(string pName, float flValue) Set float value for an entity attribute.
Attribute_SetIntValue void Attribute_SetIntValue(string pName, int nValue) Set int value for an entity attribute.
DeleteAttribute void DeleteAttribute(string pName) Delete an entity attribute.
EmitSound void EmitSound(string soundname) Plays a sound from this entity.
EmitSoundParams void EmitSoundParams(string soundname, int nPitch, float flVolume, float flDelay) Plays/modifies a sound from this entity. changes sound if nPitch and/or flVol or flSoundTime is > 0.
EyeAngles QAngle EyeAngles() Get the qangles that this entity is looking at.
EyePosition Vector EyePosition() Get vector to eye position - absolute coords.
FirstMoveChild handle FirstMoveChild()
FollowEntity void FollowEntity(handle hEnt, bool bBoneMerge) hEntity to follow, bool bBoneMerge
GatherCriteria void GatherCriteria(handle hResult) 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.
GetAbsOrigin Vector GetAbsOrigin() Returns the position of the entity on the map. Very Useful!
GetAbsScale float GetAbsScale()
GetAngles QAngle GetAngles()
GetAnglesAsVector Vector GetAnglesAsVector() Get entity pitch, yaw, roll as a vector.
GetAngularVelocity Vector GetAngularVelocity() Get the local angular velocity - returns a vector of pitch,yaw,roll
GetBaseVelocity Vector GetBaseVelocity() Get Base? velocity.
GetBoundingMaxs Vector GetBoundingMaxs() Get a vector containing max bounds, centered on object.
GetBoundingMins Vector GetBoundingMins() Get a vector containing min bounds, centered on object.
GetBounds table GetBounds() Get a table containing the 'Mins' & 'Maxs' vector bounds, centered on object.
GetCenter Vector GetCenter() Get vector to center of object - absolute coords
GetChildren handle GetChildren() Get the entities parented to this entity.
GetContext table GetContext(string name) GetContext( name ): looks up a context and returns it if available. May return string, float, or null (if the context isn't found).
GetForwardVector Vector GetForwardVector() Get the forward vector of the entity.
GetHealth int GetHealth() Get the health of this entity.
GetLocalAngles QAngle GetLocalAngles() Get entity local pitch, yaw, roll as a QAngle
GetLocalAngularVelocity QAngle GetLocalAngularVelocity() Maybe local angvel
GetLocalOrigin Vector GetLocalOrigin() Get entity local origin as a Vector
GetLocalScale float GetLocalScale()
GetLocalVelocity Vector GetLocalVelocity() Get Entity relative velocity.
GetMass float GetMass() Get the mass of an entity. (returns 0 if it doesn't have a physics object)
GetMaxHealth int GetMaxHealth() Get the maximum health of this entity.
GetModelName string GetModelName() Returns the name of the model.
GetMoveParent handle GetMoveParent() If in hierarchy, retrieves the entity's parent.
GetOrigin Vector GetOrigin()
GetOwner handle GetOwner() Gets this entity's owner
GetOwnerEntity handle GetOwnerEntity() Get the owner entity, if there is one
GetRightVector Vector GetRightVector() Get the right vector of the entity.
GetRootMoveParent handle GetRootMoveParent() If in hierarchy, walks up the hierarchy to find the root parent.
GetSoundDuration float GetSoundDuration(string soundname, string actormodel) Returns float duration of the sound. Takes soundname and optional actormodelname.
GetTeam int GetTeam() Get the team number of this entity.
GetTeamNumber int GetTeamNumber() Get the team number of this entity.
GetUpVector Vector GetUpVector() Get the up vector of the entity.
GetVelocity Vector GetVelocity()
HasAttribute bool HasAttribute(string pName) See if an entity has a particular attribute.
IsAlive bool IsAlive() Is this entity alive?
IsNPC bool IsNPC() Is this entity an CAI_BaseNPC?
IsPlayer bool IsPlayer() Is this entity a player?
Kill void Kill()
NextMovePeer handle NextMovePeer()
OverrideFriction void OverrideFriction(float duration, float friction) Takes duration, value for a temporary override.
PrecacheScriptSound void PrecacheScriptSound(string soundname) Precache a sound for later playing.
RemoveEffects void RemoveEffects(int nFlags) RemoveEffects( int ): Removes the render effect flag.
SetAbsAngles void SetAbsAngles(float fPitch, float fYaw, float fRoll) Set entity pitch, yaw, roll by component.
SetAbsOrigin void SetAbsOrigin(Vector origin)
SetAbsScale void SetAbsScale(float flScale)
SetAngles void SetAngles(float fPitch, float fYaw, float fRoll) Set entity pitch, yaw, roll by component.
SetAngularVelocity void SetAngularVelocity(float pitchVel, float yawVel, float rollVel) Set the local angular velocity - takes float pitch,yaw,roll velocities
SetConstraint void SetConstraint(Vector vPos) Set the position of the constraint.
SetContext void SetContext(string pName, string pValue, float duration) 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').
SetContextNum void SetContextNum(string pName, float fValue, float duration) 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').
SetContextThink void SetContextThink(string pszContextName, handle hThinkFunc, float flInterval) Set a think function on this entity.
SetEntityName void SetEntityName(string pName) Set the name of an entity.
SetForwardVector void SetForwardVector(Vector v) Set the orientation of the entity to have this forward vector.
SetFriction void SetFriction(float flFriction) Set PLAYER friction, ignored for objects.
SetGravity void SetGravity(float flGravity) Set PLAYER gravity, ignored for objects.
SetHealth void SetHealth(int nHealth) Set the health of this entity.
SetLocalAngles void SetLocalAngles(float fPitch, float fYaw, float fRoll) Set entity local pitch, yaw, roll by component
SetLocalOrigin void SetLocalOrigin(Vector origin) Set entity local origin from a Vector
SetLocalScale void SetLocalScale(float flScale)
SetMass void SetMass(float flMass) Set the mass of an entity. (does nothing if it doesn't have a physics object)
SetMaxHealth void SetMaxHealth(int amt) Set the maximum health of this entity.
SetOrigin void SetOrigin(Vector v) Sets the location of this entity
SetOwner void SetOwner(handle pOwner) Sets this entity's owner
SetParent void SetParent(handle hParent, string pAttachmentname) Set the parent for this entity.
SetTeam void SetTeam(int iTeamNum)
SetVelocity void SetVelocity(Vector vecVelocity)
StopSound void StopSound(string soundname) Stops a named sound playing from this entity.
TakeDamage int TakeDamage(handle hInfo) Apply damage to this entity. Use CreateDamageInfo() to create a damageinfo object.
TransformPointEntityToWorld Vector TransformPointEntityToWorld(Vector vPoint) Returns the input Vector transformed from entity to world space
TransformPointWorldToEntity Vector TransformPointWorldToEntity(Vector vPoint) Returns the input Vector transformed from world to entity space
Trigger void Trigger() Fires off this entity's OnTrigger responses.
ValidatePrivateScriptScope void ValidatePrivateScriptScope() Validates the private script scope and creates it if one doesn't exist.

CBaseFlex

extends CBaseAnimating

No Description Set

Function Signature Description
GetCurrentScene handle GetCurrentScene() Returns the instance of the oldest active scene entity (if any).
GetSceneByIndex handle GetSceneByIndex(int index) Returns the instance of the scene entity at the specified index.
ScriptPlayScene float ScriptPlayScene(string pszScene, float flDelay) ( vcd file, delay ) - play specified vcd file

CBaseModelEntity

extends CBaseEntity

No Description Set

Function Signature Description
GetMaterialGroupHash unsigned GetMaterialGroupHash() GetMaterialGroupHash(): Get the material group hash of this entity.
GetMaterialGroupMask uint64 GetMaterialGroupMask() GetMaterialGroupMask(): Get the mesh group mask of this entity.
GetRenderAlpha int GetRenderAlpha() GetRenderAlpha(): Get the alpha modulation of this entity.
GetRenderColor Vector GetRenderColor() GetRenderColor(): Get the render color of the entity.
SetBodygroup void SetBodygroup(int iGroup, int iValue) Sets a bodygroup.
SetBodygroupByName void SetBodygroupByName(string pName, int iValue) Sets a bodygroup by name.
SetLightGroup void SetLightGroup(string pLightGroup) SetLightGroup( string ): Sets the light group of the entity.
SetMaterialGroup void SetMaterialGroup(string pMaterialGroup) SetMaterialGroup( string ): Set the material group of this entity.
SetMaterialGroupHash void SetMaterialGroupHash(unsigned nHash) SetMaterialGroupHash( uint32 ): Set the material group hash of this entity.
SetMaterialGroupMask void SetMaterialGroupMask(uint64 nMeshGroupMask) SetMaterialGroupMask( uint64 ): Set the mesh group mask of this entity.
SetModel void SetModel(string pModelName)
SetRenderAlpha void SetRenderAlpha(int nAlpha) SetRenderAlpha( int ): Set the alpha modulation of this entity.
SetRenderColor void SetRenderColor(int r, int g, int b) SetRenderColor( r, g, b ): Sets the render color of the entity.
SetRenderMode void SetRenderMode(int nMode) SetRenderMode( int ): Sets the render mode of the entity.
SetSingleMeshGroup void SetSingleMeshGroup(string pMeshGroupName) SetSingleMeshGroup( string ): Set a single mesh group for this entity.
SetSize void SetSize(Vector mins, Vector maxs)
SetSkin void SetSkin(int iSkin) Set skin (int).

CBasePlayer

extends CBaseCombatCharacter

No Description Set

Function Signature Description
AreChaperoneBoundsVisible bool AreChaperoneBoundsVisible() Returns whether this player's chaperone bounds are visible.
GetHMDAnchor handle GetHMDAnchor() Returns the HMD anchor entity for this player if it exists.
GetHMDAvatar handle GetHMDAvatar() Returns the HMD Avatar entity for this player if it exists.
GetPlayArea Vector GetPlayArea(int nPoint) Returns the Vector position of the point you ask for. Pass 0-3 to get the four points.
GetUserID int GetUserID() Returns the player's user id.
GetVRControllerType <unknown> GetVRControllerType() Returns the type of controller being used while in VR.
IsNoclipping bool IsNoclipping() Returns true if the player is in noclip mode.
IsUsePressed bool IsUsePressed() Returns true if the use key is pressed.
IsVRControllerButtonPressed bool IsVRControllerButtonPressed(int nButton) Returns true if the controller button is pressed.
IsVRDashboardShowing bool IsVRDashboardShowing() Returns true if the SteamVR dashboard is showing for this player.

CBaseTrigger

extends CBaseEntity

No Description Set

Function Signature Description
Disable void Disable() Disable's the trigger
Enable void Enable() Enable the trigger
IsTouching bool IsTouching(handle hEnt) Checks whether the passed entity is touching the trigger.

CBodyComponent

No Description Set

Function Signature Description
AddImpulseAtPosition void AddImpulseAtPosition(Vector Vector_1, Vector Vector_2) Apply an impulse at a worldspace position to the physics
AddVelocity void AddVelocity(Vector Vector_1, Vector Vector_2) Add linear and angular velocity to the physics object
DetachFromParent void DetachFromParent() Detach from its parent
GetSequence <unknown> GetSequence() Returns the active sequence
IsAttachedToParent bool IsAttachedToParent() Is attached to parent
LookupSequence <unknown> LookupSequence(string string_1) Returns a sequence id given a name
SequenceDuration float SequenceDuration(string string_1) Returns the duration in seconds of the specified sequence
SetAngularVelocity void SetAngularVelocity(Vector Vector_1)
SetAnimation void SetAnimation(string string_1) Pass string for the animation to play on this model
SetMaterialGroup void SetMaterialGroup(utlstringtoken utlstringtoken_1)
SetVelocity void SetVelocity(Vector Vector_1)

CCustomGameEventManager

Global accessor variable: CustomGameEventManager

Function Signature Description
RegisterListener int RegisterListener(string string_1, handle handle_2) ( 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.
Send_ServerToAllClients void Send_ServerToAllClients(string string_1, handle handle_2) ( string EventName, table EventData )
Send_ServerToPlayer void Send_ServerToPlayer(handle handle_1, string string_2, handle handle_3) ( Entity Player, string EventName, table EventData )
Send_ServerToTeam void Send_ServerToTeam(int int_1, string string_2, handle handle_3) ( int TeamNumber, string EventName, table EventData )
UnregisterListener void UnregisterListener(int int_1) ( int ListnerID ) - Unregister a specific listener

CCustomNetTableManager

Global accessor variable: CustomNetTables

Function Signature Description
GetTableValue table GetTableValue(string string_1, string string_2) ( string TableName, string KeyName )
SetTableValue bool SetTableValue(string string_1, string string_2, handle handle_3) ( string TableName, string KeyName, script_table Value )

CDOTABaseAbility

extends CBaseEntity

No Description Set

Function Signature Description
CanAbilityBeUpgraded <unknown> CanAbilityBeUpgraded()
CastAbility bool CastAbility() You are probably looking for OnSpellStart()
ContinueCasting bool ContinueCasting()
CreateVisibilityNode void CreateVisibilityNode(Vector vLocation, float fRadius, float fDuration)
DecrementModifierRefCount void DecrementModifierRefCount()
EndChannel void EndChannel(bool bInterrupted)
EndCooldown void EndCooldown() Clear the cooldown remaining on this ability.
GetAOERadius int GetAOERadius()
GetAbilityDamage int GetAbilityDamage()
GetAbilityDamageType int GetAbilityDamageType()
GetAbilityIndex int GetAbilityIndex()
GetAbilityKeyValues table GetAbilityKeyValues() Gets the key values definition for this ability.
GetAbilityName string GetAbilityName() Returns the name of this ability.
GetAbilityTargetFlags int GetAbilityTargetFlags()
GetAbilityTargetTeam int GetAbilityTargetTeam()
GetAbilityTargetType int GetAbilityTargetType()
GetAbilityType int GetAbilityType()
GetAnimationIgnoresModelScale bool GetAnimationIgnoresModelScale()
GetAssociatedPrimaryAbilities string GetAssociatedPrimaryAbilities()
GetAssociatedSecondaryAbilities string GetAssociatedSecondaryAbilities()
GetAutoCastState bool GetAutoCastState()
GetBackswingTime float GetBackswingTime()
GetBehavior int GetBehavior()
GetCastPoint float GetCastPoint()
GetCastRange int GetCastRange(Vector vLocation, handle hTarget) Gets the cast range of the ability.
GetCaster handle GetCaster()
GetChannelStartTime float GetChannelStartTime()
GetChannelTime float GetChannelTime()
GetChannelledManaCostPerSecond int GetChannelledManaCostPerSecond(int iLevel)
GetCloneSource handle GetCloneSource()
GetConceptRecipientType int GetConceptRecipientType()
GetCooldown float GetCooldown(int iLevel) Get the cooldown duration for this ability at a given level, not the amount of cooldown actually left.
GetCooldownTime float GetCooldownTime()
GetCooldownTimeRemaining float GetCooldownTimeRemaining()
GetCursorPosition Vector GetCursorPosition()
GetCursorTarget handle GetCursorTarget()
GetCursorTargetingNothing bool GetCursorTargetingNothing()
GetDuration float GetDuration()
GetEffectiveCooldown float GetEffectiveCooldown(int iLevel)
GetGoldCost int GetGoldCost(int iLevel)
GetGoldCostForUpgrade int GetGoldCostForUpgrade(int iLevel)
GetHeroLevelRequiredToUpgrade int GetHeroLevelRequiredToUpgrade()
GetIntrinsicModifierName string GetIntrinsicModifierName()
GetLevel int GetLevel() Get the current level of the ability.
GetLevelSpecialValueFor table GetLevelSpecialValueFor(string szName, int nLevel)
GetManaCost int GetManaCost(int iLevel)
GetMaxLevel int GetMaxLevel()
GetModifierValue float GetModifierValue()
GetModifierValueBonus float GetModifierValueBonus()
GetPlaybackRateOverride float GetPlaybackRateOverride()
GetSharedCooldownName string GetSharedCooldownName()
GetSpecialValueFor table GetSpecialValueFor(string szName) Gets a value from this ability's special value block for its current level.
GetStolenActivityModifier string GetStolenActivityModifier()
GetToggleState bool GetToggleState()
GetUpgradeRecommended bool GetUpgradeRecommended()
HeroXPChange bool HeroXPChange(float flXP)
IncrementModifierRefCount void IncrementModifierRefCount()
IsActivated bool IsActivated()
IsAttributeBonus bool IsAttributeBonus()
IsChanneling bool IsChanneling() Returns whether the ability is currently channeling.
IsCooldownReady bool IsCooldownReady()
IsCosmetic bool IsCosmetic(handle hEntity)
IsFullyCastable bool IsFullyCastable() Returns whether the ability can be cast.
IsHidden bool IsHidden()
IsHiddenAsSecondaryAbility bool IsHiddenAsSecondaryAbility()
IsHiddenWhenStolen bool IsHiddenWhenStolen()
IsInAbilityPhase bool IsInAbilityPhase() Returns whether the ability is currently casting.
IsItem bool IsItem()
IsOwnersGoldEnough bool IsOwnersGoldEnough(int nIssuerPlayerID)
IsOwnersGoldEnoughForUpgrade bool IsOwnersGoldEnoughForUpgrade()
IsOwnersManaEnough bool IsOwnersManaEnough()
IsPassive bool IsPassive()
IsRefreshable bool IsRefreshable()
IsSharedWithTeammates bool IsSharedWithTeammates()
IsStealable bool IsStealable()
IsStolen bool IsStolen()
IsToggle bool IsToggle()
IsTrained bool IsTrained()
MarkAbilityButtonDirty void MarkAbilityButtonDirty() Mark the ability button for this ability as needing a refresh.
NumModifiersUsingAbility int NumModifiersUsingAbility()
OnAbilityPhaseInterrupted void OnAbilityPhaseInterrupted()
OnAbilityPhaseStart bool OnAbilityPhaseStart()
OnAbilityPinged void OnAbilityPinged(int nPlayerID, bool bCtrlHeld)
OnChannelFinish void OnChannelFinish(bool bInterrupted)
OnChannelThink void OnChannelThink(float flInterval)
OnHeroCalculateStatBonus void OnHeroCalculateStatBonus()
OnHeroLevelUp void OnHeroLevelUp()
OnOwnerDied void OnOwnerDied()
OnOwnerSpawned void OnOwnerSpawned()
OnSpellStart void OnSpellStart()
OnToggle void OnToggle()
OnUpgrade void OnUpgrade()
PayGoldCost void PayGoldCost()
PayGoldCostForUpgrade void PayGoldCostForUpgrade()
PayManaCost void PayManaCost()
PlaysDefaultAnimWhenStolen bool PlaysDefaultAnimWhenStolen()
ProcsMagicStick bool ProcsMagicStick()
RefCountsModifiers bool RefCountsModifiers()
RefreshCharges void RefreshCharges()
RefundManaCost void RefundManaCost()
ResetToggleOnRespawn bool ResetToggleOnRespawn()
SetAbilityIndex void SetAbilityIndex(int iIndex)
SetActivated void SetActivated(bool bActivated)
SetChanneling void SetChanneling(bool bChanneling)
SetFrozenCooldown void SetFrozenCooldown(bool bFrozenCooldown)
SetHidden void SetHidden(bool bHidden)
SetInAbilityPhase void SetInAbilityPhase(bool bInAbilityPhase)
SetLevel void SetLevel(int iLevel) Sets the level of this ability.
SetOverrideCastPoint void SetOverrideCastPoint(float flCastPoint)
SetRefCountsModifiers void SetRefCountsModifiers(bool bRefCounts)
SetStealable void SetStealable(bool bStealable)
SetStolen void SetStolen(bool bStolen)
SetUpgradeRecommended void SetUpgradeRecommended(bool bUpgradeRecommended)
ShouldUseResources bool ShouldUseResources()
SpeakAbilityConcept void SpeakAbilityConcept(int iConcept)
SpeakTrigger <unknown> SpeakTrigger()
StartCooldown void StartCooldown(float flCooldown)
ToggleAbility void ToggleAbility()
ToggleAutoCast void ToggleAutoCast()
UpgradeAbility void UpgradeAbility(bool bSupressSpeech)
UseResources void UseResources(bool bMana, bool bGold, bool bCooldown)

CDOTABaseGameMode

extends CBaseEntity

No Description Set

Function Signature Description
AddRealTimeCombatAnalyzerQuery int AddRealTimeCombatAnalyzerQuery(handle hQueryTable, handle hPlayer, string pszQueryName) Begin tracking a sequence of events using the real time combat analyzer.
AreWeatherEffectsDisabled bool AreWeatherEffectsDisabled() Get if weather effects are disabled on the client.
ClearBountyRunePickupFilter void ClearBountyRunePickupFilter() Clear the script filter that controls bounty rune pickup behavior.
ClearDamageFilter void ClearDamageFilter() Clear the script filter that controls how a unit takes damage.
ClearExecuteOrderFilter void ClearExecuteOrderFilter() Clear the script filter that controls when a unit picks up an item.
ClearHealingFilter void ClearHealingFilter() Clear the script filter that controls how a unit heals.
ClearItemAddedToInventoryFilter void ClearItemAddedToInventoryFilter() Clear the script filter that controls the item added to inventory filter.
ClearModifierGainedFilter void ClearModifierGainedFilter() Clear the script filter that controls the modifier filter.
ClearModifyExperienceFilter void ClearModifyExperienceFilter() Clear the script filter that controls how hero experience is modified.
ClearModifyGoldFilter void ClearModifyGoldFilter() Clear the script filter that controls how hero gold is modified.
ClearRuneSpawnFilter void ClearRuneSpawnFilter() Clear the script filter that controls what rune spawns.
ClearTrackingProjectileFilter void ClearTrackingProjectileFilter() Clear the script filter that controls when tracking projectiles are launched.
DisableHudFlip void DisableHudFlip(bool bDisable) Use to disable hud flip for this mod
GetAlwaysShowPlayerInventory bool GetAlwaysShowPlayerInventory() Show the player hero's inventory in the HUD, regardless of what unit is selected.
GetAlwaysShowPlayerNames bool GetAlwaysShowPlayerNames() Get whether player names are always shown, regardless of client setting.
GetAnnouncerDisabled bool GetAnnouncerDisabled() Are in-game announcers disabled?
GetCameraDistanceOverride float GetCameraDistanceOverride() Set a different camera distance; dota default is 1134.
GetCustomAttributeDerivedStatValue float GetCustomAttributeDerivedStatValue(int nDerivedStatType, handle hHero) Get current derived stat value constant.
GetCustomBackpackCooldownPercent float GetCustomBackpackCooldownPercent() Get the current rate cooldown ticks down for items in the backpack.
GetCustomBackpackSwapCooldown float GetCustomBackpackSwapCooldown() Get the current custom backpack swap cooldown.
GetCustomBuybackCooldownEnabled bool GetCustomBuybackCooldownEnabled() Turns on capability to define custom buyback cooldowns.
GetCustomBuybackCostEnabled bool GetCustomBuybackCostEnabled() Turns on capability to define custom buyback costs.
GetCustomGlyphCooldown float GetCustomGlyphCooldown() Get the current custom glyph cooldown.
GetCustomHeroMaxLevel int GetCustomHeroMaxLevel() Allows definition of the max level heroes can achieve (default is 25).
GetCustomScanCooldown float GetCustomScanCooldown() Get the current custom scan cooldown.
GetFixedRespawnTime float GetFixedRespawnTime() Gets the fixed respawn time.
GetFogOfWarDisabled bool GetFogOfWarDisabled() Turn the fog of war on or off.
GetGoldSoundDisabled bool GetGoldSoundDisabled() Turn the sound when gold is acquired off/on.
GetHUDVisible bool GetHUDVisible(int iElement) Returns the HUD element visibility.
GetMaximumAttackSpeed int GetMaximumAttackSpeed() Get the maximum attack speed for units.
GetMinimumAttackSpeed int GetMinimumAttackSpeed() Get the minimum attack speed for units.
GetRecommendedItemsDisabled bool GetRecommendedItemsDisabled() Turn the panel for showing recommended items at the shop off/on.
GetRespawnTimeScale float GetRespawnTimeScale() Returns the scale applied to non-fixed respawn times.
GetStashPurchasingDisabled bool GetStashPurchasingDisabled() 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.
GetStickyItemDisabled bool GetStickyItemDisabled() Hide the sticky item in the quickbuy.
GetTopBarTeamValuesOverride bool GetTopBarTeamValuesOverride() Override the values of the team values on the top game bar.
GetTopBarTeamValuesVisible bool GetTopBarTeamValuesVisible() Turning on/off the team values on the top game bar.
GetTowerBackdoorProtectionEnabled bool GetTowerBackdoorProtectionEnabled() Gets whether tower backdoor protection is enabled or not.
GetUseCustomHeroLevels bool GetUseCustomHeroLevels() Are custom-defined XP values for hero level ups in use?
IsBuybackEnabled bool IsBuybackEnabled() Enables or disables buyback completely.
IsDaynightCycleDisabled bool IsDaynightCycleDisabled() Is the day/night cycle disabled?
ListenForQueryFailed void ListenForQueryFailed(handle hFunction, handle hContext) Set function and context for real time combat analyzer query failed.
ListenForQueryProgressChanged void ListenForQueryProgressChanged(handle hFunction, handle hContext) Set function and context for real time combat analyzer query progress changed.
ListenForQuerySucceeded void ListenForQuerySucceeded(handle hFunction, handle hContext) Set function and context for real time combat analyzer query succeeded.
RemoveRealTimeCombatAnalyzerQuery void RemoveRealTimeCombatAnalyzerQuery(int nQueryID) Stop tracking a combat analyzer query.
SetAbilityTuningValueFilter void SetAbilityTuningValueFilter(handle hFunction, handle hContext) 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)
SetAlwaysShowPlayerInventory void SetAlwaysShowPlayerInventory(bool bAlwaysShow) Show the player hero's inventory in the HUD, regardless of what unit is selected.
SetAlwaysShowPlayerNames void SetAlwaysShowPlayerNames(bool bEnabled) Set whether player names are always shown, regardless of client setting.
SetAnnouncerDisabled void SetAnnouncerDisabled(bool bDisabled) Mutes the in-game announcer.
SetBotThinkingEnabled void SetBotThinkingEnabled(bool bEnabled) Enables/Disables bots in custom games. Note: this will only work with default heroes in the dota map.
SetBotsAlwaysPushWithHuman void SetBotsAlwaysPushWithHuman(bool bAlwaysPush) Set if the bots should try their best to push with a human player.
SetBotsInLateGame void SetBotsInLateGame(bool bLateGame) Set if bots should enable their late game behavior.
SetBotsMaxPushTier void SetBotsMaxPushTier(int nMaxTier) Set the max tier of tower that bots want to push. (-1 to disable)
SetBountyRunePickupFilter void SetBountyRunePickupFilter(handle hFunction, handle hContext) 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)
SetBountyRuneSpawnInterval void SetBountyRuneSpawnInterval(float flInterval) Set bounty rune spawn rate
SetBuybackEnabled void SetBuybackEnabled(bool bEnabled) Enables or disables buyback completely.
SetCameraDistanceOverride void SetCameraDistanceOverride(float flCameraDistanceOverride) Set a different camera distance; dota default is 1134.
SetCameraSmoothCountOverride void SetCameraSmoothCountOverride(int nSmoothCount) Set a different camera smooth count; dota default is 8.
SetCustomAttributeDerivedStatValue void SetCustomAttributeDerivedStatValue(int nStatType, float flNewValue) Modify derived stat value constants. ( AttributeDerivedStat eStatType, float flNewValue.
SetCustomBackpackCooldownPercent void SetCustomBackpackCooldownPercent(float flPercent) Set the rate cooldown ticks down for items in the backpack.
SetCustomBackpackSwapCooldown void SetCustomBackpackSwapCooldown(float flCooldown) Set a custom cooldown for swapping items into the backpack.
SetCustomBuybackCooldownEnabled void SetCustomBuybackCooldownEnabled(bool bEnabled) Turns on capability to define custom buyback cooldowns.
SetCustomBuybackCostEnabled void SetCustomBuybackCostEnabled(bool bEnabled) Turns on capability to define custom buyback costs.
SetCustomGameForceHero void SetCustomGameForceHero(string pHeroName) Force all players to use the specified hero and disable the normal hero selection process. Must be used before hero selection.
SetCustomGlyphCooldown void SetCustomGlyphCooldown(float flCooldown) Set a custom cooldown for team Glyph ability.
SetCustomHeroMaxLevel void SetCustomHeroMaxLevel(int int_1) Allows definition of the max level heroes can achieve (default is 25).
SetCustomScanCooldown void SetCustomScanCooldown(float flCooldown) Set a custom cooldown for team Scan ability.
SetCustomTerrainWeatherEffect void SetCustomTerrainWeatherEffect(string pszEffectName) Set the effect used as a custom weather effect, when units are on non-default terrain, in this mode.
SetCustomXPRequiredToReachNextLevel void SetCustomXPRequiredToReachNextLevel(handle hTable) Allows definition of a table of hero XP values.
SetDamageFilter void SetDamageFilter(handle hFunction, handle hContext) 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)
SetDaynightCycleDisabled void SetDaynightCycleDisabled(bool bDisable) Enable or disable the day/night cycle.
SetDeathOverlayDisabled void SetDeathOverlayDisabled(bool bDisabled) Specify whether the full screen death overlay effect plays when the selected hero dies.
SetDraftingBanningTimeOverride void SetDraftingBanningTimeOverride(float flValue) Set drafting hero banning time
SetDraftingHeroPickSelectTimeOverride void SetDraftingHeroPickSelectTimeOverride(float flValue) Set drafting hero pick time
SetExecuteOrderFilter void SetExecuteOrderFilter(handle hFunction, handle hContext) 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)
SetFixedRespawnTime void SetFixedRespawnTime(float flFixedRespawnTime) Set a fixed delay for all players to respawn after.
SetFogOfWarDisabled void SetFogOfWarDisabled(bool bDisabled) Turn the fog of war on or off.
SetFountainConstantManaRegen void SetFountainConstantManaRegen(float flConstantManaRegen) Set the constant rate that the fountain will regen mana. (-1 for default)
SetFountainPercentageHealthRegen void SetFountainPercentageHealthRegen(float flPercentageHealthRegen) Set the percentage rate that the fountain will regen health. (-1 for default)
SetFountainPercentageManaRegen void SetFountainPercentageManaRegen(float flPercentageManaRegen) Set the percentage rate that the fountain will regen mana. (-1 for default)
SetFreeCourierModeEnabled void SetFreeCourierModeEnabled(bool bEnabled) If set to true, enable 7.23 free courier mode.
SetFriendlyBuildingMoveToEnabled void SetFriendlyBuildingMoveToEnabled(bool bEnabled) Allows clicks on friendly buildings to be handled normally.
SetGoldSoundDisabled void SetGoldSoundDisabled(bool bDisabled) Turn the sound when gold is acquired off/on.
SetHUDVisible void SetHUDVisible(int iHUDElement, bool bVisible) Set the HUD element visibility.
SetHealingFilter void SetHealingFilter(handle hFunction, handle hContext) 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)
SetHudCombatEventsDisabled void SetHudCombatEventsDisabled(bool bDisabled) Specify whether the default combat events will show in the HUD.
SetItemAddedToInventoryFilter void SetItemAddedToInventoryFilter(handle hFunction, handle hContext) Set a filter function to control what happens to items that are added to an inventory, return false to cancel the event
SetKillableTombstones void SetKillableTombstones(bool bEnabled) Set whether tombstones can be channeled to be removed by enemy heroes.
SetKillingSpreeAnnouncerDisabled void SetKillingSpreeAnnouncerDisabled(bool bDisabled) Mutes the in-game killing spree announcer.
SetLoseGoldOnDeath void SetLoseGoldOnDeath(bool bEnabled) Use to disable gold loss on death.
SetMaximumAttackSpeed void SetMaximumAttackSpeed(int nMaxSpeed) Set the maximum attack speed for units.
SetMinimumAttackSpeed void SetMinimumAttackSpeed(int nMinSpeed) Set the minimum attack speed for units.
SetModifierGainedFilter void SetModifierGainedFilter(handle hFunction, handle hContext) Set a filter function to control modifiers that are gained, return false to destroy modifier.
SetModifyExperienceFilter void SetModifyExperienceFilter(handle hFunction, handle hContext) 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)
SetModifyGoldFilter void SetModifyGoldFilter(handle hFunction, handle hContext) 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)
SetOverrideSelectionEntity void SetOverrideSelectionEntity(handle hOverrideEntity) Set an override for the default selection entity, instead of each player's hero.
SetPauseEnabled void SetPauseEnabled(bool bEnabled) Set pausing enabled/disabled
SetPowerRuneSpawnInterval void SetPowerRuneSpawnInterval(float flInterval) Set power rune spawn rate
SetRecommendedItemsDisabled void SetRecommendedItemsDisabled(bool bDisabled) Turn the panel for showing recommended items at the shop off/on.
SetRemoveIllusionsOnDeath void SetRemoveIllusionsOnDeath(bool bRemove) Make it so illusions are immediately removed upon death, rather than sticking around for a few seconds.
SetRespawnTimeScale void SetRespawnTimeScale(float flValue) Sets the scale applied to non-fixed respawn times. 1 = default DOTA respawn calculations.
SetRuneEnabled void SetRuneEnabled(int nRune, bool bEnabled) Set if a given type of rune is enabled.
SetRuneSpawnFilter void SetRuneSpawnFilter(handle hFunction, handle hContext) 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)
SetSelectionGoldPenaltyEnabled void SetSelectionGoldPenaltyEnabled(bool bEnabled) Enable/disable gold penalty for late picking.
SetStashPurchasingDisabled void SetStashPurchasingDisabled(bool bDisabled) 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.
SetStickyItemDisabled void SetStickyItemDisabled(bool bDisabled) Hide the sticky item in the quickbuy.
SetTopBarTeamValue void SetTopBarTeamValue(int iTeam, int nValue) Set the team values on the top game bar.
SetTopBarTeamValuesOverride void SetTopBarTeamValuesOverride(bool bOverride) Override the values of the team values on the top game bar.
SetTopBarTeamValuesVisible void SetTopBarTeamValuesVisible(bool bVisible) Turning on/off the team values on the top game bar.
SetTowerBackdoorProtectionEnabled void SetTowerBackdoorProtectionEnabled(bool bEnabled) Enables/Disables tower backdoor protection.
SetTrackingProjectileFilter void SetTrackingProjectileFilter(handle hFunction, handle hContext) 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)
SetUnseenFogOfWarEnabled void SetUnseenFogOfWarEnabled(bool bEnabled) 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.
SetUseCustomHeroLevels void SetUseCustomHeroLevels(bool bEnabled) Turn on custom-defined XP values for hero level ups. The table should be defined before switching this on.
SetUseDefaultDOTARuneSpawnLogic void SetUseDefaultDOTARuneSpawnLogic(bool bEnabled) If set to true, use current rune spawn rules. Either setting respects custom spawn intervals.
SetWeatherEffectsDisabled void SetWeatherEffectsDisabled(bool bDisable) Set if weather effects are disabled.

CDOTAGameManager

No Description Set

Function Signature Description
GetHeroDataByName_Script table GetHeroDataByName_Script(string string_1) Get the hero unit
GetHeroIDByName int GetHeroIDByName(string string_1) Get the hero ID given the hero name.
GetHeroNameByID string GetHeroNameByID(int int_1) Get the hero name given a hero ID.
GetHeroNameForUnitName string GetHeroNameForUnitName(string string_1) Get the hero name given a unit name.
GetHeroUnitNameByID string GetHeroUnitNameByID(int int_1) Get the hero unit name given the hero ID.

CDOTAGamerules

Global accessor variable: GameRules

Function Signature Description
AddBotPlayerWithEntityScript handle AddBotPlayerWithEntityScript(string string_1, string string_2, int int_3, string string_4) Spawn a bot player of the passed hero name, player name, and team.
AddEventMetadataLeaderboardEntry 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) Event-only ( string szNameSuffix, int nStars, int nMaxStars, int nExtraData1, int nExtraData2 )
AddItemToWhiteList void AddItemToWhiteList(string string_1) Add an item to the whitelist
AddMinimapDebugPoint void AddMinimapDebugPoint(int int_1, Vector Vector_2, int int_3, int int_4, int int_5, int int_6, float float_7) Add a point on the minimap.
AddMinimapDebugPointForTeam 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) Add a point on the minimap for a specific team.
BeginNightstalkerNight void BeginNightstalkerNight(float float_1) Begin night stalker night.
BeginTemporaryNight void BeginTemporaryNight(float float_1) Begin temporary night.
BotPopulate void BotPopulate() Fills all the teams with bots if cheat mode is enabled.
Defeated void Defeated() Kills the ancient, etc.
DidMatchSignoutTimeOut bool DidMatchSignoutTimeOut() true when we have waited some time after end of the game and not received signout
EnableCustomGameSetupAutoLaunch void EnableCustomGameSetupAutoLaunch(bool bool_1) Enabled (true) or disable (false) auto launch for custom game setup.
FinishCustomGameSetup void FinishCustomGameSetup() Indicate that the custom game setup phase is complete, and advance to the game.
ForceCreepSpawn void ForceCreepSpawn() Spawn the next wave of creeps.
ForceGameStart void ForceGameStart() Transition game state to DOTA_GAMERULES_STATE_GAME_IN_PROGRESS
GetCustomGameDifficulty int GetCustomGameDifficulty() Returns the difficulty level of the custom game mode
GetCustomGameTeamMaxPlayers int GetCustomGameTeamMaxPlayers(int int_1) Get whether a team is selectable during game setup
GetDOTATime float GetDOTATime(bool bool_1, bool bool_2) (b IncludePregameTime b IncludeNegativeTime) Returns the actual DOTA in-game clock time.
GetDifficulty int GetDifficulty() Returns difficulty level of the custom game mode
GetDroppedItem handle GetDroppedItem(int int_1) Gets the Xth dropped item
GetGameFrameTime float GetGameFrameTime() Returns the number of seconds elapsed since the last frame was renderered. This time doesn't count up when the game is paused
GetGameModeEntity handle GetGameModeEntity() Get the game mode entity
GetGameSessionConfigValue string GetGameSessionConfigValue(string string_1, string string_2) Get a string value from the game session config (map options)
GetGameTime float GetGameTime() Returns the number of seconds elapsed since map start. This time doesn't count up when the game is paused
GetMatchID uint64 GetMatchID() Get the MatchID for this game.
GetMatchSignoutComplete bool GetMatchSignoutComplete() Have we received the post match signout message that includes reward information
GetNianTotalDamageTaken int GetNianTotalDamageTaken() For New Bloom, get total damage taken by the Nian / Year Beast
GetPlayerCustomGameAccountRecord table GetPlayerCustomGameAccountRecord(int int_1) (Preview/Unreleased) Gets the player's custom game account record, as it looked at the start of this session
GetStateTransitionTime float GetStateTransitionTime() Get time remaining between state changes.
GetTimeOfDay float GetTimeOfDay() Get the time of day
GetWeatherWindDirection Vector GetWeatherWindDirection() Get Weather Wind Direction Vector
IsCheatMode bool IsCheatMode() Are cheats enabled on the server
IsDaytime bool IsDaytime() Is it day time?
IsGamePaused bool IsGamePaused() Returns whether the game is paused.
IsHeroRespawnEnabled bool IsHeroRespawnEnabled() Returns whether hero respawn is enabled.
IsInBanPhase bool IsInBanPhase() Are we in the ban phase of hero pick?
IsItemInWhiteList bool IsItemInWhiteList(string string_1) Query an item in the whitelist
IsNightstalkerNight bool IsNightstalkerNight() Is it night stalker night-time?
IsTemporaryNight bool IsTemporaryNight() Is it temporarily night-time?
LockCustomGameSetupTeamAssignment void LockCustomGameSetupTeamAssignment(bool bool_1) Lock (true) or unlock (false) team assignemnt. If team assignment is locked players cannot change teams.
MakeTeamLose void MakeTeamLose(int int_1) Makes the specified team lose
NumDroppedItems int NumDroppedItems() Returns the number of items currently dropped on the ground
PlayerHasCustomGameHostPrivileges bool PlayerHasCustomGameHostPrivileges(handle handle_1) Whether a player has custom game host privileges (shuffle teams, etc.)
Playtesting_UpdateAddOnKeyValues void Playtesting_UpdateAddOnKeyValues() Updates custom hero, unit and ability KeyValues in memory with the latest values from disk
PrepareSpawners void PrepareSpawners(float float_1) Prepare Dota lane style spawners with a given interval
RemoveItemFromWhiteList void RemoveItemFromWhiteList(string string_1) Remove an item from the whitelist
ResetDefeated void ResetDefeated() Restart after killing the ancient, etc.
ResetGameTime void ResetGameTime() Restart gametime from 0
ResetToCustomGameSetup void ResetToCustomGameSetup() Restart at custom game setup.
ResetToHeroSelection void ResetToHeroSelection() Restart the game at hero selection
SendCustomMessage void SendCustomMessage(string string_1, int int_2, int int_3) Sends a message on behalf of a player.
SendCustomMessageToTeam void SendCustomMessageToTeam(string string_1, int int_2, int int_3, int int_4) Sends a message on behalf of a player to the specified team.
SetCreepMinimapIconScale void SetCreepMinimapIconScale(float float_1) (flMinimapCreepIconScale) - Scale the creep icons on the minimap.
SetCreepSpawningEnabled void SetCreepSpawningEnabled(bool bool_1) Sets whether the regular Dota creeps spawn.
SetCustomGameAccountRecordSaveFunction void SetCustomGameAccountRecordSaveFunction(handle handle_1, handle handle_2) (Preview/Unreleased) Sets a callback to handle saving custom game account records (callback is passed a Player ID and should return a flat simple table)
SetCustomGameAllowBattleMusic void SetCustomGameAllowBattleMusic(bool bool_1) Sets a flag to enable/disable the default music handling code for custom games
SetCustomGameAllowHeroPickMusic void SetCustomGameAllowHeroPickMusic(bool bool_1) Sets a flag to enable/disable the default music handling code for custom games
SetCustomGameAllowMusicAtGameStart void SetCustomGameAllowMusicAtGameStart(bool bool_1) Sets a flag to enable/disable the default music handling code for custom games
SetCustomGameDifficulty void SetCustomGameDifficulty(int int_1) Set the difficulty level of the custom game mode
SetCustomGameEndDelay void SetCustomGameEndDelay(float float_1) Sets the game end delay.
SetCustomGameSetupAutoLaunchDelay void SetCustomGameSetupAutoLaunchDelay(float float_1) Set the amount of time to wait for auto launch.
SetCustomGameSetupRemainingTime void SetCustomGameSetupRemainingTime(float float_1) Set the amount of remaining time, in seconds, for custom game setup. 0 = finish immediately, -1 = wait forever
SetCustomGameSetupTimeout void SetCustomGameSetupTimeout(float float_1) Setup (pre-gameplay) phase timeout. 0 = instant, -1 = forever (until FinishCustomGameSetup is called)
SetCustomGameTeamMaxPlayers void SetCustomGameTeamMaxPlayers(int int_1, int int_2) Set whether a team is selectable during game setup
SetCustomVictoryMessage void SetCustomVictoryMessage(string string_1) Sets the victory message.
SetCustomVictoryMessageDuration void SetCustomVictoryMessageDuration(float float_1) Sets the victory message duration.
SetEventMetadataCustomTable bool SetEventMetadataCustomTable(handle handle_1) Event-only ( table hMetadataTable )
SetEventSignoutCustomTable bool SetEventSignoutCustomTable(handle handle_1) Event-only ( table hMetadataTable )
SetFirstBloodActive void SetFirstBloodActive(bool bool_1) Sets whether First Blood has been triggered.
SetGameWinner void SetGameWinner(int int_1) Makes the specified team win
SetGoldPerTick void SetGoldPerTick(int int_1) Set the auto gold increase per timed interval.
SetGoldTickTime void SetGoldTickTime(float float_1) Set the time interval between auto gold increases.
SetHeroMinimapIconScale void SetHeroMinimapIconScale(float float_1) (flMinimapHeroIconScale) - Scale the hero minimap icons on the minimap.
SetHeroRespawnEnabled void SetHeroRespawnEnabled(bool bool_1) Control if the normal DOTA hero respawn rules apply.
SetHeroSelectPenaltyTime void SetHeroSelectPenaltyTime(float float_1) Sets amount of penalty time before randoming a hero
SetHeroSelectionTime void SetHeroSelectionTime(float float_1) Sets the amount of time players have to pick their hero.
SetHideKillMessageHeaders void SetHideKillMessageHeaders(bool bool_1) Sets whether the multikill, streak, and first-blood banners appear at the top of the screen.
SetOverlayHealthBarUnit void SetOverlayHealthBarUnit(handle handle_1, int int_2) Show this unit's health on the overlay health bar
SetPostGameTime void SetPostGameTime(float float_1) Sets the amount of time players have between the game ending and the server disconnecting them.
SetPreGameTime void SetPreGameTime(float float_1) Sets the amount of time players have between picking their hero and game start.
SetRuneMinimapIconScale void SetRuneMinimapIconScale(float float_1) (flMinimapRuneIconScale) - Scale the rune icons on the minimap.
SetRuneSpawnTime void SetRuneSpawnTime(float float_1) Sets the amount of time between rune spawns.
SetSafeToLeave void SetSafeToLeave(bool bool_1) (bSafeToLeave) - Mark this game as safe to leave.
SetSameHeroSelectionEnabled void SetSameHeroSelectionEnabled(bool bool_1) When true, players can repeatedly pick the same hero.
SetShowcaseTime void SetShowcaseTime(float float_1) Sets the amount of time players have between the strategy phase and entering the pre-game phase.
SetStartingGold void SetStartingGold(int int_1) Set the starting gold amount.
SetStrategyTime void SetStrategyTime(float float_1) Sets the amount of time players have between the hero selection and entering the showcase phase.
SetTimeOfDay void SetTimeOfDay(float float_1) Set the time of day.
SetTreeRegrowTime void SetTreeRegrowTime(float float_1) Sets the tree regrow time in seconds.
SetUseBaseGoldBountyOnHeroes void SetUseBaseGoldBountyOnHeroes(bool bool_1) Heroes will use the basic NPC functionality for determining their bounty, rather than DOTA specific formulas.
SetUseCustomHeroXPValues void SetUseCustomHeroXPValues(bool bool_1) Allows heroes in the map to give a specific amount of XP (this value must be set).
SetUseUniversalShopMode void SetUseUniversalShopMode(bool bool_1) When true, all items are available at as long as any shop is in range.
SetWeatherWindDirection void SetWeatherWindDirection(Vector Vector_1) Set Weather Wind Direction Vector
SetWhiteListEnabled void SetWhiteListEnabled(bool bool_1) Item whitelist functionality enable/disable
SpawnAndReleaseCreeps void SpawnAndReleaseCreeps() Spawn and release the next creep wave from Dota lane style spawners.
State_Get int State_Get() Get the current Gamerules state

CDOTAPlayer

extends CBaseAnimating

No Description Set

Function Signature Description
CheckForCourierSpawning void CheckForCourierSpawning(handle hHero) Attempt to spawn the appropriate couriers for this mode.
GetAssignedHero handle GetAssignedHero() Get the player's hero.
GetPlayerID int GetPlayerID() Get the player's official PlayerID; notably is -1 when the player isn't yet on a team.
MakeRandomHeroSelection void MakeRandomHeroSelection() Randoms this player's hero.
SetAssignedHeroEntity void SetAssignedHeroEntity(handle hHero) Sets this player's hero .
SetKillCamUnit void SetKillCamUnit(handle hEntity) Set the kill cam unit for this hero.
SetMusicStatus void SetMusicStatus(int nMusicStatus, float flIntensity) (nMusicStatus, flIntensity) - Set the music status for this player, note this will only really apply if dota_music_battle_enable is off.
SetSelectedHero void SetSelectedHero(string pszHeroName) Sets this player's hero selection.

CDOTATutorial

Global accessor variable: Tutorial

Function Signature Description
AddBot bool AddBot(string string_1, string string_2, string string_3, bool bool_4) Add a computer controlled bot.
AddQuest void AddQuest(string string_1, int int_2, string string_3, string string_4) Add a quest to the quest log
AddShopWhitelistItem void AddShopWhitelistItem(string string_1) Add an item to the shop whitelist.
CompleteQuest void CompleteQuest(string string_1) Complete a quest,
CreateLocationTask void CreateLocationTask(Vector Vector_1) Add a task to move to a specific location
EnableCreepAggroViz void EnableCreepAggroViz(bool bool_1) Alert the player when a creep becomes agro to their hero.
EnablePlayerOffscreenTip void EnablePlayerOffscreenTip(bool bool_1) Enable the tip to alert players how to find their hero.
EnableTowerAggroViz void EnableTowerAggroViz(bool bool_1) Alert the player when a tower becomes agro to their hero.
FinishTutorial void FinishTutorial() End the tutorial.
ForceGameStart void ForceGameStart() Force the start of the game.
GetTimeFrozen bool GetTimeFrozen() Is our time frozen?
IsItemInWhiteList bool IsItemInWhiteList(string string_1) Is this item currently in the white list.
RemoveShopWhitelistItem void RemoveShopWhitelistItem(string string_1) Remove an item from the shop whitelist.
SelectHero void SelectHero(string string_1) Select a hero for the local player
SelectPlayerTeam void SelectPlayerTeam(string string_1) Select the team for the local player
SetItemGuide void SetItemGuide(string string_1) Set the current item guide.
SetOrModifyPlayerGold void SetOrModifyPlayerGold(int int_1, bool bool_2) Set gold amount for the tutorial player. (int) GoldAmount, (bool) true=Set, false=Modify
SetQuickBuy void SetQuickBuy(string string_1) Set players quick buy item.
SetShopOpen void SetShopOpen(bool bool_1) Set the shop open or closed.
SetTimeFrozen void SetTimeFrozen(bool bool_1) Set if we should freeze time or not.
SetTutorialConvar void SetTutorialConvar(string string_1, string string_2) Set a tutorial convar
SetTutorialUI void SetTutorialUI(int int_1) Set the UI to use a reduced version to focus attention to specific elements.
SetWhiteListEnabled void SetWhiteListEnabled(bool bool_1) Set if we should whitelist shop items.
StartTutorialMode void StartTutorialMode() Initialize Tutorial Mode
UpgradePlayerAbility void UpgradePlayerAbility(string string_1) Upgrade a specific ability for the local hero

CDOTAVoteSystem

No Description Set

Function Signature Description
StartVote void StartVote(handle handle_1) Starts a vote, based upon a table of parameters

CDOTA_Ability_Animation_Attack

extends CDOTABaseAbility

No Description Set

Function Signature Description
SetPlaybackRate void SetPlaybackRate(float flRate) Override playbackrate

CDOTA_Ability_Animation_TailSpin

extends CDOTABaseAbility

No Description Set

Function Signature Description
SetPlaybackRate void SetPlaybackRate(float flRate) Override playbackrate

CDOTA_Ability_DataDriven

extends CDOTABaseAbility

No Description Set

Function Signature Description
ApplyDataDrivenModifier handle ApplyDataDrivenModifier(handle hCaster, handle hTarget, string pszModifierName, handle hModifierTable) Applies a data driven modifier to the target
ApplyDataDrivenThinker handle ApplyDataDrivenThinker(handle hCaster, Vector vLocation, string pszModifierName, handle hModifierTable) Applies a data driven thinker at the location

CDOTA_Ability_Lua

extends CDOTABaseAbility

No Description Set

Function Signature Description
CastFilterResult int CastFilterResult() Determine whether an issued command with no target is valid.
CastFilterResultLocation int CastFilterResultLocation(Vector vLocation) (Vector vLocation) Determine whether an issued command on a location is valid.
CastFilterResultTarget int CastFilterResultTarget(handle hTarget) (HSCRIPT hTarget) Determine whether an issued command on a target is valid.
GetAOERadius float GetAOERadius() Controls the size of the AOE casting cursor.
GetAssociatedPrimaryAbilities string GetAssociatedPrimaryAbilities() Returns abilities that are stolen simultaneously, or otherwise related in functionality.
GetAssociatedSecondaryAbilities string GetAssociatedSecondaryAbilities() Returns other abilities that are stolen simultaneously, or otherwise related in functionality. Generally hidden abilities.
GetBehavior int GetBehavior() Return cast behavior type of this ability.
GetCastAnimation int GetCastAnimation() Return casting animation of this ability.
GetCastPoint float GetCastPoint() Return cast point of this ability.
GetCastRange int GetCastRange(Vector vLocation, handle hTarget) Return cast range of this ability.
GetChannelAnimation int GetChannelAnimation() Return channel animation of this ability.
GetChannelTime float GetChannelTime() Return the channel time of this ability.
GetChannelledManaCostPerSecond int GetChannelledManaCostPerSecond(int iLevel) Return mana cost at the given level per second while channeling (-1 is current).
GetConceptRecipientType int GetConceptRecipientType() Return who hears speech when this spell is cast.
GetCooldown float GetCooldown(int iLevel) Return cooldown of this ability.
GetCustomCastError string GetCustomCastError() Return the error string of a failed command with no target.
GetCustomCastErrorLocation string GetCustomCastErrorLocation(Vector vLocation) (Vector vLocation) Return the error string of a failed command on a location.
GetCustomCastErrorTarget string GetCustomCastErrorTarget(handle hTarget) (HSCRIPT hTarget) Return the error string of a failed command on a target.
GetGoldCost int GetGoldCost(int iLevel) Return gold cost at the given level (-1 is current).
GetIntrinsicModifierName string GetIntrinsicModifierName() Returns the name of the modifier applied passively by this ability.
GetManaCost int GetManaCost(int iLevel) Return mana cost at the given level (-1 is current).
GetPlaybackRateOverride float GetPlaybackRateOverride() Return the animation rate of the cast animation.
IsHiddenAbilityCastable bool IsHiddenAbilityCastable() Returns true if this ability can be used when not on the action panel.
IsHiddenWhenStolen bool IsHiddenWhenStolen() Returns true if this ability is hidden when stolen by Spell Steal.
IsRefreshable bool IsRefreshable() Returns true if this ability is refreshed by Refresher Orb.
IsStealable bool IsStealable() Returns true if this ability can be stolen by Spell Steal.
OnAbilityPhaseInterrupted void OnAbilityPhaseInterrupted() Cast time did not complete successfully.
OnAbilityPhaseStart bool OnAbilityPhaseStart() Cast time begins (return true for successful cast).
OnAbilityPinged void OnAbilityPinged(int nPlayerID, bool bCtrlHeld) The ability was pinged (nPlayerID, bCtrlHeld).
OnChannelFinish void OnChannelFinish(bool bInterrupted) (bool bInterrupted) Channel finished.
OnChannelThink void OnChannelThink(float flInterval) (float flInterval) Channeling is taking place.
OnHeroCalculateStatBonus void OnHeroCalculateStatBonus() Caster (hero only) gained a level, skilled an ability, or received a new stat bonus.
OnHeroDiedNearby void OnHeroDiedNearby(handle unit, handle attacker, handle table) A hero has died in the vicinity (ie Urn), takes table of params.
OnHeroLevelUp void OnHeroLevelUp() Caster gained a level.
OnInventoryContentsChanged void OnInventoryContentsChanged() Caster inventory changed.
OnItemEquipped void OnItemEquipped(handle hItem) ( HSCRIPT hItem ) Caster equipped item.
OnOwnerDied void OnOwnerDied() Caster died.
OnOwnerSpawned void OnOwnerSpawned() Caster respawned or spawned for the first time.
OnProjectileHit bool OnProjectileHit(handle hTarget, Vector vLocation) (HSCRIPT hTarget, Vector vLocation) Projectile has collided with a given target or reached its destination (target is invalid).
OnProjectileHitHandle bool OnProjectileHitHandle(handle hTarget, Vector vLocation, int iProjectileHandle) (HSCRIPT hTarget, Vector vLocation, int nHandle) Projectile has collided with a given target or reached its destination (target is invalid).
OnProjectileHit_ExtraData bool OnProjectileHit_ExtraData(handle hTarget, Vector vLocation, handle table) (HSCRIPT hTarget, Vector vLocation, table kv) Projectile has collided with a given target or reached its destination (target is invalid).
OnProjectileThink void OnProjectileThink(Vector vLocation) (Vector vLocation) Projectile is actively moving.
OnProjectileThinkHandle void OnProjectileThinkHandle(int iProjectileHandle) (int nProjectileHandle) Projectile is actively moving.
OnProjectileThink_ExtraData void OnProjectileThink_ExtraData(Vector vLocation, handle table) (Vector vLocation, table kv ) Projectile is actively moving.
OnSpellStart void OnSpellStart() Cast time finished, spell effects begin.
OnStolen void OnStolen(handle hSourceAbility) ( HSCRIPT hAbility ) Special behavior when stolen by Spell Steal.
OnToggle void OnToggle() Ability is toggled on/off.
OnUnStolen void OnUnStolen() Special behavior when lost by Spell Steal.
OnUpgrade void OnUpgrade() Ability gained a level.
ProcsMagicStick bool ProcsMagicStick() Returns true if this ability will generate magic stick charges for nearby enemies.
ResetToggleOnRespawn bool ResetToggleOnRespawn() Returns true if this ability should return to the default toggle state when its parent respawns.
SpeakTrigger int SpeakTrigger() Return the type of speech used.

CDOTA_Ability_Nian_Dive

extends CDOTABaseAbility

No Description Set

Function Signature Description
SetPlaybackRate void SetPlaybackRate(float flRate) Override playbackrate

CDOTA_Ability_Nian_Leap

extends CDOTABaseAbility

No Description Set

Function Signature Description
SetPlaybackRate void SetPlaybackRate(float flRate) Override playbackrate

CDOTA_Ability_Nian_Roar

extends CDOTABaseAbility

No Description Set

Function Signature Description
GetCastCount int GetCastCount() Number of times Nian has used the roar

CDOTA_BaseNPC

extends CBaseFlex

No Description Set

Function Signature Description
AddAbility handle AddAbility(string pszAbilityName) Add an ability to this unit by name.
AddActivityModifier void AddActivityModifier(string szName) Add an activity modifier that affects future StartGesture calls
AddItem handle AddItem(handle hItem) Add an item to this unit's inventory.
AddItemByName handle AddItemByName(string pszItemName) Add an item to this unit's inventory.
AddNewModifier handle AddNewModifier(handle hCaster, handle hAbility, string pszScriptName, handle hModifierTable) Add a modifier to this unit.
AddNoDraw void AddNoDraw() Adds the no draw flag.
AddSpeechBubble void AddSpeechBubble(int iBubble, string pszSpeech, float flDuration, unsigned unOffsetX, unsigned unOffsetY) Add a speech bubble(1-4 live at a time) to this NPC.
AlertNearbyUnits void AlertNearbyUnits(handle hAttacker, handle hAbility)
AngerNearbyUnits void AngerNearbyUnits()
AttackNoEarlierThan void AttackNoEarlierThan(float flTime)
AttackReady bool AttackReady()
BoundingRadius2D float BoundingRadius2D()
CanEntityBeSeenByMyTeam bool CanEntityBeSeenByMyTeam(handle hEntity) Check FoW to see if an entity is visible.
CanSellItems bool CanSellItems() Query if this unit can sell items.
CastAbilityImmediately void CastAbilityImmediately(handle hAbility, int iPlayerIndex) Cast an ability immediately.
CastAbilityNoTarget void CastAbilityNoTarget(handle hAbility, int iPlayerIndex) Cast an ability with no target.
CastAbilityOnPosition void CastAbilityOnPosition(Vector vPosition, handle hAbility, int iPlayerIndex) Cast an ability on a position.
CastAbilityOnTarget void CastAbilityOnTarget(handle hTarget, handle hAbility, int iPlayerIndex) Cast an ability on a target entity.
CastAbilityToggle void CastAbilityToggle(handle hAbility, int iPlayerIndex) Toggle an ability.
ClearActivityModifiers void ClearActivityModifiers() Clear Activity modifiers
DestroyAllSpeechBubbles void DestroyAllSpeechBubbles()
DisassembleItem void DisassembleItem(handle hItem) Disassemble the passed item in this unit's inventory.
DropItemAtPosition void DropItemAtPosition(Vector vDest, handle hItem) Drop an item at a given point.
DropItemAtPositionImmediate void DropItemAtPositionImmediate(handle hItem, Vector vPosition) Immediately drop a carried item at a given position.
EjectItemFromStash void EjectItemFromStash(handle hItem) Drops the selected item out of this unit's stash.
FaceTowards void FaceTowards(Vector vTarget) This unit will be set to face the target point.
FadeGesture void FadeGesture(int nActivity) Fade and remove the given gesture activity.
FindAbilityByName handle FindAbilityByName(string pAbilityName) Retrieve an ability by name from the unit.
FindAllModifiers table FindAllModifiers() Returns a table of all of the modifiers on the NPC.
FindAllModifiersByName table FindAllModifiersByName(string pszScriptName) Returns a table of all of the modifiers on the NPC with the passed name (modifierName)
FindItemInInventory handle FindItemInInventory(string pszItemName) Get handle to first item in inventory, else nil.
FindModifierByName handle FindModifierByName(string pszScriptName) Return a handle to the modifier of the given name if found, else nil (string Name )
FindModifierByNameAndCaster handle FindModifierByNameAndCaster(string pszScriptName, handle hCaster) Return a handle to the modifier of the given name from the passed caster if found, else nil ( string Name, hCaster )
ForceKill void ForceKill(bool bReincarnate) Kill this unit immediately.
ForcePlayActivityOnce void ForcePlayActivityOnce(int nActivity) Play an activity once, and then go back to idle.
GetAbilityByIndex handle GetAbilityByIndex(int iIndex) Retrieve an ability by index from the unit.
GetAbilityCount int GetAbilityCount()
GetAcquisitionRange float GetAcquisitionRange() Gets the range at which this unit will auto-acquire.
GetAdditionalBattleMusicWeight float GetAdditionalBattleMusicWeight() Combat involving this creature will have this weight added to the music calcuations.
GetAggroTarget handle GetAggroTarget() Returns this unit's aggro target.
GetAttackAnimationPoint float GetAttackAnimationPoint()
GetAttackCapability int GetAttackCapability()
GetAttackDamage int GetAttackDamage() Returns a random integer between the minimum and maximum base damage of the unit.
GetAttackRangeBuffer float GetAttackRangeBuffer() Gets the attack range buffer.
GetAttackSpeed float GetAttackSpeed()
GetAttackTarget handle GetAttackTarget()
GetAttacksPerSecond float GetAttacksPerSecond()
GetAverageTrueAttackDamage int GetAverageTrueAttackDamage(handle hTarget) Returns the average value of the minimum and maximum damage values.
GetBaseAttackRange int GetBaseAttackRange()
GetBaseAttackTime float GetBaseAttackTime()
GetBaseDamageMax int GetBaseDamageMax() Get the maximum attack damage of this unit.
GetBaseDamageMin int GetBaseDamageMin() Get the minimum attack damage of this unit.
GetBaseDayTimeVisionRange int GetBaseDayTimeVisionRange() Returns the vision range before modifiers.
GetBaseHealthRegen float GetBaseHealthRegen()
GetBaseMagicalResistanceValue float GetBaseMagicalResistanceValue() Returns base magical armor value.
GetBaseMaxHealth float GetBaseMaxHealth() Gets the base max health value.
GetBaseMoveSpeed float GetBaseMoveSpeed()
GetBaseNightTimeVisionRange int GetBaseNightTimeVisionRange() Returns the vision range after modifiers.
GetBonusManaRegen float GetBonusManaRegen() This Mana regen is derived from constant bonuses like Basilius.
GetCastPoint float GetCastPoint(bool bAttack)
GetCastRangeBonus float GetCastRangeBonus()
GetCloneSource handle GetCloneSource() Get clone source (Meepo Prime, if this is a Meepo)
GetCollisionPadding float GetCollisionPadding() Returns the size of the collision padding around the hull.
GetCooldownReduction float GetCooldownReduction()
GetCreationTime float GetCreationTime()
GetCurrentActiveAbility handle GetCurrentActiveAbility() Get the ability this unit is currently casting.
GetCurrentVisionRange int GetCurrentVisionRange() Gets the current vision range.
GetCursorCastTarget handle GetCursorCastTarget()
GetCursorPosition Vector GetCursorPosition()
GetCursorTargetingNothing bool GetCursorTargetingNothing()
GetDayTimeVisionRange int GetDayTimeVisionRange() Returns the vision range after modifiers.
GetDeathXP int GetDeathXP() Get the XP bounty on this unit.
GetDisplayAttackSpeed float GetDisplayAttackSpeed() Attack speed expressed as constant value
GetEvasion float GetEvasion()
GetForceAttackTarget handle GetForceAttackTarget()
GetGoldBounty int GetGoldBounty() Get the gold bounty on this unit.
GetHasteFactor float GetHasteFactor()
GetHealthDeficit int GetHealthDeficit() Returns integer amount of health missing from max.
GetHealthPercent int GetHealthPercent() Get the current health percent of the unit.
GetHealthRegen float GetHealthRegen()
GetHullRadius float GetHullRadius() Get the collision hull radius of this NPC.
GetIdealSpeed float GetIdealSpeed() Returns speed after all modifiers.
GetIdealSpeedNoSlows float GetIdealSpeedNoSlows() Returns speed after all modifiers, but excluding those that reduce speed.
GetIncreasedAttackSpeed float GetIncreasedAttackSpeed()
GetInitialGoalEntity handle GetInitialGoalEntity() Returns the initial waypoint goal for this NPC.
GetInitialGoalPosition Vector GetInitialGoalPosition() Get waypoint position for this NPC.
GetItemInSlot handle GetItemInSlot(int i) Returns nth item in inventory slot (index is zero based).
GetLastAttackTime float GetLastAttackTime()
GetLastDamageTime float GetLastDamageTime() Get the last time this NPC took damage
GetLastIdleChangeTime float GetLastIdleChangeTime() Get the last game time that this unit switched to/from idle state.
GetLevel int GetLevel() Returns the level of this unit.
GetMagicalArmorValue float GetMagicalArmorValue() Returns current magical armor value.
GetMainControllingPlayer int GetMainControllingPlayer() Returns the player ID of the controlling player.
GetMana float GetMana() Get the mana on this unit.
GetManaPercent int GetManaPercent() Get the percent of mana remaining.
GetManaRegen float GetManaRegen()
GetMaxMana float GetMaxMana() Get the maximum mana of this unit.
GetMaximumGoldBounty int GetMaximumGoldBounty() Get the maximum gold bounty for this unit.
GetMinimumGoldBounty int GetMinimumGoldBounty() Get the minimum gold bounty for this unit.
GetModelRadius float GetModelRadius()
GetModifierCount int GetModifierCount() How many modifiers does this unit have?
GetModifierNameByIndex string GetModifierNameByIndex(int nIndex) Get a modifier name by index.
GetModifierStackCount int GetModifierStackCount(string pszScriptName, handle hCaster) Gets the stack count of a given modifier.
GetMoveSpeedModifier float GetMoveSpeedModifier(float flBaseSpeed, bool bReturnUnslowed)
GetMustReachEachGoalEntity bool GetMustReachEachGoalEntity() Set whether this NPC is required to reach each goal entity, rather than being allowed to unkink their path.
GetNeverMoveToClearSpace bool GetNeverMoveToClearSpace() If set to true, we will never attempt to move this unit to clear space, even when it unphases.
GetNightTimeVisionRange int GetNightTimeVisionRange() Returns the vision range after modifiers.
GetOpposingTeamNumber int GetOpposingTeamNumber()
GetPaddedCollisionRadius float GetPaddedCollisionRadius() Get the collision hull radius (including padding) of this NPC.
GetPhysicalArmorBaseValue float GetPhysicalArmorBaseValue() Returns base physical armor value.
GetPhysicalArmorValue float GetPhysicalArmorValue(bool bIgnoreBase) Returns current physical armor value.
GetPlayerOwner handle GetPlayerOwner() Returns the player that owns this unit.
GetPlayerOwnerID int GetPlayerOwnerID() Get the owner player ID for this unit.
GetProjectileSpeed int GetProjectileSpeed()
GetRangeToUnit float GetRangeToUnit(handle hNPC)
GetRangedProjectileName string GetRangedProjectileName()
GetSecondsPerAttack float GetSecondsPerAttack()
GetSpellAmplification float GetSpellAmplification(bool bBaseOnly)
GetStatusResistance float GetStatusResistance()
GetTotalPurchasedUpgradeGoldCost int GetTotalPurchasedUpgradeGoldCost() Get how much gold has been spent on ability upgrades.
GetUnitLabel string GetUnitLabel()
GetUnitName string GetUnitName() Get the name of this unit.
GiveMana void GiveMana(float flMana) Give mana to this unit, this can be used for mana gained by abilities or item usage.
HasAbility bool HasAbility(string pszAbilityName) See whether this unit has an ability by name.
HasAnyActiveAbilities bool HasAnyActiveAbilities()
HasAttackCapability bool HasAttackCapability()
HasFlyMovementCapability bool HasFlyMovementCapability()
HasFlyingVision bool HasFlyingVision()
HasGroundMovementCapability bool HasGroundMovementCapability()
HasInventory bool HasInventory() Does this unit have an inventory.
HasItemInInventory bool HasItemInInventory(string pItemName) See whether this unit has an item by name.
HasModifier bool HasModifier(string pszScriptName) Sees if this unit has a given modifier.
HasMovementCapability bool HasMovementCapability()
HasScepter bool HasScepter()
Heal void Heal(float flAmount, handle hInflictor) Heal this unit.
Hold void Hold() Hold position.
Interrupt void Interrupt()
InterruptChannel void InterruptChannel()
InterruptMotionControllers void InterruptMotionControllers(bool bFindClearSpace)
IsAlive bool IsAlive() Is this unit alive?
IsAncient bool IsAncient() Is this unit an Ancient?
IsAttackImmune bool IsAttackImmune()
IsAttacking bool IsAttacking()
IsAttackingEntity bool IsAttackingEntity(handle hEntity)
IsBarracks bool IsBarracks() Is this unit a Barracks?
IsBlind bool IsBlind()
IsBlockDisabled bool IsBlockDisabled()
IsBoss bool IsBoss() Is this unit a boss?
IsBuilding bool IsBuilding() Is this unit a building?
IsChanneling bool IsChanneling() Is this unit currently channeling a spell?
IsClone bool IsClone() Is this unit a clone? (Meepo)
IsCommandRestricted bool IsCommandRestricted()
IsConsideredHero bool IsConsideredHero() Is this unit a considered a hero for targeting purposes?
IsControllableByAnyPlayer bool IsControllableByAnyPlayer() Is this unit controlled by any non-bot player?
IsCourier bool IsCourier() Is this unit a courier?
IsCreature bool IsCreature() Is this a Creature type NPC?
IsCreep bool IsCreep() Is this unit a creep?
IsDeniable bool IsDeniable()
IsDisarmed bool IsDisarmed()
IsDominated bool IsDominated()
IsEvadeDisabled bool IsEvadeDisabled()
IsFort bool IsFort() Is this unit an Ancient?
IsFrozen bool IsFrozen()
IsHero bool IsHero() Is this a hero or hero illusion?
IsHexed bool IsHexed()
IsIdle bool IsIdle() Is this creature currently idle?
IsIllusion bool IsIllusion()
IsInRangeOfShop bool IsInRangeOfShop(int nShopType, bool bPhysical) Ask whether this unit is in range of the specified shop ( DOTA_SHOP_TYPE shop, bool bMustBePhysicallyNear
IsInvisible bool IsInvisible()
IsInvulnerable bool IsInvulnerable()
IsLowAttackPriority bool IsLowAttackPriority()
IsMagicImmune bool IsMagicImmune()
IsMovementImpaired bool IsMovementImpaired()
IsMoving bool IsMoving() Is this unit moving?
IsMuted bool IsMuted()
IsNeutralUnitType bool IsNeutralUnitType() Is this a neutral?
IsNightmared bool IsNightmared()
IsOpposingTeam bool IsOpposingTeam(int nTeam)
IsOther bool IsOther() Is this unit a ward-type unit?
IsOutOfGame bool IsOutOfGame()
IsOwnedByAnyPlayer bool IsOwnedByAnyPlayer() Is this unit owned by any non-bot player?
IsPhantom bool IsPhantom() Is this a phantom unit?
IsPhantomBlocker bool IsPhantomBlocker()
IsPhased bool IsPhased()
IsPositionInRange bool IsPositionInRange(Vector vPosition, float flRange)
IsRangedAttacker bool IsRangedAttacker() Is this unit a ranged attacker?
IsRealHero bool IsRealHero() Is this a real hero?
IsRooted bool IsRooted()
IsShrine bool IsShrine() Is this a shrine?
IsSilenced bool IsSilenced()
IsSpeciallyDeniable bool IsSpeciallyDeniable()
IsStunned bool IsStunned()
IsSummoned bool IsSummoned() Is this unit summoned?
IsTempestDouble bool IsTempestDouble()
IsTower bool IsTower() Is this a tower?
IsUnableToMiss bool IsUnableToMiss()
IsUnselectable bool IsUnselectable()
IsUntargetable bool IsUntargetable()
Kill void Kill(handle hAbility, handle hAttacker) Kills this NPC, with the params Ability and Attacker.
MakeIllusion void MakeIllusion()
MakePhantomBlocker void MakePhantomBlocker()
MakeVisibleDueToAttack void MakeVisibleDueToAttack(int iTeam, float flRadius)
MakeVisibleToTeam void MakeVisibleToTeam(int iTeam, float flDuration)
ManageModelChanges void ManageModelChanges()
ModifyHealth void ModifyHealth(int iDesiredHealthValue, handle hAbility, bool bLethal, int iAdditionalFlags) Sets the health to a specific value, with optional flags or inflictors.
MoveToNPC void MoveToNPC(handle hNPC) Move to follow a unit.
MoveToNPCToGiveItem void MoveToNPCToGiveItem(handle hNPC, handle hItem) Give an item to another unit.
MoveToPosition void MoveToPosition(Vector vDest) Issue a Move-To command.
MoveToPositionAggressive void MoveToPositionAggressive(Vector vDest) Issue an Attack-Move-To command.
MoveToTargetToAttack void MoveToTargetToAttack(handle hTarget) Move to a target to attack.
NoHealthBar bool NoHealthBar()
NoTeamMoveTo bool NoTeamMoveTo()
NoTeamSelect bool NoTeamSelect()
NoUnitCollision bool NoUnitCollision()
NotOnMinimap bool NotOnMinimap()
NotOnMinimapForEnemies bool NotOnMinimapForEnemies()
NotifyWearablesOfModelChange void NotifyWearablesOfModelChange(bool bOriginalModel)
PassivesDisabled bool PassivesDisabled()
PatrolToPosition void PatrolToPosition(Vector vDest) Issue a Patrol-To command.
PerformAttack void PerformAttack(handle hTarget, bool bUseCastAttackOrb, bool bProcessProcs, bool bSkipCooldown, bool bIgnoreInvis, bool bUseProjectile, bool bFakeAttack, bool bNeverMiss) Performs an attack on a target.
PickupDroppedItem void PickupDroppedItem(handle hItem) Pick up a dropped item.
PickupRune void PickupRune(handle hItem) Pick up a rune.
PlayVCD void PlayVCD(string pVCD) Play a VCD on the NPC.
ProvidesVision bool ProvidesVision()
Purge void Purge(bool bRemovePositiveBuffs, bool bRemoveDebuffs, bool bFrameOnly, bool bRemoveStuns, bool bRemoveExceptions) (bool RemovePositiveBuffs, bool RemoveDebuffs, bool BuffsCreatedThisFrameOnly, bool RemoveStuns, bool RemoveExceptions
ReduceMana void ReduceMana(float flAmount) Remove mana from this unit, this can be used for involuntary mana loss, not for mana that is spent.
RemoveAbility void RemoveAbility(string pszAbilityName) Remove an ability from this unit by name.
RemoveAbilityByHandle void RemoveAbilityByHandle(handle hAbility) Remove the passed ability from this unit.
RemoveGesture void RemoveGesture(int nActivity) Remove the given gesture activity.
RemoveHorizontalMotionController void RemoveHorizontalMotionController(handle hBuff)
RemoveItem void RemoveItem(handle hItem) Removes the passed item from this unit's inventory and deletes it.
RemoveModifierByName void RemoveModifierByName(string pszScriptName) Removes a modifier.
RemoveModifierByNameAndCaster void RemoveModifierByNameAndCaster(string pszScriptName, handle hCaster) Removes a modifier that was cast by the given caster.
RemoveNoDraw void RemoveNoDraw() Remove the no draw flag.
RemoveVerticalMotionController void RemoveVerticalMotionController(handle hBuff)
RespawnUnit void RespawnUnit() Respawns the target unit if it can be respawned.
Script_GetAttackRange float Script_GetAttackRange() Gets this unit's attack range after all modifiers.
SellItem void SellItem(handle hItem) Sells the passed item in this unit's inventory.
SetAbilityByIndex void SetAbilityByIndex(handle hAbility, int iIndex) Set the ability by index.
SetAcquisitionRange void SetAcquisitionRange(int nRange)
SetAdditionalBattleMusicWeight void SetAdditionalBattleMusicWeight(float flWeight) Combat involving this creature will have this weight added to the music calcuations.
SetAggroTarget void SetAggroTarget(handle hAggroTarget) Set this unit's aggro target to a specified unit.
SetAttackCapability void SetAttackCapability(int iAttackCapabilities)
SetAttacking void SetAttacking(handle hAttackTarget)
SetBaseAttackTime void SetBaseAttackTime(float flBaseAttackTime)
SetBaseDamageMax void SetBaseDamageMax(int nMax) Sets the maximum base damage.
SetBaseDamageMin void SetBaseDamageMin(int nMin) Sets the minimum base damage.
SetBaseHealthRegen void SetBaseHealthRegen(float flHealthRegen)
SetBaseMagicalResistanceValue void SetBaseMagicalResistanceValue(float flMagicalResistanceValue) Sets base magical armor value.
SetBaseManaRegen void SetBaseManaRegen(float flManaRegen)
SetBaseMaxHealth void SetBaseMaxHealth(float flBaseMaxHealth) Set a new base max health value.
SetBaseMoveSpeed void SetBaseMoveSpeed(int iMoveSpeed)
SetCanSellItems void SetCanSellItems(bool bCanSell) Set whether or not this unit is allowed to sell items (bCanSellItems)
SetControllableByPlayer void SetControllableByPlayer(int iIndex, bool bSkipAdjustingPosition) Set this unit controllable by the player with the passed ID.
SetCursorCastTarget void SetCursorCastTarget(handle hEntity)
SetCursorPosition void SetCursorPosition(Vector vLocation)
SetCursorTargetingNothing void SetCursorTargetingNothing(bool bTargetingNothing)
SetCustomHealthLabel void SetCustomHealthLabel(string pLabel, int r, int g, int b)
SetDayTimeVisionRange void SetDayTimeVisionRange(int iRange) Set the base vision range.
SetDeathXP void SetDeathXP(int iXPBounty) Set the XP bounty on this unit.
SetForceAttackTarget void SetForceAttackTarget(handle hNPC)
SetForceAttackTargetAlly void SetForceAttackTargetAlly(handle hNPC)
SetHasInventory void SetHasInventory(bool bHasInventory) Set if this unit has an inventory.
SetHullRadius void SetHullRadius(float flHullRadius) Set the collision hull radius of this NPC.
SetIdleAcquire void SetIdleAcquire(bool bIdleAcquire)
SetInitialGoalEntity void SetInitialGoalEntity(handle hGoal) Sets the initial waypoint goal for this NPC.
SetInitialGoalPosition void SetInitialGoalPosition(Vector vPosition) Set waypoint position for this NPC.
SetMana void SetMana(float flMana) Set the mana on this unit.
SetMaxMana void SetMaxMana(float flMaxMana) Set the maximum mana of this unit.
SetMaximumGoldBounty void SetMaximumGoldBounty(int iGoldBountyMax) Set the maximum gold bounty for this unit.
SetMinimumGoldBounty void SetMinimumGoldBounty(int iGoldBountyMin) Set the minimum gold bounty for this unit.
SetModifierStackCount void SetModifierStackCount(string pszScriptName, handle hCaster, int nStackCount) Sets the stack count of a given modifier.
SetMoveCapability void SetMoveCapability(int iMoveCapabilities)
SetMustReachEachGoalEntity void SetMustReachEachGoalEntity(bool must) Set whether this NPC is required to reach each goal entity, rather than being allowed to unkink their path.
SetNeverMoveToClearSpace void SetNeverMoveToClearSpace(bool neverMoveToClearSpace) If set to true, we will never attempt to move this unit to clear space, even when it unphases.
SetNightTimeVisionRange void SetNightTimeVisionRange(int iRange) Returns the vision range after modifiers.
SetOrigin void SetOrigin(Vector vLocation) Set the unit's origin.
SetOriginalModel void SetOriginalModel(string pszModelName) Sets the original model of this entity, which it will tend to fall back to anytime its state changes.
SetPhysicalArmorBaseValue void SetPhysicalArmorBaseValue(float flPhysicalArmorValue) Sets base physical armor value.
SetRangedProjectileName void SetRangedProjectileName(string pProjectileName)
SetRevealRadius void SetRevealRadius(float revealRadius) sets the client side map reveal radius for this unit
SetShouldDoFlyHeightVisual void SetShouldDoFlyHeightVisual(bool bShouldVisuallyFly)
SetStolenScepter void SetStolenScepter(bool bStolenScepter)
SetUnitCanRespawn void SetUnitCanRespawn(bool bCanRespawn)
SetUnitName void SetUnitName(string pName)
ShouldIdleAcquire bool ShouldIdleAcquire()
SpendMana void SpendMana(float flManaSpent, handle hAbility) Spend mana from this unit, this can be used for spending mana from abilities or item usage.
StartGesture void StartGesture(int nActivity) Add the given gesture activity.
StartGestureWithPlaybackRate void StartGestureWithPlaybackRate(int nActivity, float flRate) Add the given gesture activity with a playback rate override.
Stop void Stop() Stop the current order.
StopFacing void StopFacing()
SwapAbilities void SwapAbilities(string pAbilityName1, string pAbilityName2, bool bEnable1, bool bEnable2) Swaps the slots of the two passed abilities and sets them enabled/disabled.
SwapItems void SwapItems(int nSlot1, int nSlot2) Swap the contents of two item slots (slot1, slot2)
TakeItem handle TakeItem(handle hItem) Removed the passed item from this unit's inventory.
TimeUntilNextAttack float TimeUntilNextAttack()
TriggerModifierDodge bool TriggerModifierDodge()
TriggerSpellAbsorb bool TriggerSpellAbsorb(handle hAbility)
TriggerSpellReflect void TriggerSpellReflect(handle hAbility) Trigger the Lotus Orb-like effect.(hAbility)
UnHideAbilityToSlot void UnHideAbilityToSlot(string pszAbilityName, string pszReplacedAbilityName) Makes the first ability unhidden, and puts it where second ability currently is. Will do nothing if the first ability is already unhidden and in a valid slot.
UnitCanRespawn bool UnitCanRespawn()

CDOTA_BaseNPC_Building

extends CDOTA_BaseNPC

No Description Set

Function Signature Description
GetInvulnCount int GetInvulnCount() Get the invulnerability count for a building.
SetInvulnCount void SetInvulnCount(int nInvulnCount) Set the invulnerability counter of this building.

CDOTA_BaseNPC_Creature

extends CDOTA_BaseNPC

No Description Set

Function Signature Description
AddItemDrop void AddItemDrop(handle hDropData) Add the specified item drop to this creature.
CreatureLevelUp void CreatureLevelUp(int iLevels) Level the creature up by the specified number of levels
IsChampion bool IsChampion() Is this unit a champion?
RemoveAllItemDrops void RemoveAllItemDrops() Remove all item drops from this creature.
SetArmorGain void SetArmorGain(float flArmorGain) Set the armor gained per level on this creature.
SetAttackTimeGain void SetAttackTimeGain(float flAttackTimeGain) Set the attack time gained per level on this creature.
SetBountyGain void SetBountyGain(int nBountyGain) Set the bounty gold gained per level on this creature.
SetChampion void SetChampion(bool bIsChampion) Flag this unit as a champion creature.
SetDamageGain void SetDamageGain(int nDamageGain) Set the damage gained per level on this creature.
SetDisableResistanceGain void SetDisableResistanceGain(float flDisableResistanceGain) Set the disable resistance gained per level on this creature.
SetHPGain void SetHPGain(int nHPGain) Set the hit points gained per level on this creature.
SetHPRegenGain void SetHPRegenGain(float flHPRegenGain) Set the hit points regen gained per level on this creature.
SetMagicResistanceGain void SetMagicResistanceGain(float flMagicResistanceGain) Set the magic resistance gained per level on this creature.
SetManaGain void SetManaGain(int nManaGain) Set the mana points gained per level on this creature.
SetManaRegenGain void SetManaRegenGain(float flManaRegenGain) Set the mana points regen gained per level on this creature.
SetMoveSpeedGain void SetMoveSpeedGain(int nMoveSpeedGain) Set the move speed gained per level on this creature.
SetRequiresReachingEndPath void SetRequiresReachingEndPath(bool bRequiresReachingEndPath) Set whether creatures require reaching their end path before becoming idle
SetXPGain void SetXPGain(int nXPGain) Set the XP gained per level on this creature.

CDOTA_BaseNPC_Hero

extends CDOTA_BaseNPC

No Description Set

Function Signature Description
AddExperience bool AddExperience(float flXP, int nReason, bool bApplyBotDifficultyScaling, bool bIncrementTotal) Params: Float XP, Bool applyBotDifficultyScaling
Buyback void Buyback() Spend the gold and buyback with this hero.
CalculateStatBonus void CalculateStatBonus() Recalculate all stats after the hero gains stats.
CanEarnGold bool CanEarnGold() Returns boolean value result of buyback gold limit time less than game time.
ClearLastHitMultikill void ClearLastHitMultikill() Value is stored in PlayerResource.
ClearLastHitStreak void ClearLastHitStreak() Value is stored in PlayerResource.
ClearStreak void ClearStreak() Value is stored in PlayerResource.
GetAbilityPoints int GetAbilityPoints() Gets the current unspent ability points.
GetAdditionalOwnedUnits table GetAdditionalOwnedUnits()
GetAgility float GetAgility()
GetAgilityGain float GetAgilityGain()
GetAssists int GetAssists() Value is stored in PlayerResource.
GetAttacker int GetAttacker(int nIndex)
GetBaseAgility float GetBaseAgility()
GetBaseDamageMax int GetBaseDamageMax() Hero damage is also affected by attributes.
GetBaseDamageMin int GetBaseDamageMin() Hero damage is also affected by attributes.
GetBaseIntellect float GetBaseIntellect()
GetBaseManaRegen float GetBaseManaRegen() Returns the base mana regen.
GetBaseStrength float GetBaseStrength()
GetBonusDamageFromPrimaryStat int GetBonusDamageFromPrimaryStat()
GetBuybackCooldownTime float GetBuybackCooldownTime() Return float value for the amount of time left on cooldown for this hero's buyback.
GetBuybackCost int GetBuybackCost(bool bReturnOldValues) Return integer value for the gold cost of a buyback.
GetBuybackGoldLimitTime float GetBuybackGoldLimitTime() Returns the amount of time gold gain is limited after buying back.
GetCurrentXP int GetCurrentXP() Returns the amount of XP
GetDeathGoldCost int GetDeathGoldCost()
GetDeaths int GetDeaths() Value is stored in PlayerResource.
GetDenies int GetDenies() Value is stored in PlayerResource.
GetGold int GetGold() Returns gold amount for the player owning this hero
GetGoldBounty int GetGoldBounty()
GetIncreasedAttackSpeed float GetIncreasedAttackSpeed() Hero attack speed is also affected by agility.
GetIntellect float GetIntellect()
GetIntellectGain float GetIntellectGain()
GetKills int GetKills() Value is stored in PlayerResource.
GetLastHits int GetLastHits() Value is stored in PlayerResource.
GetMostRecentDamageTime float GetMostRecentDamageTime()
GetMultipleKillCount int GetMultipleKillCount()
GetNumAttackers int GetNumAttackers()
GetNumItemsInInventory int GetNumItemsInInventory()
GetNumItemsInStash int GetNumItemsInStash()
GetPhysicalArmorBaseValue float GetPhysicalArmorBaseValue() Hero armor is affected by attributes.
GetPlayerID int GetPlayerID() Returns player ID of the player owning this hero
GetPrimaryAttribute int GetPrimaryAttribute() 0 = strength, 1 = agility, 2 = intelligence.
GetPrimaryStatValue float GetPrimaryStatValue()
GetRespawnTime float GetRespawnTime()
GetRespawnsDisabled bool GetRespawnsDisabled() Is this hero prevented from respawning?
GetStreak int GetStreak() Value is stored in PlayerResource.
GetStrength float GetStrength()
GetStrengthGain float GetStrengthGain()
GetTimeUntilRespawn float GetTimeUntilRespawn()
GetTogglableWearable handle GetTogglableWearable(int nSlotType) Get wearable entity in slot (slot)
HasAnyAvailableInventorySpace bool HasAnyAvailableInventorySpace()
HasFlyingVision bool HasFlyingVision()
HasOwnerAbandoned bool HasOwnerAbandoned()
HasRoomForItem int HasRoomForItem(string pItemName, bool bIncludeStashCombines, bool bAllowSelling) Args: const char* pItemName, bool bIncludeStashCombines, bool bAllowSelling
HeroLevelUp void HeroLevelUp(bool bPlayEffects) Levels up the hero, true or false to play effects.
IncrementAssists void IncrementAssists(int iKillerID) Value is stored in PlayerResource.
IncrementDeaths void IncrementDeaths(int iKillerID) Value is stored in PlayerResource.
IncrementDenies void IncrementDenies() Value is stored in PlayerResource.
IncrementKills void IncrementKills(int iVictimID) Passed ID is for the victim, killer ID is ID of the current hero. Value is stored in PlayerResource.
IncrementLastHitMultikill void IncrementLastHitMultikill() Value is stored in PlayerResource.
IncrementLastHitStreak void IncrementLastHitStreak() Value is stored in PlayerResource.
IncrementLastHits void IncrementLastHits() Value is stored in PlayerResource.
IncrementNearbyCreepDeaths void IncrementNearbyCreepDeaths() Value is stored in PlayerResource.
IncrementStreak void IncrementStreak() Value is stored in PlayerResource.
IsBuybackDisabledByReapersScythe bool IsBuybackDisabledByReapersScythe()
IsReincarnating bool IsReincarnating()
IsStashEnabled bool IsStashEnabled()
KilledHero void KilledHero(handle hHero, handle hInflictor) Args: Hero, Inflictor
ModifyAgility void ModifyAgility(float flNewAgility) Adds passed value to base attribute value, then calls CalculateStatBonus.
ModifyGold int ModifyGold(int iGoldChange, bool bReliable, int iReason) Gives this hero some gold. Args: int nGoldChange, bool bReliable, int reason
ModifyIntellect void ModifyIntellect(float flNewIntellect) Adds passed value to base attribute value, then calls CalculateStatBonus.
ModifyStrength void ModifyStrength(float flNewStrength) Adds passed value to base attribute value, then calls CalculateStatBonus.
PerformTaunt void PerformTaunt()
RecordLastHit void RecordLastHit()
RespawnHero void RespawnHero(bool bBuyBack, bool bRespawnPenalty) Respawn this hero.
SetAbilityPoints void SetAbilityPoints(int iPoints) Sets the current unspent ability points.
SetBaseAgility void SetBaseAgility(float flAgility)
SetBaseIntellect void SetBaseIntellect(float flIntellect)
SetBaseStrength void SetBaseStrength(float flStrength)
SetBotDifficulty void SetBotDifficulty(int nDifficulty)
SetBuyBackDisabledByReapersScythe void SetBuyBackDisabledByReapersScythe(bool bBuybackDisabled)
SetBuybackCooldownTime void SetBuybackCooldownTime(float flTime) Sets the buyback cooldown time.
SetBuybackGoldLimitTime void SetBuybackGoldLimitTime(float flTime) Set the amount of time gold gain is limited after buying back.
SetCustomDeathXP void SetCustomDeathXP(int iValue) Sets a custom experience value for this hero. Note, GameRules boolean must be set for this to work!
SetGold void SetGold(int iGold, bool bReliable) Sets the gold amount for the player owning this hero
SetPlayerID void SetPlayerID(int iPlayerID)
SetPrimaryAttribute void SetPrimaryAttribute(int nPrimaryAttribute) Set this hero's primary attribute value.
SetRespawnPosition void SetRespawnPosition(Vector vOrigin)
SetRespawnsDisabled void SetRespawnsDisabled(bool bDisableRespawns) Prevent this hero from respawning.
SetStashEnabled void SetStashEnabled(bool bEnabled)
SetTimeUntilRespawn void SetTimeUntilRespawn(float time)
ShouldDoFlyHeightVisual bool ShouldDoFlyHeightVisual()
SpendGold void SpendGold(int iCost, int iReason) Args: int nGold, int nReason
UnitCanRespawn bool UnitCanRespawn()
UpgradeAbility void UpgradeAbility(handle hAbility) This upgrades the passed ability if it exists and the hero has enough ability points.
WillReincarnate bool WillReincarnate()

CDOTA_BaseNPC_RotatableBuilding

extends CDOTA_BaseNPC

No Description Set

Function Signature Description

CDOTA_BaseNPC_Shop

extends CDOTA_BaseNPC_Building

No Description Set

Function Signature Description
GetShopType int GetShopType() Get the DOTA_SHOP_TYPE
SetShopType void SetShopType(int eShopType) Set the DOTA_SHOP_TYPE.

CDOTA_BaseNPC_Trap_Ward

extends CDOTA_BaseNPC_Creature

No Description Set

Function Signature Description
GetTrapTarget Vector GetTrapTarget() Get the trap target for this entity.
SetAnimation void SetAnimation(string pAnimation) Set the animation sequence for this entity.

CDOTA_Buff

No Description Set

Function Signature Description
AddParticle void AddParticle(int i, bool bDestroyImmediately, bool bStatusEffect, int iPriority, bool bHeroEffect, bool bOverheadEffect) (index, bDestroyImmediately, bStatusEffect, priority, bHeroEffect, bOverheadEffect
DecrementStackCount void DecrementStackCount() Decrease this modifier's stack count by 1.
Destroy void Destroy() Run all associated destroy functions, then remove the modifier.
ForceRefresh void ForceRefresh() Run all associated refresh functions on this modifier as if it was re-applied.
GetAbility handle GetAbility() Get the ability that generated the modifier.
GetAuraDuration float GetAuraDuration() Returns aura stickiness (default 0.5)
GetAuraOwner handle GetAuraOwner()
GetCaster handle GetCaster() Get the owner of the ability responsible for the modifier.
GetClass string GetClass()
GetCreationTime float GetCreationTime()
GetDieTime float GetDieTime()
GetDuration float GetDuration()
GetElapsedTime float GetElapsedTime()
GetLastAppliedTime float GetLastAppliedTime()
GetName string GetName()
GetParent handle GetParent() Get the unit the modifier is parented to.
GetRemainingTime float GetRemainingTime()
GetSerialNumber int GetSerialNumber()
GetStackCount int GetStackCount()
HasFunction bool HasFunction(int iFunction)
IncrementStackCount void IncrementStackCount() Increase this modifier's stack count by 1.
IsDebuff bool IsDebuff()
IsHexDebuff bool IsHexDebuff()
IsStunDebuff bool IsStunDebuff()
SetDuration void SetDuration(float flDuration, bool bInformClient) (flTime, bInformClients)
SetStackCount void SetStackCount(int iCount)
StartIntervalThink void StartIntervalThink(float flInterval) Start this modifier's think function (OnIntervalThink) with the given interval (float). To stop, call with -1.

CDOTA_CustomUIManager

Global accessor variable: CustomUI

Function Signature Description
DynamicHud_Create void DynamicHud_Create(int int_1, string string_2, string string_3, handle handle_4) Create a new custom UI HUD element for the specified player(s). ( int PlayerID /*-1 means everyone*/, string ElementID /* should be unique */, string LayoutFileName, table DialogVariables /* can be nil */ )
DynamicHud_Destroy void DynamicHud_Destroy(int int_1, string string_2) Destroy a custom hud element ( int PlayerID /*-1 means everyone*/, string ElementID )
DynamicHud_SetDialogVariables void DynamicHud_SetDialogVariables(int int_1, string string_2, handle handle_3) Add or modify dialog variables for an existing custom hud element ( int PlayerID /*-1 means everyone*/, string ElementID, table DialogVariables )
DynamicHud_SetVisible void DynamicHud_SetVisible(int int_1, string string_2, bool bool_3) Toggle the visibility of an existing custom hud element ( int PlayerID /*-1 means everyone*/, string ElementID, bool Visible )

CDOTA_Item

extends CDOTABaseAbility

No Description Set

Function Signature Description
CanBeUsedOutOfInventory bool CanBeUsedOutOfInventory()
GetContainer handle GetContainer() Get the container for this item.
GetCost int GetCost()
GetCurrentCharges int GetCurrentCharges() Get the number of charges this item currently has.
GetInitialCharges int GetInitialCharges() Get the initial number of charges this item has.
GetItemSlot int GetItemSlot()
GetItemState int GetItemState() Gets whether item is unequipped or ready.
GetParent handle GetParent() Get the parent for this item.
GetPurchaseTime float GetPurchaseTime() Get the purchase time of this item
GetPurchaser handle GetPurchaser() Get the purchaser for this item.
GetSecondaryCharges int GetSecondaryCharges() Get the number of secondary charges this item currently has.
GetShareability int GetShareability()
IsAlertableItem bool IsAlertableItem()
IsCastOnPickup bool IsCastOnPickup()
IsCombinable bool IsCombinable()
IsDisassemblable bool IsDisassemblable()
IsDroppable bool IsDroppable()
IsInBackpack bool IsInBackpack()
IsItem bool IsItem()
IsKillable bool IsKillable()
IsMuted bool IsMuted()
IsPermanent bool IsPermanent()
IsPurchasable bool IsPurchasable()
IsRecipe bool IsRecipe()
IsRecipeGenerated bool IsRecipeGenerated()
IsSellable bool IsSellable()
IsStackable bool IsStackable()
LaunchLoot void LaunchLoot(bool bAutoUse, float flHeight, float flDuration, Vector vEndPoint)
LaunchLootInitialHeight void LaunchLootInitialHeight(bool bAutoUse, float flInitialHeight, float flLaunchHeight, float flDuration, Vector vEndPoint)
OnEquip void OnEquip()
OnUnequip void OnUnequip()
RequiresCharges bool RequiresCharges()
SetCanBeUsedOutOfInventory void SetCanBeUsedOutOfInventory(bool bValue)
SetCastOnPickup void SetCastOnPickup(bool bCastOnPickUp)
SetCurrentCharges void SetCurrentCharges(int iCharges) Set the number of charges on this item
SetDroppable void SetDroppable(bool bDroppable)
SetItemState void SetItemState(int iState) Sets whether item is unequipped or ready.
SetPurchaseTime void SetPurchaseTime(float flTime) Set the purchase time of this item
SetPurchaser void SetPurchaser(handle hPurchaser) Set the purchaser of record for this item.
SetSecondaryCharges void SetSecondaryCharges(int iCharges) Set the number of secondary charges on this item
SetSellable void SetSellable(bool bSellable)
SetShareability void SetShareability(int iShareability)
SetStacksWithOtherOwners void SetStacksWithOtherOwners(bool bStacksWithOtherOwners)
SpendCharge void SpendCharge()
StacksWithOtherOwners bool StacksWithOtherOwners()
Think void Think() Think this item

CDOTA_ItemSpawner

extends CBaseEntity

No Description Set

Function Signature Description
GetItemName string GetItemName() Returns the item name

CDOTA_Item_DataDriven

extends CDOTA_Item

No Description Set

Function Signature Description
ApplyDataDrivenModifier void ApplyDataDrivenModifier(handle hCaster, handle hTarget, string pszModifierName, handle hModifierTable) Applies a data driven modifier to the target
ApplyDataDrivenThinker handle ApplyDataDrivenThinker(handle hCaster, Vector vLocation, string pszModifierName, handle hModifierTable) Applies a data driven thinker at the location

CDOTA_Item_Lua

extends CDOTA_Item

No Description Set

Function Signature Description
CanUnitPickUp bool CanUnitPickUp(handle hUnit) Returns true if this item can be picked up by the target unit.
CastFilterResult int CastFilterResult() Determine whether an issued command with no target is valid.
CastFilterResultLocation int CastFilterResultLocation(Vector vLocation) (Vector vLocation) Determine whether an issued command on a location is valid.
CastFilterResultTarget int CastFilterResultTarget(handle hTarget) (HSCRIPT hTarget) Determine whether an issued command on a target is valid.
GetAssociatedPrimaryAbilities string GetAssociatedPrimaryAbilities() Returns abilities that are stolen simultaneously, or otherwise related in functionality.
GetAssociatedSecondaryAbilities string GetAssociatedSecondaryAbilities() Returns other abilities that are stolen simultaneously, or otherwise related in functionality. Generally hidden abilities.
GetBehavior int GetBehavior() Return cast behavior type of this ability.
GetCastRange int GetCastRange(Vector vLocation, handle hTarget) Return cast range of this ability.
GetChannelTime float GetChannelTime() Return the channel time of this ability.
GetChannelledManaCostPerSecond int GetChannelledManaCostPerSecond(int iLevel) Return mana cost at the given level per second while channeling (-1 is current).
GetConceptRecipientType int GetConceptRecipientType() Return who hears speech when this spell is cast.
GetCooldown float GetCooldown(int iLevel) Return cooldown of this ability.
GetCustomCastError string GetCustomCastError() Return the error string of a failed command with no target.
GetCustomCastErrorLocation string GetCustomCastErrorLocation(Vector vLocation) (Vector vLocation) Return the error string of a failed command on a location.
GetCustomCastErrorTarget string GetCustomCastErrorTarget(handle hTarget) (HSCRIPT hTarget) Return the error string of a failed command on a target.
GetGoldCost int GetGoldCost(int iLevel) Return gold cost at the given level (-1 is current).
GetIntrinsicModifierName string GetIntrinsicModifierName() Returns the name of the modifier applied passively by this ability.
GetManaCost int GetManaCost(int iLevel) Return mana cost at the given level (-1 is current).
GetPlaybackRateOverride float GetPlaybackRateOverride() Return the animation rate of the cast animation.
IsHiddenAbilityCastable bool IsHiddenAbilityCastable() Returns true if this ability can be used when not on the action panel.
IsHiddenWhenStolen bool IsHiddenWhenStolen() Returns true if this ability is hidden when stolen by Spell Steal.
IsMuted bool IsMuted() Returns whether this item is muted or not.
IsRefreshable bool IsRefreshable() Returns true if this ability is refreshed by Refresher Orb.
IsStealable bool IsStealable() Returns true if this ability can be stolen by Spell Steal.
OnAbilityPhaseInterrupted void OnAbilityPhaseInterrupted() Cast time did not complete successfully.
OnAbilityPhaseStart bool OnAbilityPhaseStart() Cast time begins (return true for successful cast).
OnChannelFinish void OnChannelFinish(bool bInterrupted) (bool bInterrupted) Channel finished.
OnChannelThink void OnChannelThink(float flInterval) (float flInterval) Channeling is taking place.
OnHeroCalculateStatBonus void OnHeroCalculateStatBonus() Caster (hero only) gained a level, skilled an ability, or received a new stat bonus.
OnHeroDiedNearby void OnHeroDiedNearby(handle unit, handle attacker, handle table) A hero has died in the vicinity (ie Urn), takes table of params.
OnHeroLevelUp void OnHeroLevelUp() Caster gained a level.
OnInventoryContentsChanged void OnInventoryContentsChanged() Caster inventory changed.
OnItemEquipped void OnItemEquipped(handle hItem) ( HSCRIPT hItem ) Caster equipped item.
OnOwnerDied void OnOwnerDied() Caster died.
OnOwnerSpawned void OnOwnerSpawned() Caster respawned or spawned for the first time.
OnProjectileHit bool OnProjectileHit(handle hTarget, Vector vLocation) (HSCRIPT hTarget, Vector vLocation) Projectile has collided with a given target or reached its destination (target is invalid).
OnProjectileThink void OnProjectileThink(Vector vLocation) (Vector vLocation) Projectile is actively moving.
OnSpellStart void OnSpellStart() Cast time finished, spell effects begin.
OnStolen void OnStolen(handle hSourceAbility) ( HSCRIPT hAbility ) Special behavior when stolen by Spell Steal.
OnToggle void OnToggle() Ability is toggled on/off.
OnUnStolen void OnUnStolen() Special behavior when lost by Spell Steal.
OnUpgrade void OnUpgrade() Ability gained a level.
ProcsMagicStick bool ProcsMagicStick() Returns true if this ability will generate magic stick charges for nearby enemies.
SpeakTrigger int SpeakTrigger() Return the type of speech used.

CDOTA_Item_Physical

extends CBaseAnimating

No Description Set

Function Signature Description
GetContainedItem handle GetContainedItem() Returned the contained item.
GetCreationTime float GetCreationTime() Returns the game time when this item was created in the world
SetContainedItem void SetContainedItem(handle hItem) Set the contained item.

CDOTA_MapTree

extends CBaseEntity

No Description Set

Function Signature Description
CutDown void CutDown(int nTeamNumberKnownTo) Cuts down this tree. Parameters: int nTeamNumberKnownTo (-1 = invalid team)
CutDownRegrowAfter void CutDownRegrowAfter(float flRegrowAfter, int nTeamNumberKnownTo) Cuts down this tree. Parameters: float flRegrowAfter (-1 = never regrow), int nTeamNumberKnownTo (-1 = invalid team)
GrowBack void GrowBack() Grows back the tree if it was cut down.
IsStanding bool IsStanding() Returns true if the tree is standing, false if it has been cut down

CDOTA_Modifier_Lua

extends CDOTA_Buff

No Description Set

Function Signature Description
AllowIllusionDuplicate bool AllowIllusionDuplicate() True/false if this modifier is active on illusions.
CanParentBeAutoAttacked bool CanParentBeAutoAttacked()
DestroyOnExpire bool DestroyOnExpire() True/false if this buff is removed when the duration expires.
GetAttributes int GetAttributes() Return the types of attributes applied to this modifier (enum value from DOTAModifierAttribute_t
GetAuraDuration float GetAuraDuration() Returns aura stickiness
GetAuraEntityReject bool GetAuraEntityReject(handle hEntity) Return true/false if this entity should receive the aura under specific conditions
GetAuraRadius int GetAuraRadius() Return the range around the parent this aura tries to apply its buff.
GetAuraSearchFlags int GetAuraSearchFlags() Return the unit flags this aura respects when placing buffs.
GetAuraSearchTeam int GetAuraSearchTeam() Return the teams this aura applies its buff to.
GetAuraSearchType int GetAuraSearchType() Return the unit classifications this aura applies its buff to.
GetEffectAttachType int GetEffectAttachType() Return the attach type of the particle system from GetEffectName.
GetEffectName string GetEffectName() Return the name of the particle system that is created while this modifier is active.
GetHeroEffectName string GetHeroEffectName() Return the name of the hero effect particle system that is created while this modifier is active.
GetModifierAura string GetModifierAura() The name of the secondary modifier that will be applied by this modifier (if it is an aura).
GetPriority int GetPriority() Return the priority order this modifier will be applied over others.
GetStatusEffectName string GetStatusEffectName() Return the name of the status effect particle system that is created while this modifier is active.
GetTexture string GetTexture() Return the name of the buff icon to be shown for this modifier.
HeroEffectPriority int HeroEffectPriority() Relationship of this hero effect with those from other buffs (higher is more likely to be shown).
IsAura bool IsAura() True/false if this modifier is an aura.
IsAuraActiveOnDeath bool IsAuraActiveOnDeath() True/false if this aura provides buffs when the parent is dead.
IsDebuff bool IsDebuff() True/false if this modifier should be displayed as a debuff.
IsHidden bool IsHidden() True/false if this modifier should be displayed on the buff bar.
IsPermanent bool IsPermanent()
IsPurgable bool IsPurgable() True/false if this modifier can be purged.
IsPurgeException bool IsPurgeException() True/false if this modifier can be purged by strong dispels.
IsStunDebuff bool IsStunDebuff() True/false if this modifier is considered a stun for purge reasons.
OnCreated void OnCreated(handle table) Runs when the modifier is created.
OnDestroy void OnDestroy() Runs when the modifier is destroyed (after unit loses modifier).
OnIntervalThink void OnIntervalThink() Runs when the think interval occurs.
OnRefresh void OnRefresh(handle table) Runs when the modifier is refreshed.
OnRemoved void OnRemoved() Runs when the modifier is destroyed (before unit loses modifier).
OnStackCountChanged void OnStackCountChanged(int iStackCount) Runs when stack count changes (param is old count).
RemoveOnDeath bool RemoveOnDeath() True/false if this modifier is removed when the parent dies.
ShouldUseOverheadOffset bool ShouldUseOverheadOffset() Apply the overhead offset to the attached effect.
StatusEffectPriority int StatusEffectPriority() Relationship of this status effect with those from other buffs (higher is more likely to be shown).

CDOTA_Modifier_Lua_Horizontal_Motion

extends CDOTA_Modifier_Lua

No Description Set

Function Signature Description
ApplyHorizontalMotionController bool ApplyHorizontalMotionController() Starts the horizontal motion controller effects for this buff. Returns true if successful.
GetPriority int GetPriority() Get the priority
OnHorizontalMotionInterrupted void OnHorizontalMotionInterrupted() Called when the motion gets interrupted.
SetPriority void SetPriority(int nMotionPriority) Set the priority
UpdateHorizontalMotion void UpdateHorizontalMotion(handle me, float dt) Perform any motion from the given interval on the NPC.

CDOTA_Modifier_Lua_Motion_Both

extends CDOTA_Modifier_Lua

No Description Set

Function Signature Description
ApplyHorizontalMotionController bool ApplyHorizontalMotionController() Starts the horizontal motion controller effects for this buff. Returns true if successful.
ApplyVerticalMotionController bool ApplyVerticalMotionController() Starts the vertical motion controller effects for this buff. Returns true if successful.
GetPriority int GetPriority() Get the priority
OnHorizontalMotionInterrupted void OnHorizontalMotionInterrupted() Called when the motion gets interrupted.
OnVerticalMotionInterrupted void OnVerticalMotionInterrupted() Called when the motion gets interrupted.
SetPriority void SetPriority(int nMotionPriority) Set the priority
UpdateHorizontalMotion void UpdateHorizontalMotion(handle me, float dt) Perform any motion from the given interval on the NPC.
UpdateVerticalMotion void UpdateVerticalMotion(handle me, float dt) Perform any motion from the given interval on the NPC.

CDOTA_Modifier_Lua_Vertical_Motion

extends CDOTA_Modifier_Lua

No Description Set

Function Signature Description
ApplyVerticalMotionController bool ApplyVerticalMotionController() Starts the vertical motion controller effects for this buff. Returns true if successful.
GetMotionPriority int GetMotionPriority() Get the priority
OnVerticalMotionInterrupted void OnVerticalMotionInterrupted() Called when the motion gets interrupted.
SetMotionPriority void SetMotionPriority(int nMotionPriority) Set the priority
UpdateVerticalMotion void UpdateVerticalMotion(handle me, float dt) Perform any motion from the given interval on the NPC.

CDOTA_PlayerResource

extends CBaseEntity

Global accessor variable: PlayerResource

Function Signature Description
AddAegisPickup void AddAegisPickup(int iPlayerID)
AddClaimedFarm void AddClaimedFarm(int iPlayerID, float flFarmValue, bool bEarnedValue)
AddGoldSpentOnSupport void AddGoldSpentOnSupport(int iPlayerID, int iCost)
AddRunePickup void AddRunePickup(int iPlayerID)
AreUnitsSharedWithPlayerID bool AreUnitsSharedWithPlayerID(int nUnitOwnerPlayerID, int nOtherPlayerID)
CanRepick bool CanRepick(int iPlayerID)
ClearKillsMatrix void ClearKillsMatrix(int iPlayerID)
ClearLastHitMultikill void ClearLastHitMultikill(int iPlayerID)
ClearLastHitStreak void ClearLastHitStreak(int iPlayerID)
ClearRawPlayerDamageMatrix void ClearRawPlayerDamageMatrix(int iPlayerID)
ClearStreak void ClearStreak(int iPlayerID)
GetAegisPickups int GetAegisPickups(int iPlayerID)
GetAssists int GetAssists(int iPlayerID)
GetBroadcasterChannel unsigned GetBroadcasterChannel(int iPlayerID)
GetBroadcasterChannelSlot unsigned GetBroadcasterChannelSlot(int iPlayerID)
GetClaimedDenies int GetClaimedDenies(int iPlayerID)
GetClaimedFarm float GetClaimedFarm(int iPlayerID, bool bOnlyEarned)
GetClaimedMisses int GetClaimedMisses(int iPlayerID)
GetConnectionState <unknown> GetConnectionState(int iPlayerID)
GetCreepDamageTaken int GetCreepDamageTaken(int iPlayerID, bool bTotal)
GetCustomBuybackCooldown float GetCustomBuybackCooldown(int iPlayerID)
GetCustomBuybackCost int GetCustomBuybackCost(int iPlayerID)
GetCustomTeamAssignment int GetCustomTeamAssignment(int iPlayerID) Get the current custom team assignment for this player.
GetDamageDoneToHero int GetDamageDoneToHero(int iPlayerID, int iVictimID)
GetDeaths int GetDeaths(int iPlayerID)
GetDenies int GetDenies(int iPlayerID)
GetEventPointsForPlayerID unsigned GetEventPointsForPlayerID(int nPlayerID)
GetEventPremiumPoints unsigned GetEventPremiumPoints(int nPlayerID)
GetEventRanks <unknown> GetEventRanks(int nPlayerID)
GetGold int GetGold(int iPlayerID)
GetGoldLostToDeath int GetGoldLostToDeath(int iPlayerID)
GetGoldPerMin float GetGoldPerMin(int iPlayerID)
GetGoldSpentOnBuybacks int GetGoldSpentOnBuybacks(int iPlayerID)
GetGoldSpentOnConsumables int GetGoldSpentOnConsumables(int iPlayerID)
GetGoldSpentOnItems int GetGoldSpentOnItems(int iPlayerID)
GetGoldSpentOnSupport int GetGoldSpentOnSupport(int iPlayerID)
GetHealing float GetHealing(int iPlayerID)
GetHeroDamageTaken int GetHeroDamageTaken(int iPlayerID, bool bTotal)
GetKills int GetKills(int iPlayerID)
GetKillsDoneToHero int GetKillsDoneToHero(int iPlayerID, int iVictimID)
GetLastHitMultikill int GetLastHitMultikill(int iPlayerID)
GetLastHitStreak int GetLastHitStreak(int iPlayerID)
GetLastHits int GetLastHits(int iPlayerID)
GetLevel int GetLevel(int iPlayerID)
GetMisses int GetMisses(int iPlayerID)
GetNearbyCreepDeaths int GetNearbyCreepDeaths(int iPlayerID)
GetNetWorth int GetNetWorth(int iPlayerID)
GetNthCourierForTeam handle GetNthCourierForTeam(int nCourierIndex, int nTeamNumber)
GetNthPlayerIDOnTeam int GetNthPlayerIDOnTeam(int iTeamNumber, int iNthPlayer)
GetNumConsumablesPurchased int GetNumConsumablesPurchased(int iPlayerID)
GetNumCouriersForTeam int GetNumCouriersForTeam(int nTeamNumber)
GetNumItemsPurchased int GetNumItemsPurchased(int iPlayerID)
GetPartyID uint64 GetPartyID(int iPlayerID)
GetPlayer handle GetPlayer(int iPlayerID)
GetPlayerCount int GetPlayerCount() Includes spectators and players not assigned to a team
GetPlayerCountForTeam int GetPlayerCountForTeam(int iTeam)
GetPlayerLoadedCompletely bool GetPlayerLoadedCompletely(int iPlayerID)
GetPlayerName string GetPlayerName(int iPlayerID)
GetRawPlayerDamage int GetRawPlayerDamage(int iPlayerID)
GetReliableGold int GetReliableGold(int iPlayerID)
GetRespawnSeconds int GetRespawnSeconds(int iPlayerID)
GetRoshanKills int GetRoshanKills(int iPlayerID)
GetRunePickups int GetRunePickups(int iPlayerID)
GetSelectedHeroEntity handle GetSelectedHeroEntity(int iPlayerID)
GetSelectedHeroID int GetSelectedHeroID(int iPlayerID)
GetSelectedHeroName string GetSelectedHeroName(int iPlayerID)
GetSteamAccountID unsigned GetSteamAccountID(int iPlayerID)
GetSteamID uint64 GetSteamID(int iPlayerID) Get the 64 bit steam ID for a given player.
GetStreak int GetStreak(int iPlayerID)
GetStuns float GetStuns(int iPlayerID)
GetTeam int GetTeam(int iPlayerID)
GetTeamKills int GetTeamKills(int iTeam)
GetTeamPlayerCount int GetTeamPlayerCount() Players on a valid team (radiant, dire, or custom*) who haven't abandoned the game
GetTimeOfLastConsumablePurchase float GetTimeOfLastConsumablePurchase(int iPlayerID)
GetTimeOfLastDeath float GetTimeOfLastDeath(int iPlayerID)
GetTimeOfLastItemPurchase float GetTimeOfLastItemPurchase(int iPlayerID)
GetTotalEarnedGold int GetTotalEarnedGold(int iPlayerID)
GetTotalEarnedXP int GetTotalEarnedXP(int iPlayerID)
GetTotalGoldSpent int GetTotalGoldSpent(int iPlayerID)
GetTowerDamageTaken int GetTowerDamageTaken(int iPlayerID, bool bTotal)
GetTowerKills int GetTowerKills(int iPlayerID)
GetUnitShareMaskForPlayer int GetUnitShareMaskForPlayer(int nPlayerID, int nOtherPlayerID)
GetUnreliableGold int GetUnreliableGold(int iPlayerID)
GetXPPerMin float GetXPPerMin(int iPlayerID)
HasCustomGameTicketForPlayerID bool HasCustomGameTicketForPlayerID(int iPlayerID) Does this player have a custom game ticket for this game?
HasRandomed bool HasRandomed(int iPlayerID)
HasSelectedHero bool HasSelectedHero(int iPlayerID)
HaveAllPlayersJoined bool HaveAllPlayersJoined()
IncrementAssists void IncrementAssists(int iPlayerID, int iVictimID)
IncrementClaimedDenies void IncrementClaimedDenies(int iPlayerID)
IncrementClaimedMisses void IncrementClaimedMisses(int iPlayerID)
IncrementDeaths void IncrementDeaths(int iPlayerID, int iKillerID)
IncrementDenies void IncrementDenies(int iPlayerID)
IncrementKills void IncrementKills(int iPlayerID, int iVictimID)
IncrementLastHitMultikill void IncrementLastHitMultikill(int iPlayerID)
IncrementLastHitStreak void IncrementLastHitStreak(int iPlayerID)
IncrementLastHits void IncrementLastHits(int iPlayerID)
IncrementMisses void IncrementMisses(int iPlayerID)
IncrementNearbyCreepDeaths void IncrementNearbyCreepDeaths(int iPlayerID)
IncrementStreak void IncrementStreak(int iPlayerID)
IncrementTotalEarnedXP void IncrementTotalEarnedXP(int iPlayerID, int iXP, int nReason)
IsBroadcaster bool IsBroadcaster(int iPlayerID)
IsDisableHelpSetForPlayerID bool IsDisableHelpSetForPlayerID(int nPlayerID, int nOtherPlayerID)
IsFakeClient bool IsFakeClient(int iPlayerID)
IsHeroSelected bool IsHeroSelected(string pHeroname)
IsHeroSharedWithPlayerID bool IsHeroSharedWithPlayerID(int nUnitOwnerPlayerID, int nOtherPlayerID)
IsValidPlayer bool IsValidPlayer(int iPlayerID)
IsValidPlayerID bool IsValidPlayerID(int iPlayerID)
IsValidTeamPlayer bool IsValidTeamPlayer(int iPlayerID)
IsValidTeamPlayerID bool IsValidTeamPlayerID(int iPlayerID)
ModifyGold int ModifyGold(int iPlayerID, int iGoldChange, bool bReliable, int nReason)
NumPlayers int NumPlayers()
NumTeamPlayers int NumTeamPlayers()
RecordConsumableAbilityChargeChange void RecordConsumableAbilityChargeChange(int iPlayerID, int item_definition_index, int nChargeIncrementOrDecrement) Increment or decrement consumable charges (nPlayerID, item_definition_index, nChargeIncrementOrDecrement)
ReplaceHeroWith handle ReplaceHeroWith(int iPlayerID, string pszHeroClass, int nGold, int nXP) (playerID, heroClassName, gold, XP) - replaces the player's hero with a new one of the specified class, gold and XP
ResetBuybackCostTime void ResetBuybackCostTime(int nPlayerID)
ResetTotalEarnedGold void ResetTotalEarnedGold(int iPlayerID)
SetBuybackCooldownTime void SetBuybackCooldownTime(int nPlayerID, float flBuybackCooldown)
SetBuybackGoldLimitTime void SetBuybackGoldLimitTime(int nPlayerID, float flBuybackCooldown)
SetCameraTarget void SetCameraTarget(int nPlayerID, handle hTarget) (playerID, entity) - force the given player's camera to follow the given entity
SetCanRepick void SetCanRepick(int iPlayerID, bool bCanRepick)
SetCustomBuybackCooldown void SetCustomBuybackCooldown(int iPlayerID, float flCooldownTime) Set the buyback cooldown for this player.
SetCustomBuybackCost void SetCustomBuybackCost(int iPlayerID, int iGoldCost) Set the buyback cost for this player.
SetCustomPlayerColor void SetCustomPlayerColor(int iPlayerID, int r, int g, int b) Set custom color for player (minimap, scoreboard, etc)
SetCustomTeamAssignment void SetCustomTeamAssignment(int iPlayerID, int iTeamAssignment) Set custom team assignment for this player.
SetGold void SetGold(int iPlayerID, int iGold, bool bReliable)
SetHasRandomed void SetHasRandomed(int iPlayerID)
SetLastBuybackTime void SetLastBuybackTime(int iPlayerID, int iLastBuybackTime)
SetOverrideSelectionEntity void SetOverrideSelectionEntity(int nPlayerID, handle hEntity) Set the forced selection entity for a player.
SetUnitShareMaskForPlayer void SetUnitShareMaskForPlayer(int nPlayerID, int nOtherPlayerID, int nFlag, bool bState)
SpendGold void SpendGold(int iPlayerID, int iCost, int iReason)
UpdateTeamSlot void UpdateTeamSlot(int iPlayerID, int iTeamNumber, int desiredSlot)
WhoSelectedHero int WhoSelectedHero(string pHeroFilename)

CDOTA_ShopTrigger

extends CBaseTrigger

No Description Set

Function Signature Description
GetShopType int GetShopType() Get the DOTA_SHOP_TYPE
SetShopType void SetShopType(int eShopType) Set the DOTA_SHOP_TYPE.

CDOTA_SimpleObstruction

extends CBaseEntity

No Description Set

Function Signature Description
IsEnabled bool IsEnabled() Returns whether the obstruction is currently active
SetEnabled void SetEnabled(bool bEnabled, bool bForce) Enable or disable the obstruction

CDOTA_Unit_Courier

extends CDOTA_BaseNPC

No Description Set

Function Signature Description

CDOTA_Unit_Nian

extends CDOTA_BaseNPC_Creature

No Description Set

Function Signature Description
GetHorn handle GetHorn() Is the Nian horn?
GetTail handle GetTail() Is the Nian's tail broken?
IsHornAlive bool IsHornAlive() Is the Nian's horn broken?
IsTailAlive bool IsTailAlive() Is the Nian's tail broken?

CDebugOverlayScriptHelper

No Description Set

Function Signature Description
Axis void Axis(Vector Vector_1, Quaternion Quaternion_2, float float_3, bool bool_4, float float_5) Draws an axis. Specify origin + orientation in world space.
Box void Box(Vector Vector_1, Vector Vector_2, int int_3, int int_4, int int_5, int int_6, bool bool_7, float float_8) Draws a world-space axis-aligned box. Specify bounds in world space.
BoxAngles void BoxAngles(Vector Vector_1, Vector Vector_2, Vector Vector_3, Quaternion Quaternion_4, int int_5, int int_6, int int_7, int int_8, bool bool_9, float float_10) Draws an oriented box at the origin. Specify bounds in local space.
Capsule void Capsule(Vector Vector_1, Quaternion Quaternion_2, float float_3, float float_4, int int_5, int int_6, int int_7, int int_8, bool bool_9, float float_10) Draws a capsule. Specify base in world space.
Circle void Circle(Vector Vector_1, Quaternion Quaternion_2, float float_3, int int_4, int int_5, int int_6, int int_7, bool bool_8, float float_9) Draws a circle. Specify center in world space.
CircleScreenOriented void CircleScreenOriented(Vector Vector_1, float float_2, int int_3, int int_4, int int_5, int int_6, bool bool_7, float float_8) Draws a circle oriented to the screen. Specify center in world space.
Cone void Cone(Vector Vector_1, Vector Vector_2, float float_3, float float_4, int int_5, int int_6, int int_7, int int_8, bool bool_9, float float_10) Draws a wireframe cone. Specify endpoint and direction in world space.
Cross void Cross(Vector Vector_1, float float_2, int int_3, int int_4, int int_5, int int_6, bool bool_7, float float_8) Draws a screen-aligned cross. Specify origin in world space.
Cross3D void Cross3D(Vector Vector_1, float float_2, int int_3, int int_4, int int_5, int int_6, bool bool_7, float float_8) Draws a world-aligned cross. Specify origin in world space.
Cross3DOriented void Cross3DOriented(Vector Vector_1, Quaternion Quaternion_2, float float_3, int int_4, int int_5, int int_6, int int_7, bool bool_8, float float_9) Draws an oriented cross. Specify origin in world space.
DrawTickMarkedLine void DrawTickMarkedLine(Vector Vector_1, Vector Vector_2, float float_3, int int_4, int int_5, int int_6, int int_7, int int_8, bool bool_9, float float_10) Draws a dashed line. Specify endpoints in world space.
EntityAttachments void EntityAttachments(ehandle ehandle_1, float float_2, float float_3) Draws the attachments of the entity
EntityAxis void EntityAxis(ehandle ehandle_1, float float_2, bool bool_3, float float_4) Draws the axis of the entity origin
EntityBounds void EntityBounds(ehandle ehandle_1, int int_2, int int_3, int int_4, int int_5, bool bool_6, float float_7) Draws bounds of an entity
EntitySkeleton void EntitySkeleton(ehandle ehandle_1, float float_2) Draws the skeleton of the entity
EntityText void EntityText(ehandle ehandle_1, int int_2, string string_3, int int_4, int int_5, int int_6, int int_7, float float_8) Draws text on an entity
FilledRect2D void FilledRect2D(Vector2D Vector2D_1, Vector2D Vector2D_2, int int_3, int int_4, int int_5, int int_6, float float_7) Draws a screen-space filled 2D rectangle. Coordinates are in pixels.
HorzArrow void HorzArrow(Vector Vector_1, Vector Vector_2, float float_3, int int_4, int int_5, int int_6, int int_7, bool bool_8, float float_9) Draws a horizontal arrow. Specify endpoints in world space.
Line void Line(Vector Vector_1, Vector Vector_2, int int_3, int int_4, int int_5, int int_6, bool bool_7, float float_8) Draws a line between two points
Line2D void Line2D(Vector2D Vector2D_1, Vector2D Vector2D_2, int int_3, int int_4, int int_5, int int_6, float float_7) Draws a line between two points in screenspace
PopDebugOverlayScope void PopDebugOverlayScope() Pops the identifier used to group overlays. Overlays marked with this identifier can be deleted in a big batch.
PushAndClearDebugOverlayScope void PushAndClearDebugOverlayScope(utlstringtoken utlstringtoken_1) Pushes an identifier used to group overlays. Deletes all existing overlays using this overlay id.
PushDebugOverlayScope void PushDebugOverlayScope(utlstringtoken utlstringtoken_1) Pushes an identifier used to group overlays. Overlays marked with this identifier can be deleted in a big batch.
RemoveAllInScope void RemoveAllInScope(utlstringtoken utlstringtoken_1) Removes all overlays marked with a specific identifier, regardless of their lifetime.
SolidCone void SolidCone(Vector Vector_1, Vector Vector_2, float float_3, float float_4, int int_5, int int_6, int int_7, int int_8, bool bool_9, float float_10) Draws a solid cone. Specify endpoint and direction in world space.
Sphere void Sphere(Vector Vector_1, float float_2, int int_3, int int_4, int int_5, int int_6, bool bool_7, float float_8) Draws a wireframe sphere. Specify center in world space.
SweptBox void SweptBox(Vector Vector_1, Vector Vector_2, Vector Vector_3, Vector Vector_4, Quaternion Quaternion_5, int int_6, int int_7, int int_8, int int_9, float float_10) Draws a swept box. Specify endpoints in world space and the bounds in local space.
Text void Text(Vector Vector_1, int int_2, string string_3, float float_4, int int_5, int int_6, int int_7, int int_8, float float_9) Draws 2D text. Specify origin in world space.
Texture void Texture(string string_1, Vector2D Vector2D_2, Vector2D Vector2D_3, int int_4, int int_5, int int_6, int int_7, Vector2D Vector2D_8, Vector2D Vector2D_9, float float_10) Draws a screen-space texture. Coordinates are in pixels.
Triangle void Triangle(Vector Vector_1, Vector Vector_2, Vector Vector_3, int int_4, int int_5, int int_6, int int_7, bool bool_8, float float_9) Draws a filled triangle. Specify vertices in world space.
UnitTestCycleOverlayRenderType void UnitTestCycleOverlayRenderType() Toggles the overlay render type, for unit tests
VectorText3D void VectorText3D(Vector Vector_1, Quaternion Quaternion_2, string string_3, int int_4, int int_5, int int_6, int int_7, bool bool_8, float float_9) Draws 3D text. Specify origin + orientation in world space.
VertArrow void VertArrow(Vector Vector_1, Vector Vector_2, float float_3, int int_4, int int_5, int int_6, int int_7, bool bool_8, float float_9) Draws a vertical arrow. Specify endpoints in world space.
YawArrow void YawArrow(Vector Vector_1, float float_2, float float_3, float float_4, int int_5, int int_6, int int_7, int int_8, bool bool_9, float float_10) Draws a arrow associated with a specific yaw. Specify endpoints in world space.

CDotaQuest

extends CBaseEntity

No Description Set

Function Signature Description
AddSubquest void AddSubquest(handle hSubquest) Add a subquest to this quest
CompleteQuest void CompleteQuest() Mark this quest complete
GetSubquest handle GetSubquest(int nIndex) Finds a subquest from this quest by index
GetSubquestByName handle GetSubquestByName(string pszName) Finds a subquest from this quest by name
RemoveSubquest void RemoveSubquest(handle hSubquest) Remove a subquest from this quest
SetTextReplaceString void SetTextReplaceString(string pszString) Set the text replace string for this quest
SetTextReplaceValue void SetTextReplaceValue(int valueSlot, int value) Set a quest value

CDotaSubquestBase

extends CBaseEntity

No Description Set

Function Signature Description
CompleteSubquest void CompleteSubquest() Mark this subquest complete
SetTextReplaceString void SetTextReplaceString(string pszString) Set the text replace string for this subquest
SetTextReplaceValue void SetTextReplaceValue(int valueSlot, int value) Set a subquest value

CEntities

Global accessor variable: Entities

Function Signature Description
CreateByClassname handle CreateByClassname(string string_1) Creates an entity by classname
FindAllByClassname table FindAllByClassname(string string_1) Finds all entities by class name. Returns an array containing all the found entities.
FindAllByClassnameWithin table FindAllByClassnameWithin(string string_1, Vector Vector_2, float float_3) Find entities by class name within a radius.
FindAllByModel table FindAllByModel(string string_1) Find entities by model name.
FindAllByName table FindAllByName(string string_1) Find all entities by name. Returns an array containing all the found entities in it.
FindAllByNameWithin table FindAllByNameWithin(string string_1, Vector Vector_2, float float_3) Find entities by name within a radius.
FindAllByTarget table FindAllByTarget(string string_1) Find entities by targetname.
FindAllInSphere table FindAllInSphere(Vector Vector_1, float float_2) Find entities within a radius.
FindByClassname handle FindByClassname(handle handle_1, string string_2) Find entities by class name. Pass 'null' to start an iteration, or reference to a previously found entity to continue a search
FindByClassnameNearest handle FindByClassnameNearest(string string_1, Vector Vector_2, float float_3) Find entities by class name nearest to a point.
FindByClassnameWithin handle FindByClassnameWithin(handle handle_1, string string_2, Vector Vector_3, float float_4) Find entities by class name within a radius. Pass 'null' to start an iteration, or reference to a previously found entity to continue a search
FindByModel handle FindByModel(handle handle_1, string string_2) Find entities by model name. Pass 'null' to start an iteration, or reference to a previously found entity to continue a search
FindByModelWithin handle FindByModelWithin(handle handle_1, string string_2, Vector Vector_3, float float_4) Find entities by model name within a radius. Pass 'null' to start an iteration, or reference to a previously found entity to continue a search
FindByName handle FindByName(handle handle_1, string string_2) Find entities by name. Pass 'null' to start an iteration, or reference to a previously found entity to continue a search
FindByNameNearest handle FindByNameNearest(string string_1, Vector Vector_2, float float_3) Find entities by name nearest to a point.
FindByNameWithin handle FindByNameWithin(handle handle_1, string string_2, Vector Vector_3, float float_4) Find entities by name within a radius. Pass 'null' to start an iteration, or reference to a previously found entity to continue a search
FindByTarget handle FindByTarget(handle handle_1, string string_2) Find entities by targetname. Pass 'null' to start an iteration, or reference to a previously found entity to continue a search
FindInSphere handle FindInSphere(handle handle_1, Vector Vector_2, float float_3) Find entities within a radius. Pass 'null' to start an iteration, or reference to a previously found entity to continue a search
First handle First() Begin an iteration over the list of entities
GetLocalPlayer handle GetLocalPlayer() Get the local player.
Next handle Next(handle handle_1) Continue an iteration over the list of entities, providing reference to a previously found entity

CEntityInstance

No Description Set

Function Signature Description
ConnectOutput void ConnectOutput(string string_1, string string_2) Adds an I/O connection that will call the named function on this entity when the specified output fires.
Destroy void Destroy()
DisconnectOutput void DisconnectOutput(string string_1, string string_2) Removes a connected script function from an I/O event on this entity.
DisconnectRedirectedOutput void DisconnectRedirectedOutput(string string_1, string string_2, handle handle_3) Removes a connected script function from an I/O event on the passed entity.
FireOutput void FireOutput(string string_1, handle handle_2, handle handle_3, table table_4, float float_5) Fire an entity output
GetClassname string GetClassname()
GetDebugName string GetDebugName() Get the entity name w/help if not defined (i.e. classname/etc)
GetEntityHandle ehandle GetEntityHandle() Get the entity as an EHANDLE
GetEntityIndex int GetEntityIndex()
GetIntAttr int GetIntAttr(string string_1) Get Integer Attribute
GetName string GetName()
GetOrCreatePrivateScriptScope handle GetOrCreatePrivateScriptScope() Retrieve, creating if necessary, the private per-instance script-side data associated with an entity
GetOrCreatePublicScriptScope handle GetOrCreatePublicScriptScope() Retrieve, creating if necessary, the public script-side data associated with an entity
GetPrivateScriptScope handle GetPrivateScriptScope() Retrieve the private per-instance script-side data associated with an entity
GetPublicScriptScope handle GetPublicScriptScope() Retrieve the public script-side data associated with an entity
RedirectOutput void RedirectOutput(string string_1, string string_2, handle handle_3) Adds an I/O connection that will call the named function on the passed entity when the specified output fires.
RemoveSelf void RemoveSelf() Delete this entity
SetIntAttr void SetIntAttr(string string_1, int int_2) Set Integer Attribute
entindex int entindex()

CEntityScriptFramework

No Description Set

Function Signature Description

CEnvEntityMaker

extends CBaseEntity

No Description Set

Function Signature Description
SpawnEntity void SpawnEntity() Create an entity at the location of the maker
SpawnEntityAtEntityOrigin void SpawnEntityAtEntityOrigin(handle hEntity) Create an entity at the location of a specified entity instance
SpawnEntityAtLocation void SpawnEntityAtLocation(Vector vecAlternateOrigin, Vector vecAlternateAngles) Create an entity at a specified location and orientaton, orientation is Euler angle in degrees (pitch, yaw, roll)
SpawnEntityAtNamedEntityOrigin void SpawnEntityAtNamedEntityOrigin(string pszName) Create an entity at the location of a named entity

CEnvProjectedTexture

extends CBaseEntity

No Description Set

Function Signature Description
SetFarRange void SetFarRange(float flRange) Set light maximum range
SetLinearAttenuation void SetLinearAttenuation(float flAtten) Set light linear attenuation value
SetNearRange void SetNearRange(float flRange) Set light minimum range
SetQuadraticAttenuation void SetQuadraticAttenuation(float flAtten) Set light quadratic attenuation value
SetVolumetrics void SetVolumetrics(bool bOn, float flIntensity, float flNoise, int nPlanes, float flPlaneOffset) Turn on/off light volumetrics: bool bOn, float flIntensity, float flNoise, int nPlanes, float flPlaneOffset

CInfoData

extends CBaseEntity

No Description Set

Function Signature Description
QueryColor Vector QueryColor(utlstringtoken tok, Vector vDefault) Query color data for this key
QueryFloat float QueryFloat(utlstringtoken tok, float flDefault) Query float data for this key
QueryInt int QueryInt(utlstringtoken tok, int nDefault) Query int data for this key
QueryNumber float QueryNumber(utlstringtoken tok, float flDefault) Query number data for this key
QueryString string QueryString(utlstringtoken tok, string pDefault) Query string data for this key
QueryVector Vector QueryVector(utlstringtoken tok, Vector vDefault) Query vector data for this key

CInfoWorldLayer

extends CBaseEntity

No Description Set

Function Signature Description
HideWorldLayer void HideWorldLayer() Hides this layer
ShowWorldLayer void ShowWorldLayer() Shows this layer

CLogicScript

extends CBaseEntity

No Description Set

Function Signature Description

CMarkupVolumeTagged

extends CBaseEntity

No Description Set

Function Signature Description
HasTag bool HasTag(string pszTagName) Does this volume have the given tag.

CNativeOutputs

No Description Set

Function Signature Description
AddOutput void AddOutput(string string_1, string string_2) Add an output
Init void Init(int int_1) Initialize with number of outputs

CParticleSystem

extends CBaseModelEntity

No Description Set

Function Signature Description

CPhysicsProp

extends CBaseAnimating

No Description Set

Function Signature Description
DisableMotion void DisableMotion() Disable motion for the prop
EnableMotion void EnableMotion() Enable motion for the prop
SetDynamicVsDynamicContinuous void SetDynamicVsDynamicContinuous(bool bIsDynamicVsDynamicContinuousEnabled) Enable/disable dynamic vs dynamic continuous collision traces

CPointClientUIWorldPanel

extends CBaseModelEntity

No Description Set

Function Signature Description
AcceptUserInput void AcceptUserInput() Tells the panel to accept user input.
AddCSSClasses void AddCSSClasses(string pszClasses) Adds CSS class(es) to the panel
IgnoreUserInput void IgnoreUserInput() Tells the panel to ignore user input.
IsGrabbable bool IsGrabbable() Returns whether this entity is grabbable.
RemoveCSSClasses void RemoveCSSClasses(string pszClasses) Remove CSS class(es) from the panel

CPointTemplate

extends CBaseEntity

No Description Set

Function Signature Description
DeleteCreatedSpawnGroups void DeleteCreatedSpawnGroups() DeleteCreatedSpawnGroups() : Deletes any spawn groups that this point_template has spawned. Note: The point_template will not be deleted by this.
ForceSpawn void ForceSpawn() ForceSpawn() : Spawns all of the entities the point_template is pointing at.
GetSpawnedEntities handle GetSpawnedEntities() GetSpawnedEntities() : Get the list of the most recent spawned entities
SetSpawnCallback void SetSpawnCallback(handle hCallbackFunc, handle hCallbackScope) SetSpawnCallback( hCallbackFunc, hCallbackScope, hCallbackData ) : Set a callback for when the template spawns entities. The spawned entities will be passed in as an array.

CPointWorldText

extends CBaseModelEntity

No Description Set

Function Signature Description
SetMessage void SetMessage(string pMessage) Set the message on this entity.

CPropHMDAvatar

extends CBaseAnimating

No Description Set

Function Signature Description
GetVRHand handle GetVRHand(int nHandID) Get VR hand by ID

CPropVRHand

extends CBaseAnimating

No Description Set

Function Signature Description
AddHandAttachment void AddHandAttachment(handle hAttachment) Add the attachment to this hand
AddHandModelOverride handle AddHandModelOverride(string pModelName) Add a model override for this hand
FindHandModelOverride handle FindHandModelOverride(string pModelName) Find a specific model override for this hand
FireHapticPulse void FireHapticPulse(int nStrength) Fire a haptic pulse on this hand. [0,2] for strength.
FireHapticPulsePrecise void FireHapticPulsePrecise(int nPulseDuration) Fire a haptic pulse on this hand. Specify the duration in micro seconds.
GetHandAttachment handle GetHandAttachment() Get the attachment on this hand
GetHandID int GetHandID() Get hand ID
GetLiteralHandType int GetLiteralHandType() Get literal type for this hand
GetPlayer handle GetPlayer() Get the player for this hand
GetVelocity Vector GetVelocity() Get the filtered controller velocity.
RemoveAllHandModelOverrides void RemoveAllHandModelOverrides() Remove all model overrides for this hand
RemoveHandAttachmentByHandle void RemoveHandAttachmentByHandle(handle hAttachment) Remove hand attachment by handle
RemoveHandModelOverride void RemoveHandModelOverride(string pModelName) Remove a model override for this hand
SetHandAttachment void SetHandAttachment(handle hAttachment) Set the attachment for this hand

CSceneEntity

extends CBaseEntity

No Description Set

Function Signature Description
AddBroadcastTeamTarget void AddBroadcastTeamTarget(int int_1) Adds a team (by index) to the broadcast list
Cancel void Cancel() Cancel scene playback
EstimateLength float EstimateLength() Returns length of this scene in seconds.
FindCamera handle FindCamera() Get the camera
FindNamedEntity handle FindNamedEntity(string string_1) given an entity reference, such as !target, get actual entity from scene object
IsPaused bool IsPaused() If this scene is currently paused.
IsPlayingBack bool IsPlayingBack() If this scene is currently playing.
LoadSceneFromString bool LoadSceneFromString(string string_1, string string_2) given a dummy scene name and a vcd string, load the scene
RemoveBroadcastTeamTarget void RemoveBroadcastTeamTarget(int int_1) Removes a team (by index) from the broadcast list
Start void Start(handle handle_1) Start scene playback, takes activatorEntity as param

CScriptHeroList

Global accessor variable: HeroList

Function Signature Description
GetAllHeroes table GetAllHeroes() Returns all the heroes in the world
GetHero handle GetHero(int int_1) Get the Nth hero in the Hero List
GetHeroCount int GetHeroCount() Returns the number of heroes in the world

CScriptKeyValues

No Description Set

Function Signature Description
GetValue table GetValue(string string_1) Reads a spawn key

CScriptParticleManager

Global accessor variable: ParticleManager

Function Signature Description
CreateParticle int CreateParticle(string string_1, int int_2, handle handle_3) Creates a new particle effect
CreateParticleForPlayer int CreateParticleForPlayer(string string_1, int int_2, handle handle_3, handle handle_4) Creates a new particle effect that only plays for the specified player
CreateParticleForTeam int CreateParticleForTeam(string string_1, int int_2, handle handle_3, int int_4) Creates a new particle effect that only plays for the specified team
DestroyParticle void DestroyParticle(int int_1, bool bool_2) (int index, bool bDestroyImmediately) - Destroy a particle, if bDestroyImmediately destroy it without playing end caps.
GetParticleReplacement string GetParticleReplacement(string string_1, handle handle_2)
ReleaseParticleIndex void ReleaseParticleIndex(int int_1) Frees the specified particle index
SetParticleAlwaysSimulate void SetParticleAlwaysSimulate(int int_1)
SetParticleControl void SetParticleControl(int int_1, int int_2, Vector Vector_3) Set the control point data for a control on a particle effect
SetParticleControlEnt void SetParticleControlEnt(int int_1, int int_2, handle handle_3, int int_4, string string_5, Vector Vector_6, bool bool_7)
SetParticleControlFallback void SetParticleControlFallback(int int_1, int int_2, Vector Vector_3) (int iIndex, int iPoint, Vector vecPosition)
SetParticleControlForward void SetParticleControlForward(int int_1, int int_2, Vector Vector_3) (int nFXIndex, int nPoint, vForward)
SetParticleControlOrientation void SetParticleControlOrientation(int int_1, int int_2, Vector Vector_3, Vector Vector_4, Vector Vector_5) (int nFXIndex, int nPoint, vForward, vRight, vUp) - Set the orientation for a control on a particle effect (NOTE: This is left handed -- bad!!)
SetParticleControlOrientationFLU void SetParticleControlOrientationFLU(int int_1, int int_2, Vector Vector_3, Vector Vector_4, Vector Vector_5) (int nFXIndex, int nPoint, Vector vecForward, Vector vecLeft, Vector vecUp) - Set the orientation for a control on a particle effect
SetParticleFoWProperties void SetParticleFoWProperties(int int_1, int int_2, int int_3, float float_4) int nfxindex, int nPoint, int nPoint2, float flRadius
SetParticleShouldCheckFoW bool SetParticleShouldCheckFoW(int int_1, bool bool_2) int nfxindex, bool bCheckFoW

CScriptPrecacheContext

No Description Set

Function Signature Description
AddResource void AddResource(string string_1) Precaches a specific resource
GetValue table GetValue(string string_1) Reads a spawn key

Convars

extends Convars

Global accessor variable: Convars

Function Signature Description
GetBool table GetBool(string string_1) GetBool(name) : returns the convar as a boolean flag.
GetCommandClient handle GetCommandClient() GetCommandClient() : returns the player who issued this console command.
GetDOTACommandClient handle GetDOTACommandClient() GetDOTACommandClient() : returns the DOTA player who issued this console command.
GetFloat table GetFloat(string string_1) GetFloat(name) : returns the convar as a float. May return null if no such convar.
GetInt table GetInt(string string_1) GetInt(name) : returns the convar as an int. May return null if no such convar.
GetStr table GetStr(string string_1) GetStr(name) : returns the convar as a string. May return null if no such convar.
RegisterCommand void RegisterCommand(string string_1, handle handle_2, string string_3, int int_4) RegisterCommand(name, fn, helpString, flags) : register a console command.
RegisterConvar void RegisterConvar(string string_1, string string_2, string string_3, int int_4) RegisterConvar(name, defaultValue, helpString, flags): register a new console variable.
SetBool void SetBool(string string_1, bool bool_2) SetBool(name, val) : sets the value of the convar to the bool.
SetFloat void SetFloat(string string_1, float float_2) SetFloat(name, val) : sets the value of the convar to the float.
SetInt void SetInt(string string_1, int int_2) SetInt(name, val) : sets the value of the convar to the int.
SetStr void SetStr(string string_1, string string_2) SetStr(name, val) : sets the value of the convar to the string.

GlobalSys

extends GlobalSys

No Description Set

Function Signature Description
CommandLineCheck table CommandLineCheck(string string_1) CommandLineCheck(name) : returns true if the command line param was used, otherwise false.
CommandLineFloat table CommandLineFloat(string string_1, float float_2) CommandLineFloat(name) : returns the command line param as a float.
CommandLineInt table CommandLineInt(string string_1, int int_2) CommandLineInt(name) : returns the command line param as an int.
CommandLineStr table CommandLineStr(string string_1, string string_2) CommandLineStr(name) : returns the command line param as a string.

GridNav

extends GridNav

No Description Set

Function Signature Description
CanFindPath bool CanFindPath(Vector Vector_1, Vector Vector_2) Determine if it is possible to reach the specified end point from the specified start point. bool (vStart, vEnd)
DestroyTreesAroundPoint void DestroyTreesAroundPoint(Vector Vector_1, float float_2, bool bool_3) Destroy all trees in the area(vPosition, flRadius, bFullCollision
FindPathLength float FindPathLength(Vector Vector_1, Vector Vector_2) Find a path between the two points an return the length of the path. If there is not a path between the points the returned value will be -1. float (vStart, vEnd )
GetAllTreesAroundPoint table GetAllTreesAroundPoint(Vector Vector_1, float float_2, bool bool_3) Returns a table full of tree HSCRIPTS (vPosition, flRadius, bFullCollision).
GridPosToWorldCenterX float GridPosToWorldCenterX(int int_1) Get the X position of the center of a given X index
GridPosToWorldCenterY float GridPosToWorldCenterY(int int_1) Get the Y position of the center of a given Y index
IsBlocked bool IsBlocked(Vector Vector_1) Checks whether the given position is blocked
IsNearbyTree bool IsNearbyTree(Vector Vector_1, float float_2, bool bool_3) (position, radius, checkFullTreeRadius?) Checks whether there are any trees overlapping the given point
IsTraversable bool IsTraversable(Vector Vector_1) Checks whether the given position is traversable
RegrowAllTrees void RegrowAllTrees() Causes all trees in the map to regrow
WorldToGridPosX int WorldToGridPosX(float float_1) Get the X index of a given world X position
WorldToGridPosY int WorldToGridPosY(float float_1) Get the Y index of a given world Y position

ProjectileManager

extends ProjectileManager

No Description Set

Function Signature Description
ChangeTrackingProjectileSpeed void ChangeTrackingProjectileSpeed(handle handle_1, int int_2) Update speed
CreateLinearProjectile int CreateLinearProjectile(handle handle_1) Creates a linear projectile and returns the projectile ID
CreateTrackingProjectile void CreateTrackingProjectile(handle handle_1) Creates a tracking projectile
DestroyLinearProjectile void DestroyLinearProjectile(int int_1) Destroys the linear projectile matching the argument ID
GetLinearProjectileLocation Vector GetLinearProjectileLocation(int int_1) Returns current location of projectile
GetLinearProjectileRadius float GetLinearProjectileRadius(int int_1) Returns current radius of projectile
GetLinearProjectileVelocity Vector GetLinearProjectileVelocity(int int_1) Returns a vector representing the current velocity of the projectile.
ProjectileDodge void ProjectileDodge(handle handle_1) Makes the specified unit dodge projectiles
UpdateLinearProjectileDirection void UpdateLinearProjectileDirection(int int_1, Vector Vector_2, float float_3) Update velocity

SteamInfo

extends SteamInfo

No Description Set

Function Signature Description
IsPublicUniverse bool IsPublicUniverse() Is the script connected to the public Steam universe


Constants

AbilityLearnResult_t

Name Value Description
ABILITY_CAN_BE_UPGRADED 0
ABILITY_CANNOT_BE_UPGRADED_NOT_UPGRADABLE 1
ABILITY_CANNOT_BE_UPGRADED_AT_MAX 2
ABILITY_CANNOT_BE_UPGRADED_REQUIRES_LEVEL 3
ABILITY_NOT_LEARNABLE 4

AttributeDerivedStats

Name Value Description
DOTA_ATTRIBUTE_STRENGTH_HP 1
DOTA_ATTRIBUTE_STRENGTH_HP_REGEN 2
DOTA_ATTRIBUTE_AGILITY_DAMAGE 3
DOTA_ATTRIBUTE_AGILITY_ARMOR 4
DOTA_ATTRIBUTE_AGILITY_ATTACK_SPEED 5
DOTA_ATTRIBUTE_INTELLIGENCE_DAMAGE 6
DOTA_ATTRIBUTE_INTELLIGENCE_MANA 7
DOTA_ATTRIBUTE_INTELLIGENCE_MANA_REGEN 8

Attributes

Name Value Description
DOTA_ATTRIBUTE_INVALID -1
DOTA_ATTRIBUTE_STRENGTH 0 Strength attribute.
DOTA_ATTRIBUTE_AGILITY 1 Agility attribute.
DOTA_ATTRIBUTE_INTELLECT 2 Intelligence attribute.
DOTA_ATTRIBUTE_MAX 3

DAMAGE_TYPES

Name Value Description
DAMAGE_TYPE_NONE 0
DAMAGE_TYPE_PHYSICAL 1 Physical, reduced by armor.
DAMAGE_TYPE_MAGICAL 2 Magical, reduced by magic resistance.
DAMAGE_TYPE_PURE 4 Pure, not reduced by anything.
DAMAGE_TYPE_ALL 7
DAMAGE_TYPE_HP_REMOVAL 8 Deprecated.

DOTAAbilitySpeakTrigger_t

Name Value Description
DOTA_ABILITY_SPEAK_START_ACTION_PHASE 0
DOTA_ABILITY_SPEAK_CAST 1

DOTADamageFlag_t

Name Value Description
DOTA_DAMAGE_FLAG_NONE 0
DOTA_DAMAGE_FLAG_IGNORES_MAGIC_ARMOR 1
DOTA_DAMAGE_FLAG_IGNORES_PHYSICAL_ARMOR 2
DOTA_DAMAGE_FLAG_BYPASSES_INVULNERABILITY 4
DOTA_DAMAGE_FLAG_BYPASSES_BLOCK 8
DOTA_DAMAGE_FLAG_REFLECTION 16
DOTA_DAMAGE_FLAG_HPLOSS 32
DOTA_DAMAGE_FLAG_NO_DIRECTOR_EVENT 64
DOTA_DAMAGE_FLAG_NON_LETHAL 128
DOTA_DAMAGE_FLAG_USE_COMBAT_PROFICIENCY 256
DOTA_DAMAGE_FLAG_NO_DAMAGE_MULTIPLIERS 512

DOTAHUDVisibility_t

Name Value Description
DOTA_HUD_VISIBILITY_TOP_TIMEOFDAY 0
DOTA_HUD_VISIBILITY_TOP_HEROES 1
DOTA_HUD_VISIBILITY_TOP_SCOREBOARD 2
DOTA_HUD_VISIBILITY_ACTION_PANEL 3
DOTA_HUD_VISIBILITY_ACTION_MINIMAP 4
DOTA_HUD_VISIBILITY_INVENTORY_PANEL 5
DOTA_HUD_VISIBILITY_INVENTORY_SHOP 6
DOTA_HUD_VISIBILITY_INVENTORY_ITEMS 7
DOTA_HUD_VISIBILITY_INVENTORY_QUICKBUY 8
DOTA_HUD_VISIBILITY_INVENTORY_COURIER 9
DOTA_HUD_VISIBILITY_INVENTORY_PROTECT 10
DOTA_HUD_VISIBILITY_INVENTORY_GOLD 11
DOTA_HUD_VISIBILITY_SHOP_SUGGESTEDITEMS 12
DOTA_HUD_VISIBILITY_COUNT 13

DOTAInventoryFlags_t

Name Value Description
DOTA_INVENTORY_ALLOW_NONE 0
DOTA_INVENTORY_ALLOW_MAIN 1
DOTA_INVENTORY_ALLOW_STASH 2
DOTA_INVENTORY_ALL_ACCESS 3
DOTA_INVENTORY_ALLOW_DROP_ON_GROUND 4
DOTA_INVENTORY_ALLOW_DROP_AT_FOUNTAIN 8
DOTA_INVENTORY_LIMIT_DROP_ON_GROUND 16

DOTAMinimapEvent_t

Name Value Description
DOTA_MINIMAP_EVENT_ANCIENT_UNDER_ATTACK 2
DOTA_MINIMAP_EVENT_BASE_UNDER_ATTACK 4
DOTA_MINIMAP_EVENT_BASE_GLYPHED 8
DOTA_MINIMAP_EVENT_TEAMMATE_UNDER_ATTACK 16
DOTA_MINIMAP_EVENT_TEAMMATE_TELEPORTING 32
DOTA_MINIMAP_EVENT_TEAMMATE_DIED 64
DOTA_MINIMAP_EVENT_TUTORIAL_TASK_ACTIVE 128
DOTA_MINIMAP_EVENT_TUTORIAL_TASK_FINISHED 256
DOTA_MINIMAP_EVENT_HINT_LOCATION 512
DOTA_MINIMAP_EVENT_ENEMY_TELEPORTING 1024
DOTA_MINIMAP_EVENT_CANCEL_TELEPORTING 2048

DOTAModifierAttribute_t

Name Value Description
MODIFIER_ATTRIBUTE_NONE 0
MODIFIER_ATTRIBUTE_PERMANENT 1 Modifier passively remains until strictly removed.
MODIFIER_ATTRIBUTE_MULTIPLE 2 Allows modifier to stack with itself.
MODIFIER_ATTRIBUTE_IGNORE_INVULNERABLE 4 Allows modifier to be assigned to invulnerable entities.

DOTAMusicStatus_t

Name Value Description
DOTA_MUSIC_STATUS_NONE 0
DOTA_MUSIC_STATUS_EXPLORATION 1
DOTA_MUSIC_STATUS_BATTLE 2
DOTA_MUSIC_STATUS_PRE_GAME_EXPLORATION 3
DOTA_MUSIC_STATUS_DEAD 4
DOTA_MUSIC_STATUS_LAST 5

DOTASlotType_t

Name Value Description
DOTA_LOADOUT_TYPE_INVALID -1
DOTA_LOADOUT_TYPE_WEAPON 0
DOTA_LOADOUT_TYPE_OFFHAND_WEAPON 1
DOTA_LOADOUT_TYPE_WEAPON2 2
DOTA_LOADOUT_TYPE_OFFHAND_WEAPON2 3
DOTA_LOADOUT_TYPE_HEAD 4
DOTA_LOADOUT_TYPE_SHOULDER 5
DOTA_LOADOUT_TYPE_ARMS 6
DOTA_LOADOUT_TYPE_ARMOR 7
DOTA_LOADOUT_TYPE_BELT 8
DOTA_LOADOUT_TYPE_NECK 9
DOTA_LOADOUT_TYPE_BACK 10
DOTA_LOADOUT_TYPE_LEGS 11
DOTA_LOADOUT_TYPE_GLOVES 12
DOTA_LOADOUT_TYPE_TAIL 13
DOTA_LOADOUT_TYPE_MISC 14
DOTA_LOADOUT_TYPE_BODY_HEAD 15
DOTA_LOADOUT_TYPE_MOUNT 16
DOTA_LOADOUT_TYPE_SUMMON 17
DOTA_LOADOUT_TYPE_SHAPESHIFT 18
DOTA_LOADOUT_TYPE_TAUNT 19
DOTA_LOADOUT_TYPE_AMBIENT_EFFECTS 20
DOTA_LOADOUT_TYPE_ABILITY_ATTACK 21
DOTA_LOADOUT_TYPE_ABILITY1 22
DOTA_LOADOUT_TYPE_ABILITY2 23
DOTA_LOADOUT_TYPE_ABILITY3 24
DOTA_LOADOUT_TYPE_ABILITY4 25
DOTA_LOADOUT_TYPE_ABILITY_ULTIMATE 26
DOTA_LOADOUT_TYPE_VOICE 27
DOTA_LOADOUT_TYPE_ACTION_ITEM 28
DOTA_PLAYER_LOADOUT_START 28
DOTA_LOADOUT_TYPE_COURIER 29
DOTA_LOADOUT_TYPE_ANNOUNCER 30
DOTA_LOADOUT_TYPE_MEGA_KILLS 31
DOTA_LOADOUT_TYPE_MUSIC 32
DOTA_LOADOUT_TYPE_WARD 33
DOTA_LOADOUT_TYPE_HUD_SKIN 34
DOTA_LOADOUT_TYPE_LOADING_SCREEN 35
DOTA_LOADOUT_TYPE_WEATHER 36
DOTA_LOADOUT_TYPE_HEROIC_STATUE 37
DOTA_LOADOUT_TYPE_MULTIKILL_BANNER 38
DOTA_LOADOUT_TYPE_CURSOR_PACK 39
DOTA_LOADOUT_TYPE_TELEPORT_EFFECT 40
DOTA_LOADOUT_TYPE_BLINK_EFFECT 41
DOTA_LOADOUT_TYPE_TEAM_SHOWCASE 42
DOTA_PLAYER_LOADOUT_END 42
DOTA_LOADOUT_TYPE_NONE 43
DOTA_LOADOUT_TYPE_COUNT 44

DOTASpeechType_t

Name Value Description
DOTA_SPEECH_USER_INVALID 0
DOTA_SPEECH_USER_SINGLE 1
DOTA_SPEECH_USER_TEAM 2
DOTA_SPEECH_USER_TEAM_NEARBY 3
DOTA_SPEECH_USER_NEARBY 4
DOTA_SPEECH_USER_ALL 5
DOTA_SPEECH_GOOD_TEAM 6
DOTA_SPEECH_BAD_TEAM 7
DOTA_SPEECH_SPECTATOR 8
DOTA_SPEECH_RECIPIENT_TYPE_MAX 9

DOTATeam_t

Name Value Description
DOTA_TEAM_FIRST 2
DOTA_TEAM_GOODGUYS 2 Radiant team.
DOTA_TEAM_BADGUYS 3 Dire team.
DOTA_TEAM_NEUTRALS 4 Neutral.
DOTA_TEAM_NOTEAM 5
DOTA_TEAM_CUSTOM_1 6
DOTA_TEAM_CUSTOM_MIN 6
DOTA_TEAM_CUSTOM_2 7
DOTA_TEAM_CUSTOM_3 8
DOTA_TEAM_CUSTOM_COUNT 8
DOTA_TEAM_CUSTOM_4 9
DOTA_TEAM_CUSTOM_5 10
DOTA_TEAM_CUSTOM_6 11
DOTA_TEAM_CUSTOM_7 12
DOTA_TEAM_CUSTOM_8 13
DOTA_TEAM_CUSTOM_MAX 13
DOTA_TEAM_COUNT 14

DOTAUnitAttackCapability_t

Name Value Description
DOTA_UNIT_CAP_NO_ATTACK 0 Unit is unable to attack in any way.
DOTA_UNIT_CAP_MELEE_ATTACK 1 Unit attacks are classified as melee (no uphill miss chance, attacks on enemies that are 350 over the attack range automatically miss).
DOTA_UNIT_CAP_RANGED_ATTACK 2 Unit attacks are classified as ranged (can miss on uphill, disjointable, has projectile).

DOTAUnitMoveCapability_t

Name Value Description
DOTA_UNIT_CAP_MOVE_NONE 0 Unit cannot move in any way.
DOTA_UNIT_CAP_MOVE_GROUND 1 Unit move while being obstructed by the terrain.
DOTA_UNIT_CAP_MOVE_FLY 2 Unit ignores terrain.

DOTA_UNIT_ORDERS

Name Value Description
DOTA_UNIT_ORDER_NONE 0
DOTA_UNIT_ORDER_MOVE_TO_POSITION 1
DOTA_UNIT_ORDER_MOVE_TO_TARGET 2
DOTA_UNIT_ORDER_ATTACK_MOVE 3
DOTA_UNIT_ORDER_ATTACK_TARGET 4
DOTA_UNIT_ORDER_CAST_POSITION 5
DOTA_UNIT_ORDER_CAST_TARGET 6
DOTA_UNIT_ORDER_CAST_TARGET_TREE 7
DOTA_UNIT_ORDER_CAST_NO_TARGET 8
DOTA_UNIT_ORDER_CAST_TOGGLE 9
DOTA_UNIT_ORDER_HOLD_POSITION 10
DOTA_UNIT_ORDER_TRAIN_ABILITY 11
DOTA_UNIT_ORDER_DROP_ITEM 12
DOTA_UNIT_ORDER_GIVE_ITEM 13
DOTA_UNIT_ORDER_PICKUP_ITEM 14
DOTA_UNIT_ORDER_PICKUP_RUNE 15
DOTA_UNIT_ORDER_PURCHASE_ITEM 16
DOTA_UNIT_ORDER_SELL_ITEM 17
DOTA_UNIT_ORDER_DISASSEMBLE_ITEM 18
DOTA_UNIT_ORDER_MOVE_ITEM 19
DOTA_UNIT_ORDER_CAST_TOGGLE_AUTO 20
DOTA_UNIT_ORDER_STOP 21
DOTA_UNIT_ORDER_TAUNT 22
DOTA_UNIT_ORDER_BUYBACK 23
DOTA_UNIT_ORDER_GLYPH 24
DOTA_UNIT_ORDER_EJECT_ITEM_FROM_STASH 25
DOTA_UNIT_ORDER_CAST_RUNE 26

DOTA_ABILITY_BEHAVIOR

Name Value Description
DOTA_ABILITY_BEHAVIOR_NONE 0
DOTA_ABILITY_BEHAVIOR_HIDDEN 1 Ability doesn't appear on the HUD.
DOTA_ABILITY_BEHAVIOR_PASSIVE 2 Ability is classified as passive, and cannot be pressed.
DOTA_ABILITY_BEHAVIOR_NO_TARGET 4 Ability fires immediately when pressed.
DOTA_ABILITY_BEHAVIOR_UNIT_TARGET 8 Ability needs a unit target to be cast.
DOTA_ABILITY_BEHAVIOR_POINT 16 Ability needs a target point to be cast.
DOTA_ABILITY_BEHAVIOR_AOE 32 Ability is considered an AoE ability, respecting "AOERadius" KV when drawing the AoE overlay.
DOTA_ABILITY_BEHAVIOR_NOT_LEARNABLE 64 Ability cannot be skilled.
DOTA_ABILITY_BEHAVIOR_CHANNELLED 128 Ability is considered a channeling ability.
DOTA_ABILITY_BEHAVIOR_ITEM 256
DOTA_ABILITY_BEHAVIOR_TOGGLE 512 Ability can be toggled on and off.
DOTA_ABILITY_BEHAVIOR_DIRECTIONAL 1024
DOTA_ABILITY_BEHAVIOR_IMMEDIATE 2048 Ability ignores cast points and is fired as soon as the skill is pressed.
DOTA_ABILITY_BEHAVIOR_AUTOCAST 4096 Ability can be set to auto cast.
DOTA_ABILITY_BEHAVIOR_OPTIONAL_UNIT_TARGET 8192
DOTA_ABILITY_BEHAVIOR_OPTIONAL_POINT 16384
DOTA_ABILITY_BEHAVIOR_OPTIONAL_NO_TARGET 32768
DOTA_ABILITY_BEHAVIOR_AURA 65536 Ability is considered an aura.
DOTA_ABILITY_BEHAVIOR_ATTACK 131072
DOTA_ABILITY_BEHAVIOR_DONT_RESUME_MOVEMENT 262144 After casting that ability, the caster won't resume its last order.
DOTA_ABILITY_BEHAVIOR_ROOT_DISABLES 524288 Ability cannot be cast while rooted.
DOTA_ABILITY_BEHAVIOR_UNRESTRICTED 1048576
DOTA_ABILITY_BEHAVIOR_IGNORE_PSEUDO_QUEUE 2097152
DOTA_ABILITY_BEHAVIOR_IGNORE_CHANNEL 4194304
DOTA_ABILITY_BEHAVIOR_DONT_CANCEL_MOVEMENT 8388608 Ability doesn't stop the caster to be used.
DOTA_ABILITY_BEHAVIOR_DONT_ALERT_TARGET 16777216
DOTA_ABILITY_BEHAVIOR_DONT_RESUME_ATTACK 33554432 After using ability, caster won't proceed to attack the nearby enemy (even if set otherwise in options)
DOTA_ABILITY_BEHAVIOR_NORMAL_WHEN_STOLEN 67108864
DOTA_ABILITY_BEHAVIOR_IGNORE_BACKSWING 134217728 Ability ignores backswing animation.
DOTA_ABILITY_BEHAVIOR_RUNE_TARGET 268435456 Ability can target runes.
DOTA_ABILITY_BEHAVIOR_DONT_CANCEL_CHANNEL 536870912 Ability can be used without cancelling the current channel.
DOTA_ABILITY_LAST_BEHAVIOR 536870912

DOTA_HeroPickState

Name Value Description
DOTA_HEROPICK_STATE_NONE 0
DOTA_HEROPICK_STATE_AP_SELECT 1
DOTA_HEROPICK_STATE_SD_SELECT 2
DOTA_HEROPICK_STATE_INTRO_SELECT 3
DOTA_HEROPICK_STATE_RD_SELECT 4
DOTA_HEROPICK_STATE_CM_INTRO 5
DOTA_HEROPICK_STATE_CM_CAPTAINPICK 6
DOTA_HEROPICK_STATE_CM_BAN1 7
DOTA_HEROPICK_STATE_CM_BAN2 8
DOTA_HEROPICK_STATE_CM_BAN3 9
DOTA_HEROPICK_STATE_CM_BAN4 10
DOTA_HEROPICK_STATE_CM_BAN5 11
DOTA_HEROPICK_STATE_CM_BAN6 12
DOTA_HEROPICK_STATE_CM_BAN7 13
DOTA_HEROPICK_STATE_CM_BAN8 14
DOTA_HEROPICK_STATE_CM_BAN9 15
DOTA_HEROPICK_STATE_CM_BAN10 16
DOTA_HEROPICK_STATE_CM_SELECT1 17
DOTA_HEROPICK_STATE_CM_SELECT2 18
DOTA_HEROPICK_STATE_CM_SELECT3 19
DOTA_HEROPICK_STATE_CM_SELECT4 20
DOTA_HEROPICK_STATE_CM_SELECT5 21
DOTA_HEROPICK_STATE_CM_SELECT6 22
DOTA_HEROPICK_STATE_CM_SELECT7 23
DOTA_HEROPICK_STATE_CM_SELECT8 24
DOTA_HEROPICK_STATE_CM_SELECT9 25
DOTA_HEROPICK_STATE_CM_SELECT10 26
DOTA_HEROPICK_STATE_CM_PICK 27
DOTA_HEROPICK_STATE_AR_SELECT 28
DOTA_HEROPICK_STATE_MO_SELECT 29
DOTA_HEROPICK_STATE_FH_SELECT 30
DOTA_HEROPICK_STATE_CD_INTRO 31
DOTA_HEROPICK_STATE_CD_CAPTAINPICK 32
DOTA_HEROPICK_STATE_CD_BAN1 33
DOTA_HEROPICK_STATE_CD_BAN2 34
DOTA_HEROPICK_STATE_CD_BAN3 35
DOTA_HEROPICK_STATE_CD_BAN4 36
DOTA_HEROPICK_STATE_CD_BAN5 37
DOTA_HEROPICK_STATE_CD_BAN6 38
DOTA_HEROPICK_STATE_CD_SELECT1 39
DOTA_HEROPICK_STATE_CD_SELECT2 40
DOTA_HEROPICK_STATE_CD_SELECT3 41
DOTA_HEROPICK_STATE_CD_SELECT4 42
DOTA_HEROPICK_STATE_CD_SELECT5 43
DOTA_HEROPICK_STATE_CD_SELECT6 44
DOTA_HEROPICK_STATE_CD_SELECT7 45
DOTA_HEROPICK_STATE_CD_SELECT8 46
DOTA_HEROPICK_STATE_CD_SELECT9 47
DOTA_HEROPICK_STATE_CD_SELECT10 48
DOTA_HEROPICK_STATE_CD_PICK 49
DOTA_HEROPICK_STATE_BD_SELECT 50
DOTA_HERO_PICK_STATE_ABILITY_DRAFT_SELECT 51
DOTA_HERO_PICK_STATE_ARDM_SELECT 52
DOTA_HEROPICK_STATE_ALL_DRAFT_SELECT 53
DOTA_HERO_PICK_STATE_CUSTOMGAME_SELECT 54
DOTA_HEROPICK_STATE_COUNT 55

DOTA_MOTION_CONTROLLER_PRIORITY

Name Value Description
DOTA_MOTION_CONTROLLER_PRIORITY_LOWEST 0
DOTA_MOTION_CONTROLLER_PRIORITY_LOW 1
DOTA_MOTION_CONTROLLER_PRIORITY_MEDIUM 2
DOTA_MOTION_CONTROLLER_PRIORITY_HIGH 3
DOTA_MOTION_CONTROLLER_PRIORITY_HIGHEST 4

DOTA_RUNES

Name Value Description
DOTA_RUNE_INVALID -1
DOTA_RUNE_DOUBLEDAMAGE 0
DOTA_RUNE_HASTE 1
DOTA_RUNE_ILLUSION 2
DOTA_RUNE_INVISIBILITY 3
DOTA_RUNE_REGENERATION 4
DOTA_RUNE_BOUNTY 5
DOTA_RUNE_COUNT 6
DOTA_RUNE_HAUNTED 7
DOTA_RUNE_SPOOKY 8
DOTA_RUNE_RAPIER 9
DOTA_RUNE_TURBO 10
DOTA_RUNE_MYSTERY 11
DOTA_HALLOWEEN_RUNE_COUNT 12

DOTA_UNIT_TARGET_FLAGS

Name Value Description
DOTA_UNIT_TARGET_FLAG_NONE 0 No special flag rules.
DOTA_UNIT_TARGET_FLAG_RANGED_ONLY 2 Targets only ranged units and heroes.
DOTA_UNIT_TARGET_FLAG_MELEE_ONLY 4 Targets only melee units and heroes.
DOTA_UNIT_TARGET_FLAG_DEAD 8 Targets dead units and heroes as well.
DOTA_UNIT_TARGET_FLAG_MAGIC_IMMUNE_ENEMIES 16 Targets magic immune enemies as well.
DOTA_UNIT_TARGET_FLAG_NOT_MAGIC_IMMUNE_ALLIES 32 Targets non-magic immune allies as well.
DOTA_UNIT_TARGET_FLAG_INVULNERABLE 64 Targets invulnerable units/heroes as well.
DOTA_UNIT_TARGET_FLAG_FOW_VISIBLE 128 Targets only those that are visible through the fog of war.
DOTA_UNIT_TARGET_FLAG_NO_INVIS 256 Targets only those that are not invisible.
DOTA_UNIT_TARGET_FLAG_NOT_ANCIENTS 512 Targets only those that are not considered ancients.
DOTA_UNIT_TARGET_FLAG_PLAYER_CONTROLLED 1024 Targets player controlled units (ignores the rest of basic units).
DOTA_UNIT_TARGET_FLAG_NOT_DOMINATED 2048 Targets only those that are not being dominated.
DOTA_UNIT_TARGET_FLAG_NOT_SUMMONED 4096 Targets only those that are not summoned creatures.
DOTA_UNIT_TARGET_FLAG_NOT_ILLUSIONS 8192 Targets only those that are not illusions.
DOTA_UNIT_TARGET_FLAG_NOT_ATTACK_IMMUNE 16384 Targets only those that are not immune to attacks.
DOTA_UNIT_TARGET_FLAG_MANA_ONLY 32768 Targets only those that has a mana bar.
DOTA_UNIT_TARGET_FLAG_CHECK_DISABLE_HELP 65536
DOTA_UNIT_TARGET_FLAG_NOT_CREEP_HERO 131072 Targets only those that are not considered creep heroes.
DOTA_UNIT_TARGET_FLAG_OUT_OF_WORLD 262144 Targets units/heroes that are hidden as well.
DOTA_UNIT_TARGET_FLAG_NOT_NIGHTMARED 524288 Targets only those that are not nightmared.

DOTA_UNIT_TARGET_TEAM

Name Value Description
DOTA_UNIT_TARGET_TEAM_NONE 0
DOTA_UNIT_TARGET_TEAM_FRIENDLY 1 Targets all those that are in the same team as the team that was declared the source.
DOTA_UNIT_TARGET_TEAM_ENEMY 2 Targets all those that are not in the same team as the team that was declared the source.
DOTA_UNIT_TARGET_TEAM_BOTH 3 Targets all entities from every team.
DOTA_UNIT_TARGET_TEAM_CUSTOM 4

DOTA_UNIT_TARGET_TYPE

Name Value Description
DOTA_UNIT_TARGET_NONE 0
DOTA_UNIT_TARGET_HERO 1 Targets heroes.
DOTA_UNIT_TARGET_CREEP 2 Targets creeps.
DOTA_UNIT_TARGET_BUILDING 4 Targets buildings.
DOTA_UNIT_TARGET_MECHANICAL 8 Deprecated.
DOTA_UNIT_TARGET_COURIER 16 Targets couriers.
DOTA_UNIT_TARGET_BASIC 18 Targets units. (not necessarily creeps)
DOTA_UNIT_TARGET_OTHER 32
DOTA_UNIT_TARGET_ALL 63 Targets everything (including buildings, couriers, Shrines etc)
DOTA_UNIT_TARGET_TREE 64 Targets trees.
DOTA_UNIT_TARGET_CUSTOM 128

EDOTA_ModifyGold_Reason

Name Value Description
DOTA_ModifyGold_Unspecified 0
DOTA_ModifyGold_Death 1
DOTA_ModifyGold_Buyback 2
DOTA_ModifyGold_PurchaseConsumable 3
DOTA_ModifyGold_PurchaseItem 4
DOTA_ModifyGold_AbandonedRedistribute 5
DOTA_ModifyGold_SellItem 6
DOTA_ModifyGold_AbilityCost 7
DOTA_ModifyGold_CheatCommand 8
DOTA_ModifyGold_SelectionPenalty 9
DOTA_ModifyGold_GameTick 10
DOTA_ModifyGold_Building 11
DOTA_ModifyGold_HeroKill 12
DOTA_ModifyGold_CreepKill 13
DOTA_ModifyGold_RoshanKill 14
DOTA_ModifyGold_CourierKill 15
DOTA_ModifyGold_SharedGold 16

EDOTA_ModifyXP_Reason

Name Value Description
DOTA_ModifyXP_Unspecified 0
DOTA_ModifyXP_HeroKill 1
DOTA_ModifyXP_CreepKill 2
DOTA_ModifyXP_RoshanKill 3

EShareAbility

Name Value Description
ITEM_FULLY_SHAREABLE 0
ITEM_PARTIALLY_SHAREABLE 1
ITEM_NOT_SHAREABLE 2

LuaModifierType

Name Value Description
LUA_MODIFIER_MOTION_NONE 0
LUA_MODIFIER_MOTION_HORIZONTAL 1
LUA_MODIFIER_MOTION_VERTICAL 2
LUA_MODIFIER_MOTION_BOTH 3
LUA_MODIFIER_INVALID 4

ModifierPriority

Name Value Description
MODIFIER_PRIORITY_LOW 0
MODIFIER_PRIORITY_NORMAL 1
MODIFIER_PRIORITY_HIGH 2
MODIFIER_PRIORITY_ULTRA 3
MODIFIER_PRIORITY_SUPER_ULTRA 4

ParticleAttachment_t

Name Value Description
PATTACH_INVALID -1
PATTACH_ABSORIGIN 0 Attaches the particle to the an origin.
PATTACH_ABSORIGIN_FOLLOW 1 Attaches the particle to an origin, and causes it to follow the unit that is considered the source of the particle.
PATTACH_CUSTOMORIGIN 2 Attaches the particle to a custom origin. (Requires passing a vector to the Control points)
PATTACH_CUSTOMORIGIN_FOLLOW 3
PATTACH_POINT 4
PATTACH_POINT_FOLLOW 5
PATTACH_EYES_FOLLOW 6 Attaches the particle to the "eyes" of the entity.
PATTACH_OVERHEAD_FOLLOW 7 Attaches the particle to be set above the head of the entity.
PATTACH_WORLDORIGIN 8 Attaches the particle to the ground.
PATTACH_ROOTBONE_FOLLOW 9
PATTACH_RENDERORIGIN_FOLLOW 10
PATTACH_MAIN_VIEW 11
PATTACH_WATERWAKE 12
MAX_PATTACH_TYPES 13

UnitFilterResult

Name Value Description
UF_SUCCESS 0
UF_FAIL_FRIENDLY 1
UF_FAIL_ENEMY 2
UF_FAIL_HERO 3
UF_FAIL_CONSIDERED_HERO 4
UF_FAIL_CREEP 5
UF_FAIL_BUILDING 6
UF_FAIL_MECHANICAL 7
UF_FAIL_COURIER 8
UF_FAIL_OTHER 9
UF_FAIL_ANCIENT 10
UF_FAIL_ILLUSION 11
UF_FAIL_SUMMONED 12
UF_FAIL_DOMINATED 13
UF_FAIL_MELEE 14
UF_FAIL_RANGED 15
UF_FAIL_DEAD 16
UF_FAIL_MAGIC_IMMUNE_ALLY 17
UF_FAIL_MAGIC_IMMUNE_ENEMY 18
UF_FAIL_INVULNERABLE 19
UF_FAIL_IN_FOW 20
UF_FAIL_INVISIBLE 21
UF_FAIL_NOT_PLAYER_CONTROLLED 22
UF_FAIL_ATTACK_IMMUNE 23
UF_FAIL_CUSTOM 24
UF_FAIL_INVALID_LOCATION 25
UF_FAIL_DISABLE_HELP 26
UF_FAIL_OUT_OF_WORLD 27
UF_FAIL_NIGHTMARED 28

modifierstate

Name Value Description
MODIFIER_STATE_ROOTED 0 Set to true to cause the parent to become rooted.
MODIFIER_STATE_DISARMED 1 Set to true to cause the parent to become disarmed.
MODIFIER_STATE_ATTACK_IMMUNE 2 Set to true to cause the parent to become attack immune.
MODIFIER_STATE_SILENCED 3 Set to true to cause the parent to become silenced.
MODIFIER_STATE_MUTED 4 Set to true to cause the parent to become muted.
MODIFIER_STATE_STUNNED 5 Set to true to cause the parent to become stunned.
MODIFIER_STATE_HEXED 6 Set to true to cause the parent to become hexed.
MODIFIER_STATE_INVISIBLE 7 Set to true to cause the parent to become invisible.
MODIFIER_STATE_INVULNERABLE 8 Set to true to cause the parent to become invulnerable.
MODIFIER_STATE_MAGIC_IMMUNE 9 Set to true to cause the parent to become immune to magic.
MODIFIER_STATE_PROVIDES_VISION 10 Set to true to cause the parent to share its vision with the source of the modifier.
MODIFIER_STATE_NIGHTMARED 11 Set to true to cause the parent to become nightmared.
MODIFIER_STATE_BLOCK_DISABLED 12 Set to true to cause the parent to become unable to block attacks.
MODIFIER_STATE_EVADE_DISABLED 13 Set to true to cause the parent to become unable to evade attacks.
MODIFIER_STATE_UNSELECTABLE 14 Set to true to cause the parent to make it unselectable.
MODIFIER_STATE_CANNOT_MISS 15 Set to true to cause the parent to always hit its target.
MODIFIER_STATE_SPECIALLY_DENIABLE 16 Set to true to cause allies to be able to deny the parent.
MODIFIER_STATE_FROZEN 17 Set to true to cause the parent to become frozen.
MODIFIER_STATE_COMMAND_RESTRICTED 18 Set to true to cause the parent to become unable to issue orders.
MODIFIER_STATE_NOT_ON_MINIMAP 19 Set to true to cause the parent to become invisible on the minimap.
MODIFIER_STATE_NOT_ON_MINIMAP_FOR_ENEMIES 20 Set to true to cause the parent to become invisible on the minimap for enemies.
MODIFIER_STATE_LOW_ATTACK_PRIORITY 21 Set to true to cause the parent to become low attack priority, causing it to be the last to be hit when attack moving.
MODIFIER_STATE_NO_HEALTH_BAR 22 Set to true to cause the parent to have its health bar disabled (invisible).
MODIFIER_STATE_FLYING 23 Set to true to cause the parent to fly, ignoring terrains and increasing its offset from the ground.
MODIFIER_STATE_NO_UNIT_COLLISION 24 Set to true to cause the parent to become phased.
MODIFIER_STATE_NO_TEAM_MOVE_TO 25
MODIFIER_STATE_NO_TEAM_SELECT 26
MODIFIER_STATE_PASSIVES_DISABLED 27 Set to true to cause the parent to have its passives disabled.
MODIFIER_STATE_DOMINATED 28 Set to true to cause the parent to become dominated.
MODIFIER_STATE_BLIND 29 Set to true to cause the parent to become blind.
MODIFIER_STATE_OUT_OF_GAME 30
MODIFIER_STATE_FAKE_ALLY 31
MODIFIER_STATE_FLYING_FOR_PATHING_PURPOSES_ONLY 32 Set to true to cause the parent to stay on the ground, but be considered flying when moving.
MODIFIER_STATE_TRUESIGHT_IMMUNE 33 Set to true to cause the parent to become immune to truesight.
MODIFIER_STATE_LAST 34

quest_text_replace_values_t

Name Value Description
QUEST_TEXT_REPLACE_VALUE_CURRENT_VALUE 0
QUEST_TEXT_REPLACE_VALUE_TARGET_VALUE 1
QUEST_TEXT_REPLACE_VALUE_ROUND 2
QUEST_TEXT_REPLACE_VALUE_REWARD 3
QUEST_NUM_TEXT_REPLACE_VALUES 4

Find Types

Name Value Description
FIND_UNITS_EVERYWHERE -1 Find units in the whole map.
FIND_ANY_ORDER 0 Random the order units are found.
FIND_CLOSEST 1 Find units from the closest to the source to the farthest.
FIND_FARTHEST 2 Find units from the farthest to the source to the farthest.

subquest_text_replace_values_t

Name Value Description
SUBQUEST_TEXT_REPLACE_VALUE_CURRENT_VALUE 0
SUBQUEST_TEXT_REPLACE_VALUE_TARGET_VALUE 1
SUBQUEST_NUM_TEXT_REPLACE_VALUES 2

DOTAScriptInventorySlot_t

Name Value Description
DOTA_ITEM_SLOT_1 0
DOTA_ITEM_SLOT_2 1
DOTA_ITEM_SLOT_3 2
DOTA_ITEM_SLOT_4 3
DOTA_ITEM_SLOT_5 4
DOTA_ITEM_SLOT_6 5
DOTA_ITEM_SLOT_7 6 Backpack slot 1
DOTA_ITEM_SLOT_8 7 Backpack slot 2
DOTA_ITEM_SLOT_9 8 Backpack slot 3
DOTA_STASH_SLOT_1 9
DOTA_STASH_SLOT_2 10
DOTA_STASH_SLOT_3 11
DOTA_STASH_SLOT_4 12
DOTA_STASH_SLOT_5 13
DOTA_STASH_SLOT_6 14
DOTA_ITEM_TP_SCROLL 15
DOTA_ITEM_NEUTRAL_SLOT 16
DOTA_ITEM_TRANSIENT_ITEM 17
DOTA_ITEM_TRANSIENT_RECIPE 18
DOTA_ITEM_TRANSIENT_CAST_ITEM 20

DOTA_GameState

Name Value Description
DOTA_GAMERULES_STATE_INIT 0
DOTA_GAMERULES_STATE_WAIT_FOR_PLAYERS_TO_LOAD 1
DOTA_GAMERULES_STATE_CUSTOM_GAME_SETUP 2
DOTA_GAMERULES_STATE_HERO_SELECTION 3
DOTA_GAMERULES_STATE_STRATEGY_TIME 4
DOTA_GAMERULES_STATE_TEAM_SHOWCASE 5
DOTA_GAMERULES_STATE_PRE_GAME 6
DOTA_GAMERULES_STATE_GAME_IN_PROGRESS 7
DOTA_GAMERULES_STATE_POST_GAME 8
DOTA_GAMERULES_STATE_DISCONNECT 9

DOTALimits_t

Name Value Description
DOTA_DEFAULT_MAX_TEAM 5 Default number of players per team.
DOTA_DEFAULT_MAX_TEAM_PLAYERS 10 Default number of non-spectator players supported.
DOTA_MAX_PLAYER_TEAMS 10 Max number of player teams supported.
DOTA_MAX_TEAM 24 Max number of players per team.
DOTA_MAX_TEAM_PLAYERS 24 Max number of non-spectator players supported.
DOTA_MAX_SPECTATOR_TEAM_SIZE 40 How many spectators can watch.
DOTA_MAX_PLAYERS 64 Max number of players connected to the server including spectators.

GameActivity_t

Name Value Description
ACT_DOTA_IDLE 1500
ACT_DOTA_IDLE_RARE 1501
ACT_DOTA_RUN 1502
ACT_DOTA_ATTACK 1503
ACT_DOTA_ATTACK2 1504
ACT_DOTA_ATTACK_EVENT 1505
ACT_DOTA_DIE 1506
ACT_DOTA_FLINCH 1507
ACT_DOTA_FLAIL 1508
ACT_DOTA_DISABLED 1509
ACT_DOTA_CAST_ABILITY_1 1510
ACT_DOTA_CAST_ABILITY_2 1511
ACT_DOTA_CAST_ABILITY_3 1512
ACT_DOTA_CAST_ABILITY_4 1513
ACT_DOTA_CAST_ABILITY_5 1514
ACT_DOTA_CAST_ABILITY_6 1515
ACT_DOTA_OVERRIDE_ABILITY_1 1516
ACT_DOTA_OVERRIDE_ABILITY_2 1517
ACT_DOTA_OVERRIDE_ABILITY_3 1518
ACT_DOTA_OVERRIDE_ABILITY_4 1519
ACT_DOTA_CHANNEL_ABILITY_1 1520
ACT_DOTA_CHANNEL_ABILITY_2 1521
ACT_DOTA_CHANNEL_ABILITY_3 1522
ACT_DOTA_CHANNEL_ABILITY_4 1523
ACT_DOTA_CHANNEL_ABILITY_5 1524
ACT_DOTA_CHANNEL_ABILITY_6 1525
ACT_DOTA_CHANNEL_END_ABILITY_1 1526
ACT_DOTA_CHANNEL_END_ABILITY_2 1527
ACT_DOTA_CHANNEL_END_ABILITY_3 1528
ACT_DOTA_CHANNEL_END_ABILITY_4 1529
ACT_DOTA_CHANNEL_END_ABILITY_5 1530
ACT_DOTA_CHANNEL_END_ABILITY_6 1531
ACT_DOTA_CONSTANT_LAYER 1532
ACT_DOTA_CAPTURE 1533
ACT_DOTA_SPAWN 1534
ACT_DOTA_KILLTAUNT 1535
ACT_DOTA_TAUNT 1536
ACT_DOTA_THIRST 1537
ACT_DOTA_CAST_DRAGONBREATH 1538
ACT_DOTA_ECHO_SLAM 1539
ACT_DOTA_CAST_ABILITY_1_END 1540
ACT_DOTA_CAST_ABILITY_2_END 1541
ACT_DOTA_CAST_ABILITY_3_END 1542
ACT_DOTA_CAST_ABILITY_4_END 1543
ACT_MIRANA_LEAP_END 1544
ACT_WAVEFORM_START 1545
ACT_WAVEFORM_END 1546
ACT_DOTA_CAST_ABILITY_ROT 1547
ACT_DOTA_DIE_SPECIAL 1548
ACT_DOTA_RATTLETRAP_BATTERYASSAULT 1549
ACT_DOTA_RATTLETRAP_POWERCOGS 1550
ACT_DOTA_RATTLETRAP_HOOKSHOT_START 1551
ACT_DOTA_RATTLETRAP_HOOKSHOT_LOOP 1552
ACT_DOTA_RATTLETRAP_HOOKSHOT_END 1553
ACT_STORM_SPIRIT_OVERLOAD_RUN_OVERRIDE 1554
ACT_DOTA_TINKER_REARM1 1555
ACT_DOTA_TINKER_REARM2 1556
ACT_DOTA_TINKER_REARM3 1557
ACT_TINY_AVALANCHE 1558
ACT_TINY_TOSS 1559
ACT_TINY_GROWL 1560
ACT_DOTA_WEAVERBUG_ATTACH 1561
ACT_DOTA_CAST_WILD_AXES_END 1562
ACT_DOTA_CAST_LIFE_BREAK_START 1563
ACT_DOTA_CAST_LIFE_BREAK_END 1564
ACT_DOTA_NIGHTSTALKER_TRANSITION 1565
ACT_DOTA_LIFESTEALER_RAGE 1566
ACT_DOTA_LIFESTEALER_OPEN_WOUNDS 1567
ACT_DOTA_SAND_KING_BURROW_IN 1568
ACT_DOTA_SAND_KING_BURROW_OUT 1569
ACT_DOTA_EARTHSHAKER_TOTEM_ATTACK 1570
ACT_DOTA_WHEEL_LAYER 1571
ACT_DOTA_ALCHEMIST_CHEMICAL_RAGE_START 1572
ACT_DOTA_ALCHEMIST_CONCOCTION 1573
ACT_DOTA_JAKIRO_LIQUIDFIRE_START 1574
ACT_DOTA_JAKIRO_LIQUIDFIRE_LOOP 1575
ACT_DOTA_LIFESTEALER_INFEST 1576
ACT_DOTA_LIFESTEALER_INFEST_END 1577
ACT_DOTA_LASSO_LOOP 1578
ACT_DOTA_ALCHEMIST_CONCOCTION_THROW 1579
ACT_DOTA_ALCHEMIST_CHEMICAL_RAGE_END 1580
ACT_DOTA_CAST_COLD_SNAP 1581
ACT_DOTA_CAST_GHOST_WALK 1582
ACT_DOTA_CAST_TORNADO 1583
ACT_DOTA_CAST_EMP 1584
ACT_DOTA_CAST_ALACRITY 1585
ACT_DOTA_CAST_CHAOS_METEOR 1586
ACT_DOTA_CAST_SUN_STRIKE 1587
ACT_DOTA_CAST_FORGE_SPIRIT 1588
ACT_DOTA_CAST_ICE_WALL 1589
ACT_DOTA_CAST_DEAFENING_BLAST 1590
ACT_DOTA_VICTORY 1591
ACT_DOTA_DEFEAT 1592
ACT_DOTA_SPIRIT_BREAKER_CHARGE_POSE 1593
ACT_DOTA_SPIRIT_BREAKER_CHARGE_END 1594
ACT_DOTA_TELEPORT 1595
ACT_DOTA_TELEPORT_END 1596
ACT_DOTA_CAST_REFRACTION 1597
ACT_DOTA_CAST_ABILITY_7 1598
ACT_DOTA_CANCEL_SIREN_SONG 1599
ACT_DOTA_CHANNEL_ABILITY_7 1600
ACT_DOTA_LOADOUT 1601
ACT_DOTA_FORCESTAFF_END 1602
ACT_DOTA_POOF_END 1603
ACT_DOTA_SLARK_POUNCE 1604
ACT_DOTA_MAGNUS_SKEWER_START 1605
ACT_DOTA_MAGNUS_SKEWER_END 1606
ACT_DOTA_MEDUSA_STONE_GAZE 1607
ACT_DOTA_RELAX_START 1608
ACT_DOTA_RELAX_LOOP 1609
ACT_DOTA_RELAX_END 1610
ACT_DOTA_CENTAUR_STAMPEDE 1611
ACT_DOTA_BELLYACHE_START 1612
ACT_DOTA_BELLYACHE_LOOP 1613
ACT_DOTA_BELLYACHE_END 1614
ACT_DOTA_ROQUELAIRE_LAND 1615
ACT_DOTA_ROQUELAIRE_LAND_IDLE 1616
ACT_DOTA_GREEVIL_CAST 1617
ACT_DOTA_GREEVIL_OVERRIDE_ABILITY 1618
ACT_DOTA_GREEVIL_HOOK_START 1619
ACT_DOTA_GREEVIL_HOOK_END 1620
ACT_DOTA_GREEVIL_BLINK_BONE 1621
ACT_DOTA_IDLE_SLEEPING 1622
ACT_DOTA_INTRO 1623
ACT_DOTA_GESTURE_POINT 1624
ACT_DOTA_GESTURE_ACCENT 1625
ACT_DOTA_SLEEPING_END 1626
ACT_DOTA_AMBUSH 1627
ACT_DOTA_ITEM_LOOK 1628
ACT_DOTA_STARTLE 1629
ACT_DOTA_FRUSTRATION 1630
ACT_DOTA_TELEPORT_REACT 1631
ACT_DOTA_TELEPORT_END_REACT 1632
ACT_DOTA_SHRUG 1633
ACT_DOTA_RELAX_LOOP_END 1634
ACT_DOTA_PRESENT_ITEM 1635
ACT_DOTA_IDLE_IMPATIENT 1636
ACT_DOTA_SHARPEN_WEAPON 1637
ACT_DOTA_SHARPEN_WEAPON_OUT 1638
ACT_DOTA_IDLE_SLEEPING_END 1639
ACT_DOTA_BRIDGE_DESTROY 1640
ACT_DOTA_TAUNT_SNIPER 1641
ACT_DOTA_DEATH_BY_SNIPER 1642
ACT_DOTA_LOOK_AROUND 1643
ACT_DOTA_CAGED_CREEP_RAGE 1644
ACT_DOTA_CAGED_CREEP_RAGE_OUT 1645
ACT_DOTA_CAGED_CREEP_SMASH 1646
ACT_DOTA_CAGED_CREEP_SMASH_OUT 1647
ACT_DOTA_IDLE_IMPATIENT_SWORD_TAP 1648
ACT_DOTA_INTRO_LOOP 1649
ACT_DOTA_BRIDGE_THREAT 1650
ACT_DOTA_DAGON 1651
ACT_DOTA_CAST_ABILITY_2_ES_ROLL_START 1652
ACT_DOTA_CAST_ABILITY_2_ES_ROLL 1653
ACT_DOTA_CAST_ABILITY_2_ES_ROLL_END 1654
ACT_DOTA_NIAN_PIN_START 1655
ACT_DOTA_NIAN_PIN_LOOP 1656
ACT_DOTA_NIAN_PIN_END 1657
ACT_DOTA_LEAP_STUN 1658
ACT_DOTA_LEAP_SWIPE 1659
ACT_DOTA_NIAN_INTRO_LEAP 1660
ACT_DOTA_AREA_DENY 1661
ACT_DOTA_NIAN_PIN_TO_STUN 1662
ACT_DOTA_RAZE_1 1663
ACT_DOTA_RAZE_2 1664
ACT_DOTA_RAZE_3 1665
ACT_DOTA_UNDYING_DECAY 1666
ACT_DOTA_UNDYING_SOUL_RIP 1667
ACT_DOTA_UNDYING_TOMBSTONE 1668
ACT_DOTA_WHIRLING_AXES_RANGED 1669
ACT_DOTA_SHALLOW_GRAVE 1670
ACT_DOTA_COLD_FEET 1671
ACT_DOTA_ICE_VORTEX 1672
ACT_DOTA_CHILLING_TOUCH 1673
ACT_DOTA_ENFEEBLE 1674
ACT_DOTA_FATAL_BONDS 1675
ACT_DOTA_MIDNIGHT_PULSE 1676
ACT_DOTA_ANCESTRAL_SPIRIT 1677
ACT_DOTA_THUNDER_STRIKE 1678
ACT_DOTA_KINETIC_FIELD 1679
ACT_DOTA_STATIC_STORM 1680
ACT_DOTA_MINI_TAUNT 1681
ACT_DOTA_ARCTIC_BURN_END 1682
ACT_DOTA_LOADOUT_RARE 1683
ACT_DOTA_SWIM 1684
ACT_DOTA_FLEE 1685
ACT_DOTA_TROT 1686
ACT_DOTA_SHAKE 1687
ACT_DOTA_SWIM_IDLE 1688
ACT_DOTA_WAIT_IDLE 1689
ACT_DOTA_GREET 1690
ACT_DOTA_TELEPORT_COOP_START 1691
ACT_DOTA_TELEPORT_COOP_WAIT 1692
ACT_DOTA_TELEPORT_COOP_END 1693
ACT_DOTA_TELEPORT_COOP_EXIT 1694
ACT_DOTA_SHOPKEEPER_PET_INTERACT 1695
ACT_DOTA_ITEM_PICKUP 1696
ACT_DOTA_ITEM_DROP 1697
ACT_DOTA_CAPTURE_PET 1698
ACT_DOTA_PET_WARD_OBSERVER 1699
ACT_DOTA_PET_WARD_SENTRY 1700
ACT_DOTA_PET_LEVEL 1701
ACT_DOTA_CAST_BURROW_END 1702
ACT_DOTA_LIFESTEALER_ASSIMILATE 1703
ACT_DOTA_LIFESTEALER_EJECT 1704
ACT_DOTA_ATTACK_EVENT_BASH 1705
ACT_DOTA_CAPTURE_RARE 1706
ACT_DOTA_AW_MAGNETIC_FIELD 1707
ACT_DOTA_CAST_GHOST_SHIP 1708

modifierfunction

Name Value Lua function Description
MODIFIER_PROPERTY_PREATTACK_BONUS_DAMAGE 0 GetModifierPreAttack_BonusDamage
MODIFIER_PROPERTY_PREATTACK_BONUS_DAMAGE_PROC 1 GetModifierPreAttack_BonusDamage_Proc
MODIFIER_PROPERTY_PREATTACK_BONUS_DAMAGE_POST_CRIT 2 GetModifierPreAttack_BonusDamagePostCrit
MODIFIER_PROPERTY_BASEATTACK_BONUSDAMAGE 3 GetModifierBaseAttack_BonusDamage
MODIFIER_PROPERTY_PROCATTACK_BONUS_DAMAGE_PHYSICAL 4 GetModifierProcAttack_BonusDamage_Physical
MODIFIER_PROPERTY_PROCATTACK_BONUS_DAMAGE_MAGICAL 5 GetModifierProcAttack_BonusDamage_Magical
MODIFIER_PROPERTY_PROCATTACK_BONUS_DAMAGE_PURE 6 GetModifierProcAttack_BonusDamage_Pure
MODIFIER_PROPERTY_PROCATTACK_FEEDBACK 7 GetModifierProcAttack_Feedback
MODIFIER_PROPERTY_PRE_ATTACK 8 GetModifierPreAttack
MODIFIER_PROPERTY_INVISIBILITY_LEVEL 9 GetModifierInvisibilityLevel Generates a level of opacity on the parent.
MODIFIER_PROPERTY_PERSISTENT_INVISIBILITY 10 GetModifierPersistentInvisibility
MODIFIER_PROPERTY_MOVESPEED_BONUS_CONSTANT 11 GetModifierMoveSpeedBonus_Constant Increases the move speed of the parent by a constant returned to it. Can get negative values.
MODIFIER_PROPERTY_MOVESPEED_BASE_OVERRIDE 12 GetModifierMoveSpeedOverride changes the base move speed of the parent by a value returned to it. Minimum of 100 move speed.
MODIFIER_PROPERTY_MOVESPEED_BONUS_PERCENTAGE 13 GetModifierMoveSpeedBonus_Percentage Increases the move speed of the parent by a percentage returned to it. Can get negative values.
MODIFIER_PROPERTY_MOVESPEED_BONUS_PERCENTAGE_UNIQUE 14 GetModifierMoveSpeedBonus_Percentage_Unique
MODIFIER_PROPERTY_MOVESPEED_BONUS_PERCENTAGE_UNIQUE_2 15 GetModifierMoveSpeedBonus_Percentage_Unique_2
MODIFIER_PROPERTY_MOVESPEED_BONUS_UNIQUE 16 GetModifierMoveSpeedBonus_Special_Boots
MODIFIER_PROPERTY_MOVESPEED_BONUS_UNIQUE_2 17 GetModifierMoveSpeedBonus_Special_Boots_2
MODIFIER_PROPERTY_MOVESPEED_ABSOLUTE 18 GetModifierMoveSpeed_Absolute Sets the move speed of the parent to a value. Nothing can increase or decrease move speed.
MODIFIER_PROPERTY_MOVESPEED_ABSOLUTE_MIN 19 GetModifierMoveSpeed_AbsoluteMin Sets the move speed of the parent to a minimum value. Nothing can decrease move speed below the chosen value.
MODIFIER_PROPERTY_MOVESPEED_LIMIT 20 GetModifierMoveSpeed_Limit Sets the move speed limit of the parent.
MODIFIER_PROPERTY_MOVESPEED_MAX 21 GetModifierMoveSpeed_Max
MODIFIER_PROPERTY_ATTACKSPEED_BASE_OVERRIDE 22 GetModifierAttackSpeedBaseOverride
MODIFIER_PROPERTY_FIXED_ATTACK_RATE 23 GetModifierAttackSpeedBaseOverride
MODIFIER_PROPERTY_ATTACKSPEED_BONUS_CONSTANT 24 GetModifierAttackSpeedBonus_Constant Increases the attack speed of the parent by a constant returned to it. Can return negative values.
MODIFIER_PROPERTY_COOLDOWN_REDUCTION_CONSTANT 25 GetModifierCooldownReduction_Constant Reduces the cooldown of all skills and items of the parent by a constant returned to it. Can get negative values to increase cooldowns instead.
MODIFIER_PROPERTY_BASE_ATTACK_TIME_CONSTANT 26 GetModifierBaseAttackTimeConstant Decreases the base attack time of the parent by a constant returned to it. Can return negative values.
MODIFIER_PROPERTY_ATTACK_POINT_CONSTANT 27 GetModifierAttackPointConstant
MODIFIER_PROPERTY_DAMAGEOUTGOING_PERCENTAGE 28 GetModifierDamageOutgoing_Percentage Increases the raw damage that the parent deals by a percentage returned to it. Can return negative values.
MODIFIER_PROPERTY_DAMAGEOUTGOING_PERCENTAGE_ILLUSION 29 GetModifierDamageOutgoing_Percentage_Illusion
MODIFIER_PROPERTY_TOTALDAMAGEOUTGOING_PERCENTAGE 30 GetModifierTotalDamageOutgoing_Percentage Increases the damage of all sources that the parent deals by a percentage returned to it. Can return negative values.
MODIFIER_PROPERTY_SPELL_AMPLIFY_PERCENTAGE 31 GetModifierSpellAmplify_Percentage
MODIFIER_PROPERTY_HP_REGEN_AMPLIFY_PERCENTAGE 32 GetModifierHPRegenAmplify_Percentage Increases health regen and heal gained by parent by a percentage returned to it. Can return negative values.
MODIFIER_PROPERTY_MAGICDAMAGEOUTGOING_PERCENTAGE 33 GetModifierMagicDamageOutgoing_Percentage Increases the magic damage that the parent deals by a percentage returned to it. Can return negative values.
MODIFIER_PROPERTY_BASEDAMAGEOUTGOING_PERCENTAGE 34 GetModifierBaseDamageOutgoing_Percentage Increases the base damage of that the parent deals by a percentage returned to it. Can return negative values.
MODIFIER_PROPERTY_BASEDAMAGEOUTGOING_PERCENTAGE_UNIQUE 35 GetModifierBaseDamageOutgoing_PercentageUnique
MODIFIER_PROPERTY_INCOMING_DAMAGE_PERCENTAGE 36 GetModifierIncomingDamage_Percentage Increases the damage of all sources that the parent takes by a percentage returned to it. Can return negative values.
MODIFIER_PROPERTY_INCOMING_PHYSICAL_DAMAGE_PERCENTAGE 37 GetModifierIncomingPhysicalDamage_Percentage Increases the damage of physical sources that the parent takes by a percentage returned to it. Can return negative values.
MODIFIER_PROPERTY_INCOMING_PHYSICAL_DAMAGE_CONSTANT 38 GetModifierIncomingPhysicalDamageConstant
MODIFIER_PROPERTY_INCOMING_SPELL_DAMAGE_CONSTANT 39 GetModifierIncomingSpellDamageConstant Increases the damage of magical sources that the parent takes by a percentage returned to it. Can return negative values.
MODIFIER_PROPERTY_EVASION_CONSTANT 40 GetModifierEvasion_Constant Increases the evasion of the parent by a constant returned to it. Can return negative values.
MODIFIER_PROPERTY_NEGATIVE_EVASION_CONSTANT 41 GetModifierNegativeEvasion_Constant
MODIFIER_PROPERTY_AVOID_DAMAGE 42 GetModifierAvoidDamage
MODIFIER_PROPERTY_AVOID_SPELL 43 GetModifierAvoidSpell
MODIFIER_PROPERTY_MISS_PERCENTAGE 44 GetModifierMiss_Percentage Increases the chance of the parent to miss by a percentage returned to it. Can return negative values.
MODIFIER_PROPERTY_PHYSICAL_ARMOR_BONUS 45 GetModifierPhysicalArmorBonus Increases the armor of the parent by a constant returned to it. Can return negative values.
MODIFIER_PROPERTY_PHYSICAL_ARMOR_BONUS_UNIQUE 46 GetModifierPhysicalArmorBonusUnique
MODIFIER_PROPERTY_PHYSICAL_ARMOR_BONUS_UNIQUE_ACTIVE 47 GetModifierPhysicalArmorBonusUniqueActive
MODIFIER_PROPERTY_IGNORE_PHYSICAL_ARMOR 48 GetModifierIgnorePhysicalArmor
MODIFIER_PROPERTY_MAGICAL_RESISTANCE_DIRECT_MODIFICATION 49 GetModifierMagicalResistanceDirectModification
MODIFIER_PROPERTY_MAGICAL_RESISTANCE_BONUS 50 GetModifierMagicalResistanceBonus Increases the magical resistance of the parent by a constant returned to it. Can return negative values.
MODIFIER_PROPERTY_MAGICAL_RESISTANCE_DECREPIFY_UNIQUE 51 GetModifierMagicalResistanceDecrepifyUnique
MODIFIER_PROPERTY_BASE_MANA_REGEN 52 GetModifierBaseManaRegen Set the base mana regeneration of the parent by a constant returned to it. Can return negative values.
MODIFIER_PROPERTY_MANA_REGEN_CONSTANT 53 GetModifierConstantManaRegen Increases the mana regeneration of the parent by a constant returned to it. Can return negative values.
MODIFIER_PROPERTY_MANA_REGEN_CONSTANT_UNIQUE 54 GetModifierConstantManaRegenUnique
MODIFIER_PROPERTY_MANA_REGEN_PERCENTAGE 55 GetModifierPercentageManaRegen Increases the mana regeneration of the parent by a percentage returned to it. Can return negative values.
MODIFIER_PROPERTY_MANA_REGEN_TOTAL_PERCENTAGE 56 GetModifierTotalPercentageManaRegen Increases the total mana regeneration of the parent by a percentage returned to it. Can return negative values.
MODIFIER_PROPERTY_HEALTH_REGEN_CONSTANT 57 GetModifierConstantHealthRegen Increases the health regeneration of the parent by a constant returned to it. Can return negative values.
MODIFIER_PROPERTY_HEALTH_REGEN_PERCENTAGE 58 GetModifierHealthRegenPercentage Increases the evasion of the parent by a percentage returned to it. Can return negative values.
MODIFIER_PROPERTY_HEALTH_BONUS 59 GetModifierHealthBonus Increases the maximum health of the parent by a constant returned to it. Can return negative values. Health is scaled to the same percentage as before the increase.
MODIFIER_PROPERTY_MANA_BONUS 60 GetModifierManaBonus Increases the maximum mana of the parent by a constant returned to it. Can return negative values. Mana is scaled to the same percentage as before the increase.
MODIFIER_PROPERTY_EXTRA_STRENGTH_BONUS 61 GetModifierExtraStrengthBonus
MODIFIER_PROPERTY_EXTRA_HEALTH_BONUS 62 GetModifierExtraHealthBonus Increases the maximum health of the parent by a constant returned to it. Can return negative values. Ignores current health.
MODIFIER_PROPERTY_EXTRA_MANA_BONUS 63 GetModifierExtraManaBonus Increases the maximum mana of the parent by a constant returned to it. Can return negative values. Ignores current mana.
MODIFIER_PROPERTY_EXTRA_HEALTH_PERCENTAGE 64 GetModifierExtraHealthPercentage Increases the maximum health of the parent by a percentage returned to it. Can return negative values. Ignores current health.
MODIFIER_PROPERTY_STATS_STRENGTH_BONUS 65 GetModifierBonusStats_Strength Increases the strength stat of the parent by a constant returned to it. Can return negative values.
MODIFIER_PROPERTY_STATS_AGILITY_BONUS 66 GetModifierBonusStats_Agility Increases the agility stat of the parent by a constant returned to it. Can return negative values.
MODIFIER_PROPERTY_STATS_INTELLECT_BONUS 67 GetModifierBonusStats_Intellect Increases the intelligence stat of the parent by a constant returned to it. Can return negative values.
MODIFIER_PROPERTY_CAST_RANGE_BONUS 68 GetModifierCastRangeBonus Increases the cast range of the parent by a constant returned to it. Can return negative values.
MODIFIER_PROPERTY_CAST_RANGE_BONUS_STACKING 69 GetModifierCastRangeBonusStacking
MODIFIER_PROPERTY_ATTACK_RANGE_BONUS 70 GetModifierAttackRangeBonus Increases the attack range of the parent by a constant returned to it. Can return negative values.
MODIFIER_PROPERTY_ATTACK_RANGE_BONUS_UNIQUE 71 GetModifierAttackRangeBonusUnique
MODIFIER_PROPERTY_MAX_ATTACK_RANGE 72 GetModifierMaxAttackRange
MODIFIER_PROPERTY_PROJECTILE_SPEED_BONUS 73 GetModifierProjectileSpeedBonus Increases the projectile speed of attacks sourced by the parent by a constant returned to it. Can return negative values.
MODIFIER_PROPERTY_REINCARNATION 74 ReincarnateTime
MODIFIER_PROPERTY_RESPAWNTIME 75 GetModifierConstantRespawnTime Increases the respawn time of the parent by a constant returned to it. Can return negative values.
MODIFIER_PROPERTY_RESPAWNTIME_PERCENTAGE 76 GetModifierPercentageRespawnTime Increases the respawn time of the parent by a percentage returned to it. Can return negative values.
MODIFIER_PROPERTY_RESPAWNTIME_STACKING 77 GetModifierStackingRespawnTime Increases the respawn time of the parent by a constant returned to it. Can return negative values. Stacks with other modifiers.
MODIFIER_PROPERTY_COOLDOWN_PERCENTAGE 78 GetModifierPercentageCooldown Increases the cooldown of the parent by a percentage returned to it. Can return negative values.
MODIFIER_PROPERTY_COOLDOWN_PERCENTAGE_STACKING 79 GetModifierPercentageCooldownStacking
MODIFIER_PROPERTY_CASTTIME_PERCENTAGE 80 GetModifierPercentageCasttime Decreases the cast time of the parent's abilities by a percentage returned to it. Can return negative values.
MODIFIER_PROPERTY_MANACOST_PERCENTAGE 81 GetModifierPercentageManacost Increases the mana cost of the parent's abilities by a percentage returned to it. Can return negative values.
MODIFIER_PROPERTY_DEATHGOLDCOST 82 GetModifierConstantDeathGoldCost
MODIFIER_PROPERTY_EXP_RATE_BOOST 83 GetModifierPercentageExpRateBoost
MODIFIER_PROPERTY_PREATTACK_CRITICALSTRIKE 84 GetModifierPreAttack_CriticalStrike Procs a critical strike dealing the extra damage returned to it.
MODIFIER_PROPERTY_PREATTACK_TARGET_CRITICALSTRIKE 85 GetModifierPreAttack_Target_CriticalStrike
MODIFIER_PROPERTY_MAGICAL_CONSTANT_BLOCK 86 GetModifierMagical_ConstantBlock
MODIFIER_PROPERTY_PHYSICAL_CONSTANT_BLOCK 87 GetModifierPhysical_ConstantBlock Blocks damage the parent takes by a constant returned to it. Can return negative values.
MODIFIER_PROPERTY_PHYSICAL_CONSTANT_BLOCK_SPECIAL 88 GetModifierPhysical_ConstantBlockSpecial
MODIFIER_PROPERTY_TOTAL_CONSTANT_BLOCK_UNAVOIDABLE_PRE_ARMOR 89 GetModifierPhysical_ConstantBlockUnavoidablePreArmor
MODIFIER_PROPERTY_TOTAL_CONSTANT_BLOCK 90 GetModifierTotal_ConstantBlock
MODIFIER_PROPERTY_OVERRIDE_ANIMATION 91 GetOverrideAnimation Forces the parent to play a specific animation.
MODIFIER_PROPERTY_OVERRIDE_ANIMATION_WEIGHT 92 GetOverrideAnimationWeight
MODIFIER_PROPERTY_OVERRIDE_ANIMATION_RATE 93 GetOverrideAnimationRate
MODIFIER_PROPERTY_ABSORB_SPELL 94 GetAbsorbSpell Allows the parent to ignore targeted abilities. (Similar to linken's sphere)
MODIFIER_PROPERTY_REFLECT_SPELL 95 GetReflectSpell Allows the parent to reflect targeted abilities. (Similar to Lotus Orb)
MODIFIER_PROPERTY_DISABLE_AUTOATTACK 96 GetDisableAutoAttack
MODIFIER_PROPERTY_BONUS_DAY_VISION 97 GetBonusDayVision Increases the vision of the parent during the day by a constant returned to it. Can return negative values.
MODIFIER_PROPERTY_BONUS_NIGHT_VISION 98 GetBonusNightVision Increases the vision of the parent during the night by a constant returned to it. Can return negative values.
MODIFIER_PROPERTY_BONUS_NIGHT_VISION_UNIQUE 99 GetBonusNightVisionUnique
MODIFIER_PROPERTY_BONUS_VISION_PERCENTAGE 100 GetBonusVisionPercentage Increases the vision of the parent by a percentage returned to it. Can return negative values.
MODIFIER_PROPERTY_FIXED_DAY_VISION 101 GetFixedDayVision Sets the vision of the parent during the day to a fixed value returned to it. Cannot be changed by any means.
MODIFIER_PROPERTY_FIXED_NIGHT_VISION 102 GetFixedNightVision Sets the vision of the parent during the night to a fixed value returned to it. Cannot be changed by any means.
MODIFIER_PROPERTY_MIN_HEALTH 103 GetMinHealth
MODIFIER_PROPERTY_ABSOLUTE_NO_DAMAGE_PHYSICAL 104 GetAbsoluteNoDamagePhysical
MODIFIER_PROPERTY_ABSOLUTE_NO_DAMAGE_MAGICAL 105 GetAbsoluteNoDamageMagical
MODIFIER_PROPERTY_ABSOLUTE_NO_DAMAGE_PURE 106 GetAbsoluteNoDamagePure
MODIFIER_PROPERTY_IS_ILLUSION 107 GetIsIllusion
MODIFIER_PROPERTY_ILLUSION_LABEL 108 GetModifierIllusionLabel
MODIFIER_PROPERTY_SUPER_ILLUSION 109 GetModifierSuperIllusion
MODIFIER_PROPERTY_SUPER_ILLUSION_WITH_ULTIMATE 110 GetModifierSuperIllusionWithUltimate
MODIFIER_PROPERTY_TURN_RATE_PERCENTAGE 111 GetModifierTurnRate_Percentage Increases the turn rate of the parent by a percentage returned to it. Can return negative values.
MODIFIER_PROPERTY_DISABLE_HEALING 112 GetDisableHealing Negates healing applied to the parent.
MODIFIER_PROPERTY_ALWAYS_ALLOW_ATTACK 113 GetAlwaysAllowAttack
MODIFIER_PROPERTY_OVERRIDE_ATTACK_MAGICAL 114 GetOverrideAttackMagical
MODIFIER_PROPERTY_UNIT_STATS_NEEDS_REFRESH 115 GetModifierUnitStatsNeedsRefresh
MODIFIER_PROPERTY_BOUNTY_CREEP_MULTIPLIER 116 GetModifierBountyCreepMultiplier
MODIFIER_PROPERTY_BOUNTY_OTHER_MULTIPLIER 117 GetModifierBountyOtherMultiplier
MODIFIER_EVENT_ON_SPELL_TARGET_READY 118 OnSpellTargetReady
MODIFIER_EVENT_ON_ATTACK_RECORD 119 OnAttackRecord
MODIFIER_EVENT_ON_ATTACK_START 120 OnAttackStart Event that fires when an attack starts.
MODIFIER_EVENT_ON_ATTACK 121 OnAttack Event that fires when an attack was completed, regardless of the result of it.
MODIFIER_EVENT_ON_ATTACK_LANDED 122 OnAttackLanded Event that fires when an attack landed on its target successfully.
MODIFIER_EVENT_ON_ATTACK_FAIL 123 OnAttackFail Event that fires when an attack failed to land on its target.
MODIFIER_EVENT_ON_ATTACK_ALLIED 124 OnAttackAllied Event that fires when attacking allies.
MODIFIER_EVENT_ON_PROJECTILE_DODGE 125 OnProjectileDodge Event that fires when dodging a projectile. (Disjointing it)
MODIFIER_EVENT_ON_ORDER 126 OnOrder Event that fires when an order is given to the parent.
MODIFIER_EVENT_ON_UNIT_MOVED 127 OnUnitMoved Event that fires when a unit moved.
MODIFIER_EVENT_ON_ABILITY_START 128 OnAbilityStart Event that fires when starting to use an ability.
MODIFIER_EVENT_ON_ABILITY_EXECUTED 129 OnAbilityExecuted Event that fires when finishing the ability phase stage of the ability.
MODIFIER_EVENT_ON_ABILITY_FULLY_CAST 130 OnAbilityFullyCast Event that fires when the ability has completely activated.
MODIFIER_EVENT_ON_BREAK_INVISIBILITY 131 OnBreakInvisibility Event that fires when breaking invisibility.
MODIFIER_EVENT_ON_ABILITY_END_CHANNEL 132 OnAbilityEndChannel Event that fires when finishing a channel.
MODIFIER_EVENT_ON_PROCESS_UPGRADE 133
MODIFIER_EVENT_ON_REFRESH 134
MODIFIER_EVENT_ON_TAKEDAMAGE 135 OnTakeDamage Event that fires when taking damage.
MODIFIER_EVENT_ON_STATE_CHANGED 136 OnStateChanged Event that fires when a state is changed.
MODIFIER_EVENT_ON_ORB_EFFECT 137
MODIFIER_EVENT_ON_ATTACKED 138 OnAttacked Event that fires when being attacked.
MODIFIER_EVENT_ON_DEATH 139 OnDeath Event that fires when dying.
MODIFIER_EVENT_ON_RESPAWN 140 OnRespawn Event that fires when respawning.
MODIFIER_EVENT_ON_SPENT_MANA 141 OnSpentMana Event that fires when spending mana on items or abilities.
MODIFIER_EVENT_ON_TELEPORTING 142 OnTeleporting Event that fires when starting to teleporting.
MODIFIER_EVENT_ON_TELEPORTED 143 OnTeleported Event that fires when completing a teleport.
MODIFIER_EVENT_ON_SET_LOCATION 144 OnSetLocation
MODIFIER_EVENT_ON_HEALTH_GAINED 145 OnHealthGained
MODIFIER_EVENT_ON_MANA_GAINED 146 OnManaGained
MODIFIER_EVENT_ON_TAKEDAMAGE_KILLCREDIT 147 OnTakeDamageKillCredit
MODIFIER_EVENT_ON_HERO_KILLED 148 OnHeroKilled Event that fires when a hero is killed.
MODIFIER_EVENT_ON_HEAL_RECEIVED 149 OnHealReceived Event that fires when being healed.
MODIFIER_EVENT_ON_BUILDING_KILLED 150 OnBuildingKilled Event that fires when a building is destroyed.
MODIFIER_EVENT_ON_MODEL_CHANGED 151 OnModelChanged Event that fires when the model changes.
MODIFIER_EVENT_ON_MODIFIER_ADDED 152 OnModifierAdded
MODIFIER_PROPERTY_TOOLTIP 153 OnTooltip
MODIFIER_PROPERTY_MODEL_CHANGE 154 GetModifierModelChange Changes the parent's model.
MODIFIER_PROPERTY_MODEL_SCALE 155 GetModifierModelScale Changes the parent's model scale.
MODIFIER_PROPERTY_IS_SCEPTER 156 GetModifierScepter
MODIFIER_PROPERTY_TRANSLATE_ACTIVITY_MODIFIERS 157 GetActivityTranslationModifiers
MODIFIER_PROPERTY_TRANSLATE_ATTACK_SOUND 158 GetAttackSound
MODIFIER_PROPERTY_LIFETIME_FRACTION 159 GetUnitLifetimeFraction
MODIFIER_PROPERTY_PROVIDES_FOW_POSITION 160 GetModifierProvidesFOWVision Return 1 if parent's model would show to his enemies.
MODIFIER_PROPERTY_SPELLS_REQUIRE_HP 161 GetModifierSpellsRequireHP
MODIFIER_PROPERTY_FORCE_DRAW_MINIMAP 162 GetForceDrawOnMinimap
MODIFIER_PROPERTY_DISABLE_TURNING 163 GetModifierDisableTurning
MODIFIER_PROPERTY_IGNORE_CAST_ANGLE 164 GetModifierIgnoreCastAngle
MODIFIER_PROPERTY_CHANGE_ABILITY_VALUE 165 GetModifierChangeAbilityValue
MODIFIER_PROPERTY_ABILITY_LAYOUT 166 GetModifierAbilityLayout Changes the ability layout.
MODIFIER_EVENT_ON_DOMINATED 167 OnDominated An event that fires when a unit is being dominated.
MODIFIER_PROPERTY_TEMPEST_DOUBLE 168 GetModifierTempestDouble
MODIFIER_PROPERTY_PRESERVE_PARTICLES_ON_MODEL_CHANGE 169 PreserveParticlesOnModelChanged
MODIFIER_EVENT_ON_ATTACK_FINISHED 170 OnAttackFinished
MODIFIER_PROPERTY_IGNORE_COOLDOWN 171 GetModifierIgnoreCooldown
MODIFIER_PROPERTY_CAN_ATTACK_TREES 172 GetModifierCanAttackTrees
MODIFIER_PROPERTY_VISUAL_Z_DELTA 173 GetVisualZDelta
MODIFIER_PROPERTY_INCOMING_DAMAGE_ILLUSION 174
MODIFIER_FUNCTION_LAST 175
MODIFIER_FUNCTION_INVALID 255

DOTA_CONNECTION_STATE

Name Value Description
DOTA_CONNECTION_STATE_UNKNOWN 0
DOTA_CONNECTION_STATE_NOT_YET_CONNECTED 1
DOTA_CONNECTION_STATE_CONNECTED 2
DOTA_CONNECTION_STATE_DISCONNECTED 3
DOTA_CONNECTION_STATE_ABANDONED 4
DOTA_CONNECTION_STATE_LOADING 5
DOTA_CONNECTION_STATE_FAILED 6