更新菲米尼、玲可伤害计算

This commit is contained in:
Aluxes 2023-09-22 05:42:48 +08:00
parent 56e2d9f1a5
commit 631e6ab711
6 changed files with 130 additions and 6 deletions

View File

@ -3,6 +3,7 @@
* 如character/${name}/artis.js下有角色自定义规则优先使用自定义
*/
export const usefulAttr = {
玲可: { hp: 100, atk: 0, def: 50, speed: 100, cpct: 0, cdmg: 0, stance: 0, heal: 100, recharge: 75, effPct: 0, effDef: 50, dmg: 0 },
符玄: { hp: 100, atk: 0, def: 50, speed: 100, cpct: 100, cdmg: 100, stance: 0, heal: 0, recharge: 50, effPct: 0, effDef: 50, dmg: 100 },
'丹恒•饮月': { hp: 0, atk: 75, def: 0, speed: 100, cpct: 100, cdmg: 100, stance: 0, heal: 0, recharge: 50, effPct: 0, effDef: 0, dmg: 100 },
卡芙卡: { hp: 0, atk: 100, def: 0, speed: 100, cpct: 0, cdmg: 0, stance: 50, heal: 0, recharge: 50, effPct: 75, effDef: 0, dmg: 100 },

View File

@ -0,0 +1,42 @@
export const details = [{
title: '普攻伤害',
dmg: ({ talent, calc, attr }, { basic }) => basic(talent.a['技能伤害'] * calc(attr.hp), 'a')
}, {
title: '战技提高生命上限值',
dmg: ({ talent, calc, attr, cons }) => {
const c6Plus = cons >= 6 ? 0.06 : 0
const hpPctData = talent.e['生命提高·百分比生命'] + c6Plus
return {
avg: calc(attr.hp) * hpPctData + talent.e['生命提高·固定值']
}
}
}, {
title: '战技生命回复',
dmg: ({ talent, calc, attr }, { heal }) => heal(calc(attr.hp) * talent.e['治疗·百分比'] + talent.e['治疗·固定值'])
}, {
title: '终结技生命回复',
dmg: ({ talent, calc, attr }, { heal }) => heal(calc(attr.hp) * talent.q['治疗·百分比生命'] + talent.q['治疗·固定值'])
}, {
title: '天赋持续回复',
dmg: ({ talent, calc, attr }, { heal }) => heal(calc(attr.hp) * talent.t['治疗·百分比生命'] + talent.t['治疗·固定值'])
}, {
title: '天赋额外回复',
dmg: ({ talent, calc, attr }, { heal }) => heal(calc(attr.hp) * talent.t['额外治疗·百分比生命'] + talent.t['额外治疗·固定值'])
}]
export const mainAttr = 'cpct,cdmg,hp'
export const defDmgIdx = 2
export const buffs = [{
title: '玲可1命为生命值百分比<=50%的目标提供治疗时,治疗量提高[heal]%',
cons: 1,
data: {
heal: 20
}
}, {
title: '玲可6命战技提供的生命上限提高效果额外提高,提高[_hpPlus]',
cons: 6,
data: {
_hpPlus: ({ calc, attr }) => calc(attr.hp) * 0.06
}
}]

View File

@ -75,7 +75,7 @@
"desc": "为指定我方单体附上【求生反应】,提高等同于玲可<nobr>$1[i]%</nobr>生命上限+<nobr>$2[i]</nobr>的生命上限,若该目标为「毁灭」或「存护」命途,被敌方攻击的概率大幅提高,【求生反应】持续<nobr>2</nobr>回合。<br />使该目标回复等同于玲可<nobr>$3[i]%</nobr>生命上限+<nobr>$4[i]</nobr>的生命值。",
"tables": {
"1": {
"name": "治疗·百分比生命",
"name": "生命提高·百分比生命",
"isSame": false,
"values": [
0.05,
@ -96,7 +96,7 @@
]
},
"2": {
"name": "治疗·固定值",
"name": "生命提高·固定值",
"isSame": false,
"values": [
50,
@ -117,7 +117,7 @@
]
},
"3": {
"name": "毁灭存护治疗·百分比",
"name": "治疗·百分比",
"isSame": false,
"values": [
0.08,
@ -138,7 +138,7 @@
]
},
"4": {
"name": "毁灭存护治疗·固定值",
"name": "治疗·固定值",
"isSame": false,
"values": [
80,

View File

@ -69,5 +69,6 @@ export const usefulAttr = {
卡维: { hp: 0, atk: 75, def: 0, cpct: 100, cdmg: 100, mastery: 75, dmg: 100, phy: 0, recharge: 75, heal: 0 },
绮良良: { hp: 100, atk: 75, def: 0, cpct: 100, cdmg: 100, mastery: 0, dmg: 100, phy: 0, recharge: 0, heal: 0 },
林尼: { hp: 0, atk: 75, def: 0, 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: 0, dmg: 100, phy: 0, recharge: 55, heal: 0 }
琳妮特: { hp: 0, atk: 75, def: 0, 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: 0, dmg: 100, phy: 100, recharge: 55, heal: 0 }
}

View File

@ -0,0 +1,80 @@
let normalEDmg = false
export const details = [{
title: '普攻首段伤害',
dmg: ({ talent }, dmg) => dmg(talent.a['一段伤害'], 'a', 'phy')
}, {
title: 'E伤害',
dmg: ({ talent }, dmg) => {
normalEDmg = dmg(talent.e['上挑攻击伤害'], 'e')
return normalEDmg
}
}, {
title: '0阶E伤害',
params: { e: true },
dmg: ({ talent }, dmg) => dmg(talent.e['零阶高压粉碎伤害'], 'e')
}, {
title: '4阶E伤害',
params: { e: true },
dmg: ({ talent }, dmg) => dmg(talent.e['四阶高压粉碎伤害'], 'e', 'phy')
}, {
title: 'Q伤害',
dmg: ({ talent }, dmg) => dmg(talent.q['技能伤害'], 'q')
}, {
title: 'Q状态·冰伤流4轮EEA总伤害',
check: ({ calc, attr }) => calc(attr.dmg) >= 46,
dmgKey: 'q',
params: { e: true },
dmg: ({ talent }, dmg) => {
let e2Dmg = dmg(talent.e['零阶高压粉碎伤害'], 'e')
let a1Dmg = dmg(talent.a['一段伤害'], 'a', 'phy')
return {
dmg: (normalEDmg.dmg + e2Dmg.dmg + a1Dmg.dmg) * 4,
avg: (normalEDmg.avg + e2Dmg.avg + a1Dmg.avg) * 4
}
}
}, {
title: 'Q状态·物理流3轮EAAAA总伤害',
check: ({ calc, attr }) => calc(attr.dmg) < 46,
dmgKey: 'q',
params: { e: true },
dmg: ({ talent }, dmg) => {
let a1Dmg = dmg(talent.a['一段伤害'], 'a', 'phy')
let a2Dmg = dmg(talent.a['二段伤害'], 'a', 'phy')
let e2Dmg = dmg(talent.e['四阶高压粉碎伤害'], 'e', 'phy')
return {
dmg: (normalEDmg.dmg + a1Dmg.dmg * 2 + a2Dmg.dmg + e2Dmg.dmg) * 3,
avg: (normalEDmg.avg + a1Dmg.avg * 2 + a2Dmg.avg + e2Dmg.avg) * 3
}
}
}]
export const defDmgKey = 'q'
export const mainAttr = 'atk,cpct,cdmg'
export const buffs = [{
title: '天赋-并流式冷凝机关:触发碎冰反应后,使浮冰增压·高压粉碎造成的伤害提高[eDmg]%',
check: ({ params }) => params.e === true,
data: {
eDmg: 40
}
}, {
title: '菲米尼1命浮冰增压·高压粉碎的暴击率提高15%',
check: ({ params }) => params.e === true,
cons: 1,
data: {
eCpct: 15
}
}, {
title: '菲米尼4命触发冰冻、碎冰、超导反应后满层Buff提升攻击力[atkPct]%',
cons: 4,
data: {
atkPct: 18
}
}, {
title: '菲米尼6命触发冰冻、碎冰、超导反应后满层Buff提升暴击伤害[cdmg]%',
cons: 6,
data: {
cdmg: 36
}
}]

View File

@ -487,7 +487,7 @@
"处于潜猎模式状态下时,菲米尼的抗打断能力提升,元素战技「浮冰增压」获得如下强化:",
"·冷却时间缩短70%",
"·进行普通攻击时额外提升一阶佩伊刻计的压力阶级并使普通攻击释放的霜寒造成的伤害为原本的200%。",
"<h3>效果将在菲米尼退场时解除。</h3>",
"效果将在菲米尼退场时解除。",
"<i>「现在…不需要什么多余的杂音了。」</i>"
],
"tables": [