评分权重自定义
March 24, 2026 · View on GitHub
方法一:预设方法(推荐)
基础步骤
-
源码目录:普通用户为ZZZ-plugin/dist,开发者为ZZZ-plugin/src
-
进入角色数据文件夹:源码目录/model/damage/character/角色名(若角色文件夹 不存在,自行创建即可)
-
粘贴文件,并将粘贴的模板文件重命名为score_user.js
-
打开score_user.js,根据需要调整权重数值
-
保存并重启
示例图(“冰属性伤害加成”可简写为“属性伤害加成”):
进阶操作
将崽底层日志模式切换为debug模式并重启,可在控制台查看评分计算详细过程;且会自动监听现有评分计算文件实时热更新。可按需开启
在函数体中,可根据玩家角色数据动态选用不同的权重方案。示例(原爱丽丝直伤流规则):
/** @type {import('#interface').scoreFunction} */
export default function (avatar) {
const { CRITRate, CRITDMG, AnomalyProficiency } = avatar.initial_properties
// (暴击率 * 2 + 爆伤 >= 200%) 且 (异常精通 < 300) 时转为直伤流规则
if (CRITRate * 2 + CRITDMG >= 2 && AnomalyProficiency < 300) {
return ['直伤流', {
"生命值百分比": 0,
"攻击力百分比": 0.75,
"防御力百分比": 0,
"冲击力": 0,
"暴击率": 1,
"暴击伤害": 1,
"穿透率": 1,
"穿透值": 0.25,
"能量自动回复": 0,
"异常精通": 0.5,
"异常掌控": 0,
"属性伤害加成": 1
}]
}
}
-
函数参数:ZZZAvatarInfo(角色数据)
-
函数返回值:
- 元组:[评分规则名, 权重数据]
- 类型:[string, { [词条名: string]: number }]
- 若返回其他类型,会自动回退默认评分规则
- 自定义权重会以默认权重为基础值,即自定义权重中未指定的词条会取默认权重中的数据
方法二:直接修改默认权重
注意:直接修改插件所属文件,将会导致后续该文件更新冲突。若你不清楚如何解决冲突,请使用方法一
默认权重使用权重模板规则编写,详见预设权重规则
打开插件默认词条权重文件直接修改相应数据保存即可,重启生效
文件路径:ZZZ-plugin/resources/map/EquipScore.json
后文将讲解本插件评分计算流程、计算规则。有能力者可直接查看源码
评分计算规则
引言
在原神和星铁的评分计算中,由于副词条每次强化的提升数值并不固定,评分计算往往需要考虑具体提升数据,常见的计算方式为副词条提升数值 × 单位数值得分 × 词条权重。但在绝区零中,副词条每次强化提升值相同且与初始值一致,因此无需考虑具体提升数值,只需考虑强化次数和权重即可,也更适用于固定总分的方式计算评分,计算中心思路即为总分 × (实际有效词条数 / 理论上限有效词条数)
基本概念
-
词条类型:
-
权重:不同词条对角色的重要性数值,决定该词条在评分中的占比,有效值0~1,一般为0.1或0.25的整数倍
-
有效词条数:根据副词条强化次数和对应权重折算的词条数之和,后文出现的
词条数皆指有效词条数
评分计算流程
具体计算规则
1. 权重规则确定
2. 系数计算
等级系数
等级系数 = 0.25 + 驱动盘等级 × 0.05
品质系数
- S级:1
- A级:2/3
- B级:1/3
3. 有效词条数计算
实际词条数
$ 实际词条数 = Σ((副词条强化次数 + 1) \times 权重) $
理论最大词条数
-
筛选出与实际主词条不同且权重>0的副词条
-
取权重最高的前4个副词条
-
计算方式:
$ 理论最大词条数 = 6 \times 词条最高权重 + 其余3个词条权重之和 $
最高权重词条最多可强化5次,共6次贡献;其余3个各计1次基础值
4. 最终得分计算
单个驱动盘总分定义为55
-
1-3号位驱动盘:副词条占55分
-
4-6号位驱动盘:主词条占12分,副词条占43分
1-3号位
-
若实际词条数=0:
$ 得分 = 12 \times 等级系数 \times 品质系数 $ -
若实际词条数>0:
$ 得分 = 55 \times (实际词条数 / 理论最大词条数) \times 等级系数 \times 品质系数 $
此情况最终得分会与
12 × 等级系数 × 品质系数取最大值
4-6号位
- 主词条得分:
$ 主词条得分 = 12 \times (当前主词条权重 / 最优主词条权重) $
若无最优主词条,主词条得分固定为12
- 副词条得分:
$ 副词条得分 = 43 \times (实际词条数 / 理论最大词条数) $
- 最终得分:
得分 = (主词条得分 + 副词条得分) × 等级系数 × 品质系数
预设权重规则
- 强攻:默认包含"主C·双爆"
- 击破:默认包含"冲击·双爆"、"冲击·攻击"、"冲击·异常"
- 异常:默认包含"主C·异常"、"辅助·异常"
- 支援/防护:默认包含"辅助·双爆"、"辅助·异常"
- 命破:默认包含"命破·双爆"
| 规则名称 | 适用条件(初始属性) | 核心词条权重 |
|---|---|---|
| 主C·双爆 | 攻击力>2400 双爆总和≥2.2 异常属性较低 | 暴击率=1 暴击伤害=1 攻击力%=0.75 |
| 主C·异常 | 攻击力>2400 双爆总和<2 异常属性较高 | 异常精通=1 异常掌控=1 攻击力%=0.75 |
| 命破·双爆 | 通用 | 暴击率=1 暴击伤害=1 生命值%=0.5 攻击力%=0.25 |
| 辅助·双爆 | 双爆总和≥1.5 异常属性较低 | 暴击率=1 暴击伤害=1 能量回复=1 |
| 辅助·攻击 | 双爆总和≥1.5 | 攻击力%=1 暴击率=1 暴击伤害=0.75 |
| 辅助·异常 | 双爆总和<2 异常属性较高 | 异常精通=1 异常掌控=1 能量回复=1 攻击力%=0.75 |
| 冲击·双爆 | 双爆总和≥1.5 异常属性较低 | 冲击力=1 暴击率=1 暴击伤害=1 攻击力%=0.75 |
| 冲击·攻击 | 攻击力>2000 双爆总和≥1 异常属性较低 | 冲击力=1 攻击力%=1 暴击率=1 暴击伤害=0.75 |
| 冲击·异常 | 双爆总和<2 异常属性较高 | 异常精通=1 异常掌控=1 冲击力=1 攻击力%=0.75 |
所有规则中,穿透率权重均为1(命破除外),穿透值权重均为0.25(命破除外),属性伤害加成权重均为1
完整权重详见此文件
选择第一个符合适用条件的规则,若皆不符合则选择第一个有效规则
驱动盘评级规则
单个驱动盘得分评级
| 评级 | 得分区间 | 说明 |
|---|---|---|
| C | [0, 12] | 基础兜底级,无有效词条或词条质量极差 |
| B | (12, 20) | 过渡级,仅有少量低权重有效词条 |
| A | [20, 28) | 合格级,具备基础有效词条,可满足日常需求 |
| S | [28, 32) | 良好级,有效词条占比适中,适配角色基础需求 |
| SS | [32, 36) | 优秀级,有效词条占比较高,接近优质配置 |
| SSS | [36, 40) | 顶尖级,有效词条占比极高,大幅提升角色战力 |
| ACE | [40, 48) | 毕业级,词条配置近乎完美,为角色核心毕业装备 |
| MAX | [48, 55] | 满分级,理论最优配置,词条质量与占比均近上限 |
全套驱动盘总分评级
| 评级 | 总分区间 | 说明 |
|---|---|---|
| C | [0, 80) | 基础兜底级,整体词条配置极差,无有效战力提升 |
| B | [80, 120) | 过渡级,仅部分驱动盘具备合格词条,暂用过渡 |
| A | [120, 160) | 合格级,整体词条配置达标,可满足常规副本需求 |
| S | [160, 180) | 良好级,多数驱动盘为优质配置,具备较强战力 |
| SS | [180, 200) | 优秀级,整体词条配置精良,可应对高难度副本 |
| SSS | [200, 220) | 顶尖级,近乎毕业配置,角色战力达到峰值区间 |
| ACE | [220, 280) | 毕业级,全驱动盘近乎满配,为理论最优毕业套装 |
| MAX | [280, 330] | 满分级,全驱动盘均近个体上限,战力实现理论最大化 |
鸣谢
感谢银狐对评分计算规则的指导建议
点此查看评分计算规则源码,如有任何对评分计算的想法建议,欢迎与我联系:ucpr251@gmail.com