|
马上注册领取绝版勋章
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
本帖最后由 303eee 于 2022-7-29 22:14 编辑
DAR,即Dynamic Animation Replacer(动态动作替换),是一个条件替换老滚5动作的神器。替换条件写在_conditions.txt里面。 对于最常用到的随机替换函数Random(),很多MOD作者的设置都是错误的。
按照DAR作者的说明,如果有n个动作包用于替换(例如10个站姿),要使得替换概率是平均的,需要按以下规则设定Random(X)里面的X值:
1、由于DAR的排序是序号最大的优先执行,因此序号最大的文件包,应设置X=1/10, Random(0.1)
2、序号第二大的,由于只剩下9个未执行替换,应设置X=1/9,即Random(0.111111)
3、第三大的,X=1/8
......
以此类推
9、第二小的,应该设置X=1/2,即Random(0.5)
10、序号最小的,应该设置X=1,即Random(1),这种情况下,在优先顺序轮到最小序号的时候,是100%替换原动作。
如果你要原动作也出现,那么序号最大的改成1/11, 而序号最小的1/2。就是当执行到最小序号的时候50%概率替换。 通过这样设置,就能保证每个动作包都有平均的概率。
我检查过好多MOD作者制作的替换动作包,这个随机函数的设置大部分都是错误的。要么全部是相同的概率,要么就设置得很大。这就常常导致一部分动作包被执行到最后根本就没有被替换的机会。
注意,以上只针对【动作包里的动作是同类型并且要求概率平均】的情况,并不影响不同类型动作包的概率。就是说如果你有一组10个要替换的站姿,按照上面的方法设置,另外你还有10个潜行动作包,也可以用上面的方法设置。潜行动作包的替换概率不会与站姿的替换概率相互混淆,不存在执行完站姿之后,执行潜行动作包的概率为0的情况。因为所有随机函数都是被一次性执行并分配到相应的动作文件的。
全写0.5,结果序列最大的概率最大,序列最小的基本上不会替换了。
|
|