diff --git a/models/dmg/DmgCalc.js b/models/dmg/DmgCalc.js index 0975e148..c44b50a9 100644 --- a/models/dmg/DmgCalc.js +++ b/models/dmg/DmgCalc.js @@ -207,7 +207,7 @@ let DmgCalc = { } // 未计算:1. 层数(风化、纠缠) 2. 韧性条系数(击破、纠缠) 3. 削韧值(超击破)、超击破伤害提高 - // 常规击破伤害均需要计算减伤区(即按韧性条存在处理) 特例:阮梅终结技/秘技击破伤害不计算减伤 + // 常规击破伤害均需要计算减伤区(即按韧性条存在处理) 特例:阮梅终结技/秘技击破伤害不计算减伤/波提欧 // 击破伤害 = 基础伤害 * 属性击破伤害系数 * (1+击破特攻%) * 易伤区 * 防御区 * 抗性区 * 减伤区 * (敌方韧性+2)/4 * 层数系数 // 击破持续伤害 = 基础伤害 * 属性持续伤害系数 * (1+击破特攻%) * 易伤区 * 防御区 * 抗性区 * 减伤区 * 层数系数 // 超击破伤害 = 基础伤害 * (1+击破特攻%) * 易伤区 * 防御区 * 抗性区 * 减伤区 * (1+超击破伤害提高) * 技能最终削韧值 diff --git a/resources/meta-sr/artifact/artis-mark.js b/resources/meta-sr/artifact/artis-mark.js index 88e2e3d4..f5b0e39e 100644 --- a/resources/meta-sr/artifact/artis-mark.js +++ b/resources/meta-sr/artifact/artis-mark.js @@ -3,6 +3,7 @@ * 如character/${name}/artis.js下有角色自定义规则优先使用自定义 */ export const usefulAttr = { + 波提欧: { hp: 50, atk: 50, def: 50, speed: 100, cpct: 50, cdmg: 50, stance: 100, heal: 0, recharge: 50, effPct: 0, effDef: 0, dmg: 50 }, 知更鸟: { hp: 75, atk: 100, def: 75, speed: 50, cpct: 0, cdmg: 0, stance: 0, heal: 0, recharge: 100, effPct: 0, effDef: 50, dmg: 0 }, 砂金: { hp: 0, atk: 0, def: 100, speed: 100, cpct: 100, cdmg: 100, stance: 0, heal: 0, recharge: 75, effPct: 0, effDef: 50, dmg: 100 }, 加拉赫: { hp: 75, atk: 0, def: 75, speed: 100, cpct: 0, cdmg: 0, stance: 100, heal: 100, recharge: 75, effPct: 0, effDef: 50, dmg: 0 }, diff --git a/resources/meta-sr/character/波提欧/calc.js b/resources/meta-sr/character/波提欧/calc.js new file mode 100644 index 00000000..a521db7c --- /dev/null +++ b/resources/meta-sr/character/波提欧/calc.js @@ -0,0 +1,85 @@ +export const details = [{ + title: '强化普攻伤害', + params: { eBuff: true }, + dmg: ({ talent }, dmg) => dmg(talent.a2['技能伤害'], 'a') +}, { + title: '终结技伤害', + params: { eBuff: true }, + dmg: ({ talent }, dmg) => dmg(talent.q['技能伤害'], 'q') +}, { + title: '两层口袋·击破伤害(10韧性怪)', + dmg: ({ talent, cons }, { reaction }) => { + let extraTd = cons < 6 ? 0 : 0.4 + return { + avg: reaction('physicalBreak').avg / 0.9 * (10 + 2) / 4 * (talent.t['2层伤害'] + extraTd) + } + } +}, { + title: '两层口袋·最大击破伤害', + dmg: ({ talent, cons }, { reaction }) => { + let extraTd = cons < 6 ? 0 : 0.4 + return { + avg: reaction('physicalBreak').avg / 0.9 * (16 + 2) / 4 * (talent.t['2层伤害'] + extraTd) + } + } +}, { + title: '三层口袋·击破伤害(10韧性怪)', + dmg: ({ talent, cons }, { reaction }) => { + let extraTd = cons < 6 ? 0 : 0.4 + return { + avg: reaction('physicalBreak').avg / 0.9 * (10 + 2) / 4 * (talent.t['3层伤害'] + extraTd) + } + } +}, { + title: '三层口袋·最大击破伤害', + dmg: ({ talent, cons }, { reaction }) => { + let extraTd = cons < 6 ? 0 : 0.4 + return { + avg: reaction('physicalBreak').avg / 0.9 * (16 + 2) / 4 * (talent.t['3层伤害'] + extraTd) + } + } +}] + +export const defDmgIdx = 5 +export const mainAttr = 'atk,stance,cpct,cdmg,dmg' + +export const buffs = [{ + title: '战技Buff:处于【绝命对峙】的敌方受到的伤害提高[enemydmg]%', + check: ({ params }) => params.eBuff === true, + data: { + enemydmg: ({ talent }) => talent.e['伤害提高'] * 100 + } +}, { + title: '行迹-幽灵装填:基于击破特攻,提高自身暴击率[cpct]%、暴击伤害[cdmg]%', + tree: 1, + sort: 9, + data: { + cpct: ({ attr }) => Math.min(attr.stance * 0.1, 30), + cdmg: ({ attr }) => Math.min(attr.stance * 0.5, 150) + } +}, { + title: '波提欧1命:造成伤害时无视地方目标[ignore]%的防御力', + cons: 1, + data: { + ignore: 16 + } +}, { + title: '波提欧2命:处于【绝命对峙】并获得口袋时,击破特攻提高[stance]%', + check: ({ params }) => params.eBuff === true, + cons: 2, + data: { + stance: 30 + } +}, { + title: '波提欧4命:处于【绝命对峙】的目标受到的伤害额外提高[enemydmg]%', + check: ({ params }) => params.eBuff === true, + cons: 4, + data: { + enemydmg: 12 + } +}, { + title: '波提欧6命:造成击破伤害时,对目标额外造成等同于原伤害倍率的40%的击破伤害', + cons: 6 +}] + +export const createdBy = 'Aluxes'