前言:我开发的漂泊者强化助手小程序上线已有半个月了,经过了8个小版本的迭代更新,目前声骸评分功能已基本完善,所以另开一帖再重新梳理下小程序的使用方法
在微信小程序搜索“漂泊者强化助手”即可,为了不迷路,建议打开小程序后点击右上角的三个点-添加到我的小程序

xxxxxxxxxx使用小程序前的一些准备工作:1、下载库街区APP,登录个人游戏账号后,进入我的-数据终端页面,在共鸣者列表界面选中“对外展示”并保存2、获取库街区令牌(USER-TOKEN)。网络上以及小程序内有详情的获取教程,这里就不展开说了。使用过同类小程序的,直接复制过来也可使用。
1、获取到令牌后,前往漂泊者强化助手小程序-进入个人配置页面
2、输入自己的特征码,以及获取的令牌代码

3、点击保存更改,即可自动获取个人角色数据(保存至本地缓存)

xxxxxxxxxx默认显示个人拥有的所有角色,其中未公开的角色头像显示为灰色,不可点击查看详情已缓存到本地的角色,头像右上方会显示角色的共鸣链和武器精练等级图标,未缓存到本地的角色,则会显示断开连接的图标(在当前版本中,绑定个人角色后会自动将所有角色数据缓存到本地,而搜索的用户只会获取角色列表,点击指定角色后才会将目标角色数据缓存到本地)角色列表标题栏右边的“更新全部”,点击后将重新从服务器拉取所有角色的信息,并替换本地缓存中的数据

xxxxxxxxxx如何搜索其它用户的角色信息?点击首页左上角的用户头像/昵称,打开搜索界面,搜索你想要查看用户的特征码,点击搜索即可如何切换用户?点击下方的历史记录和收藏夹,可以快速切换到指定用户的数据,其中标记为黄色的为个人数据如何添加收藏?在首页-角色列表标题栏后点击“添加收藏”即可

1.4.3.1 在角色列表点击角色头像即可跳转到角色详情页面;

1.4.3.2 页面上半区域为角色的基础练度信息,包含角色等级/共鸣链等级/各技能等级/武器等级/武器精练等级。右边为角色立绘,角色综合评分(后面会展开讲),然后是切换角色快捷按钮:PREV(上一个)及NEXT(下一个);

1.4.3.3 页面中间区域为各声骸数据,可点击打开详情弹窗,声骸详情中显示当前声骸的评分、评分等级、各词条及数值,是否有效词条或核心词条,其中黄色为有效词条,橙色为核心词条,点击蓝色的权重文件名称可跳转到当前角色的评分过程界面(后面会展开讲),点击关闭或页面空白处可隐藏声骸详情弹窗;

中间的圆环区域内统计展示所有声骸的有效属性加成合计,以及声骸综合评分,可点击打开详情弹窗

1.4.3.4 页面底部,左侧展示声骸词条名称的不同颜色代表的含意(橙色为核心词条,黄色为有效词条,白色为无效词条),右侧展示声骸词条数值的不同颜色代表的含意(灰色为最低值,紫色为偏低值,黄色为中等值,橙色为偏高值,红色为最大值);

中间(圆环区域正下方)显示当前评分使用的权重:目前为部分常用角色添加了专属权重,其算法是根据角色的养成方式量身定制的,在评分权重一栏中以“专属”作为标识,未添加专属权重的角色则暂时使用“通用”权重,其算法符合大多数据角色的养成方式,后面会逐步为所有角色添加专属权重;“手动”权重为自定义权重配置,该功能尚在开发中,将在下个大版本更新中开放
中间(评分权重下方)显示当前角色的声骸排名及综合排名情况,可点击进入角色排行榜界面(后面会展开讲)
中间(角色排行下方)为刷新按钮,可从服务器重新获取当前角色数据并覆盖本地缓存数据,注意:在游戏中调整了声骸/装备等信息后,需先前往库街区的角色页面查看,待库街区信息与游戏中同步后,再在此处刷新即可
xxxxxxxxxx1.4.4.1点击角色详情中的角色排行-声骸排名或综合排名,即可进入相应排行榜1.4.4.2声骸排行榜显示当前角色声骸评分TOP20的玩家列表(UID不公开),单条数据包含声骸综合评分/单个声骸评分/声骸阵容COST/评分更新时间等信息,可点击查看该玩家该角色的详细信息声骸综合评分满足一定条件后才会计入排行榜,如果当前页面未显示你的排名数据,请尝试提升你的声骸练度1.4.4.3综合排行榜与声骸排行榜类似,可自行探索

x1.4.5.1点击角色详情中的通用或专属权重,即可跳转到算法公示界面1.4.5.2页面主体为树形菜单,展示了各个分数的构成方式,及节点分数,点击可打开详情弹窗。以下结合页面向大家阐述各个节点的计算方式

接下来是漂泊者强化助手小程序的核心功能介绍,评分算法,内容篇幅较长,其中涉及的部分计算方式或许有点晦涩难懂,请大家选择性观看,对算法细节不感兴趣的话,自己去小程序中摸索也行(离开前记得点个赞+评论,你的关注就是对作者最大的支持)
xxxxxxxxxx对角色强度有明显增益的词条,如:暴击、暴击伤害、攻击、属性伤害加成、共鸣技能伤害加成、共鸣效率、共鸣解放伤害加成、普攻伤害加成等(不同角色的有效词条各不相同)。在本算法中,当副词条命中有效词条,即可按词条分值高低获得相应分数(50~100分)x 100%(命中词条倍率,后面会介绍),例:假设在长离专属权重中,攻击为有效词条,则:当值为60(该词条的最大值)时,则词条得分为100分,当值为40(该词条的最小值)时,则该词条得分为50分,当值为其它值时,可获得50-100分之间的不同分值;

xxxxxxxxxx对角色强度无明显增益的词条,如:生命、防御等。在本算法中,无效副词条按词条分值高低,可获取相应分数(50~100分)x 20%(未命中词条倍率,后面会介绍),目前大部分算法将生命、防御、普攻、重击等词条都计0分,个人不是很赞同,可以说无效词条益处不大,但对角色的综合素质来说,多多少少还是有提升的。例:假设在长离专属权重中,防御为有效词条,则:当值为60(该词条的最大值)时,则词条得分为100分x20%=20分,当值为40(该词条的最小值)时,则该词条得分为50分x20%=10分,当值为其它值时,可获得(50~100分)x20%之间的不同分值;
xxxxxxxxxx对角色强度有大幅增益的词条,如:暴击、暴击伤害、攻击、属性伤害加成等(不同角色的核心词条各不相同)。在本算法中,核心词条为独立计分区,与有效词条分数为叠加关系,例:假设暴击是有效词条,且是核心词条,则:该词条除了获得有效词条的常规计分后,还会以按一定算法(后面会介绍)额外获得附加分数

xxxxxxxxxx当某个词条属于角色的有效词条,则该词条即可按分值高低,获得相应分数x1(即100%),其中 100% 即为“命中有效词条倍率”;与之相似,当某个词条属于角色的无效词条,则获得相应分数x0.2(即20%),其中 20% 即为“未命中有效词条倍率”
明白以上基础概念后,我们看后面的评分过程就非常简单了,参照以下评分结构图,我们从右往左一步步推算
主词条总分为100分,由于主词条是分值是根据声骸等级恒定增涨的,所以我们考核的主要指标有两个,一是该词条是否命中有效词条(主词条无附加分,不用关注是否命中核心词条),二是声骸等级,得到以下计算方法:
xxxxxxxxxx主词条得分 = 声骸当前等级 / 25:声骸最高等级 x 命中主词条倍率 x 100:基础分
例:长离的25级声骸“惊蛰猎手”主词条为攻击/生命,判断第一个词条“攻击”为有效词条(这里我们忽略第二个词条,因为在同一个套装声骸中,同费声骸主词条中的第二词条都是相同的,你并没有其它选择,所以我们不对它进行计分),按照上述公式,开始计算主词条得分(例):25 / 25 x 1 x 100 = 100分
按照以上方法,我们得到了单个声骸的主词条分数(如:100分),我们将会在后面继续用到这个分值。
单个附词条总分为100分,5个附词条总分为500分
在上文“基础概念理解”的有效词条解释中,我们以攻击为例计算了该副词条的分数,这里就用到了副词条的计算方法,下面我们继续以此为例展开来讲讲。
按照本算法的设定,当攻击为40(攻击词条的最小值)时,获得了保底分数50分,当攻击为60(攻击词条的最大值)时,获得了最大分数100分,这个跨度看似很大,因为本算法的大部分计分法都是百分制,且归纳到上级时会通过权重比例不断稀释,所以反映到最终分值上时,跨度会大辐度被缩小。
至于最低50分,最高100分,其它值按比例获得相应分数的具体计算过程,此处使用了经典的线性插值法,以下为算法的具体计算公式:
xxxxxxxxxx基础分 = minScore + (value - min) / (max - min) * (maxScore - minScore)
其中minScore为保底分数:50分,maxScore为最高分数:100分,min为词条最小值:40(以攻击为例),max为词条最大值:60(以攻击为例),value为我们需要计算的词条分值:60(以攻击为例),最终得到以下计算:基础分100 = 50 + (60 - 50) / (60 - 50) x (100 - 50) 然后我们再判断词条是否命中有效词条,并乘以对应的倍率
xxxxxxxxxx100:单个副词条分数 = 100:基础分 x 1:副词条命中倍率
按照以上方法,我们得到其它4个附词条的分数,将其相加并计算平均分
xxxxxxxxxx副词条平均分 = 所有副词条分数合计 / 5:副词条槽位得到了声骸的副词条平均分(如:80分),我们将会在后面继续用到这个分值。
在上文“基础概念理解”的核心词条解释中,我们得知核心词条所得的附加分为独立计分区,词条最终得分=词条分数+附加分,以下我们将解释附加分的计算方法
附加分总分为50分,根据不同角色的权重配置文件,我们会将这50分分配给各个核心词条,以下以长离专属权重为例:
xxxxxxxxxx50:附加分总分 = 12:暴击最高分 + 18:暴伤最高分 + 7:大攻击最高分 + 3:小攻击最高分 + 6:共鸣技能伤害加成最高分 + 4:共鸣效率最高分
然后我们根据各核心词条的分值,计算该核心词条获得的附加分,区别于副词条基础分的线性增涨,核心词条是根据特定数值给予特定的分数倍率,由于暴击、暴伤等词条,数值越高越稀有,所以其分数应为区线型增涨,以下以长离专属权重为例,列举了总分核心词条的数值区间,以及各数值对应的倍率:
xxxxxxxxxx暴击 总分(最高分) 12分6.3% = 0%x总分 | 6.9% = 5%x总分 | 7.5% = 15%x总分 | 8.1% = 30%x总分 | 8.7% = 45%x总分 | 9.3% = 60%x总分 | 9.9% = 80%x总分 | 10.5% = 100%x总分
暴击伤害 总分(最高分) 18分12.6% = 0%x总分 | 13.8% = 5%x总分 | 15% = 15%x总分 | 16.2% = 30%x总分 | 17.4% = 45%x总分 | 18.6% = 60%x总分 | 19.8% = 80%x总分 | 21% = 100%x总分
其它核心词条类似,此处省略...
简单来说,当一个声骸同时具有暴击、暴伤、大攻击、小攻击、共鸣技能伤害加成、共鸣效率这几个核心词条,且各个词条的值都为最大,那么该声骸将会得到50分附加分(当然理论上来说,这不可能发生)
按照以上方法,我们通过计算得到各个核心词条获得的附加分数,将其相加得到声骸附加分(如:30分),我们将会在后面继续用到这个分值。
通过以上三步,我们分别得到了主词条分数:100分,副词条平均分:80分,声骸附加分:30分,接下来我们将它们按照一定比例融合,即可得到单个声骸的最终评分
以长离专属权重为例,主词条与副词条分值比例为1:3,而附加分为独立计分区,我们得到以下公式
xxxxxxxxxx单个声骸评分 = 主词条分数 x 25% + 副词条平均分 x 75% + 附加分代入上述举例中得到的各总分分值,试做以下计算
xxxxxxxxxx115:单个声骸评分 = 100 x 0.25 + 80 x 0.75 + 30
通过以上计算得知,主词条与副词条合并后,理论最大分值为100分,叠加附加分最大值为50分,所以单个声骸评分的理论最大值为150分。
按照以上方法,我们可以分别计算5个声骸的评分,计算其平均值,即可得到声骸综合评分
xxxxxxxxxx声骸综合评分 = 所有声骸评分合计 / 5:声骸槽位

至此我们已经完成了评分过程中最复杂的总分:声骸综合评分
xxxxxxxxxx角色等级评分 = 当前等级 / 90:角色最大等级 x 100:基础分值
由于不同角色的侧重技能不同,我为各个技能设置了单独的权重倍率,以下以长离专属权重为例进行说明
xxxxxxxxxx技能等级评分(共100分) = 常态攻击:100 x ( 技能等级 / 10 ) x 5% + 共鸣技能:100 x ( 技能等级 / 10 ) x 25% + 共鸣解放:100 x ( 技能等级 / 10 ) x 15% + 共鸣回路:100 x ( 技能等级 / 10 ) x 45% + 变奏技能:100 x ( 技能等级 / 10 ) x 5% + 延奏技能:100 x ( 技能等级 / 1 ) x 5%
xxxxxxxxxx武器等级评分 = 当前等级 / 90:武器最大等级 * 100:基础分值

此处仅对武器进行了简单的等级计算,所以在后面的角色练度评分(后面会介绍)中占比较低,后续还会针对武器星级、武器精练度、是否专武进行单独评分,并计入角色附加分(后面会介绍)中
通过2.1我们得到了声骸综合评分,2.2得到了角色等级评分,2.3得到了技能等级评分,2.4得到了武器等级评分,现在我们需要将这4个分数合并,得到角色练度基础评分。以下以长离专属权重为例,进行各部分评分合并计算:
xxxxxxxxxx角色练度基础评分 = 角色等级评分 x 0.1 + 技能等级评分 x 0.3 + 武器等级评分 x 0.05 + 声骸综合评分 / 1.5 x 0.55
其中由于声骸综合评分为150分制,角色练度基础评分为100分制,所以在合并时需要将声骸评分除以150%转换为百分制
主要影响附加分的因素是角色共鸣链及武器精练度。由于普通玩家通常为0+0或0+1,所以将氪金因素单独列到附加分中,而基础分则保持完整的100分,方便普通玩家对比心理预期分值。无专武、无共鸣链、无武器精练玩家可忽略以下计分:
角色附加分总分为50分,根据实际战斗表现,按以下比例分配给共鸣链和武器
xxxxxxxxxx50:角色附加分 = 35:共鸣链加分 + 15:武器加分

由于不同角色的侧重共鸣链不同,我为不同链路设置了单独的权重倍率,以下以长离专属权重为例进行说明
xxxxxxxxxx零链 = 35:共鸣链总分 x 0%一链 = 35:共鸣链总分 x 10%二链 = 35:共鸣链总分 x 20%三链 = 35:共鸣链总分 x 35%四链 = 35:共鸣链总分 x 50%五链 = 35:共鸣链总分 x 75%六链 = 35:共鸣链总分 x 100%由于4星角色与5星角色共鸣链强度普遍有差距,需要区别评分,但为了不影响总分玩家偏爱4星角色,我将4星倍率调为5星的90%(实际应该远远小于此倍率)
xxxxxxxxxx五星角色计算倍率:100%四星角色计算倍率:90%
所以最终共鸣链附加分应该按以下方式计算
xxxxxxxxxx共鸣链附加分 = 共鸣链分数 * 角色星级倍率
例:以五链散华为例,其共鸣链附加分如下
xxxxxxxxxx23.6:共鸣链加分 = 35:共鸣链总分 * 0.75:链路权重倍率 * 0.9:角色星级倍率

由于武器精练带来的提升是线性的,所以无需对精练等级单独设置权重倍率,但仍需考虑4星武器与5星武器间的强度差距,并且角色是否使用专武对精练效果影响都是很大的。综合考虑我使用了以下计算公式
xxxxxxxxxx武器附加分 = 当前精练等级 / 最大精练等级 x 专武倍率 x 武器星级倍率 x 武器总分其中专武倍率及星级倍率如下:专武:100% 非专武:70%五星:100% 四星:70%
例:以长离专属权重为例,专武“赫奕流明”精练度为2阶,其武器附加分如下
xxxxxxxxxx6:武器加分 = 2:精练等级 / 5 * 1:专武倍率 * 1:武器星级倍率 x 15:武器总分

通过2.5我们得到了角色基础练度评分,通过2.6我们得到了角色附加分,现在进行简单的相加即可得到角色最终的综合评分
xxxxxxxxxx角色综合评分 = 角色基础评分 + 角色附加分

由于角色基础评分满分100分,角色附加分满分50分,得知角色综合评分理论最大值为150. 按照不同的分值区间,我们将其归纳为以下几个等级
xxxxxxxxxx小于50: C大于或等于50: B大于或等于60: A大于或等于65: AA大于或等于70: AAA大于或等于80: S大于或等于90: SS大于或等于100: SSS大于或等于120: ACE大于或等于140: 终极

至此我们已经完成了整个分数计算过程,虽然这些计算在服务器只需要几毫秒的时间,但也是我经过半个月的不断调试,总结出来的一套个人觉得相对合理的算法,还希望大家多多支持我的小程序。
我的小程序并没有迎合用户对高分值的喜好,刻意缩小高低分间的差距,部分使用者看到最终分数可能会有挫败感,欢迎大家提出自己的建议,我会不断调较这个算法。
现在评分小程序层出不穷,各家有各家的计算方法,我也注意到有新进的开发者还在迷茫不知从何下手,本人不才公布自己的算法,虽然可能算法存在不少瑕疵,但还是希望以上算法能到你们一些帮助,至少能多一个思路,也在此基础上进行自由调节。