伤害计算 增加 迪卢克、诺艾尔、重云、芭芭拉、九条

This commit is contained in:
yoimiya-kokomi 2022-05-21 05:26:53 +08:00
parent 0fc70eb4f1
commit d53abb00d9
9 changed files with 164 additions and 19 deletions

View File

@ -1,17 +1,17 @@
# 1.5.5
# 1.5.6
* `#喵喵日历` 升级
* 增加 `#喵喵日历列表`命令,以列表形式展示活动信息
* 增加从活动详情信息中解析活动日期的逻辑,使一些活动日期更加准确
* 增加 `#喵喵日历列表`命令,以列表形式展示活动信息
* 增加从活动详情信息中解析活动日期的逻辑,使一些活动日期更加准确
* `#深渊出场率`、`#角色持有率` 等功能样式及字体微调
* 增加鹿野院平藏的角色信息,可通过`#平藏天赋`、`#平藏命座`查看信息
* `#角色面板` 伤害计算增加双手剑计算逻辑,增加物伤计算逻辑
* `#角色面板` 伤害计算增加部分角色,目前支持
* 长柄武器:雷神、胡桃、魈、钟离、香菱
* 法器:神子、心海、可莉ⁿᵉʷ、凝光ⁿᵉʷ
* 弓:甘雨、宵宫、公子
* 法器:神子、心海、可莉ⁿᵉʷ、凝光ⁿᵉʷ、芭芭拉ⁿᵉʷ
* 弓:甘雨、宵宫、公子,九条ⁿᵉʷ
* 单手剑:绫人、绫华、刻晴、阿贝多、行秋、班尼特、七七ⁿᵉʷ
* 双手剑:一斗ⁿᵉʷ、优菈ⁿᵉʷ
* 双手剑:一斗ⁿᵉʷ、优菈ⁿᵉʷ、迪卢克ⁿᵉʷ、诺艾尔ⁿᵉʷ、重云ⁿᵉʷ
# 1.5.0

View File

@ -80,7 +80,7 @@ let Calc = {
base: attr[key] * 1 || 0,
plus: 0,
pct: 0,
inc: 100
inc: 0
}
})
@ -441,7 +441,7 @@ let Calc = {
console.log(num, calc(attr.heal), attr.heal.inc)
}
return {
avg: num * (1 + calc(attr.heal) / 100) * (attr.heal.inc / 100)
avg: num * (1 + calc(attr.heal) / 100 + attr.heal.inc / 100)
}
}

View File

@ -0,0 +1,30 @@
export const details = [{
title: "E提升伤害",
dmg: ({ talent, attr }) => {
return {
avg: talent.e['攻击力加成比例'] * attr.atk.base / 100
}
}
}, {
title: "E后Q首段伤害",
dmg: ({ talent }, dmg) => dmg(talent.q['天狗咒雷·金刚坏 伤害'], 'q')
}, {
title: "E后Q每段",
dmg: ({ talent }, dmg) => dmg(talent.q['天狗咒雷·雷砾 伤害'], 'q')
}];
export const defDmgIdx = 1;
export const mainAttr = "atk,cpct,cdmg";
export const buffs = [{
title: "九条E技能提升攻击力[atkPlus]",
data: {
atkPlus: ({ attr, talent }) => talent.e['攻击力加成比例'] * attr.atk.base / 100
}
}, {
title: "九条6命提升60%雷元素爆伤",
cons: 6,
data: {
cdmg: 60
}
}]

View File

@ -0,0 +1,29 @@
export const details = [{
title: "重击伤害",
dmg: ({ talent }, dmg) => dmg(talent.a['重击伤害'], 'a2')
}, {
title: "重击蒸发",
dmg: ({ talent }, dmg) => dmg(talent.a['重击伤害'], 'a2', 'zf')
}, {
title: "E每跳治疗",
dmg: ({ talent, attr, calc }, { heal }) =>
heal(talent.e['持续治疗量2'][0] * calc(attr.hp) / 100 + talent.e['持续治疗量2'][1] * 1)
}, {
title: "Q治疗量",
dmg: ({ talent, attr, calc }, { heal }) =>
heal(talent.q['治疗量2'][0] * calc(attr.hp) / 100 + talent.q['治疗量2'][1] * 1)
}];
export const defDmgIdx = 1;
export const mainAttr = "atk,hp,cpct,cdmg,mastery";
export const buffs = [{
title: "芭芭拉2命开E水环持续期间获得15%水伤加成",
cons: 2,
data: {
dmg: 15
}
}, {
title: "元素精通:蒸发伤害提高[zf]%",
mastery: "zf"
}];

View File

@ -0,0 +1,32 @@
export const details = [{
title: "护心铠盾量",
dmg: ({ talent, calc, attr }, { shield }) =>
shield((talent.e['吸收量2'][0] * calc(attr.def) / 100 + talent.e['吸收量2'][1] * 1) * 1.5)
}, {
title: "护心铠单次治疗",
dmg: ({ talent, calc, attr }, { heal }) =>
heal(talent.e['治疗量2'][0] * calc(attr.def) / 100 + talent.e['治疗量2'][1] * 1)
}, {
title: "开Q尾刀",
dmg: ({ talent }, dmg) => dmg(talent.a['四段伤害'], 'a')
}, {
title: "开Q重击",
params: { q: true },
dmg: ({ talent }, dmg) => dmg(talent.a['重击循环伤害'], 'a2')
}];
export const defDmgIdx = 2;
export const mainAttr = "atk,def,cpct,cdmg";
export const buffs = [{
title: "元素爆发诺艾尔开Q基于防御力提高攻击力[atkPlus]",
data: {
atkPlus: ({ attr, calc, talent }) => talent.q['攻击力提高'] * calc(attr.def) / 100
}
}, {
title: "诺艾尔6命诺艾尔开Q基于防御力提高攻击力[atkPlus]",
cons: 6,
data: {
atkPlus: ({ attr, calc, talent }) => calc(attr.def) * 0.5
}
}];

View File

@ -0,0 +1,33 @@
export const details = [{
title: "E三段伤害",
dmg: ({ talent }, dmg) => dmg(talent.e['三段伤害'], 'e')
}, {
title: "E三段蒸发",
dmg: ({ talent }, dmg) => dmg(talent.e['三段伤害'], 'e', 'zf')
}, {
title: "Q爆发伤害",
params: { q: true },
dmg: ({ talent }, dmg) => dmg(talent.q['斩击伤害'], 'q')
}, {
title: "开Q后单次重击",
params: { q: true },
dmg: ({ talent }, dmg) => dmg(talent.a['重击循环伤害'], 'a2')
}];
export const defParams = { monv: 3 };
export const mainAttr = "atk,cpct,cdmg,mastery";
export const buffs = [{
title: "迪卢克天赋释放元素爆发后获得20%火伤加成",
data: {
dmg: ({ params }) => params.q ? 20 : 0
}
}, {
title: "迪卢克1命对于生命值高于50%的敌人造成伤害提高15%",
data: {
dmg: 15
}
}, {
title: "元素精通:蒸发伤害提高[zf]%",
mastery: "zf"
}];

View File

@ -0,0 +1,21 @@
export const details = [{
title: "重云E伤害",
dmg: ({ talent }, dmg) => dmg(talent.e['技能伤害'], 'e')
}, ({ cons }) => {
let count = cons === 6 ? 4 : 3;
return {
title: `Q ${count}柄灵刃总伤害`,
dmg: ({ talent, cons }, dmg) => dmg(talent.q['技能伤害'] * count, 'q')
}
}];
export const defDmgIdx = 2;
export const mainAttr = "atk,cpct,cdmg";
export const buffs = [{
title: "重云6命对于生命百分比低于重云的敌人伤害提升15%,同时额外多一柄灵刃",
cons: 6,
data: {
qDmg: 15
}
}];

View File

@ -72,11 +72,12 @@ export const buffs = {
},
"炽烈的炎之魔女4": {
check: ({ element }) => element === "火",
title: "魔女4蒸发、融化伤害提高15%1层额外提高7.5%火元素伤害加成",
title: "魔女4蒸发、融化伤害提高15%[buffCount]层额外提高[dmg]%火元素伤害加成",
data: {
zf: 15,
rh: 15,
dmg: ({ params }) => (params.mn || 1) * 7.5
dmg: ({ params }) => (params.monv || 1) * 7.5,
buffCount: ({ params }) => params.monv || 1
}
},
"昔日宗室之仪2": {
@ -149,12 +150,6 @@ export const buffs = {
mastery: 120
}
},
"少女4": {
title: "少女4施放元素战技或元素爆发受治疗效果加成提高20%",
data: {
heal: 20
}
},
"千岩牢固4": {
title: "千岩4元素战技命中敌人后攻击力提升20%",
data: {
@ -189,7 +184,7 @@ export const buffs = {
}
},
"被怜爱的少女4": {
title: "释放E或Q的10秒内受治疗加成提高20%",
title: "少女4施放元素战技或元素爆发后受治疗效果加成提高20%",
data: {
healInc: 20
}

View File

@ -694,13 +694,18 @@ let claymore = {
atkPct: step(40)
}
},
"无工之剑": {
"无工之剑": [{
title: "护盾强效提高[shield]%",
refine: {
shield: step(20)
}
}, {
title: "满Buff护盾下攻击力提高[atkPct]%",
buffCount: 10,
refine: {
atkPct: step(4)
}
},
}],
"松籁响起之时": {
title: "Buff状态下提高攻击力[atkPct]%",
refine: {