本帖最后由 这只话唠菜鹰是路人 于 2016-11-22 00:43 编辑
首先感谢白鹤妹子 @阳明白鹤 提供的数学模型。
本文含有较多有关数学的内容,所以 @W.claudius 先复习再看。
OK,进入正题!
相信大家在设计战役的时候通常会有这样的情况,那就是为玩家提供多种属性加成的选择,让玩家根据自身喜好和具体情况来对主角或军队进行相应的属性提升。最普遍的,莫过于在加攻击和加血上限之间的选择了。为了使这种选择产生意义,设计者就必须考虑在这两者之间取得一个平衡,避免让其一收益过高导致另一个失去存在意义。那么,多少攻增相对应于多少血增才是平衡的呢?或者说,具有相同价值的攻增与血增之比是多少?这就是本文所要探讨的问题。 这个问题相当复杂,在不同情况下会有不同的答案,我们不妨先从最简单的情况入手。
假设两个剑士A和B在平地上单挑,护甲都是0,攻速都是1次/秒,没有高低加成,没有兵种相克,唯一的区别是血量和攻击力不同,那么,谁会获胜?
设剑士A的血量为X,攻击力为a,剑士B的血量为Y,攻击力为b,单挑持续时间为t秒(直到一方死掉),那么: 由于攻速均为1次/秒,所以剑士A在t秒内造成的伤害为at,剑士B在t秒内造成的伤害为bt,则: 假设A获胜,则: A要在t秒内干掉b,就必须有:at≥Y 而B在t秒内无法干掉A,就必须有:bt<X 联立不等式,可得: X/b>t≥Y/a 把没用的t去掉,最后可得: aX>bY 由此可见,谁能获胜,实际上取决于攻击力与血量的乘积。我们不妨把这一乘积称为“威力值”,@weiliqiang 用W表示,即W=aX 在其他属性一样时,单挑的胜负只取决于单位的“威力值”大小,也就是说,一个单位的“威力值”越大,他在面对单个敌人时的胜算也越大。 现在我们再回到一开始的问题:血增与攻增的价值。在这里我们不妨把这个“价值”直接定义成“威力值”的增加。那么,血增与攻增对“威力值”的影响是怎样的呢? 还是那个X血a攻的剑士A,他干掉B之后,系统给了他一次选择奖励的机会,一个选择是加Δa的攻击力,另一个选择是加ΔX的生命上限。玩家甲选择了前者,玩家乙选择了后者,我们来看看选择后二者的威力值变化。 先是玩家甲的剑士: W1=(a+Δa)X 然后是玩家乙的剑士: W2=a(X+ΔX) 那么,在Δa和ΔX分别是多少的时候,变化后的威力值仍相等,即两种选择的“价值”一样? 令W1=W2,则: (a+Δa)X= a(X+ΔX) 化简后得: Δa/ΔX=a/X 多么完美的式子! 它说明了什么?它说明了,具有相同价值的攻增与血增比,恰恰等于单位当前的攻击力与血量之比! 比如,一个攻击力为10,血量为100的剑士,他增加1点攻击力,其价值就相当于加了10点生命值;而一个攻击力为10,血量为1的剑士,他增加10点攻击力,才有增加1点生命值的价值。一般地,对于一个生命值为X,攻击力为a的单位,他增加1点攻击力的价值,就等同于加X/a点生命值。 或者,还有更一般的说法: 若以百分比来表示增量,则攻增与血增价值相同。 什么意思呢?举个例子,一个单位增加了5%的攻击力,其价值就等同于加了5%的生命值。 当然,以上结论均是建立在剑士公平单挑的模型上。而帝国的真实情况比这复杂的多,包括其他属性的影响、各种加成、远程兵种的特性、1vn乃至nvn的情况等,关于这些白鹤妹子正在建立相应的数学模型,我们拭目以待吧。 希望本文的结论能给各战役制作者提供一定的参考。
|