新增简伤害计算;fix:暴击期望

This commit is contained in:
UCPr 2025-01-18 23:26:17 +08:00
parent 85d368619f
commit 2d1ed8e528
7 changed files with 162 additions and 18 deletions

View file

@ -0,0 +1,99 @@
/** @type {import('../../BuffManager.ts').BuffManager['buffs']} */
export const buffs = [
{
name: '1影',
type: '增伤',
value: ({ calc }) => {
const AnomalyProficiency = calc.get_AnomalyProficiency()
return Math.min(0.3, Math.floor(AnomalyProficiency) / 1000)
}
},
{
name: '2影',
type: '无视防御',
value: 0.15
},
{
name: '2影',
type: '异常暴击伤害',
value: 0.5,
range: ['强击']
},
{
name: '4影',
type: '异常增伤',
value: 0.18
},
{
name: '6影',
type: '暴击率',
value: 0.2
},
{
name: '6影',
type: '暴击伤害',
value: 0.4
},
{
name: '核心被动:洞察',
type: '异常持续时间',
value: 5,
range: ['畏缩']
},
{
name: '核心被动:洞察',
type: '异常暴击率',
value: ({ calc }) => {
const base = calc.calc_value('T1')
const extra = calc.calc_value('T2')
const AnomalyProficiency = calc.get_AnomalyProficiency()
return base + extra * Math.floor(AnomalyProficiency)
},
range: ['强击']
},
{
name: '核心被动:洞察',
type: '异常暴击伤害',
value: 0.5,
range: ['强击']
},
{
name: '技能:狂热',
type: '攻击力',
value: ({ calc }) => {
const AnomalyProficiency = calc.get_AnomalyProficiency()
if (!AnomalyProficiency > 120) return 0
return Math.min(600, Math.floor(AnomalyProficiency - 120) * 2)
}
}
]
/** @type {import('../../Calculator.ts').Calculator['skills']} */
export const skills = [
{ name: '强击', type: '强击' },
{ name: '紊乱', type: '紊乱' },
{ name: '普攻:跳步刃舞六段(狂热)', type: 'AP6' },
{ name: '普攻萨霍夫跳0', type: 'AX0', isHide: true },
{ name: '普攻:萨霍夫跳', type: 'AX', after: ({ damage }) => damage.add('AX0') },
{
name: '闪避反击:疾影',
type: 'CFP',
before: ({ usefulBuffs }) => {
const i = usefulBuffs.findIndex(buff => buff.name === '技能:狂热')
if (i !== -1) usefulBuffs.splice(i, 1)
}
},
{ name: '闪避反击:疾影连舞(狂热)', type: 'CFQ' },
{ name: '强化特殊技:掠空-横扫', type: 'EQ' },
{ name: '连携技:罪孽生花', type: 'RL' },
{ name: '终结技:终幕演出', type: 'RZ' },
{
name: '6影强击暴击额外攻击',
type: 'Y6',
check: ({ avatar }) => avatar.rank >= 6,
before: ({ calc, areas }) => {
const AnomalyProficiency = calc.get_AnomalyProficiency()
areas.BasicArea = AnomalyProficiency * 16
}
}
]

View file

@ -0,0 +1,36 @@
{
"skill": {
"AP6": [
2.913,3.178,3.443,3.708,3.973,4.238,4.503,4.768,5.033,5.298,5.563,5.828,6.093,6.358,6.623,6.888
],
"AX0": [
3.008,3.282,3.556,3.83,4.104,4.378,4.652,4.926,5.2,5.474,5.748,6.022,6.296,6.57,6.844,7.118
],
"AX": [
1.613,1.76,1.907,2.054,2.201,2.348,2.495,2.642,2.789,2.936,3.083,3.23,3.377,3.524,3.671,3.818
],
"CFP": [
3.412,3.723,4.034,4.345,4.656,4.967,5.278,5.589,5.9,6.211,6.522,6.833,7.144,7.455,7.766,8.076
],
"CFQ": [
3.87,4.222,4.574,4.926,5.278,5.63,5.982,6.334,6.686,7.038,7.39,7.742,8.094,8.446,8.798,9.15
],
"EQ": [
5.747,6.27,6.793,7.316,7.839,8.362,8.885,9.408,9.931,10.454,10.977,11.5,12.023,12.546,13.069,13.592
],
"RL": [
6.326,6.902,7.478,8.054,8.63,9.206,9.782,10.358,10.934,11.51,12.086,12.662,13.238,13.814,14.39,14.966
],
"RZ": [
14.706,16.042,17.38,18.717,20.054,21.391,22.728,24.065,25.402,26.739,28.076,29.413,30.75,32.087,33.424,34.761
]
},
"buff": {
"T1": [
0.2,0.25,0.28,0.31,0.34,0.37,0.4
],
"T2": [
0.001,0.0011,0.0012,0.0013,0.0014,0.0015,0.0016
]
}
}