This article relates to the game "Dota 2". Click here for more information.

Dota 2.fgd (Source)

From Valve Developer Community
Jump to: navigation, search
English (en)Translate (Translate)

This is the Hammer FGD for Source 1 version of Dota 2 Dota 2 (also known as pre-Reborn/version 6.84).

FGD

This is a FGD (Forge Game Data) file used to define all of the entities of a game for a map editor (such as Hammer).
To add a FGD file to the map editor, copy the following text into a text editor such as Notepad++ Notepad++, and save it with "save as type" being "all files" and .fgd appended to the file name. Then open your map editor, in this case, Valve Hammer Editor, go to Tools > Options..., and add the FGD file on Game Data Files.
dota.fgd
Forge Game Data
//====== =================================================================== // // Purpose: Dota 2 entity defs (.fgd) // //============================================================================= @include "base.fgd" @gridnav(64, 32, 32, 3500) @BaseClass base(Origin, Angles, Targetname) = DotaBase [ ] @PointClass base(DotaBase) studio("models/heroes/ancient_apparition/ancient_apparition.mdl") color(0 255 0) = info_player_start_goodguys [ ] @PointClass base(DotaBase) studio("models/heroes/ancient_apparition/ancient_apparition.mdl") color(255 0 0) = info_player_start_badguys [ ] @PointClass base(Targetname) = ent_dota_game_events : "An entity that fires outputs based on game events." [ // Outputs output OnDayStarted(void) : "Fired when the day starts." output OnNightStarted(void) : "Fired when the night starts." ] @PointClass base(Targetname) sphere(inner_radius) sphere(outer_radius) = ent_dota_lightinfo: "An entity that controls the global light." [ color_day(color255) : "Color - Day" : "0 0 0" : "Daytime color." color_dusk(color255) : "Color - Dusk" : "0 0 0" : "Dusk color." color_night(color255) : "Color - Night" : "0 0 0" : "Nighttime color." color_dawn(color255) : "Color - Dawn" : "0 0 0" : "Dawn color." ambient_color_day(color255) : "Ambient Color - Day" : "0 0 0" : "Ambient Daytime color." ambient_color_dusk(color255) : "Ambient Color - Dusk" : "0 0 0" : "Ambient Dusk color." ambient_color_night(color255) : "Ambient Color - Night" : "0 0 0" : "Ambient Nighttime color." ambient_color_dawn(color255) : "Ambient Color - Dawn" : "0 0 0" : "Ambient Dawn color." ambient_scale_day(float) : "Ambient Scale - Day" : "0" : "Ambient Daytime scale." ambient_scale_dusk(float) : "Ambient Scale - Dusk" : "0" : "Ambient Dusk scale." ambient_scale_night(float) : "Ambient Scale - Night" : "0" : "Ambient Nighttime scale." ambient_scale_dawn(float) : "Ambient Scale - Dawn" : "0" : "Ambient Dawn scale." shadow_color_day(color255) : "Shadow Color - Day" : "0 0 0" : "Shadow Daytime color." shadow_color_dusk(color255) : "Shadow Color - Dusk" : "0 0 0" : "Shadow Dusk color." shadow_color_night(color255) : "Shadow Color - Night" : "0 0 0" : "Shadow Nighttime color." shadow_color_dawn(color255) : "Shadow Color - Dawn" : "0 0 0" : "Shadow Dawn color." shadow_scale_day(float) : "Shadow Scale - Day" : "0" : "Shadow Daytime scale." shadow_scale_dusk(float) : "Shadow Scale - Dusk" : "0" : "Shadow Dusk scale." shadow_scale_night(float) : "Shadow Scale - Night" : "0" : "Shadow Nighttime scale." shadow_scale_dawn(float) : "Shadow Scale - Dawn" : "0" : "Shadow Dawn scale." shadow_ground_scale_day(float) : "Shadow Ground Scale - Day" : "0" : "Shadow Daytime ground scale." shadow_ground_scale_dusk(float) : "Shadow Ground Scale - Dusk" : "0" : "Shadow Dusk ground scale." shadow_ground_scale_night(float) : "Shadow Ground Scale - Night" : "0" : "Shadow Nighttime ground scale." shadow_ground_scale_dawn(float) : "Shadow Ground Scale - Dawn" : "0" : "Shadow Dawn ground scale." specular_color_day(color255) : "Specular Color - Day" : "0 0 0" : "Specular Daytime color." specular_color_dusk(color255) : "Specular Color - Dusk" : "0 0 0" : "Specular Dusk color." specular_color_night(color255) : "Specular Color - Night" : "0 0 0" : "Specular Nighttime color." specular_color_dawn(color255) : "Specular Color - Dawn" : "0 0 0" : "Specular Dawn color." light_direction_day(vector) : "Light Direction - Day" : "0 0 0" : "Light Daytime direction." light_direction_dawn(vector) : "Light Direction - Dusk" : "0 0 0" : "Light Dusk direction." light_direction_night(vector) : "Light Direction - Night" : "0 0 0" : "Light Nighttime direction." light_direction_dusk(vector) : "Light Direction - Dawn" : "0 0 0" : "Light Dawn direction." ambient_direction_day(vector) : "Ambient Direction - Day" : "0 0 0" : "Ambient Daytime direction." ambient_direction_dawn(vector) : "Ambient Direction - Dusk" : "0 0 0" : "Ambient Dusk direction." ambient_direction_night(vector) : "Ambient Direction - Night" : "0 0 0" : "Ambient Nighttime direction." ambient_direction_dusk(vector) : "Ambient Direction - Dawn" : "0 0 0" : "Ambient Dawn direction." fog_color_day(color255) : "Fog Color - Day" : "0 0 0" : "Fog Daytime color." fog_color_dusk(color255) : "Fog Color - Dusk" : "0 0 0" : "Fog Dusk color." fog_color_night(color255) : "Fog Color - Night" : "0 0 0" : "Fog Nighttime color." fog_color_dawn(color255) : "Fog Color - Dawn" : "0 0 0" : "Fog Dawn color." fog_start_day(float) : "Fog Start - Day" : "0" : "Daytime Fog Start distance." fog_start_dusk(float) : "Fog Start - Dusk" : "0" : "Dusk Fog Start distance." fog_start_night(float) : "Fog Start - Night" : "0" : "Night Fog Start distance." fog_start_dawn(float) : "Fog Start - Dawn" : "0" : "Dawn Fog Start distance." fog_end_day(float) : "Fog End - Day" : "0" : "Daytime Fog Start distance." fog_end_dusk(float) : "Fog End - Dusk" : "0" : "Dusk Fog End distance." fog_end_night(float) : "Fog End - Night" : "0" : "Night Fog End distance." fog_end_dawn(float) : "Fog End - Dawn" : "0" : "Dawn Fog End distance." inner_radius(float) : "Inner Radius" : "0" : "Radius inside which the global light is exactly the specified color." outer_radius(float) : "Outer Radius" : "0" : "Radius inside which the global light is partially the specified color." ] @PointClass base(DotaBase) = world_bounds [ max(vector) : "Max Bound" : "640 1280 0" : " " min(vector) : "Min Bound" : "-1024 -1280 0" : " " ] @PointClass base(DotaBase, Studiomodel) studio() = ent_dota_tree [ targetname(target_source) : "Name" : "dota_item_rune_spawner" : "The name that other entities refer to this entity by." base(integer) : "Base" : 1 : "Needs to be 1 to work correctly" ] @SolidClass base(DotaBase) = func_water_analog [ movedir(vector) : "Move Direction" : "0 0 0" : " " movedistance(float) : "Move Direction" : "100" : " " speed(float) : "Speed" : "100" : " " startposition(float) : "Start Position" : "0" : " " WaveHeight(float) : "Wave Height" : "3.0" : " " ] @SolidClass base(Trigger) = trigger_no_wards [ ] @BaseClass = DotaTeam [ teamnumber(choices) : "Team" : 2 : " " = [ 0 : "No Team" 1 : "Spectator" 2 : "Radiant" 3 : "Dire" 4 : "Neutral" ] ] @BaseClass base(DotaBase, prop_dynamic_base, RenderFxChoices, DotaTeam) = DotaUnit [ ] @BaseClass base(DotaUnit) = DotaBuilding [ ambientfx(string) : "Ambient FX" : "tower_good3_lamp" : " " destdmgamnt_lvl1(integer) : "Damage level 1 amount" : 66 : " " destdmgamnt_lvl2(integer) : "Damage level 2 amount" : 33 : " " destroyfx(string) : "Destroy FX" : "tower_good3_destroy_lvl3" : " " destroysound(sound) : "Destroy Sound" : "Building_RadiantTower.Destruction" : " " destruction_lvl1(studio) : "Destruction level 1 model" : " " : " " destruction_lvl2(studio) : "Destruction level 2 model" : " " : " " MapUnitName(string) : "Map Unit Name" : " " : " " solid(boolean) : "Solid" : "0" : " " vulnerableoncreepspawn(boolean) : "Use Backdoor Protection" : "1" : " " invuln_count(integer):"Invulnerability Link Count" : 0 : "The number of entities linked to this to trigger to remove invulnerability." link(string) : "Linked" : " " : "The Linked Unit." ] @PointClass base(DotaBuilding) studio() = npc_dota_tower [ ] @PointClass base(DotaBuilding) studio() = npc_dota_barracks [ upgrade_level(choices) :"Upgrade Category" : 0 = [ 0: "UPGRADED_NONE" 1: "UPGRADED_BAD_BOTTOM_MELEE" 2: "UPGRADED_BAD_BOTTOM_RANGE" 4: "UPGRADED_BAD_MID_MELEE" 8: "UPGRADED_BAD_MID_RANGE" 16: "UPGRADED_BAD_TOP_MELEE" 32: "UPGRADED_BAD_TOP_RANGE" 64: "UPGRADED_GOOD_BOTTOM_MELEE" 128: "UPGRADED_GOOD_BOTTOM_RANGE" 256: "UPGRADED_GOOD_MID_MELEE" 512: "UPGRADED_GOOD_MID_RANGE" 1024: "UPGRADED_GOOD_TOP_MELEE" 2048: "UPGRADED_GOOD_TOP_RANGE" ] ] @PointClass base(DotaBuilding) studio() = npc_dota_fort [ ] @PointClass base(DotaBuilding) studio() = npc_dota_building [ ] @PointClass base(DotaBuilding) studio() = ent_dota_fountain [ ] @PointClass base(prop_dynamic_base) = ambient_creatures [ ScriptedMovement(boolean) : "Use Scripted Movement" : "0" : " " showatday(boolean) : "Show at Day" : "0" : " " showatnight(boolean) : "Show at Night" : "1" : " " ] @SolidClass base(prop_dynamic_base) = ambient_creatures_zone [ ScriptedMovement(boolean) : "Use Scripted Movement" : "0" : " " showatday(boolean) : "Show at Day" : "0" : " " showatnight(boolean) : "Show at Night" : "1" : " " ] @PointClass base(DotaBase) = path_corner [ yaw_speed(float) : "Yaw Speed" : "0" : " " wait(float): "Wait Time" : "0" : " " target(target_destination) : "Target" : "" : " " speed(float) : "Speed" : "0" : " " spawnflags(integer) : "Spawn Flags" : 0 : " " ] @PointClass base(DotaBase) = info_courier_spawn_radiant [ ] @PointClass base(DotaBase) = info_courier_spawn_dire [ ] @PointClass base(DotaBase) iconsprite("materials/vgui/achievements/dota_multiple_runes.vtf") = dota_item_rune_spawner [ ] @BaseClass base(DotaBase) = BaseShop [ shoptype(choices) : "Shop Type" : 0 : " " = [ 0 : "Default" 1 : "Side Shop" 2 : "Secret Shop" ] ] @SolidClass base(BaseShop, EnableDisable, Trigger) = trigger_shop [ ] @PointClass base(BaseShop, prop_dynamic_base) = ent_dota_shop [ ] @PointClass base(DotaBase) = ent_fow_blocker_node [ ] @PointClass base(DotaBase) = dota_minimap_boundary [ ] @SolidClass base(DotaBase, RenderFields) = func_precipitation [ preciptype(choices) : "Percipitation Type" : 7 : " " = [ 0 : "Unknown0" 1 : "Unknwon1" 2 : "Unknown2" 3 : "Unknwon3" 4 : "Unknown4" 5 : "Unknwon5" 6 : "Unknown6" 7 : "Unknwon7" ] minSpeed(integer) : "Min Speed" : 25 : " " maxSpeed(integer) : "Max Speed" : 35 : " " ] @BaseClass base(DotaBase, RenderFields) = deferred_light_base [ start_falloff(float) : "Start Falloff" : ".15" : " " radius(float) : "Radius" : "512" : " " lightcolor(color255) : "Light Color" : "18 222 120" : " " intensity(float) : "Intensity" : ".5" : " " distance_falloff(float) : "Distance Falloff" : "10" : " " input TurnOn(void) input TurnOff(void) input LightColor(color255) input Intensity(float) input Radius(float) ] @PointClass base(deferred_light_base) iconsprite("editor/light.vtf") sphere() = env_deferred_light [ ] @PointClass base(deferred_light_base) iconsprite("editor/light.vtf") sphere() = env_deferred_spot_light [ spot_light_distance(float) : "Spot Light Distance" : "10" : " " spot_fov(float) : "Spot Light FOV" : "180" : " " ] @PointClass base(prop_dynamic_base) studio() = prop_dynamic_clientside [ ] @PointClass base(prop_dynamic_base) iconsprite("editor/env_particles.vtf") = dota_world_particle_system [ start_active(boolean) : "Start Active" : "1" : " " showatnight(boolean) : "Show At Night" : "1" : " " showatday(boolean) : "Show at day" : "1" : " " effect_name(string) : "Particle Name" : "blueTorch_flame" : " " dotaworldtype(integer) : "Dota world type" : 1 : " " cpoint0(string) : "Control Point 0" : "" : " " cpoint1(string) : "Control Point 1" : "" : " " cpoint2(string) : "Control Point 2" : "" : " " cpoint3(string) : "Control Point 3" : "" : " " cpoint4(string) : "Control Point 4" : "" : " " cpoint5(string) : "Control Point 5" : "" : " " cpoint6(string) : "Control Point 6" : "" : " " cpoint7(string) : "Control Point 7" : "" : " " cpoint8(string) : "Control Point 8" : "" : " " cpoint9(string) : "Control Point 9" : "" : " " cpoint10(string) : "Control Point 10" : "" : " " cpoint11(string) : "Control Point 11" : "" : " " cpoint12(string) : "Control Point 12" : "" : " " cpoint13(string) : "Control Point 13" : "" : " " cpoint14(string) : "Control Point 14" : "" : " " cpoint15(string) : "Control Point 15" : "" : " " cpoint16(string) : "Control Point 16" : "" : " " cpoint17(string) : "Control Point 17" : "" : " " cpoint18(string) : "Control Point 18" : "" : " " cpoint19(string) : "Control Point 19" : "" : " " cpoint20(string) : "Control Point 20" : "" : " " cpoint21(string) : "Control Point 21" : "" : " " cpoint22(string) : "Control Point 22" : "" : " " cpoint23(string) : "Control Point 23" : "" : " " cpoint24(string) : "Control Point 24" : "" : " " cpoint25(string) : "Control Point 25" : "" : " " cpoint26(string) : "Control Point 26" : "" : " " cpoint27(string) : "Control Point 27" : "" : " " cpoint28(string) : "Control Point 28" : "" : " " cpoint29(string) : "Control Point 29" : "" : " " cpoint30(string) : "Control Point 30" : "" : " " cpoint31(string) : "Control Point 31" : "" : " " cpoint32(string) : "Control Point 32" : "" : " " cpoint33(string) : "Control Point 33" : "" : " " cpoint34(string) : "Control Point 34" : "" : " " cpoint35(string) : "Control Point 35" : "" : " " cpoint36(string) : "Control Point 36" : "" : " " cpoint37(string) : "Control Point 37" : "" : " " cpoint38(string) : "Control Point 38" : "" : " " cpoint39(string) : "Control Point 39" : "" : " " cpoint40(string) : "Control Point 40" : "" : " " cpoint41(string) : "Control Point 41" : "" : " " cpoint42(string) : "Control Point 42" : "" : " " cpoint43(string) : "Control Point 43" : "" : " " cpoint44(string) : "Control Point 44" : "" : " " cpoint45(string) : "Control Point 45" : "" : " " cpoint46(string) : "Control Point 46" : "" : " " cpoint47(string) : "Control Point 47" : "" : " " cpoint48(string) : "Control Point 48" : "" : " " cpoint49(string) : "Control Point 49" : "" : " " cpoint50(string) : "Control Point 50" : "" : " " cpoint51(string) : "Control Point 51" : "" : " " cpoint52(string) : "Control Point 52" : "" : " " cpoint53(string) : "Control Point 53" : "" : " " cpoint54(string) : "Control Point 54" : "" : " " cpoint55(string) : "Control Point 55" : "" : " " cpoint56(string) : "Control Point 56" : "" : " " cpoint57(string) : "Control Point 57" : "" : " " cpoint58(string) : "Control Point 58" : "" : " " cpoint59(string) : "Control Point 59" : "" : " " cpoint60(string) : "Control Point 60" : "" : " " cpoint61(string) : "Control Point 61" : "" : " " cpoint62(string) : "Control Point 62" : "" : " " cpoint63(string) : "Control Point 63" : "" : " " cpoint1_parent(integer) : "Control Point 1 Parent" : 0 : " " cpoint2_parent(integer) : "Control Point 2 Parent" : 0 : " " cpoint3_parent(integer) : "Control Point 3 Parent" : 0 : " " cpoint4_parent(integer) : "Control Point 4 Parent" : 0 : " " cpoint5_parent(integer) : "Control Point 5 Parent" : 0 : " " cpoint6_parent(integer) : "Control Point 6 Parent" : 0 : " " cpoint7_parent(integer) : "Control Point 7 Parent" : 0 : " " ] @PointClass base(DotaBase, DotaTeam, prop_dynamic_base) studio() = dota_prop_customtexture [ ] @SolidClass base(Origin, EnableDisable, Trigger) = trigger_boss_attackable [ ] @PointClass base(DotaBase) = npc_dota_neutral_spawner [ VolumeName(target_destination) : "Spawn Box Name" : "" : "Target func_trigger for determining if a unit is nearby to decide when to spawn a unit" NeutralType(choices) : "Neutral Camp Type" : 0 : " " = [ 0 : "Easy Camp" 1 : "Medium Camp" 2 : "Hard Camp" 3 : "Ancients" ] ForcedSubType(choices) : "Forced Sub Type" : 0 : " " = [ -1 : "Any" 0 : "Type0" 1 : "Type1" 2 : "Type2" 3 : "Type3" 4 : "Type4" 5 : "Type5" ] BatchLimit(integer) : "Batch Limit" : 5 : " " output OnSpawnerExhausted(void) : "Fires when the spawner is exhausted" ] @PointClass base(prop_dynamic_base) = ent_dota_halloffame [ ] @BaseClass base(Origin, Targetname, DotaTeam) = DotaSpawnerBase [ NPCScriptName(string) : "NPC Script Name" : "" : " " NPCUniqueName(string) : "NPC Unique Name" : "" : " " NPCFirstWaypoint(target_destination) : "First Waypoint" : "" : "Must target a path_corner" input SpawnNPCFromScript(integer) : "Spawn X npcs from the script." ] @PointClass base(DotaSpawnerBase) = npc_dota_scripted_spawner [ ] @PointClass base(DotaSpawnerBase) = npc_dota_spawner [ ] @PointClass base(DotaSpawnerBase) = npc_dota_spawner_good_bot [ ] @PointClass base(DotaSpawnerBase) = npc_dota_spawner_good_mid [ ] @PointClass base(DotaSpawnerBase) = npc_dota_spawner_good_top [ ] @PointClass base(DotaSpawnerBase) = npc_dota_spawner_bad_bot [ ] @PointClass base(DotaSpawnerBase) = npc_dota_spawner_bad_top [ ] @PointClass base(DotaSpawnerBase) = npc_dota_spawner_bad_mid [ ] @PointClass base(DotaBase) = npc_dota_roshan_spawner [ ] @PointClass base(DotaBase, EnableDisable) = tutorial_npc_blocker [ other_blocker(target_destination) : "Other Blocker" : "" : " " Hidden(boolean) : "Hidden" : 1 : " " input Toggle(void) ] @PointClass base(Targetname) occluder(radius) color(255 0 0) = env_occluder : "A test entity for radius occluding for the Fog of War system." [ radius(float) : "Radius" : 128 : "The radius around this occluder." ] @PointClass base(Targetname) line_occluder(radius) color(255 0 0) = env_line_occluder : "A test entity for line occluding for the Fog of War system." [ radius(float) : "Radius" : 128 : "The radius around this occluder." ] @PointClass base(Targetname) viewer(radius) color(0 255 0) = env_viewer : "A test entity for viewing for the Fog of War system." [ radius(float) : "Radius" : 256 : "The radius around this viewer." ] @PointClass base(Targetname, EnableDisable) sphere(minfalloff) sphere(maxfalloff) iconsprite("editor/color_correction.vmt") = dota_color_correction : "An entity to control the color correction in the map." [ minfalloff(float) : "Min Radius" : "200.0" : "This is the distance at which this color correction is in 100% control" maxfalloff(float) : "Max Radius" : "400.0" : "This is the distance where this color correction starts taking effect." filename(string) : "Lookup Table Filename" : "" : "This is the lookup table filename" ] @PointClass base(Targetname) size(-1 -1 0, 1 1 1) color(80 150 225) studio("models/editor/overlay_helper.mdl") sphere(fademindist) sphere(fademaxdist) overlay() = info_overlay : "An entity that places an overlay on the world." [ material(material) : "Material" sides(sidelist) : "Brush faces" RenderOrder(integer) : "Render Order" : 0 : "Higher values render after lower values. This value can be 0-3." StartU(float) : "U Start" : "0.0" EndU(float) : "U End" : "1.0" StartV(float) : "V Start" : "0.0" EndV(float) : "V End" : "1.0" BasisOrigin(Vector) readonly : "Overlay Basis Origin(Read-Only)" BasisU(Vector) readonly : "Overlay Basis U(Read-Only)" BasisV(Vector) readonly : "Overlay Basis V(Read-Only)" BasisNormal(Vector) readonly : "Overlay Basis Normal(Read-Only)" uv0(vector) readonly : "Overlay Point 1(Read-Only)" uv1(vector) readonly : "Overlay Point 2(Read-Only)" uv2(vector) readonly : "Overlay Point 3(Read-Only)" uv3(vector) readonly : "Overlay Point 4(Read-Only)" fademindist(float) : "Start Fade Dist" : -1 : "Distance at which the overlay starts to fade (<0 = use fademaxdist)." fademaxdist(float) : "End Fade Dist" : 0 : "Maximum distance at which the overlay is visible (0 = don't fade out)." hideOnLV(boolean) : "Hide under Low Violence" : "0" : "When set to 1, this overlay is not displayed in Low-Violence mode." ]