数值角度搭建COC

发表于2015-08-06
评论5 2.9k浏览
一、概述
类COC游戏或会增加,数值设计方面会遇到不少问题。
最难迈出的,或是第一步。
本段文字,提供一个COC模型搭建的第一步思路。仅作参考。
二、详细描述
1、先定下基础数值线
取COC的黄毛数据。
野蛮人
优先攻击攻击类型占据人口训练时间移动攻击所需兵营攻击距离
近战 120s161s10.4 格
等级每秒伤害生命建造升级试验室大本营升级时间
184525N/AN/AN/AN/A
211544050000116 hours
3146560150000351 day
4187880500000573 days
523951001500000685 days
62611015045000007910 days
观察得知,黄毛的生命是有规律可循,伤害无规律可循。
则先定义一个黄毛的 生命 与 伤害的基础公式。
再定义1-2本基础建筑的生命、攻击。
建筑的生命,与黄毛的攻击对应,取一个近似公式。
建筑的攻击,定义为黄毛血量的一半,并与总空间挂钩。
注释:升本时候,兵力总空间会上升。
其后,用黄毛进行模拟,略微调整 黄毛攻击力,建筑的血量。
这一步,我们会得到COC最初状态。
2、定义T与远程兵。
在黄毛的基础上,观察弓手与胖子的数据:
弓箭
攻击类型占据人口训练时间移动攻速兵营攻击距离
远程125秒241秒23.5 格
等级每秒伤害生命建造升级试验室大本营升级时间
172050N/AN/AN/AN/A
292380500001112 hours
31228120250000352 days
41633160750000573 days
520402002250000685 days
6224430075000007914 days
巨人
攻击目标攻击类型占据人口训练时间移动攻速兵营攻击距离
防御类近战 52分钟122秒41 格
等级每秒伤害每下伤害生命建造升级试验室大本营
11122300500N/AN/AN/A
21428360100010000024
31938430150025000046
42448520200075000057
531626702500225000068
643869403000600000079
转换两个兵种的数据为(DPS/人口*HP/人口)
    注释:这里需要理解兰切斯特方程。网传的DPS*HP/人口,是仅针对远程兵对抗有效。
DPS/人口*HP/人口 数据对比
黄毛弓箭巨人黄毛/弓手
118.973711.832211.48911.60357
224.372114.387514.19861.69398
330.166218.330318.07761.6457
437.4722.978322.34281.63067
546.74428.284328.82361.65265
653.47931.112740.20951.71888
    对比发现,我们可取黄毛的数据,除以1.632得到弓箭与巨人的数据,再加以美化。
定义巨人的单位为5。
调节弓手生命与攻击比例,使得弓手生命略微低于黄毛生命。
调节巨人生命与攻击比例,使得巨人攻击略微比黄毛高。
这样,我们得到基础远程兵种,与基础肉盾兵种。
3、定义规则,最后进行规则对抗。
我们得到了3个基础兵种。是时候推出溅射防御的单位。
即迫击炮(溅射,群伤)。
这时候将对抗的平衡重新拉了过来。
迫击炮的攻击设置为弓箭手生命的一半,逐渐提升至满值。
4、在以上基础上,推出其他规则。
以上为基础模型。
但缺少了空中单位。
则陆续推出空中打击单位。
继而退出空中防御单位。
至此,雏形已然搭建完毕。
但我们这时候会发现防御建筑的攻击已经很高,我们不能加大攻击单位的生命。
我们需要治疗。则出现天使。
5、在以上基础上陆续衍化,完善。
并针对不同版本测试,调整。
三、关于兰切斯特方程的解释
兰切斯特线性率:
X=A的单个伤害能力*A的数量
Y=B的单个伤害能力*B的数量
比较X与Y大小,谁大谁赢。
线性率适用于远程对远程兵种。
兰切斯特平方率:
X=A的单个伤害能力*A的数量的平方
Y=B的单个伤害能力*B的数量的平方
比较X与Y大小,谁大谁赢。
平方率适用于近战兵种对近战兵种。
或远程兵种被近战兵种接近。
这里的伤害能力指我方攻击敌方一次会伤害多少百分比血量。
转换公式可把A、B攻击,A、B血量带入。
举例说明:
    假定A的单位战斗力是B的一半,但是数量是B的三倍。假定B有1000人,A有3000人。如果是面对面的战斗,A方损失264人即可消灭掉B方的1000人。现在A需要先接近B再进行面对面的战斗,按兰切斯特线性律,A付出1000人的代价歼灭B500人以后接近,在2000对500的近战中,付出187人的代价歼灭B方500人,总损失1187人对1000人。兰切斯特方程没有考虑战场上的许多要素,并不完全,对局部的战役有参考价值,对整个战争的结局无能为力。兰切斯特方程在战争摸拟的时候会被经常使用,恩格尔曾经使用兰切斯特方程摸拟硫磺岛战役,计算结果与事实非常接近。
                                        ——百度百科摘录
在类COC游戏中,我们可以把A、B分别看成进攻方与防御方,从而进行粗略计算。
四、关于战斗对抗的解释
单对单:
已知信息
定义战斗回合。
定义敌方损我方血量百分比。
我方怪物
攻击ATT1攻击ATT2
血量HP1血量HP2
战斗节奏设为 X
我方损血百分比设为  Y
求解怪物血量与攻击
怪物血量 HP2= X*ATT1
怪物攻击 ATT2= HP1*Y/x
多对多(类似COC):
已知信息
攻击方防御方
攻击ATT1攻击ATT2
血量HP1血量HP2
单位空间M守卫数量X
总空间N
借助公式
ATT1*HP1*N²/M² = ATT2*HP2*X²
求解防御方血量
先预先设计防御方攻击力,或与攻击方血量HP1挂钩。
多对多(近战):
已知信息
兵种1兵种2
攻击ATT1攻击ATT2
血量HP1血量HP2
单位空间M1单位空间M2
总空间N
借助公式
ATT1*HP1*N²/M1² = ATT2*HP2*N²/M2²
灯下黑
2015/7/22  

如社区发表内容存在侵权行为,您可以点击这里查看侵权投诉指引

0个评论