成长城堡游戏机制探索
前言
当初在做计算表格的时候发现,在单位的属性面板上,有两种伤害,一种叫增加伤害 (increased damage),另一种叫额外伤害 (more damage),让我做表格做起来更麻烦了,于是在当时就简单测试了它的算法,最终的成果在那份计算表格中也有体现。
伤害计算
设基础攻击 (base attack) 为 、增加伤害 (increased damage) 为 、额外伤害 (more damage) 为 ,则面板伤害 为
从面板伤害来说,它本来应该就这么简单,对应的词条加到对应的数值上。但这游戏的作者似乎有点混沌,对于 more damage 的计算,既有加法,又有乘法。
以冰法为例,基础的 为 20%,如果宝物装上拳套 (15% more damage), 会变成 38%。此时再点上冰系技能树的起点 (10% more damage),则 会变成 51.8%。
该算法为乘区算法,即
它的算法比较反直觉,毕竟在 increased damage 中,就全部是纯粹的加法,估算起来简单得多。
从这里就能看出来,提高 more damage 所带来的面板提升,是比 increased damage 来得更多的。
所以,像技能树中的 more damage 技能点、宝物中的拳套、宝珠中的力量宝珠等,都遵循这套规则。而装备中的 damage 与 elemental damage 等,直接加到现有的 increased damage 面板中就行了。
CD 计算
对于站边白袍的英雄,设原始 CD 为 秒,金 C 提供的减 CD 为 ,装备白 CD 为 ,装备红 CD 为 ,则面板 CD 为
首先对这个算式解释一下:
“1.67” 是 “1 + 0.5 + 0.15 + 0.02” 得到的结果。“1” 是除法运算的基数,“0.5” 是天赋点的 20 个 CD 提供的 - 50% 效果,“0.15” 是泉水提供的 - 15% 效果,“0.02” 是公会提供的 - 2% 效果。
“1.67” 括号外的 ”- 1” 是站边白袍的减 CD 效果。
在这个公式中,有两点很反直觉:
- 白袍的减 CD 效果并没有在最后运算,而是在装备白 C 的前面先一步结算
- 天赋等 CD 的计算是除法运算,而装备白 C 的计算是乘法运算
目前还暂时无法理解作者为什么要这样设计。但这一点其实和前面的伤害计算挺像的了,大致就可以理解为,天赋、泉水与公会提供的是 “increased damage”,装备提供的则是 “more damage”。
那对于不站边的角色的 CD,只需要把 ”- 1” 去掉就可以了,即
这种算法也是挺抽象的,弯弯绕绕,无法理解作者的思路。
CD 计算器
公式:站边白袍时C = (Cbase ÷ (1.67 + Cs × 0.025) − 1) × (1 − Cew) − Cer;不站边时去掉「− 1」。
文章分享
如果这篇文章对你有帮助,欢迎分享给更多人!


