Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Single Mode 评分公式 #27

Open
3Au opened this issue Apr 14, 2017 · 1 comment
Open

Single Mode 评分公式 #27

3Au opened this issue Apr 14, 2017 · 1 comment

Comments

@3Au
Copy link

3Au commented Apr 14, 2017

纵观AW老三代和DoR,评分系统始终保持三个维度。即:速度(Speed),力量(Power),技术(Technique)。其中:

  • 速度反应玩家的通关速度,是对攻略总效率的评判;
  • 力量反应玩家的攻击猛烈程度,是对攻击有效性的评判;
  • 技术反应玩家的总体把控能力,是对单位利用率的评判;

DoR中采用的参数相较于老三代有较大变化,也更加合理。参考之后给出如下150分制评分公式:

  1. 速度(Speed)
    速度分的评判参数是R=「实际通关天数/目标天数」,其中目标天数默认为15天,可以人工设定;
    计算公式为:
    (1)当R≤1时:速度分 = min(200 - R * 100,150)
    (2)当R≥1时:速度分 = max(150 - R * 50,0)
    为了直观体现分数曲线,把分数上限和下限剥离,得到分数关于R的函数图像如下:
    image

  2. 力量(Power)
    力量分的评判参数是R=「平均伤害值+平均击杀率」,该两个数值均为0-100之间的自然数;
    计算公式为:
    (1)当R≤100时:力量分=max(R * 2 - 100,0)
    (2)当R≥100时:力量分=min(R,150)

当前游戏版本中:

  • 平均伤害值 = floor(玩家主动攻击的总伤害 / 玩家主动攻击总次数)
  • 平均击杀率 = floor(玩家主动攻击造成的击杀数 / 玩家主动攻击总次数)

其中:

  • floor()是向下取整的函数
  • 主动攻击总次数不包含攻击地图特殊物体的次数
  • 主动攻击总伤害包含了幸运伤害以及溢出伤害,不包含攻击地图特殊物体的伤害
  • 主动攻击造成的击杀数不包含击破地图特殊物体的次数,不包含被装载的AI部队(即,如果玩家击杀了AI的一个装有两个部队的Lander,击杀数只加一而不加三)
  • 平均伤害值有可能超过100,所以取值区间为非负整数

为了直观体现分数曲线,把分数上限和下限剥离,得到分数关于R的函数图像如下:
image

  1. 技术(Technique)
    技术分的评判参数是R=「sqrt(敌总单位价值)/[sqrt(我总单位价值)+sqrt(我损失单位价值)]」
    计算公式为:
    (1)当R≤0.8时:技术分=max(R * 125,0)
    (2)当R≥0.8时:技术分=min(R * 62.5+50,150)

当前游戏版本中:

  • 敌总单位价值 = AI预部署单位价值 + AI生产单位价值
    • 不考虑刷血、维修
  • 我总单位价值 = 玩家预部署单位价值 + 玩家生产单位价值
    • 不考虑刷血、维修
  • 我损失单位价值 = 部队发生战斗时(不论主动或被动)产生的损失 + 玩家自行删除单位产生的损失 + 燃料耗尽自爆产生的损失
    • 各项损失均把装载了的部队价值计算在内
    • 不考虑刷血、导弹轰炸

为了直观体现分数曲线,把分数上限和下限剥离,得到分数关于R的函数图像如下
image

高级设定:
速度分已给出高级设定。
力量分分为三个点,0分点,100分点和150分点。0和100分点,100分与150分点之间线性变化。默认的0分点、100分点、150分点的R值为:50,100,150
技术分分为三个点,0分点,100分点和150分点。0和100分点,100分与150分点之间线性变化。默认的0分点、100分点、150分点的R值为:0,0.8,1.6

@3Au
Copy link
Author

3Au commented Apr 22, 2017

经过思考和实际的测试,在上述的评分规则基础上做出进一步修改。
一、速度(Speed Score,通称「S分」)
1.1 概述
S分依然秉承对攻略速度和效率的评价。也就是以完成天数作为基准进行评判。
1.2 评判值
评判值 S——玩家完成本关攻略取得胜利所用的总回合数,单位为「回合」。
解读:该「总回合数」具体定义为,当游戏出现胜利提示对话框时,当前游戏所处的回合数
1.2 标定值
标定值是用于对比评判值的预设定值,由开发人员自行定制。有如下三个单位为「回合」的标定值:
(1)零分点 S0——当S=S0时,S分刚好为0,S0默认值为 2×S1;
(2)满分点 S1——当S=S1时,S分刚好为100,S1默认值为 15;
(3)爆分点 S2——当S=S2时,S分刚好为150,S2默认值为 0.5×S1。
1.3 评分公式
(1)S>S1:S分=max[100÷(S0-S1)×(S0-S) , 0]
(2)S<S1:S分=min[100+50÷(S1-S2)×(S1-S) , 150]
简单的说,以三个标定值为界限,相应两点之间线性变化,点外分数走平。

二、火力(Power Score,通称「P分」)
2.1 概述
P分评判有效攻击能力和伤害能力。以平均杀伤值和击杀率为标准。
2.2 评判值 P——平均伤害值+击杀率,两者均为自然数,P值无单位。
解读:
平均伤害值=本局游戏玩家回合中玩家的每一次采取「攻击」行动的攻击伤害「显示值」(不计幸运)总和÷本局游戏玩家回合中玩家采取「攻击」行动的次数;
击杀率=本局游戏玩家回合中击杀的敌人单位总数(不计装载中连带击杀)÷本局游戏玩家回合中玩家采取「攻击」行动的次数。
2.3 标定值
由开发人员自行定制。有如下三个无单位标定值:
(1)零分点 P0——当P=P0时,P分刚好为0,P0默认值为 0.5×P1;
(2)满分点 P1——当P=P1时,P分刚好为100,P1默认值为 100;
(3)爆分点 P2——当P=P2时,P分刚好为150,P2默认值为 1.5×P1。
1.3 评分公式
(1)P<P1:P分=max[100÷(P1-P0)×(P-P0) , 0]
(2)P>P1:P分=min[100+50÷(P2-P1)×(P-P1) , 150]

(未完待续……)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant