"DOTAAbilities"
{
    "Version"       "1"

	//=================================================================================================================
	// Rubick: Telekinesis
	//=================================================================================================================
	"rubick_telekinesis"
	{
	// General
		//-------------------------------------------------------------------------------------------------------------
		"AbilityBehavior"				"DOTA_ABILITY_BEHAVIOR_IGNORE_BACKSWING | DOTA_ABILITY_BEHAVIOR_UNIT_TARGET"
		"AbilityUnitTargetTeam"			"DOTA_UNIT_TARGET_TEAM_ENEMY"
		"AbilityUnitTargetType"			"DOTA_UNIT_TARGET_HERO | DOTA_UNIT_TARGET_BASIC"
		"SpellImmunityType"				"SPELL_IMMUNITY_ENEMIES_NO"
		"SpellDispellableType"			"SPELL_DISPELLABLE_YES_STRONG"

        "HasShardUpgrade"               "1"

		// Casting
		//-------------------------------------------------------------------------------------------------------------
		"AbilityCastPoint"				"0.1 0.1 0.1 0.1"

		// Time		
		//-------------------------------------------------------------------------------------------------------------


		// Cost
		//-------------------------------------------------------------------------------------------------------------
		"AbilityManaCost"				"110"
		
		// Cast Range
		//-------------------------------------------------------------------------------------------------------------
		"AbilityCastRange"				"550 575 600 625"

		// Special
		//-------------------------------------------------------------------------------------------------------------
		"AbilityValues"
		{
				"lift_duration"				
				{
					"value"			"0.95 1.2 1.45 1.7"
				}
				"stun_duration"				
				{
					"value"		"0.9 1.1 1.3 1.5"
				}

				"radius"					
				{
					"value"	"300 325 350 375"
					"affected_by_aoe_increase"	"1"
				}
				"max_land_distance"			
				{
					"value"			"375 375 375 375"
					"special_bonus_shard"		"+225"
				}
				"fall_duration"				"0.3 0.3 0.3 0.3"  // the portion of the lift that is falling
				"shard_max_land_distance_bonus_pct"			
				{
					"special_bonus_shard"		"50"
				}			
				"shard_cooldown_reduction_pct"			
				{
					"special_bonus_shard"		"0"
				}					
				"shard_teammate_throw_delay"			
				{
					"special_bonus_shard"		"0.5"
				}
				"AbilityCooldown"				
				{
					"value"		"22 19 16 13"
					"special_bonus_unique_rubick_4"			"-2"
				}
				"landing_damage"
				{
					"special_bonus_unique_rubick_8"		"300"
				}
				
		}
		"AbilityCastAnimation"		"ACT_DOTA_CAST_ABILITY_1"
	}	

	//=================================================================================================================
	// Rubick: Telekinesis Land
	//=================================================================================================================
	"rubick_telekinesis_land"
	{
		// General
		//-------------------------------------------------------------------------------------------------------------
		"AbilityBehavior"				"DOTA_ABILITY_BEHAVIOR_POINT | DOTA_ABILITY_BEHAVIOR_HIDDEN | DOTA_ABILITY_BEHAVIOR_IMMEDIATE | DOTA_ABILITY_BEHAVIOR_AOE | DOTA_ABILITY_BEHAVIOR_DONT_CANCEL_CHANNEL | DOTA_ABILITY_BEHAVIOR_DONT_CANCEL_MOVEMENT | DOTA_ABILITY_BEHAVIOR_IGNORE_CHANNEL"
		"MaxLevel"						"1"
		"AbilityCastAnimation"			"ACT_DOTA_CAST_ABILITY_1"

		// Special	
		//-------------------------------------------------------------------------------------------------------------
		"AbilityValues"
		{
				"radius"					
				{
					"value"		"300 325 350 375"
					"affected_by_aoe_increase"	"1"
				}
		}
	}

	//=================================================================================================================
	// Rubick: Telekinesis Land
	//=================================================================================================================
	"rubick_telekinesis_land_self"
	{
		// General
		//-------------------------------------------------------------------------------------------------------------
		"AbilityBehavior"				"DOTA_ABILITY_BEHAVIOR_POINT | DOTA_ABILITY_BEHAVIOR_HIDDEN | DOTA_ABILITY_BEHAVIOR_AOE | DOTA_ABILITY_BEHAVIOR_IMMEDIATE | DOTA_ABILITY_BEHAVIOR_IGNORE_PSEUDO_QUEUE"
		"MaxLevel"						"1"
		"AbilityCastAnimation"			"ACT_DOTA_CAST_ABILITY_1"

		// Special	
		//-------------------------------------------------------------------------------------------------------------
		"AbilityValues"
		{
				"radius"					
				{
					"value"		"300 325 350 375"
					"affected_by_aoe_increase"	"1"
				}
		}
	}

	//=================================================================================================================
	// Rubick: Fade Bolt
	//=================================================================================================================
	"rubick_fade_bolt"
	{
		// General
		//-------------------------------------------------------------------------------------------------------------
		"AbilityBehavior"				"DOTA_ABILITY_BEHAVIOR_UNIT_TARGET"
		"AbilityUnitTargetTeam"			"DOTA_UNIT_TARGET_TEAM_ENEMY"
		"AbilityUnitTargetType"			"DOTA_UNIT_TARGET_HERO | DOTA_UNIT_TARGET_BASIC"
		"AbilityUnitDamageType"			"DAMAGE_TYPE_MAGICAL"	
		"SpellImmunityType"				"SPELL_IMMUNITY_ENEMIES_NO"
		"SpellDispellableType"			"SPELL_DISPELLABLE_YES"
		"FightRecapLevel"				"1"
		"AbilitySound"					"Hero_Rubick.FadeBolt.Cast"

		// Casting
		//-------------------------------------------------------------------------------------------------------------
		"AbilityCastPoint"				"0.1 0.1 0.1 0.1"
		"AbilityCastAnimation"			"ACT_DOTA_CAST_ABILITY_3"

		// Cost
		//-------------------------------------------------------------------------------------------------------------
		"AbilityManaCost"				"110 125 140 155"
		
		// Cast Range
		//-------------------------------------------------------------------------------------------------------------
		"AbilityCastRange"				"800 800 800 800"

		// Stats
		//-------------------------------------------------------------------------------------------------------------
		"AbilityModifierSupportValue"	"0.35"	// can chain to multiple units

		// Special
		//-------------------------------------------------------------------------------------------------------------
		"AbilityValues"
		{
				"damage"					"85 165 245 325"
				"jump_damage_reduction_pct"	
				{
					"value"			"6"
					"CalculateSpellDamageTooltip"	"0"
					"DamageTypeTooltip"			"DAMAGE_TYPE_NONE"
				}
				"damage_reduction"	
				{
					"value"			"6 12 18 24"
					"special_bonus_unique_rubick_fade_bolt_spell_reduction" "+12"

					"CalculateSpellDamageTooltip"	"0"
					"DamageTypeTooltip"			"DAMAGE_TYPE_NONE"
				}
				
				
				"duration"					"9.0"
				"radius"					
				{
					"value"			"440"
					"affected_by_aoe_increase"	"1"
				}			
				"jump_delay"				"0.25 0.25 0.25 0.25"
				"AbilityCooldown"
				{
					"value"								"16 14 12 10"
					"special_bonus_unique_rubick_3"		"-4"
				}
				"steals_damage"						"0"
		}
	}	

	//=================================================================================================================
	// Rubick: Null Field
	//=================================================================================================================
	"rubick_null_field"
	{
		// General
		//-------------------------------------------------------------------------------------------------------------
		"AbilityBehavior"				"DOTA_ABILITY_BEHAVIOR_NO_TARGET | DOTA_ABILITY_BEHAVIOR_IMMEDIATE | DOTA_ABILITY_BEHAVIOR_IGNORE_CHANNEL"

		// Casting
		//-------------------------------------------------------------------------------------------------------------
		"AbilityCastAnimation"			"ACT_DOTA_CAST_ABILITY_4"
		"AbilityCastGestureSlot"		"DEFAULT"
		"IsBreakable"					"1"

		// Time		
		//-------------------------------------------------------------------------------------------------------------
		"AbilityCooldown"				"30"
		"AbilityValues"
		{
			"magic_damage_reduction_pct"
			{
				"value" "10 14 18 22"
			}
			"radius"
			{
				"value" "1200"
			}
		}
	}

	//=================================================================================================================
	// Rubick: Arcane Supremacy
	//=================================================================================================================
	"rubick_arcane_supremacy"
	{
		// General
		//-------------------------------------------------------------------------------------------------------------
		"AbilityBehavior"				"DOTA_ABILITY_BEHAVIOR_PASSIVE"
		"IsBreakable"				"1"

		// Special
		//-------------------------------------------------------------------------------------------------------------
		"AbilityValues"
		{
			"cast_range"					"60 120 180 240"
			"spell_amp"						
			{
				"value"												"11 16 21 26"
				"special_bonus_unique_rubick_arcane_supremacy"		"+7"
			}
		}
	}


	//=================================================================================================================
	// Ability: Might and Magus (bonus attack damage from spell amp)
	//=================================================================================================================
	"rubick_might_and_magus"
	{
		// General
		//-------------------------------------------------------------------------------------------------------------
		"AbilityBehavior"				"DOTA_ABILITY_BEHAVIOR_PASSIVE | DOTA_ABILITY_BEHAVIOR_INNATE_UI"
		"MaxLevel"						"1"
		"Innate"						"1"
		"IsBreakable"					"1"

		// Special
		//-------------------------------------------------------------------------------------------------------------
		"AbilityValues"
		{
			"aoe_bonus"					"15"
			"magic_resist_bonus"		"0"	
			"aoe_bonus_duration"		"20"
		}
	}

	//=================================================================================================================
	// Ability: Curiosity
	//=================================================================================================================
	"rubick_curiosity"
	{
		// General
		//-------------------------------------------------------------------------------------------------------------
		"AbilityBehavior"				"DOTA_ABILITY_BEHAVIOR_PASSIVE | DOTA_ABILITY_BEHAVIOR_FORCE_NO_INNATE_UI | DOTA_ABILITY_BEHAVIOR_HIDDEN"
		"MaxLevel"						"1"
		"Innate"						"1"
		"IsBreakable"					"1"

		// Special
		//-------------------------------------------------------------------------------------------------------------
		"AbilityValues"
		{
			"curiosity_per_spell_cast"				"2"
			"curiosity_duration"					"20"
			"curiosity_per_level"					"1"
			

			"curiosity_attack_damage"				"1"
			"curiosity_modifier_amp"					"0.3"
			"curiosity_aoe_bonus"					"2"

			"curiosity_per_kill"					"1"
			"grace_period"							"3"
			"curiosity_factor"				
			{
				"value"															"0"
				"special_bonus_unique_rubick_curiosity_factor"			"+1.5"
			}

			"charge_radius"			
			{
				"value"		"1200"
				"affected_by_aoe_increase"	"1"
			}

			"curiosity_permanent_gain"
			{
				"dynamic_value"			"true"
			}
			"current_debuff_amp"
			{
				"dynamic_value"			"true"
			}
			"current_aoe_bonus"
			{
				"dynamic_value"			"true"
			}
		}

	}

	//=================================================================================================================
	// Rubick: Spell Steal
	//=================================================================================================================
	"rubick_spell_steal"
	{
		// General
		//-------------------------------------------------------------------------------------------------------------
		"AbilityBehavior"				"DOTA_ABILITY_BEHAVIOR_UNIT_TARGET"
		"AbilityUnitTargetTeam"			"DOTA_UNIT_TARGET_TEAM_ENEMY"
		"AbilityUnitTargetType"			"DOTA_UNIT_TARGET_HERO"
		"AbilityUnitTargetFlags"		"DOTA_UNIT_TARGET_FLAG_MAGIC_IMMUNE_ENEMIES | DOTA_UNIT_TARGET_FLAG_NOT_CREEP_HERO"
		"SpellImmunityType"				"SPELL_IMMUNITY_ENEMIES_YES"
		"SpellDispellableType"			"SPELL_DISPELLABLE_NO"
		"AbilitySound"					"Hero_Rubick.SpellSteal.Cast"

		"AbilityType"					"ABILITY_TYPE_ULTIMATE"
		"FightRecapLevel"				"1"

		"HasScepterUpgrade"			"1"
        	"HasShardUpgrade"               "1"

		// Casting
		//-------------------------------------------------------------------------------------------------------------
		"AbilityCastPoint"				"0.1 0.1 0.1"
		"AbilityCastAnimation"			"ACT_DOTA_CAST_ABILITY_7"

		// Time		
		//-------------------------------------------------------------------------------------------------------------
		"AbilityCooldown"				"16 10 4"

		// Cost
		//-------------------------------------------------------------------------------------------------------------
		"AbilityManaCost"				"25 25 25"
		
		// Cast Range
		//-------------------------------------------------------------------------------------------------------------
		"AbilityCastRange"				"1000 1000 1000"

		// Special
		//-------------------------------------------------------------------------------------------------------------
		"AbilityValues"
		{
			"cast_range_scepter"			
			{
				"special_bonus_scepter"					"1400"
			}
			"projectile_speed"				"1500"
			"stolen_debuff_amp"				"0"
			"stolen_mana_reduction"			
			{
				"value"									"0"
				"special_bonus_unique_rubick_6"			"+40"	
			}
	
			"stolen_spell_cooldown_percent"
			{
				"value"									"10 20 30"
				
			}
			"spell_amp_percent"
			{
				"special_bonus_unique_rubick_5"			"40"
			}
			"duration"
			{
				"value"									"180 240 300"
			}

			"curiosity_steal_factor"			
			{
				"value"						"1"
			}
		}
	}	

	//=================================================================================================================
	// Rubick: Empty 1
	//=================================================================================================================
	"rubick_empty1"
	{
		// General
		//-------------------------------------------------------------------------------------------------------------
		"AbilityBehavior"				"DOTA_ABILITY_BEHAVIOR_PASSIVE | DOTA_ABILITY_BEHAVIOR_NOT_LEARNABLE"
		"MaxLevel"						"0"
		"AbilityCastAnimation"			"ACT_DOTA_CAST_ABILITY_5"
	}

	//=================================================================================================================
	// Rubick: Empty 2
	//=================================================================================================================
	"rubick_empty2"
	{
		// General
		//-------------------------------------------------------------------------------------------------------------
		"AbilityBehavior"				"DOTA_ABILITY_BEHAVIOR_PASSIVE | DOTA_ABILITY_BEHAVIOR_NOT_LEARNABLE"
		"MaxLevel"						"0"
		"AbilityCastAnimation"			"ACT_DOTA_CAST_ABILITY_6"
	}

	//=================================================================================================================
	// Rubick: Hidden 1 
	//=================================================================================================================
	"rubick_hidden1"
	{
		// General
		//-------------------------------------------------------------------------------------------------------------
		"AbilityBehavior"				"DOTA_ABILITY_BEHAVIOR_HIDDEN | DOTA_ABILITY_BEHAVIOR_NOT_LEARNABLE"
		"MaxLevel"						"0"
		"AbilityCastAnimation"			"ACT_INVALID"
	}

	//=================================================================================================================
	// Rubick: Hidden 2
	//=================================================================================================================
	"rubick_hidden2"
	{
		// General
		//-------------------------------------------------------------------------------------------------------------
		"AbilityBehavior"				"DOTA_ABILITY_BEHAVIOR_HIDDEN | DOTA_ABILITY_BEHAVIOR_NOT_LEARNABLE"
		"MaxLevel"						"0"
		"AbilityCastAnimation"			"ACT_INVALID"
	}

	//=================================================================================================================
	// Rubick: Hidden 3
	//=================================================================================================================
	"rubick_hidden3"
	{
		// General
		//-------------------------------------------------------------------------------------------------------------
		"AbilityBehavior"				"DOTA_ABILITY_BEHAVIOR_HIDDEN | DOTA_ABILITY_BEHAVIOR_NOT_LEARNABLE"
		"MaxLevel"						"0"
		"AbilityCastAnimation"			"ACT_INVALID"
	}
	//=================================================================================================================
	// Rubick: Hidden 4
	//=================================================================================================================
	"rubick_hidden4"
	{
		// General
		//-------------------------------------------------------------------------------------------------------------
		"AbilityBehavior"				"DOTA_ABILITY_BEHAVIOR_HIDDEN | DOTA_ABILITY_BEHAVIOR_NOT_LEARNABLE"
		"MaxLevel"						"0"
		"AbilityCastAnimation"			"ACT_INVALID"
	}
	//=================================================================================================================
	// Rubick: Hidden 5
	//=================================================================================================================
	"rubick_hidden5"
	{
		// General
		//-------------------------------------------------------------------------------------------------------------
		"AbilityBehavior"				"DOTA_ABILITY_BEHAVIOR_HIDDEN | DOTA_ABILITY_BEHAVIOR_NOT_LEARNABLE"
		"MaxLevel"						"0"
		"AbilityCastAnimation"			"ACT_INVALID"
	}
}
