Page 1 of 16 1 2 3 11 ... LastLast
Results 1 to 10 of 157

Thread: Data Files

  1. #1
    Administrator IceFrog's Avatar
    Join Date
    Sep 2011
    Posts
    630

    Data Files

    There are a class of bugs that you guys have helped us find that are caused by incorrect data values, like Vanguard having the wrong percentage or power treads having the wrong attack speed. One way to speed up the discovery of these bugs is to reference the data files directly for discrepancies between Dota1 and Dota2. The files are located here:

    C:\Program Files (x86)\Steam\steamapps\common\dota 2 beta\dota\scripts\npc\

    Item data: items.txt
    Ability data: npc_abilities.txt
    Hero data: npc_heroes.txt
    Units data: npc_units.txt

    If you find any differences between the source data and what they are in Dota1, please post in this thread to let us know.



    Edit (DLRevan): Currently, the data files, as well as all other scripts, are now found inside the VPK files in the Dota 2 directory. You may use a tool such as GCFScape to open these files and view the scripts.
    It is recommended not to attempt editing anything in the VPK files. If you do, you do so at your own risk

    For convenience of this thread, attached are the latest version of the above listed data files. (Update 4th Jan)

    Edit2 (Bu3ny): The current npc files can be found here.
    Attached Files Attached Files
    Last edited by bu3ny; 02-14-2015 at 11:11 AM.

  2. #2
    Basic Member
    Join Date
    Dec 2011
    Posts
    11,187
    just curious, why didnt you parse those information out of your playdota.com database in the first place?

    not sure, i got it right, but shouldnt
    "item_blink" have "DOTA_ABILITY_BEHAVIOR_ITEM = 256 : This ability is tied up to an item." in items.txt?

    edit: seems that DOTA_ABILITY_BEHAVIOR_ITEM isnt used at all. what kind of ability is it meant for?

    the format is also really weird.

    from a software engineering standpoint the implicated difference between active and passive AbilitySpecials by hardcoded names, is also a bit wierd.

    example: dagon has bonus_intellect, bonus_all_stats and bonus_damage as passives, damage however is active. armlet is even worse ("unholy_bonus_strength").
    Code:
    		"AbilitySpecial"
    		{
    			"01"
    			{
    				"var_type"				"FIELD_INTEGER"
    				"bonus_intellect"		"13 15 17 19 21"
    			}
    			"02"
    			{
    				"var_type"				"FIELD_INTEGER"
    				"bonus_all_stats"		"3"
    			}
    			"03"
    			{
    				"var_type"				"FIELD_INTEGER"
    				"bonus_damage"			"9"
    			}
    			"04"
    			{
    				"var_type"				"FIELD_INTEGER"
    				"damage"				"400 500 600 700 800"
    			}
    		}
    the abilities file seems incomplete.

    Lion's impale has no indication, that it stuns the affected targets. the only indication is the "duration" field, but voodoo has only "duration" too, so it cant be implicated in this case. take note, that impale has a different damage indication than dagon (AbilityDamage).



    Code:
    //=================================================================================================================
    	// Lion: Impale
    	//=================================================================================================================
    	"lion_impale"
    	{
    		// General
    		//-------------------------------------------------------------------------------------------------------------
    		"ID"					"5044"														// unique ID number for this ability.  Do not change this once established or it will invalidate collected stats.
    		"AbilityName"					"lion_impale"
    		"AbilityBehavior"				"DOTA_ABILITY_BEHAVIOR_POINT | DOTA_ABILITY_BEHAVIOR_UNIT_TARGET"
    		"AbilityUnitTargetTeam"			"DOTA_UNIT_TARGET_TEAM_ENEMY"
    		"AbilityUnitTargetType"			"DOTA_UNIT_TARGET_HERO | DOTA_UNIT_TARGET_BASIC"
    		"AbilityUnitDamageType"			"DAMAGE_TYPE_MAGICAL"	
    
    		// Casting
    		//-------------------------------------------------------------------------------------------------------------
    		"AbilityCastRange"				"500"
    		"AbilityCastPoint"				"0.3 0.3 0.3 0.3"
    		
    		// Time		
    		//-------------------------------------------------------------------------------------------------------------
    		"AbilityCooldown"				"12.0 12.0 12.0 12.0"
    
    		// Cost
    		//-------------------------------------------------------------------------------------------------------------
    		"AbilityManaCost"				"100 120 145 170"
    		
    		// Damage.
    		//-------------------------------------------------------------------------------------------------------------
    		"AbilityDamage"					"60 130 200 260"
    		
    		// Special
    		//-------------------------------------------------------------------------------------------------------------
    		"AbilitySpecial"
    		{
    			"01"
    			{
    				"var_type"			"FIELD_INTEGER"
    				"width"				"125 125 125 125"
    			}
    			"02"
    			{	
    				"var_type"			"FIELD_FLOAT"
    				"duration"			"1.02 1.52 2.02 2.52"
    			}
    			"03"
    			{
    				"var_type"			"FIELD_INTEGER"
    				"length"			"825 825 825 825"
    			}
    			"04"
    			{
    				"var_type"			"FIELD_INTEGER"
    				"speed"				"1600 1600 1600 1600"
    			}
    		}
    	}
    also some abilities have additional behavior, that isnt declared in the top introduction (e.g. DOTA_ABILITY_BEHAVIOR_ROOT_DISABLES) and is not performed by any spells.


    Code:
    "HeroUnlockOrder"			"1"
    o.O?
    Last edited by blash365; 05-01-2012 at 08:20 PM.
    Make sure to read the Forum Rules as well as the stickied Threads of the Forum Section you are posting in.

    Contributions i'd like to highlight:
    My Suggestion: Coaching System
    My Sticky: Intended Changes List
    My Challenge: Completely Fixed Hero Challenge: Skywrath Mage

  3. #3
    Basic Member kivy58's Avatar
    Join Date
    Dec 2011
    Posts
    400
    gj

  4. #4
    Banned
    Join Date
    Sep 2011
    Posts
    12,296
    @blash365,
    although I agree with you, I think IceFrog didn't meant that we should criticize their weird format decisions (we don't know what reasons are for them), but rather just look at the values.
    Or am I wrong?
    Does the client even use those files?

  5. #5
    Basic Member
    Join Date
    Dec 2011
    Posts
    104
    not sure but i think that those are the values that is shown in the tooltip but i might be wrong

  6. #6
    Basic Member
    Join Date
    Dec 2011
    Posts
    34
    Would someone do me a huge favor and upload these temporarily for me? I don't have Dota2 installed at my work computer but I have a program I made for another game of this genre that I should be able to adapt to sorting and parsing this. I like having handy references to every mechanic and ability in the game.

  7. #7
    Basic Member Evol's Avatar
    Join Date
    Sep 2011
    Posts
    629
    Quote Originally Posted by m72thelaw View Post
    Would someone do me a huge favor and upload these temporarily for me?
    Here you go: npc.zip.

  8. #8
    Basic Member
    Join Date
    Dec 2011
    Posts
    11,187
    Quote Originally Posted by Typhox View Post
    @blash365,
    although I agree with you, I think IceFrog didn't meant that we should criticize their weird format decisions (we don't know what reasons are for them), but rather just look at the values.
    Or am I wrong?
    Does the client even use those files?
    i know, that criticizing software development is always annoying, when it comes from an outsider.

    but if half of the decoded information is implicated, its hard to find mistakes in it.
    either i have to assume that all the missing information is hardcoded (stuns, hex, etc) or i have to make sure and report them here (which i just did).


    Quote Originally Posted by stdmtc View Post
    not sure but i think that those are the values that is shown in the tooltip but i might be wrong
    i doubt that castpoint will be part of the tooltipp (unless tooltipp information can be defined by each client).
    Last edited by blash365; 10-30-2012 at 09:58 PM.
    Make sure to read the Forum Rules as well as the stickied Threads of the Forum Section you are posting in.

    Contributions i'd like to highlight:
    My Suggestion: Coaching System
    My Sticky: Intended Changes List
    My Challenge: Completely Fixed Hero Challenge: Skywrath Mage

  9. #9
    Basic Member
    Join Date
    Dec 2011
    Posts
    34
    Quote Originally Posted by Evol View Post
    Here you go: npc.zip.
    Thanks, going to give me something useful to do at work today.

  10. #10
    Basic Member
    Join Date
    Dec 2011
    Posts
    104
    Quote Originally Posted by blash365 View Post
    i doubt that castpoint will be part of the tooltipp (unless tooltipp information can be defined by each client).
    well i hadnt checked them out since i where in school but y a little bit strange i guess.

    My second guess would be to make patches smaller by not having to change those files each time but it feels like a longshot

Tags for this Thread

Posting Permissions

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