伤害计算支持除旅行者外的全部角色

This commit is contained in:
yoimiya-kokomi 2022-08-31 03:36:40 +08:00
parent b0be3f4c6f
commit 6c429b3e7b
9 changed files with 106 additions and 17 deletions

View File

@ -1,10 +1,4 @@
# 1.9.11
* 伤害计算及圣遗物评分增加提纳里、柯莱
* 伤害计算暂未包含3.0新元素反应,后续统一补充
* 草元素圣遗物识别及评分逻辑补充
# 1.9.1 ~ 1.9.10
# 1.10.0
* 新增`#面板练度统计`功能
* 可展示当前角色天赋及圣遗物练度信息
@ -20,15 +14,14 @@
* 如需配置可在**miao-plugin/config/profile.js**文件中配置
* `#更新面板`支持配置更新API适配Enka新校验逻辑
* B服角色使用Enka服务进行面板信息获取
* 感谢Enka官方 **@Algoinde**的官方授权及UA校验
* 感谢Enka官方 **@Algoinde**的官方授权及UA****
* 感谢 **@MiniGrayGay**提供的Enka服务中转若面板更新失败可尝试在**miao-plugin/config/profile.js**文件中配置切换更新API
* 更新面板增加单用户更新间隔控制默认5分钟
* `#深渊出场率`、`#角色持有率` 增加样本数量展示,增加数据使用授权提示
* 修正部分V3Yunzai下的适配问题
* 对MiaoApi新版profile服务增加适配
* 部分角色的圣遗物评分增加充能的词条评分权重
* 伤害计算增加丽莎、云堇、五郎、北斗、托马、早柚、砂糖、辛焱
* 重构部分components、models逻辑重构部分伤害计算逻辑
* 伤害计算支持除旅行者外的全部角色
* 伤害计算暂未包含3.0新元素反应,后续统一补充
# 1.9.0

View File

@ -10,7 +10,7 @@ const _path = process.cwd()
let puppeteer = {}
let logger = global.logger || Bot.logger
let logger = global.logger || global.Bot?.logger || {}
logger.green = logger.green || ((t) => t)
class Puppeteer {

View File

@ -65,7 +65,9 @@ export default class ProfileReq extends Base {
// 发起请求
let data = {}
try {
let req = await fetch(reqParam.url, reqParam.params || {})
let params = reqParam.params || {}
params.timeout = params.timeout || 1000 * 10
let req = await fetch(reqParam.url, params)
data = await req.json()
} catch (e) {
console.log('面板请求错误', e)

View File

@ -1,2 +0,0 @@
01.jpg: https://buluoluo875.lofter.com/post/2023e31c_2b64c6b4a
02.jpg: https://dionadaisuki.lofter.com/post/4c161d0c_2b6328c69

View File

@ -0,0 +1,20 @@
export const details = [{
title: '附魔普攻第四段',
dmg: ({ talent }, dmg) => dmg(talent.a['四段伤害'], 'a')
}, {
title: 'E冰尘弹伤害',
dmg: ({ talent }, dmg) => dmg(talent.e['冰尘弹伤害'], 'e')
}, {
title: 'E冷冻炸弹伤害',
dmg: ({ talent }, dmg) => dmg(talent.e['冷冻炸弹伤害'], 'e')
}, {
title: 'Q技能伤害',
dmg: ({ talent }, dmg) => dmg(talent.q['技能伤害'], 'q')
}]
export const buffs = [{
title: '埃洛伊天赋:冰驰状态提高普攻伤害',
data: {
aDmg: ({ talent }) => talent.e['冰驰普通攻击伤害提升']
}
}]

View File

@ -0,0 +1,42 @@
export const details = [{
title: 'E基础伤害提升值',
dmg: ({ talent, calc, attr }) => {
return {
avg: talent.e['伤害值提升'] * calc(attr.atk) / 100
}
}
}, {
title: 'E点按技能伤害',
dmg: ({ talent }, dmg) => dmg(talent.e['点按技能伤害'], 'e')
}, {
title: 'E长按技能伤害',
dmg: ({ talent }, dmg) => dmg(talent.e['长按技能伤害'], 'e')
}, {
title: 'Q每跳伤害',
dmg: ({ talent }, dmg) => dmg(talent.q['持续伤害'], 'q')
}]
export const buffs = [{
title: '申鹤被动Q范围内冰伤提高15%',
data: {
dmg: 15
}
}, {
title: '申鹤被动点按E提高15%元素战技及元素爆发伤害',
data: {
cpct: 10
}
}, {
title: '申鹤2命Q范围内暴击伤害提高15%',
cons: 2,
data: {
cdmg: 15
}
}, {
title: '申鹤天赋E提升冰伤害[ePlus]',
sort: 5,
data: {
ePlus: ({ talent, calc, attr }) => talent.e['伤害值提升'] * calc(attr.atk) / 100,
qPlus: ({ talent, calc, attr }) => talent.e['伤害值提升'] * calc(attr.atk) / 100,
}
}]

View File

@ -10,7 +10,7 @@ export const details = [{
dmg: ({ talent, cons }, dmg) => dmg(talent.q['落雷伤害'], 'q')
}]
export const mainAttr = 'atk,hp,cpct,cdmg'
export const mainAttr = 'atk,cpct,cdmg'
export const buffs = [{
title: '皇女2命施放夜巡影翼时能额外造成200%攻击力的伤害',

View File

@ -0,0 +1,34 @@
export const details = [{
title: '普攻首段伤害',
dmg: ({ talent }, dmg) => dmg(talent.a['一段伤害'], 'a', 'phy')
}, {
title: 'E点按技能伤害',
dmg: ({ talent }, dmg) => dmg(talent.e['点按技能伤害'], 'e')
}, {
title: 'E长按技能伤害',
dmg: ({ talent }, dmg) => dmg(talent.e['长按技能伤害'], 'e')
}, {
title: 'Q协同攻击首段',
dmg: ({ talent }, dmg) => dmg(talent.q['狼魂伤害'] * talent.a['一段伤害'] / 100, 'q')
}]
export const buffs = [{
title: '雷泽1命获得元素球后8秒伤害提高10%',
cons: 1,
data: {
dmg: 10,
phy: 10
}
}, {
title: '雷泽2命攻击生命值低于30%的敌人暴击率提高10%',
cons: 2,
data: {
cpct: 10
}
}, {
title: '雷泽4命E点按降低敌人防御力15%',
cons: 4,
data: {
def: 15
}
}]

View File

@ -36,7 +36,7 @@ export const attrNameMap = anMap
export const mainAttr = {
3: 'atk,def,hp,mastery,recharge'.split(','),
4: 'atk,def,hp,mastery,dmg,phy'.split(','),
5: 'atk,def,hp,mastery,recharge,heal,cp,cd'.split(',')
5: 'atk,def,hp,mastery,heal,cp,cd'.split(',')
}
export const subAttr = 'atk,def,hp,mastery,recharge,cp,cd'.split(',')