Помогите пожалуйста со скилом

KaMalTher

Пользователь
12 Июн 2020
20
1
Проект
GIG_worlds
Помогите пожалуйста со скилом, а то я ещё зелёный, мало что понимаю.
В общем я создал скилл, который при прокачке юзает модификатор с дебафами на меня.
А мне нужно, чтобы он кастовался при использовании скилла и чтобы модификатор с дебафами работал на противников, а не на меня.
Вот код:
Lua:
    "KaRe"
    {
        "BaseClass"        "ability_datadriven"
        "AbilityBehavior"        "DOTA_ABILITY_BEHAVIOR_NO_TARGET | DOTA_ABILITY_BEHAVIOR_AOE"
        "AbilityType"        "DOTA_ABILITY_TYPE_ULTIMATE"
        "AbilityUnitTargetTeam"        "DOTA_UNIT_TARGET_TEAM_ENEMY"
        "AbilityTextureName"        "KaRe"

        "AbilityDuration"        "%duration"

        "AbilityCastPoint"        "0.5 0.5 0.5"
        "AbilityCooldown"        "30.0 25.0 20.0"
        "AbilityManaCost"        "100 200 300"
        "AOERadius"                "2500 5000 10000"
        
        "OnSpellStart"
        {
           "ApplyModifier"
           {
               "ModifierName"  "KaRe"
               "Target"        "TARGET"
               "Duration"      "%duration"
           }
        }
        "AbilitySpecial"
        {
            "01"
            {
                "var_type"          "FIELD_INTEGER"
                "m_speed"           "-35 -45 -55"
            }
            "02"
            {
                "var_type"          "FIELD_INTEGER"
                "a_speed"              "-35 -45 -55"
            }
            "03"
            {
                "var_type"          "FIELD_INTEGER"
                "int_m"             "-35 -45 -55"
            }
            "04"
            {
                "var_type"          "FIELD_FLOAT"
                "duration"          "10.0 15.0 20.0"
            }
        }
        "Modifiers"
        {
            "KaRe"
            {
                "Passive"        "1"
                "IsBuff"        "0"
                "IsDebuff"        "1"
                "IsHidden"        "0"
                "IsPurgable"    "0"
                "Duration"        "%duration"
                "Properties"
                {
                    "MODIFIER_PROPERTY_MOVESPEED_BONUS_PERCENTAGE"        "%m_speed"
                    "MODIFIER_PROPERTY_ATTACKSPEED_BONUS_CONSTANT"        "%a_speed"
                    "MODIFIER_PROPERTY_STATS_INTELLECT_BONUS"            "%int_m"
                }
            }
        }
    }
}
Я понимаю, что многого прошу, но не могли бы вы посоветовать мне гайды по созданию скилов, а то здесь в гайдах ссылки не рабочие или страница гайда не найдена.
 

vulkantsk

Супермодератор
Команда форума
21 Июн 2017
1,137
196
www.dotabuff.com
Проект
Roshan defense
Я понимаю, что многого прошу, но не могли бы вы посоветовать мне гайды по созданию скилов, а то здесь в гайдах ссылки не рабочие или страница гайда не найдена.
https://github.com/vulkantsk/SpellLibraryLua - библиотека способностей луа(актуальный формат)
https://github.com/Pizzalol/SpellLibrary - библиотека способностей датадривен(старый формат)
 
  • Нравится
Реакции: KaMalTher

vulkantsk

Супермодератор
Команда форума
21 Июн 2017
1,137
196
www.dotabuff.com
Проект
Roshan defense
  • Нравится
Реакции: KaMalTher

GOD

Пользователь
7 Янв 2019
51
2
Проект
Reborn in progress
Я же тебе это уже делал!
 

GOD

Пользователь
7 Янв 2019
51
2
Проект
Reborn in progress
 

DDSuper

Друзья CG
31 Май 2019
405
57
Помогите пожалуйста со скилом, а то я ещё зелёный, мало что понимаю.
В общем я создал скилл, который при прокачке юзает модификатор с дебафами на меня.
А мне нужно, чтобы он кастовался при использовании скилла и чтобы модификатор с дебафами работал на противников, а не на меня.
Вот код:
Lua:
    "KaRe"
    {
        "BaseClass"        "ability_datadriven"
        "AbilityBehavior"        "DOTA_ABILITY_BEHAVIOR_NO_TARGET | DOTA_ABILITY_BEHAVIOR_AOE"
        "AbilityType"        "DOTA_ABILITY_TYPE_ULTIMATE"
        "AbilityUnitTargetTeam"        "DOTA_UNIT_TARGET_TEAM_ENEMY"
        "AbilityTextureName"        "KaRe"

        "AbilityDuration"        "%duration"

        "AbilityCastPoint"        "0.5 0.5 0.5"
        "AbilityCooldown"        "30.0 25.0 20.0"
        "AbilityManaCost"        "100 200 300"
        "AOERadius"                "2500 5000 10000"
       
        "OnSpellStart"
        {
           "ApplyModifier"
           {
               "ModifierName"  "KaRe"
               "Target"        "TARGET"
               "Duration"      "%duration"
           }
        }
        "AbilitySpecial"
        {
            "01"
            {
                "var_type"          "FIELD_INTEGER"
                "m_speed"           "-35 -45 -55"
            }
            "02"
            {
                "var_type"          "FIELD_INTEGER"
                "a_speed"              "-35 -45 -55"
            }
            "03"
            {
                "var_type"          "FIELD_INTEGER"
                "int_m"             "-35 -45 -55"
            }
            "04"
            {
                "var_type"          "FIELD_FLOAT"
                "duration"          "10.0 15.0 20.0"
            }
        }
        "Modifiers"
        {
            "KaRe"
            {
                "Passive"        "1"
                "IsBuff"        "0"
                "IsDebuff"        "1"
                "IsHidden"        "0"
                "IsPurgable"    "0"
                "Duration"        "%duration"
                "Properties"
                {
                    "MODIFIER_PROPERTY_MOVESPEED_BONUS_PERCENTAGE"        "%m_speed"
                    "MODIFIER_PROPERTY_ATTACKSPEED_BONUS_CONSTANT"        "%a_speed"
                    "MODIFIER_PROPERTY_STATS_INTELLECT_BONUS"            "%int_m"
                }
            }
        }
    }
}
Я понимаю, что многого прошу, но не могли бы вы посоветовать мне гайды по созданию скилов, а то здесь в гайдах ссылки не рабочие или страница гайда не найдена.
Убери Passive здесь и зелёному заметно что это пассивка, а значит будет постоянно работать на кастера + тебе надо ещё добавить ActOnTargets
Example:

Код:
    "ActOnTargets"
       {
           "Target"
           {
               "Center"      "CASTER"
               "Radius"     "500" // В радиусе 500 ищет юнитов
               "Teams"     "DOTA_UNIT_TARGET_TEAM_ENEMY" // Какой команды искать юнитов
               "Types"     "DOTA_UNIT_TARGET_HERO | DOTA_UNIT_TARGET_BASIC" // Типы юнитов
           }
      
           "Action"   
           {
               "ApplyModifier"
            {
                "modifier_name"    "название_модификатора"
                "Target"    "TARGET"
                "Duration"    "%duration"
            }
            
           }
       }
и все оно будет работать на отлично
 
Реклама: