1.simple trigger和trigger并不能暴力地分为“新”和“旧”,这是两种用于不同场合的触发器。st只检测触发时间适合一些周期性触发检测的功能,而trigger拥有条件块和检测CD、延迟触发时间,更适合做一些各方面要求比较高的触发器。在只需要做一个周期检测的触发器时,st更有效率。
2.script更类似一个处理器脚本文件,在使用时调用处理。有一些需要输入变量,有一些可以输出变量,具体根据需要。也有把script当做一个复杂的判断条件来用(cf_),一般是在某个复杂判断条件会被反复调用时直接将其写为script,在需要的地方之间call script,若条件为真则执行下一行,为否则跳出循环或结束触发器运行。
3.skill并非技能定义,技能的效果写在st、trigger、script和引擎中,skill只是单纯将skl与id联系起来,以及一些供引擎读取的flag而已。在这个文件可以隐藏技能、让被隐藏的技能显示出来。
4.关于strings,骑砍里应用了两种string,一种是game string,另一种是quick string。quick string不需要定义,在使用的地方直接用[url=]“@xxx[/url]”这种方式生成,其汉化文件在languages里面的quick_strings中。而game string则需要首先在module_string定义才可以调用,否则报错。
5.header_common里面并非联机专用,而是一些将变量名与常数ID联系起来的东西。这个文件几乎被所有module文件挂起调用,因此储存的大都是比较多用的东西。可以将骨骼id与骨骼名字在此定义,然后在其他文件中基本可以直接用骨骼名字代替骨骼的id,更加方便人类读写。
6.itp那块基本都是直译的……比如next item as melee这个flag,它是战团加入的X键切换姿态的产物,效果是把带有这个flag的item的下一个item作为X切换之后的物品。你的翻译“可设置为近战武器”极容易产生误解。pri和sec这两个flag据说会影响AI的武器切换优先度,具体我只做过简单测试,似乎有一些作用。itp default ammo也不是初始弹药,带有这个flag的itm会成为没有携带弹药的武器弹夹内的第一发子弹。举个栗子,若钢弩箭带有这个flag,那么在一个troop携带弩而没有装备弩箭的情况下拿出它的弩,弩的弹夹内装填的那一发子弹就是钢弩箭。类似的还有几个不多赘述,建议在这里把其用途解释出来,而非单纯直译。直译方面百度翻译和谷歌翻译更有效率
7.itc相当于一个整合表格,你举得那个巨剑的例子在实际读取中相当于同时出现那三个itc。itc的根本相当于将一系列动作打包起来并给个人类可以理解并方便读写的名字。比如guandao实际就是可挥砍不可刺的长杆武器,而非一定用于关刀这种武器。如果要整理这一块的内容,最好将其可执行动作与不可执行动作翻译过来。不过我个人建议是如果你把itcf翻译过来的话,itc这块只要解释一下其本质就够了。
8.物品价格也会影响带有物品栏的npc选择哪些装备穿上。
9.difficulty只是一个相对的设定。用在战马上是骑术等级要求,用在弓上是强弓,投掷是强掷,盔甲类和其他武器类则是力量。这些没必要分开,分开会显得杂冗,一个解释就能解决的东西分多类itm讲,你写着蛋疼,看着也蛋疼。
10.weapon length具体长度和模型有关,单位不详。这个值一般是openbrf软件内开游标卡尺得到的数据,大部分情况下是一把近战武器的攻击范围,偶尔会根据需要进行魔改(这也是一些模型看着没打到其实打到了,看着打到了其实没伤害的原因之一)
11.shoot speed基本相当于抛射初速。至于抛射初速有啥用,简单来说就是这个速度越大,抛物线越直。至于初速影响飞行速度就不用解释了。
12.物品触发器的条件不止这三个,还有一个是盾牌类使用的。在lav的源码注释里有提到过:
ti_on_shield_hit = -80.0 #
# trigger param 1 = defender agent_id
# trigger param 2 = attacker agent_id
# trigger param 3 = inflicted damage
# trigger param 4 = weapon item_id (ranged weapon in case of ranged attack)
# trigger param 5 = missile item_id (ammo in case of ranged attack)
# If (set_trigger_result) is used in the code, operation parameter will override the damage dealt to the shield
13.init item严格说来是这个itm mesh在scene中被生成时,而非一定要将其装备。
14.砍刺钝的根本在于module.ini里面影响伤害计算公式的几个参数,并非硬核设定,可以根据mod需要自行改动。钝伤100%击昏也可以通过mt进行二次判定改变,虽然写在引擎里但也并非硬核设定。 |