std::list 修改某个值_forOMG非英雄篇——如何修改数据以便于测试

0908f5591d92695f6da4ffe41caa6ce7.png

本文旨在告诉大家如何修改英雄的数值以方便进行测试。

本系列依次为

莫无煜:forOMG英雄篇——如何修改数据以便于测试​zhuanlan.zhihu.com
656c91f0ab4b6661f4a4ca7c782bbca1.png

《非英雄篇》、《技能篇》、《物品篇》。

可以被修改的数据可以被分为两类:很容易修改的(英雄、非英雄、技能)和比较复杂的(物品)。

“很容易修改的”数据十分简单,只需要以下几个步骤:

  1. 找到相应的Steam文件夹(使用完美的玩家,应该能在目录下找到Steam的文件夹)
  2. 然后在Steam的文件夹里打开以下路径:steamappscommondota 2 betagamedotascriptsnpc。比如笔者的Steam就在E盘里安装,所以直接打开E:Steamsteamappscommondota 2 betagamedotascriptsnpc就可以了。
  3. 然后在文件夹里有三个txt文件:npc_abilities.txt、npc_heroes.txt、npc_units.txt。这三个文件里分别存着“所有技能”、“英雄”、“非英雄单位”的部分数据。

9073b3af98085d1c4c60b2a3dd53f7a8.png
  1. 打开并修改需要的数据。
  2. 打开游戏(已经打开了也不要紧),打开试玩模式,或者自己创建房间,但一定要注意“服务器地点”一定要换成“本地主机”,只有这样修改才有效,否则官方服务器的数据可没有被更改。

3b042a819d2cc342a3a49607773100db.png
  1. 而且如果修改数据,请不要直接使用游廊内的SANDBOX地图,在游廊内开始RPG地图都是官方服务器,不会使用本地主机运行,自然修改也就失效了。

67895cd67ad4b7cc742abcd5688a7e18.png
  1. 思考并测试

接下来笔者将给大家简单分析一下,三个文件内究竟哪些数据对应哪些效果,同时哪些修改了是有用的,哪些修改了是没用的。

非英雄数据内部一共包含1组基础数据、254个非英雄单位。

基础数据主要是为了提供所有非英雄单位的共有属性。如果修改了基础数据的一个属性值,那么所有没有覆盖该属性的非英雄单位将会沿用这一属性。

所以我们先从基础数据开始,分析所有目前笔者已知的有价值的属性。

c35c6271da9ae31d95bc27b12429aa99.png

开头的代码名称(npc_dota_units_base)是在文件或输入指令时,该单位的姓名。一般我们在游戏内使用-createhero xxx (enemy)制造非英雄单位时,只需要输入该单位的这个名字,就可以创造一个独立的单位出来。这方便我们测试召唤物和中立生物的单位属性和技能效果。

1、General

df5b2847b4b4be5507313129ebae363c.png

这些信息和英雄的类似,但是非英雄单位的general中虽然没有太多的值得修改的属性,但是却有不少有用的信息。除去前三个外,从上到下依次为:单位等级(Level)、是否为远古单位(IsAncient)、是否为中立生物(IsNeutralUnitType)、感觉没用(SelectionGroup)、出生后被选中(SelectOnSpawn)、可否被支配(CanBeDominated)、是否忽视自动选择召唤物(IgnoreAddSummonedToSelection)、默认自动攻击(AutoAttacksByDefault)

单位等级(Level)就是个显示,因为等级不影响经济经验,所以几级都无所谓,只会导致个别技能对其可用/不可用。Roshan30级。

其它的参数基本上都比较容易理解,想要修改只需要把0改成1,或1改成0即可。

2、Abilities

926d574a6e1010b662d736ad98f8390e.png

非英雄的技能比较简单,基本上就是看得到的那几个。和英雄的操作没什么不同。但是有一点需要注意:不是所有非英雄单位都会自动学习技能,部分单位天生没有技能,也不学习技能,所以在给单位上技能后,很有可能因为不学技能,又没有技能点,而导致身上的技能没有意义。

3、Armor

6c8912af41891ec0c6117f4f94d62b6c.png

和英雄的完全相同,而且因为默认是0护甲、0%魔抗,又没有属性问题,所以修改的时候注意点没有那么多。视情况修改或复制即可。

4、Attack

ab5588e8f9b63847f869aea7f56b3a59.png

这些参数基本上在英雄里都有提及,所以重复的属性就不重复介绍了。从上到下依次为:近远程(AttackCapabilities)、攻击力下限(AttackDamageMin)、攻击力上限(AttackDamageMax)、不知道有什么用也没有找到这个属性值不同的单位(DAMAGE_TYPE_ArmorPhysical)、基础攻击间隔(AttackRate)、基础攻击前摇(AttackAnimationPoint)、警戒范围(AttackAcquisitionRange)、攻击范围(AttackRange)、前摇不中断攻击额外范围(AttackRangeBuffer)、弹道模型(ProjectileModel)、弹道速度(ProjectileSpeed)。

其中前摇不中断攻击额外范围(AttackRangeBuffer)需要单独提一下。以base为例,意味着如果在攻击前摇时,目标走到了600码开外,还没有走出(600+250=)850码时,前摇不会中断,而是会继续以完成弹道释放/攻击产生。而下一次攻击还是需要走到其600码内进行攻击。这个数值就是为了保证攻击的连续性,不会因为双方距离过于极限而连续中断攻击。

5、Attributes

28640e9282e55861f267f5fa76390dbc.png

不知道非英雄单位有属性有什么用,反正也表现不出来。就当作没有这一块儿吧~

6、Bounty

649071d8999aafcc4e73847008242b9d.png

表示非英雄单位提供的基础经济经验。从上到下依次是:经验获取(BountyXP)、金钱获取下限(BountyGoldMin)、金钱获取上限(BountyGoldMax)。

这三个参数本质上是基础值,至于小兵的成长效果在这几个文件内是查询不到的,所以不可能直接通过修改这几个参数来完全修改游戏的经济系统。

7、Bounds

aba1c59815c0ee0c50ccd948c42a0d3b.png

8、Movement

ba1ff796f40199d067bec08cfc3ce845.png

这几个属性也基本上都没怎么变。从上到下依次是:移动类型(MovementCapabilities)、移动速度(MovementSpeed)、转身速率(MovementTurnRate)、切换警戒/移动动作的距离(HasAggressiveStance)、跟随距离(FollowRange)

跟随距离,就是在使用M指定跟随时的跟随距离。如果超出了这个距离,那么单位将会向目标移动。

9、Status

7ff1a4a3da780bdfe010723653234724.png

这几个属性也和英雄相同,从上到下依次是:基础生命值(StatusHealth)、基础生命恢复(StatusHealthRegen)、基础魔法(StatusMana)、基础魔法恢复(StatusManaRegen)、出生时魔法值(StatusStartingMana)。

血蓝属性自不必说。出生时魔法值(StatusStartingMana)就是在单位被召唤或野怪被刷新时它的魔法值。可以修改。但是不能自造出生时生命值(StatusStartingHealth),这个没用。

10、Team

e165e06ac24dbdd27b62d89900296797.png

这个与英雄也基本相同。从上到下一次是:阵营(TeamName)、攻击类型(CombatClassAttack)、护甲类型(CombatClassDefend)、单位种类(UnitRelationshipClass)。

11、Vision

23cabbed8bc8e6c3021f41d5769f9d7e.png

同样的白天夜晚视野。

12、Bots

9003b75855bfd65a4ea0e0d745f038ef.png

看起来这是个仇恨度的描述,但是笔者并不知道它的真实作用。

13、Inventory

e44ea8e273a73e9d2b948b93fec08764.png

从上到下分别是:是否拥有物品栏(HasInventory)、是否会吸引中立生物仇恨(WakesNeutrals)

拥有物品栏本身是熊灵信使肉山和英雄的专利,但是只要把任何单位的这个属性改为1,都可以让他们拥有物品,甚至可以给死亡守卫购买装备。

而WakesNeutrals是指白天会勾引中立生物,而不是晚上唤醒中立生物,毕竟没有伤害晚上是无法唤醒中立生物的。

非英雄单位的基础数据相对更齐全,因为非英雄单位的种类过于庞杂,所以很少出现所有单位都有某个属性的值的情况,所以非英雄单位的基础数据介绍完毕后,绝大多数属性就介绍完毕了。如果有需要也完全可以来头开头搜索并复制相关属性和格式。

以上就是在修改非英雄单位数据时,需要或可能需要了解到的内容。

全文完

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值