From 4bcd3bffdc844e346abd9950db284e682383909d Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Tr=C3=A8sAbhi?= <43380238+tresabhi@users.noreply.github.com>
Date: Sat, 29 Jun 2024 10:37:40 -0500
Subject: [PATCH] feat: max dispersion
---
src/app/tools/compare/page.tsx | 6 ++++++
.../tankopedia/[id]/components/Characteristics/index.tsx | 9 +++++++++
src/core/blitzkit/tankCharacteristics.ts | 9 +++++++++
3 files changed, 24 insertions(+)
diff --git a/src/app/tools/compare/page.tsx b/src/app/tools/compare/page.tsx
index 30d002922..6ce7ed92d 100644
--- a/src/app/tools/compare/page.tsx
+++ b/src/app/tools/compare/page.tsx
@@ -1299,6 +1299,12 @@ export default function Page() {
deltaType="lowerIsBetter"
decimals={3}
/>
+
diff --git a/src/app/tools/tankopedia/[id]/components/Characteristics/index.tsx b/src/app/tools/tankopedia/[id]/components/Characteristics/index.tsx
index deca9b5df..48fe99abf 100644
--- a/src/app/tools/tankopedia/[id]/components/Characteristics/index.tsx
+++ b/src/app/tools/tankopedia/[id]/components/Characteristics/index.tsx
@@ -388,6 +388,15 @@ export function Characteristics() {
>
{stats.dispersionGunDamaged}
+
+ {stats.maxDispersion}
+
{stats.gunDepression}
diff --git a/src/core/blitzkit/tankCharacteristics.ts b/src/core/blitzkit/tankCharacteristics.ts
index dfb22cd42..e8e100213 100644
--- a/src/core/blitzkit/tankCharacteristics.ts
+++ b/src/core/blitzkit/tankCharacteristics.ts
@@ -364,6 +364,14 @@ export function tankCharacteristics(
const shellVelocity = shell.speed * shellVelocityCoefficient;
const aimTime = gun.aimTime * aimTimeCoefficient;
const dispersion = gun.dispersion.base * dispersionStillCoefficient;
+ const maxDispersion =
+ gun.dispersion.base *
+ Math.sqrt(
+ ((gun.dispersion.traverse * turret.traverseSpeed) ** 2 +
+ (track.dispersion.traverse * track.traverseSpeed) ** 2 +
+ track.dispersion.move * tank.speed.forwards) **
+ 2,
+ );
const dispersionMoving = track.dispersion.move * dispersionMovingCoefficient;
const dispersionHullTraversing =
track.dispersion.traverse * dispersionHullTraverseCoefficient;
@@ -474,6 +482,7 @@ export function tankCharacteristics(
shellVelocity,
aimTime,
dispersion,
+ maxDispersion,
dispersionMoving,
dispersionHullTraversing,
dispersionTurretTraversing,