合肥论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 128|回复: 0

DOTA2自定义地图怎样修改英雄属性 属性修改方法

[复制链接]
发表于 2021-10-4 12:13:37 | 显示全部楼层 |阅读模式
最近dota2自定义地图编辑器的放出给玩家带来了新的游戏玩法体验,玩家也可以自己diy想要的地图了,可能很多玩家对英雄属性的修改还不了解,下面是详细修改方法分享。
下面是一些简单的修改英雄数据的方法,适合新人。
1、首先找到自定义地图的npc文档。如下图,红色部分是你的自定义地图的名字:

2、打开npc文档里面的"npc_heroes_custom.txt"文件。这个文件就是用来对英雄的属性进行修改,类似war3的WE物编里面对英雄的修改。
3、下面以Zuus宙斯为例让大家有个更加直观的认识:

对上图进行简单的分析:
1)任何在“//”后面输入的东西都会被程序忽略,也就是可以用来做注释。这一点跟Jass的注释符一样。
2)“HERO: Zuus”:这一行没有实际意义,只是注释。友情提示:良好的注释习惯有利于程序的编写、增加易读性和bug的排查。
3)"npc_dota_hero_zuus_holdout":据我的理解"npc_dota_hero_zuus"需要跟herolist.txt里面英雄的名字一致以保证调取无误,而"holdout"则是自定义地图的名字。
4)"override_hero"    "npc_dota_hero_zuus":这一行的意思是说正在修改的这个英雄将会替换掉dota里面的默认英雄:宙斯。现在似乎只能替换默认英雄而无法重新创建一个新英雄。
5)"Ability1"      "holdout_arc_lightning"; "Ability2"       "holdout_static_field"。。。。:从“Ability1"到"Ability 4”则是修改后的宙斯的技能。技能名字需要跟"npc_abilities_custom.txt"文件里面的技能名一致。另外,凡是列在这里的技能或多或少都是经过作者修改的,如果需要使用默认技能,则不需要改动。比如,如果只需要修改宙斯的第一个技能,则输入"Ability1"    "holdout_arc_lightning"即可,后面的“Ability2”可以不需要输入。
6)"VisionNighttimeRange"     "1800":这一行非常直观,指的是英雄的夜间视野。
记住,左边的部分,例如"Ability1",“VisionNighttimeRange"这些是指需要修改的项目;而右边的部分”holdout_static_field“,"1800"则是相对应的修改内容,格式都是如此。
上面就是简单的英雄属性修改。再附上一些常用的单位修改项(引号都使用英文的双引号,我为了写得快有些用了中文双引号,是不对的):
"Model":模型:例如塔的模型就是: "models/props_structures/tower_good.vmdl"
"ModelSclae":模型大小,例如“0.8”
"Level":等级,例如“1”
攻击相关:
"AttackCapabilities":攻击方式,例如远程应该就是”DOTA_UNIT_CAP_RANGED_ATTACK“
"AttackDamageMin"        : 最小伤害,例如“2”
"AttackDamageMax": 最大伤害,例如“10”
"AttackRate": 攻速        ,例如“1”
"AttackAnimationPoint":攻击动画释放点        ,例如“0.6”        
"AttackAcquisitionRange": 主动攻击范围,例如“700”                        
"AttackRange": 攻击范围,例如“700”                        
"ProjectileModel": 攻击投射物,如果是远程的话,例如"particles/base_attacks/ranged_tower_good.vpcf"        
"ProjectileSpeed": 投射物速度。例如”750“
"StatusHealth": 最大生命值,例如“1000”                                
"MovementSpeed":移动速度,例如“350”
"MovementTurnRage": 转身速度,例如”1.0“
"MovementCapabilities":移动方式,例如
"MagicalResistance": 魔法抗性        
"ArmorPhysical": 护甲的负数值。我对dota2的护甲系统不太了解,只是大概知道敏捷给予的护甲值最后需要减去这个ArmorPhysical才是最终护甲值,所以说这个数值越大英雄护甲越低。
属性相关:
"AttributePrimary": 主要属性,如果是力量则是"DOTA_ATTRIBUTE_STRENGTH"               
"AttributeBaseStrength":基础力量                                                                        
"AttributeStrengthGain": 每升一级增加的力量               
“AttributeBaseAgility": 基础敏捷                                                                        
"AttributeAgilityGain": 每升一级增加的敏捷               
"AttributeBaseIntelligence":基础智力                                                               
"AttributeIntelligenceGain": 每升一级增加的智力
"VisionDaytimeRange“: 白天的视野
可修改的项目还有很多,就不一一列举了。推荐新人多看看npc文档里面的各种.txt文件,有助于对Dota2地图结构的其中一部分设置有更好的了解。
更新:
作为一个完整的"npc_heros_custom.txt"文件,需要有以下格式:
"DOTAHeroes"
{
     //英雄1
    "英雄名字"
    {
          “各种设定”
           .................
    }
    //英雄2
    "英雄名字"
    {
          “各种设定”
           .................
    }
}
注意看大括号的运用。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|手机版|合肥论坛 |网站地图

GMT+8, 2024-4-27 05:28 , Processed in 2.436405 second(s), 22 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表