|
|
豆腐词典好像也有解释,但是我没怎么看懂,最后用ai跑了一下,拿的破空拔刀斩为例。
看明白这个,就可以使用 在装备里 修改词条改变技能效果
DNF .skill 文件中,[level info]、[level property] 和 NUT 里的 sq_GetLevelData() 是一套对应关系。
[level info] 开头的数字表示每一级包含多少个数据,例如:
[level info]
7
2869[视频内容]0005000
这里的 7 表示每一级有 7 个数据,索引从 0 开始:
索引0 = 2869
索引1 = 1865
索引2 = 500
索引3 = 10
索引4 = 10000
索引5 = 500
索引6 = 0
对应的 [level property]:
[level property]
199
`物理攻击力 : <int>%%
剑气物理攻击力 : <int>
蓄气时间上限 : <float2>秒
剑气移动距离 : <int>px
最大蓄气时攻击力增加比率 : <float1>%%
最大蓄气时移动距离增加比率 : <float1>%%
最短蓄气时间 : <float2>秒`
-101.0
-211.0
-120.001
-131.0
-150.1
-140.1
-160.001
[/level property]
[level property] 每行中,第二列最重要,它代表对应 [level info] 的数据索引;第三列代表技能说明界面显示时的换算倍率。
例如:
-120.001
其中第二列是 2,表示对应 [level info] 的索引2。
一级数据中:
索引2 = 500
显示时:
500 × 0.001 = 0.5秒
所以这一项对应“蓄气时间上限 0.50秒”。
同理:
-150.1
表示对应 [level info] 索引5。
索引5 = 500
500 × 0.1 = 50%
所以对应“最大蓄气时攻击力增加比率 50%”。
而:
-140.1
表示对应索引4。
索引4 = 10000
10000 × 0.1 = 1000%
所以对应“最大蓄气时移动距离增加比率 1000%”。
NUT 中的:
sq_GetLevelData(obj, 97, 2, skill_level)
这里的 97 是技能编号,2 就是 [level info] 的数据索引,所以它直接读取索引2的原始值 500。
也就是说,NUT 读取的是原始数据,不是经过 [level property] 换算后的显示值。
总结:
[level info]
负责保存技能每一级的原始数据。
[level property]
负责说明这些数据对应什么属性,以及在技能说明中如何换算显示。
sq_GetLevelData()
按照数据索引直接读取 [level info] 中的原始值。
判断对应关系时,重点看 [level property] 每行的第二列索引,不要按上下排列顺序硬对应。
前面的 -1、-2 不是 sq_GetLevelData() 的数据索引,对 NUT 读取哪个 [level info] 数据没有直接影响。 |
|