Announcement

Collapse

Forum Rules

  • No flaming or derogatory remarks, directly or through insinuation.
  • No discussion, sharing or referencing illegal software such as hacks, keygen, cracks and pirated software.
  • No offensive contents, including but not limited to, racism, gore or pornography.
  • No excessive spam/meme, i.e. copious one liners in a short period of time, typing with all caps or posting meme responses (text/image).
  • No trolling, including but not limited to, flame incitation, user provocation or false information distribution.
  • No link spamming or signature advertisements for content not specific to Dota 2.
  • No Dota 2 key requests, sell, trade etc.
  • You may not create multiple accounts for any purpose, including ban evasion, unless expressly permitted by a moderator.

  • Please search before posting. One thread per issue. Do not create another thread if there is an existing one already.
  • Before posting anything, make sure you check out all sticky threads (e.g., this). Do not create new threads about closed ones.
  • It is extremely important that you post in correct forum section.

  • Balance discussion only in Misc.
  • All art related (such as hero model) feedbacks go to Art Feedback Forum.
  • All matchmaking feedback should go here: Matchmaking Feedback
  • All report/low priority issues should go here: Commend/Report/Ban Feedback
  • No specific workshop item feedback. These should go to workshop page of that item.
  • When posting in non-bugs section (such as this), use [Bugs], [Discussion] or [Suggestion] prefix in your thread name.



In case you object some action by a moderator, please contact him directly through PM and explain your concerns politely. If you are still unable to resolve the issue, contact an administrator. Do not drag these issues in public.



All rules are meant to augment common sense, please use them when not conflicted with aforementioned policies.
See more
See less

Custom hero from scratch?

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Custom hero from scratch?

    Hi
    I would like to know how can I create a new hero from scratch without overriding the current heroes :P

    since Valve has the posibility to add new hereos into the game, it should be possible, unless it's done in C?

  • #2
    I made an .txt file called "npc_heroes" in the script/npc folder, and i added this:
    Code:
    "DOTAHeroes"
    {
            "npc_dota_new_hero"
    	{
    		"Model"		"models/heroes/monkey_king/monkey_king.vmdl"
    		"Portrait"		"vgui/hud/heroportraits/portrait_riki"
    		"IdleExpression"		"scenes/monkey_king/monkey_king_exp_idle_01.vcd"
    		"SoundSet"		"Hero_MonkeyKing"
    		"PickSound"		"monkey_king_monkey_spawn_17"
    		"BanSound"		"monkey_king_monkey_anger_12"
    		"HeroSelectSoundEffect"		"Hero_MonkeyKing.Pick"
    		"Enabled"		"1"
    		"HeroUnlockOrder"		"2"
    		"Role"			"Carry,Escape,Disabler,Initiator"
    		"Rolelevels"	"2,2,1,1"
    		"Complexity"	"2"
    		"Team"		"Good"
    		"HeroID"		"115"
    		"NameAliases"		"mk"
    		"CMEnabled"		"1"
    		"ModelScale"		"0.8100"
    		"LoadoutScale"		"0.8100"
    		"AbilityLayout"		"6"
    		"workshop_guide_name"		"Monkey King"
    		"Ability1"		"monkey_king_boundless_strike"
    		"Ability2"		"monkey_king_tree_dance"
    		"Ability3"		"monkey_king_primal_spring"
    		"Ability4"		"monkey_king_primal_spring_early"
    		"Ability5"		"monkey_king_jingu_mastery"
    		"Ability6"		"monkey_king_mischief"
    		"Ability7"		"monkey_king_untransform"
    		"Ability8"		"monkey_king_wukongs_command"
    		"Ability10"		"special_bonus_attack_speed_20"
    		"Ability11"		"special_bonus_evasion_12"
    		"Ability12"		"special_bonus_hp_275"
    		"Ability13"		"special_bonus_unique_monkey_king_2"
    		"Ability14"		"special_bonus_attack_damage_40"
    		"Ability15"		"special_bonus_magic_resistance_20"
    		"Ability16"		"special_bonus_strength_25"
    		"Ability17"		"special_bonus_unique_monkey_king"
    		"ArmorPhysical"		"-3"
    		"AttackCapabilities"		"DOTA_UNIT_CAP_MELEE_ATTACK"
    		"AttackDamageMin"		"30"
    		"AttackDamageMax"		"36"
    		"AttackRate"		"1.700000"
    		"AttackAnimationPoint"		"0.45"
    		"AttackAcquisitionRange"		"600"
    		"AttackRange"		"300"
    		"AttributePrimary"		"DOTA_ATTRIBUTE_AGILITY"
    		"AttributeBaseStrength"		"18"
    		"AttributeStrengthGain"		"2.8"
    		"AttributeBaseIntelligence"		"20"
    		"AttributeIntelligenceGain"		"1.8"
    		"AttributeBaseAgility"	"22"
    		"AttributeAgilityGain"	"3.200000"
    		"StatusHealthRegen"		"1.50000"
    		"MovementSpeed"			"305"
    		"MovementTurnRate"		"0.600000"
    		"HasAggressiveStance"	"0"
    		"BoundsHullName"		"DOTA_HULL_SIZE_SMALL"
    		"particle_folder"		"particles/units/heroes/hero_monkey_king"
    		"GameSoundsFile"		"soundevents/game_sounds_heroes/game_sounds_monkey_king.vsndevts"
    		"VoiceFile"		"soundevents/voscripts/game_sounds_vo_monkey_king.vsndevts"
    		// Items
    		//-------------------------------------------------------------------------------------------------------------
    		"ItemSlots"
    		{
    			"0"
    			{
    				"SlotIndex"		"0"
    				"SlotName"		"weapon"
    				"SlotText"		"#LoadoutSlot_Weapon"
    				"TextureWidth"		"256"
    				"TextureHeight"		"256"
    				"MaxPolygonsLOD0"		"1000"
    				"MaxPolygonsLOD1"		"750"
    			}
    			"1"
    			{
    				"SlotIndex"		"1"
    				"SlotName"		"head"
    				"SlotText"		"#LoadoutSlot_Head_Accessory"
    				"TextureWidth"		"256"
    				"TextureHeight"		"256"
    				"MaxPolygonsLOD0"		"1000"
    				"MaxPolygonsLOD1"		"650"
    			}
    			"2"
    			{
    				"SlotIndex"		"2"
    				"SlotName"		"armor"
    				"SlotText"		"#LoadoutSlot_Armor"
    				"TextureWidth"		"512"
    				"TextureHeight"		"512"
    				"MaxPolygonsLOD0"		"3000"
    				"MaxPolygonsLOD1"		"1500"
    			}
    			"3"
    			{
    				"SlotIndex"		"3"
    				"SlotName"		"taunt"
    				"SlotText"		"#LoadoutSlot_Taunt"
    			}
    		}
    		"Bot"
    		{
    			"HeroType"		"DOTA_BOT_SEMI_CARRY | DOTA_BOT_GANKER"
    			"LaningInfo"
    			{
    				"SoloDesire"		"0"
    				"RequiresBabysit"		"2"
    				"ProvidesBabysit"		"0"
    				"SurvivalRating"		"2"
    				"RequiresFarm"		"2"
    				"ProvidesSetup"		"0"
    				"RequiresSetup"		"1"
    			}
    		}
    	}
    }
    and added "npc_dota_new_hero" "1" into herolist.txt

    the resulted in a new hero in the hero selecetion screen, with Monkey King abilities, but no portrait into the hero card, and unable to lock in with that hero (gray button)

    after I added an aditional .txt file called "activelist" with the content:
    Code:
    "whitelist"
    {
    	"npc_dota_hero_ancient_apparition" "1"
    	"npc_dota_hero_antimage" "1"
    	"npc_dota_hero_axe" "1"
    	"npc_dota_hero_bane" "1"
    	"npc_dota_hero_beastmaster" "1"
    	"npc_dota_hero_bloodseeker" "1"
    	"npc_dota_hero_chen" "1"
    	"npc_dota_hero_crystal_maiden" "1"
    	"npc_dota_hero_dark_seer" "1"
    	"npc_dota_hero_dazzle"	"1"
    	"npc_dota_hero_dragon_knight" "1"
    	"npc_dota_hero_doom_bringer" "1"
    	"npc_dota_hero_drow_ranger" "1"
    	"npc_dota_hero_earthshaker" "1"
    	"npc_dota_hero_enchantress" "1"
    	"npc_dota_hero_enigma" "1"
    	"npc_dota_hero_faceless_void" "1"
    	"npc_dota_hero_furion" "1"
    	"npc_dota_hero_juggernaut" "1"
    	"npc_dota_hero_kunkka" "1"
    	"npc_dota_hero_leshrac" "1"
    	"npc_dota_hero_lich" "1"
    	"npc_dota_hero_life_stealer" "1"
    	"npc_dota_hero_lina" "1"
    	"npc_dota_hero_lion" "1"
    	"npc_dota_hero_mirana" "1"
    	"npc_dota_hero_morphling" "1"
    	"npc_dota_hero_necrolyte" "1"
    	"npc_dota_hero_nevermore" "1"
    	"npc_dota_hero_night_stalker" "1"
    	"npc_dota_hero_omniknight" "1"
    	"npc_dota_hero_puck" "1"
    	"npc_dota_hero_pudge" "1"
    	"npc_dota_hero_pugna" "1"
    	"npc_dota_hero_rattletrap" "1"
    	"npc_dota_hero_razor" "1"
    	"npc_dota_hero_riki" "1"
    	"npc_dota_hero_sand_king" "1"
    	"npc_dota_hero_shadow_shaman" "1"
    	"npc_dota_hero_slardar" "1"
    	"npc_dota_hero_sniper" "1"
    	"npc_dota_hero_spectre" "1"
    	"npc_dota_hero_storm_spirit" "1"
    	"npc_dota_hero_sven" "1"
    	"npc_dota_hero_tidehunter" "1"
    	"npc_dota_hero_tinker" "1"
    	"npc_dota_hero_tiny" "1"
    	"npc_dota_hero_vengefulspirit" "1"
    	"npc_dota_hero_venomancer"  "1"
    	"npc_dota_hero_viper" "1"
    	"npc_dota_hero_weaver" "1"
    	"npc_dota_hero_windrunner" "1"
    	"npc_dota_hero_witch_doctor" "1"
    	"npc_dota_hero_zuus" "1"
    	"npc_dota_hero_broodmother" "1"
    	"npc_dota_hero_skeleton_king" "1"
    	"npc_dota_hero_queenofpain" "1"
    	"npc_dota_hero_huskar" "1"
    	"npc_dota_hero_jakiro" "1"
    	"npc_dota_hero_batrider" "1"
    	"npc_dota_hero_warlock" "1"
    	"npc_dota_hero_alchemist" "1"
    	"npc_dota_hero_death_prophet" "1"
    	"npc_dota_hero_ursa" "1"
    	"npc_dota_hero_bounty_hunter" "1"
    	"npc_dota_hero_silencer" "1"
    	"npc_dota_hero_spirit_breaker" "1"
    	"npc_dota_hero_invoker" "1"
    	"npc_dota_hero_clinkz" "1"
    	"npc_dota_hero_obsidian_destroyer" "1"
    	"npc_dota_hero_shadow_demon" "1"
    	"npc_dota_hero_lycan" "1"
    	"npc_dota_hero_lone_druid" "1"
    	"npc_dota_hero_brewmaster" "1"
    	"npc_dota_hero_phantom_lancer" "1"
    	"npc_dota_hero_treant" "1"
    	"npc_dota_hero_ogre_magi" "1"
    	"npc_dota_hero_chaos_knight" "1"
    	"npc_dota_hero_phantom_assassin" "1"
    	"npc_dota_hero_gyrocopter" "1"
    	"npc_dota_hero_rubick" "1"
    	"npc_dota_hero_luna" "1"
    	"npc_dota_hero_wisp" "1"
    	"npc_dota_hero_disruptor" "1"
    	"npc_dota_hero_undying" "1"
    	"npc_dota_hero_templar_assassin" "1"
    	"npc_dota_hero_naga_siren" "1"
    	"npc_dota_hero_nyx_assassin" "1"
    	"npc_dota_hero_keeper_of_the_light" "1"
    	"npc_dota_hero_visage" "1"
    	"npc_dota_hero_meepo" "1"
    	"npc_dota_hero_magnataur" "1"
    	"npc_dota_hero_centaur" "1"
    	"npc_dota_hero_slark" "1"
    	"npc_dota_hero_shredder" "1"
    	"npc_dota_hero_medusa" "1"
    	"npc_dota_hero_troll_warlord" "1"
    	"npc_dota_hero_tusk" "1"
    	"npc_dota_hero_bristleback" "1"
    	"npc_dota_hero_skywrath_mage" "1"
    	"npc_dota_hero_elder_titan" "1"
    	"npc_dota_hero_abaddon" "1"
    	"npc_dota_hero_earth_spirit" "1"
    	"npc_dota_hero_ember_spirit" "1"
    	"npc_dota_hero_legion_commander" "1"
    	"npc_dota_hero_phoenix" "1"
    	"npc_dota_hero_terrorblade" "1"
    	"npc_dota_hero_techies" "1"
    	"npc_dota_hero_oracle" "1"
    	"npc_dota_hero_winter_wyvern" "1"
    	"npc_dota_hero_arc_warden" "1"
    	"npc_dota_hero_abyssal_underlord" "1"
    	"npc_dota_hero_monkey_king" "1"
    	"npc_dota_new_hero"	"1"
    }
    still no portrait, but now i can click "lock in" but the game won't select the hero, nothing happens

    when i select any hero the console says:
    Code:
    [   Server               ]: PR:SetPossibleHeroSelection 0:[U:1:27045343] npc_dota_hero_razor(15)
    but when i try to select the new hero it says:
    Code:
    [   Server               ]: PR:SetPossibleHeroSelection 0:[U:1:27045343] none

    if I disable every hero except the new one, and i hit random hero, it selects it with:
    Code:
    [   Server               ]: PR:SetSelectedHero 0:[U:1:27045343] npc_dota_new_hero(115)
    but no entity spawns in the game (not printed by "entityreport" in console)

    Comment

    Working...
    X