mirror of
https://github.com/yoimiya-kokomi/miao-plugin.git
synced 2024-11-21 14:38:30 +00:00
fix: 伤害计算Bug
This commit is contained in:
parent
22020900fd
commit
66b26d58b2
@ -82,13 +82,13 @@ export async function AbyssSummary (e) {
|
||||
msg.push({
|
||||
title: '少于',
|
||||
value: (Math.max(0.1, 100 - percent * 100)).toFixed(1),
|
||||
name: name
|
||||
name
|
||||
})
|
||||
} else {
|
||||
msg.push({
|
||||
title: '超过',
|
||||
value: (Math.min(99.9, percent * 100)).toFixed(1),
|
||||
name: name
|
||||
name
|
||||
})
|
||||
}
|
||||
}
|
||||
|
@ -83,5 +83,5 @@ export const usefulAttr = {
|
||||
闲云: { hp: 0, atk: 100, def: 0, cpct: 100, cdmg: 100, mastery: 0, dmg: 100, phy: 0, recharge: 75, heal: 100 },
|
||||
嘉明: { hp: 0, atk: 75, def: 0, cpct: 100, cdmg: 100, mastery: 75, dmg: 100, phy: 0, recharge: 55, heal: 0 },
|
||||
千织: { hp: 0, atk: 50, def: 75, cpct: 100, cdmg: 100, mastery: 0, dmg: 100, phy: 0, recharge: 55, heal: 0 },
|
||||
阿蕾奇诺: { hp: 0, atk: 75, def: 0, cpct: 100, cdmg: 100, mastery: 75, dmg: 100, phy: 0, recharge: 35, heal: 0 }
|
||||
阿蕾奇诺: { hp: 0, atk: 75, def: 0, cpct: 100, cdmg: 100, mastery: 75, dmg: 100, phy: 0, recharge: 55, heal: 0 }
|
||||
}
|
||||
|
@ -357,7 +357,7 @@ const buffs = {
|
||||
title: '触发提高普攻[aPlus]伤害',
|
||||
sort: 9,
|
||||
data: {
|
||||
aPlus: ({ attr }) => (attr.atk.base + attr.atk.plus + attr.atk.pct * attr.atk.base / 100) * 0.35
|
||||
aPlus: ({ attr }) => attr.atk * 0.35
|
||||
}
|
||||
}
|
||||
},
|
||||
@ -487,7 +487,7 @@ const buffs = {
|
||||
},
|
||||
|
||||
谐律异想断章: {
|
||||
2: attr('atkPct', 18 ),
|
||||
2: attr('atkPct', 18),
|
||||
4: {
|
||||
title: '生命之契的数值提升或降低时,角色造成的伤害提升[dmg]%',
|
||||
data: {
|
||||
@ -497,7 +497,7 @@ const buffs = {
|
||||
},
|
||||
|
||||
未竟的遐思: {
|
||||
2: attr('atkPct', 18 ),
|
||||
2: attr('atkPct', 18),
|
||||
4: {
|
||||
title: '存在处于燃烧状态下的敌人时,伤害提升[dmg]%',
|
||||
data: {
|
||||
|
@ -1433,7 +1433,7 @@
|
||||
"10000096": {
|
||||
"id": 10000096,
|
||||
"name": "阿蕾奇诺",
|
||||
"abbr": "阿蕾奇诺",
|
||||
"abbr": "仆人",
|
||||
"star": 5,
|
||||
"elem": "pyro",
|
||||
"weapon": "polearm",
|
||||
|
@ -1,14 +1,14 @@
|
||||
export const details = [{
|
||||
title: 'Q提供普攻基础伤害',
|
||||
dmg: ({ talent, attr, calc }) => {
|
||||
dmg: ({ talent, attr }) => {
|
||||
return {
|
||||
avg: (talent.q['伤害值提升'] / 100 + 0.115) * calc(attr.def)
|
||||
avg: (talent.q['伤害值提升'] / 100 + 0.115) * attr.def
|
||||
}
|
||||
}
|
||||
}, {
|
||||
title: '二段蓄力E伤害',
|
||||
dmg: ({ talent, attr, calc }, { basic }) => {
|
||||
let ret = talent.e['二段蓄力伤害'] * calc(attr.def) / 100 + (attr.e.plus || 0)
|
||||
dmg: ({ talent, attr }, { basic }) => {
|
||||
let ret = talent.e['二段蓄力伤害'] / 100 * attr.def
|
||||
return basic(ret, 'e')
|
||||
}
|
||||
}]
|
||||
@ -19,8 +19,8 @@ export const buffs = [{
|
||||
title: '云堇被动:队伍存在4元素类型角色时,Q提供的普攻伤害提高[_q]',
|
||||
sort: 9,
|
||||
data: {
|
||||
_q: ({ attr, calc }) => {
|
||||
return calc(attr.def) * 0.115
|
||||
_q: ({ attr }) => {
|
||||
return attr.def * 0.115
|
||||
}
|
||||
}
|
||||
}]
|
||||
|
@ -3,20 +3,20 @@ export const details = [{
|
||||
dmg: ({ talent }, dmg) => dmg(talent.e['技能伤害'], 'e')
|
||||
}, {
|
||||
title: '三岩Q伤害',
|
||||
dmg: ({ talent, attr, calc }, { basic }) => {
|
||||
let ret = talent.q['技能伤害'] * calc(attr.def) / 100 + attr.q.plus * 1
|
||||
dmg: ({ talent, attr }, { basic }) => {
|
||||
let ret = talent.q['技能伤害'] / 100 * attr.def
|
||||
return basic(ret, 'q')
|
||||
}
|
||||
}, {
|
||||
title: '三岩Q每跳伤害',
|
||||
dmg: ({ talent, attr, calc }, { basic }) => {
|
||||
let ret = talent.q['岩晶崩破伤害'] * calc(attr.def) / 100 + attr.q.plus * 1
|
||||
dmg: ({ talent, attr }, { basic }) => {
|
||||
let ret = talent.q['岩晶崩破伤害'] / 100 * attr.def
|
||||
return basic(ret, 'q')
|
||||
}
|
||||
}, {
|
||||
title: 'Q每跳治疗',
|
||||
cons: 4,
|
||||
dmg: ({ attr, calc }, { heal }) => heal(0.5 * calc(attr.def))
|
||||
dmg: ({ attr }, { heal }) => heal(0.5 * attr.def)
|
||||
}]
|
||||
|
||||
export const mainAttr = 'atk,def,cpct,cdmg'
|
||||
@ -27,6 +27,13 @@ export const buffs = [{
|
||||
defPlus: ({ talent }) => talent.e['防御力提升'] * 1,
|
||||
dmg: 15
|
||||
}
|
||||
}, {
|
||||
title: '天赋-报恩之守:基于防御力,提高E伤害[ePlus],提高Q伤害[qPlus]',
|
||||
sort: 9,
|
||||
data: {
|
||||
ePlus: ({ attr }) => 1.56 * attr.def,
|
||||
qPlus: ({ attr }) => 0.156 * attr.def
|
||||
}
|
||||
}, {
|
||||
title: '五郎被动:释放E后防御力提高25%',
|
||||
data: {
|
||||
|
@ -1,3 +1,5 @@
|
||||
import { Format } from '#miao'
|
||||
|
||||
export const details = [{
|
||||
title: 'E伤害',
|
||||
dmg: ({ talent }, dmg) => dmg(talent.e['基础伤害'], 'e')
|
||||
@ -8,6 +10,21 @@ export const details = [{
|
||||
title: 'Q每跳伤害',
|
||||
params: { q: true },
|
||||
dmg: ({ talent }, dmg) => dmg(talent.q['闪雷伤害'], 'q')
|
||||
}, {
|
||||
title: 'E弹反护盾量',
|
||||
dmg: ({ talent, attr }, { shield }) => shield(talent.e['护盾吸收量2'][0] / 100 * attr.hp + talent.e['护盾吸收量2'][1])
|
||||
}, {
|
||||
title: 'Q护盾量',
|
||||
check: ({ cons }) => cons >= 1,
|
||||
dmg: ({ attr }, { shield }) => shield(0.16 * attr.hp)
|
||||
}, {
|
||||
title: 'Q伤害减免',
|
||||
dmg: ({ talent }) => {
|
||||
return {
|
||||
avg: Format.percent(talent.q['伤害减免'] / 100),
|
||||
type: 'text'
|
||||
}
|
||||
}
|
||||
}]
|
||||
|
||||
export const mainAttr = 'atk,cpct,cdmg'
|
||||
|
@ -11,10 +11,11 @@ export const details = [{
|
||||
dmg: ({ talent, calc, attr, cons }, { basic }) => {
|
||||
let pct = talent.e['剑舞步/旋舞步一段伤害2'][0] * 1 + talent.e['剑舞步/旋舞步二段伤害2'][0] * 1
|
||||
let ret1 = basic(calc(attr.hp) * pct / 100, 'e')
|
||||
let dynamicDmg = 0
|
||||
if (cons >= 1) {
|
||||
attr.e.dmg += 65
|
||||
dynamicDmg = 65
|
||||
}
|
||||
let ret2 = basic(calc(attr.hp) * talent.e['水月/水轮伤害2'][0] / 100, 'e')
|
||||
let ret2 = basic(calc(attr.hp) * talent.e['水月/水轮伤害2'][0] / 100, 'e', false, { dynamicDmg })
|
||||
return {
|
||||
dmg: ret1.dmg + ret2.dmg,
|
||||
avg: ret2.avg + ret2.avg
|
||||
|
@ -15,10 +15,11 @@ export const details = [{
|
||||
dmg: ({ talent, calc, attr, cons }, { basic }) => {
|
||||
let pct = talent.e['剑舞步/旋舞步一段伤害2'][0] * 1 + talent.e['剑舞步/旋舞步二段伤害2'][0] * 1
|
||||
let ret1 = basic(calc(attr.hp) * pct / 100, 'e')
|
||||
let dynamicDmg = 0
|
||||
if (cons >= 1) {
|
||||
attr.e.dmg += 65
|
||||
dynamicDmg = 65
|
||||
}
|
||||
let ret2 = basic(calc(attr.hp) * talent.e['水月/水轮伤害2'][0] / 100, 'e')
|
||||
let ret2 = basic(calc(attr.hp) * talent.e['水月/水轮伤害2'][0] / 100, 'e', false, { dynamicDmg })
|
||||
return {
|
||||
dmg: ret1.dmg + ret2.dmg,
|
||||
avg: ret2.avg + ret2.avg
|
||||
|
@ -16,8 +16,8 @@ export const buffs = [{
|
||||
title: '蝶引来生:开E获得[atkPlus]点攻击力加成',
|
||||
sort: 9,
|
||||
data: {
|
||||
atkPlus: ({ talent, attr, calc }) => {
|
||||
return Math.min(talent.e['攻击力提高'] * calc(attr.hp) / 100, attr.atk.base * 4)
|
||||
atkPlus: ({ talent, attr }) => {
|
||||
return Math.min(talent.e['攻击力提高'] * attr.hp / 100, attr.atk.base * 4)
|
||||
}
|
||||
}
|
||||
}, {
|
||||
|
@ -1,62 +1,61 @@
|
||||
export const details = [{
|
||||
title: '半血开E重击',
|
||||
params: { team: false },
|
||||
dmg: ({ talent }, dmg) => dmg(talent.a['重击伤害'], 'a2')
|
||||
}, {
|
||||
title: '半血开E重击蒸发',
|
||||
params: { team: false },
|
||||
dmg: ({ talent }, dmg) => dmg(talent.a['重击伤害'], 'a2', 'vaporize')
|
||||
}, {
|
||||
title: '胡桃双水半血重击蒸发',
|
||||
params: { team: true},
|
||||
dmg: ({ talent }, dmg) => dmg(talent.a['重击伤害'], 'a2', 'vaporize')
|
||||
}, {
|
||||
title: '半血开E后Q蒸发',
|
||||
params: { team: false },
|
||||
dmg: ({ talent }, dmg) => dmg(talent.q['低血量时技能伤害'], 'q', 'vaporize')
|
||||
}, {
|
||||
title: '胡桃双水半血Q蒸发',
|
||||
params: { team: true},
|
||||
dmg: ({ talent }, dmg) => dmg(talent.q['低血量时技能伤害'], 'q', 'vaporize')
|
||||
}]
|
||||
|
||||
export const defDmgIdx = 2
|
||||
export const mainAttr = 'hp,atk,cpct,cdmg,mastery'
|
||||
|
||||
export const defParams = {
|
||||
team: true
|
||||
title: '半血开E重击',
|
||||
params: { team: false },
|
||||
dmg: ({ talent }, dmg) => dmg(talent.a['重击伤害'], 'a2')
|
||||
}, {
|
||||
title: '半血开E重击蒸发',
|
||||
params: { team: false },
|
||||
dmg: ({ talent }, dmg) => dmg(talent.a['重击伤害'], 'a2', 'vaporize')
|
||||
}, {
|
||||
title: '胡桃双水半血重击蒸发',
|
||||
params: { team: true },
|
||||
dmg: ({ talent }, dmg) => dmg(talent.a['重击伤害'], 'a2', 'vaporize')
|
||||
}, {
|
||||
title: '半血开E后Q蒸发',
|
||||
params: { team: false },
|
||||
dmg: ({ talent }, dmg) => dmg(talent.q['低血量时技能伤害'], 'q', 'vaporize')
|
||||
}, {
|
||||
title: '胡桃双水半血Q蒸发',
|
||||
params: { team: true },
|
||||
dmg: ({ talent }, dmg) => dmg(talent.q['低血量时技能伤害'], 'q', 'vaporize')
|
||||
}]
|
||||
|
||||
export const defDmgIdx = 2
|
||||
export const mainAttr = 'hp,atk,cpct,cdmg,mastery'
|
||||
|
||||
export const defParams = {
|
||||
team: true
|
||||
}
|
||||
|
||||
export const buffs = [{
|
||||
check: ({ params }) => params.team === true,
|
||||
title: '双水共鸣:获得[hpPct]%生命值',
|
||||
data: {
|
||||
hpPct: 25
|
||||
}
|
||||
|
||||
export const buffs = [{
|
||||
check: ({ params }) => params.team === true,
|
||||
title: '双水共鸣:获得[hpPct]%生命值',
|
||||
data: {
|
||||
hpPct: 25
|
||||
}, {
|
||||
title: '蝶引来生:开E获得[atkPlus]点攻击力加成',
|
||||
sort: 9,
|
||||
data: {
|
||||
atkPlus: ({ talent, attr }) => {
|
||||
return Math.min(talent.e['攻击力提高'] * attr.hp / 100, attr.atk.base * 4)
|
||||
}
|
||||
},{
|
||||
title: '蝶引来生:开E获得[atkPlus]点攻击力加成',
|
||||
sort: 9,
|
||||
data: {
|
||||
atkPlus: ({ talent, attr, calc }) => {
|
||||
return Math.min(talent.e['攻击力提高'] * calc(attr.hp) / 100, attr.atk.base * 4)
|
||||
}
|
||||
}
|
||||
}, {
|
||||
title: '胡桃被动:半血获得33%火伤加成',
|
||||
data: {
|
||||
dmg: 33
|
||||
}
|
||||
},{
|
||||
check: ({ params }) => params.team === true,
|
||||
title: '夜兰:获得平均[dmg]%增伤',
|
||||
data: {
|
||||
dmg: 35
|
||||
}
|
||||
},{
|
||||
check: ({ params }) => params.team === true,
|
||||
title: '钟离:降低敌人[kx]%全抗',
|
||||
data: {
|
||||
kx: 20
|
||||
}
|
||||
},'vaporize']
|
||||
|
||||
}
|
||||
}, {
|
||||
title: '胡桃被动:半血获得33%火伤加成',
|
||||
data: {
|
||||
dmg: 33
|
||||
}
|
||||
}, {
|
||||
check: ({ params }) => params.team === true,
|
||||
title: '夜兰:获得平均[dmg]%增伤',
|
||||
data: {
|
||||
dmg: 35
|
||||
}
|
||||
}, {
|
||||
check: ({ params }) => params.team === true,
|
||||
title: '钟离:降低敌人[kx]%全抗',
|
||||
data: {
|
||||
kx: 20
|
||||
}
|
||||
}, 'vaporize']
|
||||
|
@ -1,7 +1,7 @@
|
||||
{
|
||||
"id": 10000096,
|
||||
"name": "阿蕾奇诺",
|
||||
"abbr": "阿蕾奇诺",
|
||||
"abbr": "仆人",
|
||||
"title": "孤暝厄月",
|
||||
"star": 5,
|
||||
"elem": "pyro",
|
||||
@ -429,8 +429,8 @@
|
||||
"name": "厄月将升",
|
||||
"desc": [
|
||||
"阿蕾奇诺振舞厄月血火之翼,回收并清除周围的血偿勒令,造成火元素范围伤害,并在此后清除元素战技「万相化灰」的冷却时间及为自己恢复生命值,回复量基于她的生命之契数值与攻击力。",
|
||||
"<i>就提瓦特常识来说,满月以外的月相皆是仅炼金术与占星术会用到的厄运隐喻。",
|
||||
"她梦中曾数次梦见的这一轮赤色之月,是噩兆吗?是,不过悲惨命运是属于激怒她的那些人的。</i>"
|
||||
"<i>就提瓦特常识来说,满月以外的月相皆是仅炼金术与占星术会用到的厄运隐喻。</i>",
|
||||
"<i>她梦中曾数次梦见的这一轮赤色之月,是噩兆吗?是,不过悲惨命运是属于激怒她的那些人的。</i>"
|
||||
],
|
||||
"tables": [
|
||||
{
|
||||
|
@ -5,7 +5,7 @@ export const details = [{
|
||||
}, {
|
||||
title: 'E刹那之花伤害',
|
||||
dmg: ({ talent, attr }, { basic }) => {
|
||||
let ret = talent.e['刹那之花伤害'] * attr.def / 100 + attr.e.plus
|
||||
let ret = talent.e['刹那之花伤害'] * attr.def / 100
|
||||
return basic(ret, 'e')
|
||||
}
|
||||
}, {
|
||||
@ -14,7 +14,7 @@ export const details = [{
|
||||
half: true
|
||||
},
|
||||
dmg: ({ talent, attr }, { basic }) => {
|
||||
let ret = talent.e['刹那之花伤害'] * attr.def / 100 + attr.e.plus
|
||||
let ret = talent.e['刹那之花伤害'] * attr.def / 100
|
||||
return basic(ret, 'e')
|
||||
}
|
||||
}, {
|
||||
|
@ -4,7 +4,7 @@ export default function (step, staticStep) {
|
||||
title: '元素战技造成的伤害值提高[ePlus]',
|
||||
sort: 9,
|
||||
data: {
|
||||
ePlus: ({ attr, calc, refine }) => calc(attr.def) * step(40)[refine] / 100
|
||||
ePlus: ({ attr, refine }) => attr.def * step(40)[refine] / 100
|
||||
}
|
||||
},
|
||||
腐殖之剑: {
|
||||
@ -248,7 +248,7 @@ export default function (step, staticStep) {
|
||||
hpPct: step(14 * 2)
|
||||
}
|
||||
}],
|
||||
有乐御簾切: [staticStep('defPct', 20),{
|
||||
有乐御簾切: [staticStep('defPct', 20), {
|
||||
title: '附近的角色在场上造成岩元素伤害后,普通攻击伤害提升[aDmg]%,元素战伤害提升[eDmg]%;',
|
||||
refine: {
|
||||
aDmg: step(16 * 2),
|
||||
|
Loading…
Reference in New Issue
Block a user