刀塔地图编辑器吧 关注:335贴子:1,946

【技术向】探讨编辑器里的技能编辑

只看楼主收藏回复

机子太卡终于成功了一次,给TA加了斧王的吼

想做炫目的技能?
一点点来吧!
楼主不是大神 有错误的地方还望指出
楼主机器渣 测试会很慢!
ok 先教大家怎么来自定义自己的技能吧


IP属地:江苏1楼2014-08-10 11:40回复
    准备工作:
    1,首先基本是脚本工作,所以你得有一个合适的文本编辑器 用记事本也行 只要你不觉得蛋疼
    2,创建一个新的addon 这个大家应该都熟了
    3,创建好后系统会给一个默认的地图,我们就用这个地图做测试
    4,在你的电脑里找到这个addon 的文件夹
    完成以上工作 就可以开始编辑你的技能了


    IP属地:江苏2楼2014-08-10 11:42
    回复
      首先 用地图编辑器build地图 这样系统会我们生存许多必须的文件
      然后找到文件夹 打开scripts文件夹


      IP属地:江苏3楼2014-08-10 11:46
      收起回复

        然后打开npc文件夹 好了 技能什么的就在这里了


        IP属地:江苏4楼2014-08-10 11:47
        回复
          有必要说明下 这里的技能采用的是重载的方法,在刚开始所有数据都是默认的 也就是我们平常游戏那样
          然后如果你想要改变一个英雄的技能 那么你需要对英雄进行重载 当然属性也可以重载但是先不讨论


          IP属地:江苏5楼2014-08-10 11:48
          回复
            重载是很灵活的 如果我们只需要对以及能进行重载 那么其他技能是不会改变的
            这是我对圣堂刺客的的重载的代码
            可以看到我重载的项目有技能1 以及视野范围 除了这些其他都不会改变
            但是你这样运行会错误 应为没有"holdout_axe_berserkers_call" 这个技能
            你需要先去技能的文件里添加这个技能才行(样本在系统给个的holdout example里有)
            在技能文件里定义好该技能后 就可以运行就会有1楼的效果


            IP属地:江苏6楼2014-08-10 11:53
            回复
              //斧王吼技能
              "holdout_axe_berserkers_call"
              {
              // General
              //-------------------------------------------------------------------------------------------------------------
              "AbilityBehavior""DOTA_ABILITY_BEHAVIOR_NO_TARGET | DOTA_ABILITY_BEHAVIOR_DONT_RESUME_MOVEMENT"
              "BaseClass""axe_berserkers_call"
              "AbilityTextureName""axe_berserkers_call"
              // Casting
              //-------------------------------------------------------------------------------------------------------------
              "AbilityCastPoint""0.3 0.3 0.3 0.3"
              // Time
              //-------------------------------------------------------------------------------------------------------------
              "AbilityCooldown""10.0 10.0 10.0 10.0"
              // Damage.
              //-------------------------------------------------------------------------------------------------------------
              "AbilityDamage""0 0 0 0"
              // Cost
              //-------------------------------------------------------------------------------------------------------------
              "AbilityManaCost""60 70 80 90"
              // Special
              //-------------------------------------------------------------------------------------------------------------
              "AbilitySpecial"
              {
              "01"
              {
              "var_type""FIELD_INTEGER"
              "radius""275 300 325 350"
              }
              "02"
              {
              "var_type""FIELD_INTEGER"
              "bonus_armor""40"
              }
              "03"
              {
              "var_type""FIELD_FLOAT"
              "duration""2.5 3.25 4.0 4.75"
              }
              }
              }


              IP属地:江苏7楼2014-08-10 11:53
              回复
                我在单机


                IP属地:江苏8楼2014-08-10 11:55
                收起回复


                  来自Android客户端9楼2014-08-10 11:59
                  回复
                    下面是对技能里的代码进行一些分析
                    // Casting
                    //-------------------------------------------------------------------------------------------------------------
                    "AbilityCastPoint""0.3 0.3 0.3 0.3"
                    施法前摇?(等会儿测试下)后面4格数字与四个等级对应
                    // Time
                    //-------------------------------------------------------------------------------------------------------------
                    "AbilityCooldown""10.0 10.0 10.0 10.0"
                    // Damage.
                    //-------------------------------------------------------------------------------------------------------------
                    "AbilityDamage""0 0 0 0"
                    // Cost
                    //-------------------------------------------------------------------------------------------------------------
                    "AbilityManaCost""60 70 80 90"
                    分别是 冷却时间 伤害 耗蓝


                    IP属地:江苏10楼2014-08-10 12:01
                    回复
                      下面是测试上面的言论
                      首先这个改大一点
                      // Casting
                      //-------------------------------------------------------------------------------------------------------------
                      "AbilityCastPoint""3 3 3 3"
                      这个改小点
                      // Time
                      //-------------------------------------------------------------------------------------------------------------
                      "AbilityCooldown""5 5 10.0 10.0"
                      // Cost
                      //-------------------------------------------------------------------------------------------------------------
                      "AbilityManaCost""0 0 80 90"
                      好了 我去测试下


                      IP属地:江苏11楼2014-08-10 12:02
                      回复

                        事实证明 我的猜想是正确的(跟上文给的修改数据不一样是我偷懒了)
                        施法前摇的想法也是对的


                        IP属地:江苏12楼2014-08-10 12:08
                        回复
                          为了不打扰楼主直播,我还是不回复了(我这是不回复???不然楼主以为在单机。)


                          13楼2014-08-10 12:10
                          回复
                            继续往下看
                            "AbilitySpecial"
                            {
                            "01"
                            {
                            "var_type""FIELD_INTEGER"
                            "radius""275 300 325 350"
                            }
                            //范围 也就是你能吼道的范围 radius是半径
                            "02"
                            {
                            "var_type""FIELD_INTEGER"
                            "bonus_armor""40"
                            }
                            //这个是额外护甲 也就是..你懂的
                            "03"
                            {
                            "var_type""FIELD_FLOAT"
                            "duration""2.5 3.25 4.0 4.75"
                            }
                            //持续时间 玩过dota的都懂
                            }


                            IP属地:江苏14楼2014-08-10 12:12
                            回复
                              其实这里跟WE有点像了 只不过更灵活而且是放在代码里 所以上手难度有点大 但是如果吃透了灵活性也是非常高的
                              现在做什么呢 在技能效果里添加一些其他英雄的技能效果 比如说 风行者的风步
                              "04"
                              {
                              "var_type""FIELD_INTEGER"
                              "enemy_movespeed_bonus_pct""-10 -20 -30 -40"
                              }
                              插入这段代码 继续测试去


                              IP属地:江苏15楼2014-08-10 12:16
                              回复