diff --git a/app/features/build-analyzer/data/weapon-params.ts b/app/features/build-analyzer/data/weapon-params.ts index 3c1449197..d7ac3190f 100644 --- a/app/features/build-analyzer/data/weapon-params.ts +++ b/app/features/build-analyzer/data/weapon-params.ts @@ -2378,6 +2378,11 @@ export const weaponParams = { }, "4": { overwrites: { + PaintRadius: { + High: 3.78, + Low: 3.15, + Mid: 3.465, + }, TargetInCircleRadius: { High: 240, Low: 140, @@ -2482,6 +2487,11 @@ export const weaponParams = { }, "10": { overwrites: { + PaintRadius: { + High: 4.7, + Mid: 4.265000000000001, + Low: 3.83, + }, DistanceDamageDistanceRate: { High: 1.3, Low: 1, @@ -2502,11 +2512,6 @@ export const weaponParams = { Low: 450, Mid: 480, }, - PaintRadius: { - High: 3.9000000000000004, - Mid: 3.865, - Low: 3.83, - }, }, DistanceDamage: [ { @@ -2640,6 +2645,11 @@ export const weaponParams = { }, "16": { overwrites: { + PaintRadius: { + High: 4.1, + Low: 3.5, + Mid: 3.8, + }, CrossPaintCheckLength: { High: 3, Low: 2.5, diff --git a/changelog/2026-09-25-spu-paint-radius-specials.md b/changelog/2026-09-25-spu-paint-radius-specials.md new file mode 100644 index 000000000..adc4fcf4a --- /dev/null +++ b/changelog/2026-09-25-spu-paint-radius-specials.md @@ -0,0 +1,5 @@ +--- +navItem: analyzer +type: feature +--- +Build analyzer now shows Special Power Up paint radius for Inkjet, Super Chump and Tenta Missiles diff --git a/scripts/create-analyzer-json.ts b/scripts/create-analyzer-json.ts index 05d14dbc2..2b1389157 100644 --- a/scripts/create-analyzer-json.ts +++ b/scripts/create-analyzer-json.ts @@ -812,12 +812,6 @@ function parametersToSpecialWeaponResult(params: any) { } } - // for Ultra Splashdown - if (params.BlastParamDokanWarp) { - result.SubSpecialSpecUpList = - params.BlastParamDokanWarp.SubSpecialSpecUpList; - } - const resultUnwrapped = unwrapSubSpecialSpecUpList(result); const specialDurationFrameKeyAlises = [ @@ -834,29 +828,17 @@ function parametersToSpecialWeaponResult(params: any) { } if (resultUnwrapped.SplashAroundPaintRadius) { - // Inkjet - if (params.BlastParam?.PaintRadius) { - const regularPaintRadius = params.BlastParam.PaintRadius; - - resultUnwrapped.PaintRadius = { - High: resultUnwrapped.SplashAroundPaintRadius.High + regularPaintRadius, - Mid: resultUnwrapped.SplashAroundPaintRadius.Mid + regularPaintRadius, - Low: resultUnwrapped.SplashAroundPaintRadius.Low + regularPaintRadius, - }; - // Reefslider - } else { - resultUnwrapped.PaintRadius = { - High: - resultUnwrapped.SplashAroundPaintRadius.High + - resultUnwrapped.PaintRadius.High, - Mid: - resultUnwrapped.SplashAroundPaintRadius.Mid + - resultUnwrapped.PaintRadius.Mid, - Low: - resultUnwrapped.SplashAroundPaintRadius.Low + - resultUnwrapped.PaintRadius.Low, - }; - } + resultUnwrapped.PaintRadius = { + High: + resultUnwrapped.SplashAroundPaintRadius.High + + resultUnwrapped.PaintRadius.High, + Mid: + resultUnwrapped.SplashAroundPaintRadius.Mid + + resultUnwrapped.PaintRadius.Mid, + Low: + resultUnwrapped.SplashAroundPaintRadius.Low + + resultUnwrapped.PaintRadius.Low, + }; resultUnwrapped.SplashAroundPaintRadius = undefined; } @@ -993,14 +975,14 @@ function unwrapSubSpecialSpecUpList(result: any) { if (Array.isArray(value)) { return value.map((entry: any) => { if ( - !entry.SpecUpType || - (entry.Value.Low === entry.Value.Mid && - entry.Value.Mid === entry.Value.High) + entry.Value.Low === entry.Value.Mid && + entry.Value.Mid === entry.Value.High ) { return []; } - return [entry.SpecUpType, entry.Value]; + // datamine omits SpecUpType when it's the enum default + return [entry.SpecUpType ?? "PaintRadius", entry.Value]; }); }