From ff7716ce6cab030b9b1e6751b3a5bfb5f7f8cc12 Mon Sep 17 00:00:00 2001 From: tresabhi <43380238+tresabhi@users.noreply.github.com> Date: Wed, 3 Jun 2026 13:37:27 -0500 Subject: [PATCH] some more stats --- packages/i18n/strings/en.json | 2 + .../src/tankopedia/characteristics.ts | 43 +++++++++++++------ .../src/tankopedia/characteristicsOrder.tsx | 6 +-- 3 files changed, 35 insertions(+), 16 deletions(-) diff --git a/packages/i18n/strings/en.json b/packages/i18n/strings/en.json index d1471e5fb..40a7ed1f1 100644 --- a/packages/i18n/strings/en.json +++ b/packages/i18n/strings/en.json @@ -82,6 +82,8 @@ }, "units": { + "hp_s": "{value}hp/s", + "kN": "{value}kN", "s": "{value}s", "hp": "{value}hp", "mm": "{value}mm", diff --git a/packages/website-ue/src/tankopedia/characteristics.ts b/packages/website-ue/src/tankopedia/characteristics.ts index ee4f1696c..8fc25bd62 100644 --- a/packages/website-ue/src/tankopedia/characteristics.ts +++ b/packages/website-ue/src/tankopedia/characteristics.ts @@ -322,8 +322,11 @@ export const characteristics = { ); }, - hull_traverse_speed() { - return -Infinity; + hull_traverse_speed({ attribute }) { + const speed = attribute( + TankAttributeChange_AttributeName.ATTRIBUTE_NAME_HULL_ROTATION_SPEED, + ); + return speed * (180 / Math.PI); }, health({ attribute }) { @@ -438,32 +441,46 @@ export const characteristics = { return -Infinity; }, - brake_force() { - return -Infinity; + brake_force({ attribute }) { + const brakeForce = attribute( + TankAttributeChange_AttributeName.ATTRIBUTE_NAME_BRAKE_FORCE, + ); + + return brakeForce / 1000; }, - gun_traverse_speed() { - return -Infinity; + gun_traverse_speed({ attribute }) { + const speed = attribute( + TankAttributeChange_AttributeName.ATTRIBUTE_NAME_GUN_ROTATION_SPEED, + ); + return speed; }, - fire_rate() { - return -Infinity; + fire_rate({ attribute }) { + return attribute( + TankAttributeChange_AttributeName.ATTRIBUTE_NAME_HEALTH_BURN_PER_SEC, + ); }, - ramming_resistance() { - return -Infinity; + ramming_resistance({ attributeSafe }) { + const resistance = + attributeSafe( + TankAttributeChange_AttributeName.ATTRIBUTE_NAME_RAMMING_DAMAGE_RESISTANCE, + ) ?? 0; + + return resistance * 100; }, width() { return -Infinity; }, - penetration_loss_after_ricochet({ shell }) { - const loss = shell( + penetration_loss_after_ricochet({ shellSafe }) { + const loss = shellSafe( ShellUpgradeSingleChange_AttributeName.ATTRIBUTE_NAME_PIERCING_POWER_LOSS_AFTER_HIT, ); - return loss; + return loss ?? 0; }, penetration_loss_by_distance({ attributeSafe }) { diff --git a/packages/website-ue/src/tankopedia/characteristicsOrder.tsx b/packages/website-ue/src/tankopedia/characteristicsOrder.tsx index 0073dbdbd..1ea7f7bdc 100644 --- a/packages/website-ue/src/tankopedia/characteristicsOrder.tsx +++ b/packages/website-ue/src/tankopedia/characteristicsOrder.tsx @@ -187,12 +187,12 @@ export const characteristicsOrder: CharacteristicsGroup[] = [ { name: "speed_forward", units: "km_h" }, { name: "speed_backward", units: "km_h" }, - { name: "engine_power", units: "bhp" }, - { name: "brake_force", units: "N" }, { name: "weight", decimals: 1, units: "t" }, + { name: "engine_power", units: "bhp" }, { name: "power_to_weight", decimals: 1, units: "bhp_t" }, + { name: "brake_force", decimals: 1, units: "kN" }, - { name: "terrain_coefficient" }, + { name: "terrain_coefficient", decimals: 2 }, { name: "hull_traverse_speed", units: "deg_s" }, { name: "turret_traverse_speed", units: "deg_s" },