第三章 绝学数据结构分析(firttech.enc)
先说比较多人关心的绝学信息
打开firttech.dat(firttech.enc的解码文件)
会看到每门绝学的数据结构都是一样的
所以,我们把这结构解析成附图1那样的示意图,然后分别说明一下每个位置的含义。附图2是实例分析。
附图1,数据结构

附图2,实例分析

3.1 绝学类型
若为1,表明该绝学为绝技
若为2,咒法
若为4,阵法
若为0,普攻(普攻也是一门特殊绝学)
若为5,蛰伏类绝学(期间你不能动,敌人也不能攻击你,完后回复一定命气)
若为6,绝对防御类绝学(期间不能动,敌人对你攻击为0伤害,完后不回复命气)。
3.2 作用场合
若为0:平时才能使用(如移形化法)
若为1:战斗时(如泼风枪)
若为2:平时和战斗时皆可使用(如神气流转)
3.3 作用对象
代码为0:对方阵营,如攻击性绝学、施于敌方的辅助性绝学;
代码为1:己方阵营,如恢复性绝学、施于己方的辅助性绝学;
代码为2:双方阵营,如反咒禁制;
代码为3:死者,如御召魂返、幽冥返召;
代码为4:自体,如尸魔召唤、呼叫增援、混元气聚、钢皮铁罩。
3.4 作用范围
代码为0:单体;
代码为1:直列;
代码为2:横排;
代码为3:全体。
3.5 前后排限定
代码为0:该绝学只能作用于对方前排角色(如云横华山);
代码为1:该绝学对前后排角色都能作用到(如气愈之术);
不存在只能作用于后排的代码。
若“作用对象”代码为1,“作用范围”代码为2,此处代码为0,这三个代码联合起来意味着该绝学作用于己方前排一横排的角色。
若“作用范围”的代码为3,亦即全体作用,此处代码为0或1都没有影响。
3.6 绝技类型
代码为1:伤害值=基本伤害+咒术伤害;
代码为2:伤害值=基本伤害+命极×伤害指数/10;
代码为3:伤害值=基本伤害+自身所缺血量×伤害指数/10;
代码为4:伤害值=攻击力×伤害指数/10-目标防御力;
代码为5:伤害值=攻击力-伤害指数;
代码为6:伤害值=基本伤害×伤害指数/10;
代码为0:上述6种类型以外的其他一切绝学,包括咒术。
其中,基本伤害=攻击方物理攻击力-目标防御力。
【注意】原版里除了代码为0或1的绝技类型,其他都不能附带咒术伤害;300块3.0版里其他绝技类型也可附带咒术伤害。
“伤害指数”在“绝技类型”下面一行刚好对下来的位置。
3.7 消耗体力值
如,发动“摄魂鬼爪”需要消耗体力40,则此处为40的16进制值,即0x28。
3.8 消耗术力值
如,发动“七光御阵”需要消耗术力100,则此处为100的16进制值,即0x64。
3.9 咒术相性(或称“附加作用量相性”)
1:火系;
2:冰系;
3:雷系;
4:光系;
5:暗系;
A:恢复系;
B:辅助系。
原版里仅当绝学类型为0或1时,前五种相性有意义,也就是说,仅当该绝学附带有咒术效果时才有意义(300块里所有类型的绝技都可以附带咒术伤害)。
恢复相性和辅助相性可以附加到所有非阵法类绝学上,这两种相性下,特效实际命中概率固定为100%。
3.10 绝学指数
其形式视绝技类型和咒术相性而定。
只有攻击性绝技和回复绝学此处代码才不为0。
若为攻击性绝技(绝技类型为1~6),则意指伤害指数;
若为回复绝学(咒术相性为A),则意指回复的主作用量,其形式为命极或气极百分数。伤害/回复的是命还是气,并不由此处决定,而是由“命作用百分数”和“气作用百分数”决定。
绝技的伤害指数上面提到过了。绝技类型为1的绝技,也就是伤害=基本伤害+咒术伤害的绝学,此处代码无关紧要,一般是填为1(填其他数值似乎也没关系)。
现在谈回复绝学。比如,神护之阵此处16进制代码为0x50(十进制值为80),这表明,它的主作用量为:恢复命极或气极×80%的体力值或元气值。