更新流萤伤害计算

This commit is contained in:
Aluxes 2024-06-21 06:43:11 +08:00
parent 86f9eae36b
commit 81635441d8
No known key found for this signature in database
GPG Key ID: 6696152F9C003087
18 changed files with 348 additions and 29 deletions

View File

@ -93,6 +93,10 @@ let DmgAttr = {
ret.fykx = 0 // 敌人反应抗性降低
} else if (game === 'sr') {
ret.sp = char.sp * 1
// 超击破
ret.superBreak = {
ignore: 0 // 无视防御
}
}
}
return ret
@ -212,6 +216,12 @@ let DmgAttr = {
if (['vaporize', 'melt', 'crystallize', 'burning', 'superConduct', 'swirl', 'electroCharged', 'shatter', 'overloaded', 'bloom', 'burgeon', 'hyperBloom', 'aggravate', 'spread', 'kx', 'fykx', 'multi'].includes(key)) {
attr[key] += val * 1 || 0
return
}
let sRet = /^(superBreak)(Ignore)$/.exec(key)
if (sRet) {
attr[sRet[1]][sRet[2].toLowerCase()] += val * 1 || 0
}
})
msg.push(title)

View File

@ -83,6 +83,11 @@ let DmgCalc = {
})
}
// TODO
if (ele === 'superBreak') {
enemyIgnore += attr.superBreak.ignore / 100
}
// 防御区
let defNum = (level + 100) / ((level + 100) + (enemyLv + 100) * (1 - enemyDef) * (1 - enemyIgnore))
if (game === 'sr') {

View File

@ -32,7 +32,9 @@ export const artiAbbr = {
钟表匠的极目透镜: '钟表匠的透镜',
钟表匠的交运腕表: '钟表匠的腕表',
钟表匠的空幻礼服: '钟表匠的礼服',
钟表匠的隐梦革履: '钟表匠的革履'
钟表匠的隐梦革履: '钟表匠的革履',
铸炼宫的莲华灯芯: '铸炼宫的灯芯',
铸炼宫的焰轮天绸: '铸炼宫的天绸'
}
export const artiSetAbbr = {
盗匪荒漠的废土客: '虚数套',
@ -66,7 +68,11 @@ export const artiSetAbbr = {
死水深潜的先驱: '死水',
机心戏梦的钟表匠: '机心',
无主荒星茨冈尼亚: '荒星',
出云显世与高天神国: '出云'
出云显世与高天神国: '出云',
荡除蠹灾的铁骑: '铁骑',
风举云飞的勇烈: '勇烈',
奔狼的都蓝王朝: '奔狼',
劫火莲灯铸炼宫: '劫火'
}
export const aliasCfg = {
@ -101,5 +107,9 @@ export const aliasCfg = {
死水深潜的先驱: '死水,深潜,死水深潜,死水套,深潜套',
机心戏梦的钟表匠: '机心,钟表匠,机心套,钟表套',
无主荒星茨冈尼亚: '荒星,无主荒星,茨冈尼亚',
出云显世与高天神国: '出云,出云显世,高天神国'
出云显世与高天神国: '出云,出云显世,高天神国',
荡除蠹灾的铁骑: '铁骑,铁骑套,超击破套',
风举云飞的勇烈: '风举云飞,勇烈,勇烈套,终追套',
奔狼的都蓝王朝: '都蓝王朝,都蓝,都蓝套,奔狼套',
劫火莲灯铸炼宫: '劫火莲灯,铸炼宫,劫火,劫火套'
}

View File

@ -3,7 +3,7 @@
* 如character/${name}/artis.js下有角色自定义规则优先使用自定义
*/
export const usefulAttr = {
流萤: { hp: 30, atk: 75, def: 30, speed: 100, cpct: 0, cdmg: 0, stance: 100, heal: 0, recharge: 50, effPct: 0, effDef: 0, dmg: 0 },
流萤: { hp: 30, atk: 100, def: 30, speed: 100, cpct: 0, cdmg: 0, stance: 100, heal: 0, recharge: 0, effPct: 0, effDef: 0, dmg: 0 },
波提欧: { 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 },

View File

@ -273,13 +273,19 @@ export default {
},
荡除蠹灾的铁骑: {
2: attr('stance', 16),
4: {
4: [{
check: ({ attr }) => attr.stance >= 150,
title: '基于击破特攻,使造成的击破伤害无视[breakIgnore]%防御',
title: '造成的击破伤害无视敌方[breakIgnore]%防御',
data: {
breakIgnore: ({ attr }) => attr.stance >= 250 ? 25 : 10
breakIgnore: 10
}
}
}, {
check: ({ attr }) => attr.stance >= 250,
title: '造成的超击破伤害无视敌方[superBreakIgnore]%防御',
data: {
superBreakIgnore: 15
}
}]
},
风举云飞的勇烈: {
2: attr('atkPct', 12),
@ -289,5 +295,22 @@ export default {
qDmg: 36
}
}]
},
奔狼的都蓝王朝: {
2: {
title: '5层Buff使得装备者造成的追击伤害提高[tDmg]%,装备者的暴击伤害提高[cdmg]%',
data: {
tDmg: 25,
cdmg: 25
}
}
},
劫火莲灯铸炼宫: {
2: [attr('speedPct', 6), {
title: '击中火弱点的敌方时,击破特攻提高[stance]%',
data: {
stance: 40
}
}]
}
}

View File

@ -47,7 +47,9 @@ export const alias = {
加拉赫: '',
砂金: '卡卡瓦夏,沙金',
知更鸟: '鸟妹',
波提欧: 'bto,BTO'
波提欧: 'bto,BTO',
流萤: '小女友,萨姆,萨缪尔',
翡翠: '慈玉'
}
export const abbr = {

View File

@ -17,7 +17,7 @@ export const details = [{
// 加拉赫6命提高20%弱点击破效率阮梅提供50%弱点击破效率
let cost = 1 * ((cons < 6 ? 1 : 1.2) + 0.5)
return {
avg: reaction('superBreak').avg * cost * 1.6 // 同谐主提供1.6独立增伤乘区
avg: reaction('superBreak').avg / 0.9 * cost * 1.6 // 同谐主提供1.6独立增伤乘区
}
}
}, {
@ -27,7 +27,7 @@ export const details = [{
// 加拉赫6命提高20%弱点击破效率阮梅提供50%弱点击破效率
let cost = 3 * ((cons < 6 ? 1 : 1.2) + 0.5)
return {
avg: reaction('superBreak').avg * cost * 1.6 // 同谐主提供1.6独立增伤乘区
avg: reaction('superBreak').avg / 0.9 * cost * 1.6 // 同谐主提供1.6独立增伤乘区
}
}
}, {
@ -37,7 +37,7 @@ export const details = [{
// 加拉赫6命提高20%弱点击破效率阮梅提供50%弱点击破效率
let cost = 2 * ((cons < 6 ? 1 : 1.2) + 0.5)
return {
avg: reaction('superBreak').avg * cost * 1.6 // 同谐主提供1.6独立增伤乘区
avg: reaction('superBreak').avg / 0.9 * cost * 1.6 // 同谐主提供1.6独立增伤乘区
}
}
}]

View File

@ -30,7 +30,7 @@ export const details = [{
dmg: ({ trees }, { reaction }) => {
let extraDmg = trees['101'] ? 1.6 : 1
return {
avg: reaction('superBreak').avg * extraDmg
avg: reaction('superBreak').avg / 0.9 * extraDmg
}
}
}, {
@ -41,7 +41,7 @@ export const details = [{
let cost = (cons < 6 ? 3 : 4) + (trees['102'] ? 1 : 0)
let extraDmg = trees['101'] ? 1.6 : 1
return {
avg: reaction('superBreak').avg * cost * extraDmg
avg: reaction('superBreak').avg / 0.9 * cost * extraDmg
}
}
}]

View File

@ -30,7 +30,7 @@ export const details = [{
dmg: ({ trees }, { reaction }) => {
let extraDmg = trees['101'] ? 1.6 : 1
return {
avg: reaction('superBreak').avg * extraDmg
avg: reaction('superBreak').avg / 0.9 * extraDmg
}
}
}, {
@ -40,7 +40,7 @@ export const details = [{
let cost = (cons < 6 ? 3 : 4) + (trees['102'] ? 1 : 0)
let extraDmg = trees['101'] ? 1.6 : 1
return {
avg: reaction('superBreak').avg * cost * extraDmg
avg: reaction('superBreak').avg / 0.9 * cost * extraDmg
}
}
}, {
@ -51,7 +51,7 @@ export const details = [{
let cost = 1 * 1.5
let extraDmg = trees['101'] ? 1.6 : 1
return {
avg: reaction('superBreak').avg * cost * extraDmg
avg: reaction('superBreak').avg / 0.9 * cost * extraDmg
}
}
}, {
@ -63,7 +63,7 @@ export const details = [{
let cost = ((cons < 6 ? 3 : 4) + (trees['102'] ? 1 : 0)) * 1.5
let extraDmg = trees['101'] ? 1.6 : 1
return {
avg: reaction('superBreak').avg * cost * extraDmg
avg: reaction('superBreak').avg / 0.9 * cost * extraDmg
}
}
}]

View File

@ -0,0 +1,89 @@
// 强化战技 主目标3削韧副目标1.5削韧
export const details = [{
title: '强化战技伤害',
params: { q: true },
dmg: ({ talent, attr }, dmg) => {
let td = talent.e2['目标伤害'] + Math.min(attr.stance * 0.2, 72) / 100
return dmg(td, 'e')
}
}, {
title: '破韧后战技主目标伤害',
params: { q: true },
dmg: ({ talent, attr, cons }, dmg) => {
let td = talent.e2['目标伤害'] + Math.min(attr.stance * 0.2, 72) / 100
let atkDmg = dmg(td, 'e')
let cost = 3 * (1 + 0.5 + (cons >= 6 ? 0.5 : 0))
let base = 0
if (attr.stance >= 360) {
base = 0.5
} else if (attr.stance >= 200) {
base = 0.35
}
let superBreak = dmg.reaction('superBreak').avg / 0.9 * cost * base
return {
dmg: atkDmg.dmg + superBreak,
avg: atkDmg.avg + superBreak
}
}
}, {
title: '破韧后战技副目标伤害',
params: { q: true },
dmg: ({ talent, attr, cons }, dmg) => {
let td = talent.e2['相邻目标伤害'] + Math.min(attr.stance * 0.1, 36) / 100
let atkDmg = dmg(td, 'e')
let cost = 1.5 * (1 + 0.5 + (cons >= 6 ? 0.5 : 0))
let base = 0
if (attr.stance >= 360) {
base = 0.5
} else if (attr.stance >= 200) {
base = 0.35
}
let superBreak = dmg.reaction('superBreak').avg / 0.9 * cost * base
return {
dmg: atkDmg.dmg + superBreak,
avg: atkDmg.avg + superBreak
}
}
}]
export const mainAttr = 'atk,stance'
export const defDmgIdx = 1
export const buffs = [{
title: '终结技Buff速度提高[speed]点释放强化普攻和战技时弱点击破效率提高50%,使敌方受到的击破伤害提高[breakEnemydmg]%',
check: ({ params }) => params.q === true,
data: {
speed: ({ talent }) => talent.q['速度提高'],
breakEnemydmg: ({ talent }) => talent.q['击破伤害提高'] * 100
}
}, {
title: '行迹-过载核心:基于攻击力,提高自身击破特攻[stance]%',
check: ({ params, attr }) => params.q === true && attr.atk >= 1800,
sort: 9,
data: {
stance: ({ attr }) => Math.floor((attr.atk - 1800) / 10) * 0.8
}
}, {
title: '流萤1魂释放强化战技时无视目标[ignore]%的防御',
cons: 1,
data: {
ignore: 15
}
}, {
title: '流萤4魂终结技状态下效果抵抗提高[effDef]%',
cons: 4,
check: ({ params }) => params.q === true,
data: {
effDef: 50
}
}, {
title: '流萤6魂终结技状态下火属性抗性穿透提高[kx]%释放强化普攻和战技时的弱点击破效率提高50%',
cons: 6,
check: ({ params }) => params.q === true,
data: {
kx: 20
}
}]
export const createdBy = 'Aluxes'

View File

@ -0,0 +1,157 @@
// 强化战技 主目标3削韧副目标1.5削韧
export const details = [{
title: '强化战技伤害',
params: { q: true },
dmg: ({ talent, attr }, dmg) => {
let td = talent.e2['目标伤害'] + Math.min(attr.stance * 0.2, 72) / 100
return dmg(td, 'e')
}
}, {
title: '破韧后战技主目标伤害',
params: { q: true },
dmg: ({ talent, attr, cons }, dmg) => {
let td = talent.e2['目标伤害'] + Math.min(attr.stance * 0.2, 72) / 100
let atkDmg = dmg(td, 'e')
// 弱点击破效率自身50%六命50%
let cost = 3 * (1 + 0.5 + (cons >= 6 ? 0.5 : 0))
let base = 0
if (attr.stance >= 360) {
base = 0.5
} else if (attr.stance >= 200) {
base = 0.35
}
let superBreak = dmg.reaction('superBreak').avg / 0.9 * cost * base
return {
dmg: atkDmg.dmg + superBreak,
avg: atkDmg.avg + superBreak
}
}
}, {
title: '破韧后战技副目标伤害',
params: { q: true },
dmg: ({ talent, attr, cons }, dmg) => {
let td = talent.e2['相邻目标伤害'] + Math.min(attr.stance * 0.1, 36) / 100
let atkDmg = dmg(td, 'e')
// 弱点击破效率自身50%六命50%
let cost = 1.5 * (1 + 0.5 + (cons >= 6 ? 0.5 : 0))
let base = 0
if (attr.stance >= 360) {
base = 0.5
} else if (attr.stance >= 200) {
base = 0.35
}
let superBreak = dmg.reaction('superBreak').avg / 0.9 * cost * base
return {
dmg: atkDmg.dmg + superBreak,
avg: atkDmg.avg + superBreak
}
}
}, {
title: '流开阮加·战技主目标伤害',
params: { q: true, team: true },
dmg: ({ talent, attr, cons }, dmg) => {
let td = talent.e2['目标伤害'] + Math.min(attr.stance * 0.2, 72) / 100
let atkDmg = dmg(td, 'e')
// 弱点击破效率自身50%阮梅50%六命50%
let cost = 3 * (1 + 0.5 + 0.5 + (cons >= 6 ? 0.5 : 0))
let base = 0
if (attr.stance >= 360) {
base = 0.5
} else if (attr.stance >= 200) {
base = 0.35
}
// 自身触发的超击破
let superBreak = dmg.reaction('superBreak').avg / 0.9 * cost * base
// 同谐主【伴舞】触发的超击破
let superBreakTrailblazer = dmg.reaction('superBreak').avg / 0.9 * cost * 1.6 // 同谐主提供1.6独立增伤乘区
return {
dmg: atkDmg.dmg + superBreak + superBreakTrailblazer,
avg: atkDmg.avg + superBreak + superBreakTrailblazer
}
}
}, {
title: '流开阮加·战技副目标伤害',
params: { q: true, team: true },
dmg: ({ talent, attr, cons }, dmg) => {
let td = talent.e2['相邻目标伤害'] + Math.min(attr.stance * 0.1, 36) / 100
let atkDmg = dmg(td, 'e')
// 弱点击破效率自身50%阮梅50%六命50%
let cost = 1.5 * (1 + 0.5 + 0.5 + (cons >= 6 ? 0.5 : 0))
let base = 0
if (attr.stance >= 360) {
base = 0.5
} else if (attr.stance >= 200) {
base = 0.35
}
// 自身触发的超击破
let superBreak = dmg.reaction('superBreak').avg / 0.9 * cost * base
// 同谐主【伴舞】触发的超击破
let superBreakTrailblazer = dmg.reaction('superBreak').avg / 0.9 * cost * 1.4 // 同谐主提供1.4独立增伤乘区
return {
dmg: atkDmg.dmg + superBreak + superBreakTrailblazer,
avg: atkDmg.avg + superBreak + superBreakTrailblazer
}
}
}]
export const mainAttr = 'atk,stance'
export const defDmgIdx = 3
export const buffs = [{
title: '终结技Buff速度提高[speed]点释放强化普攻和战技时弱点击破效率提高50%,使敌方受到的击破伤害提高[breakEnemydmg]%',
check: ({ params }) => params.q === true,
data: {
speed: ({ talent }) => talent.q['速度提高'],
breakEnemydmg: ({ talent }) => talent.q['击破伤害提高'] * 100
}
}, {
title: '行迹-过载核心:基于攻击力,提高自身击破特攻[stance]%',
check: ({ params, attr }) => params.q === true && attr.atk >= 1800,
sort: 9,
data: {
stance: ({ attr }) => Math.floor((attr.atk - 1800) / 10) * 0.8
}
}, {
title: '流萤1魂释放强化战技时无视目标[ignore]%的防御',
cons: 1,
data: {
ignore: 15
}
}, {
title: '流萤4魂终结技状态下效果抵抗提高[effDef]%',
cons: 4,
check: ({ params }) => params.q === true,
data: {
effDef: 50
}
}, {
title: '流萤6魂终结技状态下火属性抗性穿透提高[kx]%释放强化普攻和战技时的弱点击破效率提高50%',
cons: 6,
check: ({ params }) => params.q === true,
data: {
kx: 20
}
}, {
title: '0魂阮梅弱点击破效率提高50%击破特攻提高20%抗性穿透提高25%速度提高10%',
check: ({ params }) => params.team === true,
data: {
stance: 20,
kx: 25,
speedPct: 10
}
}, {
title: '6魂钟表匠开拓者提高击破特攻[stance]%场上敌人数量为1时超击破伤害提高60%。计算副目标伤害时按3名敌人超击破伤害提高40%计算',
check: ({ params }) => params.team === true,
data: {
stance: 30 + 30 + 300 * 0.15 // 终结技30+钟表匠30+四命转化
}
}, {
title: '加拉赫敌方受到的击破伤害提高13.2%',
check: ({ params }) => params.team === true,
data: {
breakEnemydmg: 13.2
}
}]
export const createdBy = 'Aluxes'

View File

@ -30,7 +30,7 @@ export const details = [{
dmg: ({ trees }, { reaction }) => {
let extraDmg = trees['101'] ? 1.6 : 1
return {
avg: reaction('superBreak').avg * extraDmg
avg: reaction('superBreak').avg / 0.9 * extraDmg
}
}
}, {
@ -41,7 +41,7 @@ export const details = [{
let cost = (cons < 6 ? 3 : 4) + (trees['102'] ? 1 : 0)
let extraDmg = trees['101'] ? 1.6 : 1
return {
avg: reaction('superBreak').avg * cost * extraDmg
avg: reaction('superBreak').avg / 0.9 * cost * extraDmg
}
}
}]

View File

@ -30,7 +30,7 @@ export const details = [{
dmg: ({ trees }, { reaction }) => {
let extraDmg = trees['101'] ? 1.6 : 1
return {
avg: reaction('superBreak').avg * extraDmg
avg: reaction('superBreak').avg / 0.9 * extraDmg
}
}
}, {
@ -40,7 +40,7 @@ export const details = [{
let cost = (cons < 6 ? 3 : 4) + (trees['102'] ? 1 : 0)
let extraDmg = trees['101'] ? 1.6 : 1
return {
avg: reaction('superBreak').avg * cost * extraDmg
avg: reaction('superBreak').avg / 0.9 * cost * extraDmg
}
}
}, {
@ -51,7 +51,7 @@ export const details = [{
let cost = 1 * 1.5
let extraDmg = trees['101'] ? 1.6 : 1
return {
avg: reaction('superBreak').avg * cost * extraDmg
avg: reaction('superBreak').avg / 0.9 * cost * extraDmg
}
}
}, {
@ -63,7 +63,7 @@ export const details = [{
let cost = ((cons < 6 ? 3 : 4) + (trees['102'] ? 1 : 0)) * 1.5
let extraDmg = trees['101'] ? 1.6 : 1
return {
avg: reaction('superBreak').avg * cost * extraDmg
avg: reaction('superBreak').avg / 0.9 * cost * extraDmg
}
}
}]

View File

@ -58,7 +58,7 @@ export const details = [{
dmg: ({ talent }, { reaction }) => {
let cost = 1 * 1.5
return {
avg: reaction('superBreak').avg * cost * 1.6
avg: reaction('superBreak').avg / 0.9 * cost * 1.6
}
}
}]

View File

@ -18,7 +18,8 @@ export const poolNameSr = {
黄泉: '远辞畴昔',
砂金: '囚石铸金',
知更鸟: '翼声纯律',
波提欧: '扬尘孤星'
波提欧: '扬尘孤星',
流萤: '盈茧炽盛'
}
export const poolDetailSr = [{
@ -201,4 +202,22 @@ export const poolDetailSr = [{
char4: ['佩拉', '卢卡', '虎克'],
weapon5: ['驶向第二次生命', '她已闭上双眼'],
weapon4: ['天才们的休憩', '秘密誓心', '朗道的选择']
}, {
version: '2.3',
half: '上半',
from: '2024-06-19 06:00:00',
to: '2024-07-10 11:59:59',
char5: ['流萤', '阮梅'],
char4: ['加拉赫', '米沙', '雪衣'],
weapon5: ['梦应归于何处', '镜中故我'],
weapon4: ['记忆中的模样', '余生的第一天', '猎物的视线']
}, {
version: '2.3',
half: '下半',
from: '2024-07-10 12:00:00',
to: '2024-07-31 14:59:59',
char5: ['翡翠', '银枝'],
char4: ['希露瓦', '娜塔莎', '艾丝妲'],
weapon5: ['偏偏希望无价', '片刻,留在眼底'],
weapon4: ['同一种心情', '宇宙市场趋势', '谐乐静默之后']
}]

View File

@ -75,6 +75,7 @@ export const aliasCfg = {
记一位星神的陨落: '星神的陨落,星神陨落',
在火的远处: '火的远处',
铭记于心的约定: '铭记于心',
梦应归于何处: '',
// 存护
琥珀: '',
@ -139,5 +140,8 @@ export const aliasCfg = {
银河铁道之夜: '银河铁道,星穹铁道之夜,星穹铁道,女人看星星',
拂晓之前: '拂晓',
'片刻,留在眼底': '片刻留在眼底,留在眼底,眼一直留',
银河沦陷日: '银河沦陷,沦陷日'
银河沦陷日: '银河沦陷,沦陷日',
谐乐静默之后: '谐乐静默,谐乐',
偏偏希望无价: '希望无价',
不息的演算: '不息演算'
}

View File

@ -76,7 +76,7 @@ export default function (staticIdx, keyIdx) {
],
谐乐静默之后: [
staticIdx(1, 'stance'),
keyIdx('施放终结技速度提高[speedPct]%', 'speedPct', 2)
keyIdx('施放终结技速度提高[speedPct]%', 'speedPct', 2)
],
不息的演算: [
staticIdx(1, 'atkPct'),

View File

@ -83,7 +83,7 @@ export default function (staticIdx, keyIdx) {
],
梦应归于何处: [
staticIdx(1, 'stance'),
keyIdx('造成的击破伤害提高[breakEnemydmg]%', 'breakEnemydmg', 2)
keyIdx('敌方受到装备者造成的击破伤害提高[breakEnemydmg]%', 'breakEnemydmg', 2)
]
}
}