修改法术类的mod解包基本上都会有这些文件中的几种或者一种。
现在我们以投射物里的曳光弹为例子,我们打开Projectile文件(推荐使用NotePad++)

看着一串串的代码,是不是头晕了。没关系,我们一行一行来。加*号的为常用修改行。
第一行:new entry "Projectile_GuidingBolt" 这行不要随意改,一个字都不行,因为改了之后其他文件读不到这个法术内容导致法术失效。会的大佬除外。
第二行:type "SpellData" xxxx有很多,比如Weapon代表武器啊,Armor代表护甲啊。等等等等。不建议修改。
第三行:data "SpellType" "Projectile" 法术类型-投射 。有的技能可以修改法术类型,但是不建议乱改,这个后面再说。
第四行:data "Level" "1" 法术等级。不建议乱改。
第五行:data "SpellSchool" "Evocation" 法术学派,不建议乱改
第六行:data "TargetFloor" "-1" 目标层级???不太懂,不建议乱改。
*第七行:data "TargetRadius" "18" 目标选择范围。18m如果你想扩大技能范围,可以将数字改大或者改小。
第八行:data "SpellRoll" "Attack(AttackType.RangedSpellAttack)"法术投掷依据。不建议改
*第九行*:data "SpellSuccess" "DealDamage(3d10+Level*12,Radiant,Magical); ApplyStatus(GUIDING_BOLT, 100, 3)"成功命中造成效果,根据这个我们可以看出,成功命中之后,会造成一个3d10加上人物等级*12的魔法伤害,然后会给被击中者施加一个曳光弹的效果(下回合攻击他有优势),持续3回合。
1、DealDamage()是伤害的定义式,你可以自己写你想要的伤害。上面这些是我已经修改过的。比方说你可以改成DealDamage(50)那他就是固定50点物理伤害,或者你改成DealDamage(10d10)那他就是10d10点物理伤害,如果想加伤害类型的话,可以在伤害数值后面加个逗号然后写上伤害类型比如(5d10,Acid)意思是命中后造成5d10的酸蚀伤害。
2、ApplyStatus()是施加状态的定义式,格式一般为ApplyStatus(buff/debuff的名称大写,100,3)
其中的100我暂时不知道是什么意思,可能是概率???但是我翻了好多文件基本上都是100,所以这个100不建议更改。这个3则是为3回合的意思,你可以随意更改。0就是永久。-1则是直到长休。反正这个回合数你可以取-1到任意正整数。
*第十行:data "TargetConditions" "not Self() and not Dead()" 目标选择条件,这里的目标条件选择为 不是自己且不是已死亡。这个可以改,一般常用为Character()角色, Ally()友军 等等,记得()括号不能删。两者之间要用and连接,比如 Character() and not Dead()意思是曳光弹可以选择的目标没有死亡的角色。
*第十一行:data "ProjectileCount" "1" 抛射物数量,可以根据你的喜好修改抛射物的数量,但是别忘了伤害也会逐提高。比方说一个5d10的曳光弹,你再加一个抛射物,那就是5d10+5d10的总和伤害,因此酌情修改。
第十二行:data "Trajectories" "c63c4527-1bdf-4635-ad59-7d7e2f666fa3" 看不懂,不建议修改。
第十三行:data "Icon" "Spell_Evocation_GuidingBolt" 图标 不建议修改。
第十四行:data "DisplayName" "h790a8834g96c6g4b98g9669g8843e4c0eaa6;1" 显示名称,不建议修改。