添加和修改神里绫华、钟离、希诺宁的评分规则。修改有关武器类的圣遗物默认权重。 (#809)

* 敌人默认等级,从91提高至103(配合世界等级9).

* 降低夏沃蕾和闲云的治疗权重(防止分数溢出)。
新增希诺宁的评分权重。

* 添加希格雯满命情况下的评分权重。
优化芙宁娜满命情况下的评分权重部分的代码。

* 添加和修改神里绫华、钟离、希诺宁的特殊评分规则

* 修改钟离、神里绫华、香菱的默认评分规则
绫华的充能权重,从 30 提升至 45.
香菱的充能权重,从 55 提升至 75.
钟离的默认评分规则,改成“血牛”性质(原先钟离的默认评分规则为“战斗”性质,代码移动至特殊评分规则里)。

* 修改有关武器类的圣遗物默认权重
删除赤角石溃杵、辰砂之纺锤两把武器的权重。
将护摩之杖的权重,从原先的45-75,调整为10-18.
将磐岩结绿的权重,从原先的45-75,调整为15-30.
This commit is contained in:
jkl8753 2024-10-10 17:52:47 +08:00 committed by GitHub
parent 1370ec2c4e
commit d614f9629e
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
5 changed files with 71 additions and 22 deletions

View File

@ -5,11 +5,9 @@ import { Meta } from '#miao'
const weaponCfg = {
磐岩结绿: {
attr: 'hp',
abbr: '绿剑'
},
赤角石溃杵: {
attr: 'def',
abbr: '赤角'
abbr: '绿剑',
max: 30,
min: 15
},
猎人之径: {
attr: 'mastery'
@ -20,7 +18,9 @@ const weaponCfg = {
},
护摩之杖: {
attr: 'hp',
abbr: '护摩'
abbr: '护摩',
max: 18,
min: 10
}
}
@ -51,6 +51,19 @@ const ArtisMarkCfg = {
return false
}
/* maxAffix_attr 5
minAffix_attr 精1武器权重 */
let weaponCheck = (key, maxAffix_attr = 20, minAffix_attr = 10, max = 100) => {
let original = weight[key] || 0
if (original == max) {
return false
} else {
let plus = minAffix_attr + (maxAffix_attr - minAffix_attr) * (weapon.affix - 1) / 4
weight[key] = Math.min(Math.round(original + plus), max)
return true
}
}
let wn = weapon?.name || ''
if (isGs) {
@ -59,16 +72,11 @@ const ArtisMarkCfg = {
// 增加攻击力或直接伤害类武器判定
if (weight.atk > 0 && weaponCfg[wn]) {
let wCfg = weaponCfg[wn]
if (check(wCfg.attr, wCfg.max || 75, wCfg.plus || 75)) {
if (weaponCheck(wCfg.attr, wCfg.max || 20, wCfg.min || 10)) {
title.push(wCfg.abbr || wn)
}
}
// 不与攻击力挂钩的武器判定
if (wn === '辰砂之纺锤' && check('def')) {
title.push('纺锤')
}
// 圣遗物判定如果是绝缘4将充能权重拉高至沙漏圣遗物当前最高权重齐平
let maxWeight = Math.max(weight.atk || 0, weight.hp || 0, weight.def || 0, weight.mastery || 0)
if (artis.is('绝缘4') && check('recharge', maxWeight, 75, false)) {

View File

@ -15,9 +15,9 @@ export const usefulAttr = {
班尼特: { hp: 100, atk: 50, def: 0, cpct: 50, cdmg: 50, mastery: 0, dmg: 80, phy: 0, recharge: 75, heal: 100 },
枫原万叶: { hp: 0, atk: 50, def: 0, cpct: 50, cdmg: 50, mastery: 100, dmg: 80, phy: 0, recharge: 55, heal: 0 },
行秋: { hp: 0, atk: 75, def: 0, cpct: 100, cdmg: 100, mastery: 0, dmg: 100, phy: 0, recharge: 75, heal: 0 },
钟离: { hp: 80, atk: 75, def: 0, cpct: 100, cdmg: 100, mastery: 0, dmg: 100, phy: 50, recharge: 55, heal: 0 },
神里绫华: { hp: 0, atk: 85, def: 0, cpct: 100, cdmg: 100, mastery: 0, dmg: 100, phy: 0, recharge: 30, heal: 0 },
香菱: { hp: 0, atk: 75, def: 0, cpct: 100, cdmg: 100, mastery: 75, dmg: 100, phy: 0, recharge: 55, heal: 0 },
钟离: { hp: 100, atk: 30, def: 0, cpct: 40, cdmg: 40, mastery: 0, dmg: 80, phy: 0, recharge: 55, heal: 0 },
神里绫华: { hp: 0, atk: 85, def: 0, cpct: 100, cdmg: 100, mastery: 0, dmg: 100, phy: 0, recharge: 45, heal: 0 },
香菱: { hp: 0, atk: 75, def: 0, cpct: 100, cdmg: 100, mastery: 75, dmg: 100, phy: 0, recharge: 75, heal: 0 },
胡桃: { hp: 80, atk: 50, def: 0, cpct: 100, cdmg: 100, mastery: 75, dmg: 100, phy: 0, recharge: 0, heal: 0 },
温迪: { hp: 0, atk: 75, def: 0, cpct: 80, cdmg: 80, mastery: 75, dmg: 100, phy: 0, recharge: 55, heal: 0 },
珊瑚宫心海: { hp: 100, atk: 50, def: 0, cpct: 0, cdmg: 0, mastery: 75, dmg: 100, phy: 0, recharge: 55, heal: 100 },

View File

@ -0,0 +1,21 @@
import { usefulAttr } from "../../artifact/artis-mark.js"
export default function ({ weapon, rule, def }) {
let title = []
let particularAttr = JSON.parse(JSON.stringify(usefulAttr['希诺宁']))
if (weapon.name === '西风剑') {
title.push('西风剑')
particularAttr.cpct = 100
}
if (attr.cpct * 2 + attr.cdmg > 240) {
title.push('战斗')
particularAttr.cpct = 100
particularAttr.cdmg = 100
particularAttr.recharge = 55
particularAttr.heal = 70
}
if (title.length > 0) {
return rule(`希诺宁-${title.join('')}`, particularAttr)
}
return def(usefulAttr['希诺宁'])
}

View File

@ -1,6 +1,10 @@
import { usefulAttr } from "../../artifact/artis-mark.js"
export default function ({ attr, rule, def }) {
let particularAttr = JSON.parse(JSON.stringify(usefulAttr['神里绫华']))
if (attr.mastery > 120) {
return rule('神里-精通', { atk: 75, cpct: 100, cdmg: 100, mastery: 75, dmg: 100, recharge: 30 })
particularAttr.mastery = 75
return rule(`神里-精通`, particularAttr)
}
return def({ atk: 75, cpct: 100, cdmg: 100, dmg: 100, phy: 0, recharge: 30 })
return def(usefulAttr['神里绫华'])
}

View File

@ -1,7 +1,23 @@
export default function ({ attr, artis, rule, def }) {
if (artis.is('hp', '3,4,5') && attr.hp > 40000 && attr.cpct * 2 + attr.cdmg < 100) {
// 血牛钟离其余词缀权重不高于41.84,确保小生命命中副词缀最高权重
return rule('钟离-血牛', { hp: 100, atk: 30, cpct: 41, cdmg: 41, recharge: 30 })
import { usefulAttr } from "../../artifact/artis-mark.js"
export default function ({ attr, weapon, rule, def }) {
let title = []
let particularAttr = JSON.parse(JSON.stringify(usefulAttr['钟离']))
if (weapon.name === '西风长枪') {
title.push('西风枪')
particularAttr.cpct = 100
}
return def({ hp: 80, atk: 75, cpct: 100, cdmg: 100, dmg: 80, phy: 80, recharge: 55 })
if (attr.cpct * 2 + attr.cdmg > 240) {
title.push('战斗')
particularAttr.hp = 80
particularAttr.atk = 75
particularAttr.cpct = 100
particularAttr.cdmg = 100
particularAttr.dmg = 100
particularAttr.recharge = 30
}
if (title.length > 0) {
return rule(`钟离-${title.join('')}`, particularAttr)
}
return def(usefulAttr['钟离'])
}