(Revised information about spray patterns and armor/components in order to more accurately describe the actual game mechanics) Tag: Visual edit |
(Added percentage of damage absorbed against explosives, as per [[File:Anti-TankExplosionDamage.png) Tag: Visual edit |
||
Line 37: | Line 37: | ||
Vehicle armor degrades over time when receiving damage, represented by an ''''armorHP'''<nowiki/>' value which varies across vehicles as per an '''armorHPMul''' value. |
Vehicle armor degrades over time when receiving damage, represented by an ''''armorHP'''<nowiki/>' value which varies across vehicles as per an '''armorHPMul''' value. |
||
− | When above a certain armorHP value (as dictated by the variable '''minArmorPercent'''), armor will absorb |
+ | When above a certain armorHP value (as dictated by the variable '''minArmorPercent'''), armor will absorb 25% damage against direct-type attacks, 75% damage against explosive-type attacks or 100% against a non-penetrating attack, dealing that absorbed damage to its armorHP in the process. As armor is worn down, the effective thickness decreases proportional to armorHP, so if armorHP is at 80% of its maximum value, the armor thickness will be at 80%. As a result, theoretically even a [[Weapons#Light_Machine_Guns|Light Machine Gun]] is able to penetrate and destroy a tank given enough time and ammunition. |
Revision as of 19:58, 25 November 2021
Heroes & Generals has many mechanics not immediately obvious to the new player and hidden stats which influence weapon handling and vehicle combat.
Handheld Weapons
Precision and Accuracy
Handheld weapons handle very differently depending on numerous factors both specific to the weapon and due to changes in-battle.
Before firing
All weapons have an idle sway pattern - represented by movement of the weapon model - which affects where the weapon is pointed at any given time. Sway when standing, crouched and prone is determined on a per-weapon basis and are affected by weapon mods that change 'precision'. In-battle, it is also affected by fatigue and movement (both physical and camera-wise), as well as temporarily from firing weapons. The variables used in the weapon configuration files are as follows:
- swaystandmode - the sway when standing
- swaycrouchmode - the sway when crouched
- swaypronemode - the sway while prone
- swayprecisionmodifier - multiplier for above values when aiming
- swayspeed - the amount of additional sway from moving
- swayfatigue - the maxmum amount of additional sway from fatigue (which is recovered faster with First Blood and Marathon Man)
When firing
The bullet fired may deviate from the point of aim by a certain amount, measured in degrees and often referred to as just 'conefire'. This is only affected by ammunition upgrades that change 'precision'.
Weapons experience recoil, which upon firing immediately shifts your soldier's view (camera recoil). This is dictated by the values 'camerarecoilup and 'camerarecoilright' and is slightly randomised, the maximum "variance on recoil vector (circle radius after resulting vector is drawn)"[1] being dictated by 'camerarecoilvariance'. Camera recoil is affected by weapon upgrades which change 'stability'.
During Continuous Fire
Weapons also experience horizontal recoil, dictated by a recoil pattern unique to every weapon.[2] This recoil pattern undergoes 'cone expansion' under sustained fully-automatic fire or rapid semi-automatic fire. Cone expansion is affected by ammo upgrades and is decreased by Tight Grip when aiming.
Cone expansion also applies to a spray pattern, affecting where consecutive shots will land during continuous fire. Cone expansion is counteracted by cone contraction, which applies at any time even when firing. The base shape of this spray pattern is identical to the sway pattern, but shot placement is randomised and expansion/contraction of the pattern is independent of idle sway. The variables used in the weapon configuration files are as follows:
- aimpenaltyperbullet - cone expansion applied after every shot
- aimpenaltyprecisionmodifier - multiplier of aimpenaltyperbullet when aiming
- aimpenaltycontractionpersec - the rate of cone contraction (increased by Dead-Eye)
- aimpenaltyturn - cone expansion from turning (reduced by Quickdraw)
Armor and Components
Vehicle armor degrades over time when receiving damage, represented by an 'armorHP' value which varies across vehicles as per an armorHPMul value.
When above a certain armorHP value (as dictated by the variable minArmorPercent), armor will absorb 25% damage against direct-type attacks, 75% damage against explosive-type attacks or 100% against a non-penetrating attack, dealing that absorbed damage to its armorHP in the process. As armor is worn down, the effective thickness decreases proportional to armorHP, so if armorHP is at 80% of its maximum value, the armor thickness will be at 80%. As a result, theoretically even a Light Machine Gun is able to penetrate and destroy a tank given enough time and ammunition.
Components deal damage in two ways: the first is when destroyed, where it deals damage equivalent to its starting internalHP value, though if multiple components of the same type are present less damage will be applied per component.[3] The second means is through excess damage from destroying the component, which is multiplied by totalDamageMultiplier and transferred to the next component (always BaseStructure or Fuselage, which in turn transfers 50% damage to the main vehicle HP). The variables used in the configuration files for components are displayed in the table below:
Name | armorHP | internalHP | canPenetrate | secondaryCollision | secondaryCollisionSkip | minArmorPercent | totalDamageMultiplier | transferToSecondary |
---|---|---|---|---|---|---|---|---|
Armor Front | 1000 | 0 | true | false | false | 0.1 | 0 | false |
Armor Rear | 1000 | 0 | true | false | false | 0.1 | 0 | false |
Armor Left | 1000 | 0 | true | false | false | 0.1 | 0 | false |
Armor Right | 1000 | 0 | true | false | false | 0.1 | 0 | false |
Armor Top | 1000 | 0 | true | false | false | 0.1 | 0 | false |
Armor Bottom | 1000 | 0 | true | false | false | 0.1 | 0 | false |
Armor Turret | 1000 | 0 | true | false | false | 0.1 | 0 | false |
Armor Mantlet | 1000 | 0 | true | false | false | 0.1 | 0 | false |
Armor Skirt Left | 500 | 0 | true | false | false | 0.1 | 0 | false |
Armor Skirt Right | 500 | 0 | true | false | false | 0.1 | 0 | false |
Armor Skirt Turret | 500 | 0 | true | false | false | 0.1 | 0 | false |
Armor Ungrouped | 1000 | 0 | true | false | false | 0.1 | 0 | false |
BaseStructure | 0 | 10000 | false | true | false | 0 | 0.5 | false |
Engine_Small | 40 | 150 | false | false | true | 0.02 | 2 | true |
Engine_Medium | 60 | 450 | false | false | true | 0.02 | 1 | true |
Engine_Large | 80 | 600 | false | false | true | 0.02 | 1 | true |
Transmission | 40 | 300 | false | false | true | 0.02 | 1 | true |
Track Left | 400 | 300 | true | false | false | 0.05 | 0.25 | false |
Track Right | 400 | 300 | true | false | false | 0.05 | 0.25 | false |
Wheel | 100 | 25 | true | false | false | 0.05 | 0.75 | false |
Gun Breech | 100 | 125 | false | false | true | 0.05 | 1 | true |
Gun Barrel | 200 | 300 | true | false | false | 0.05 | 0.5 | false |
Turret Ring | 600 | 150 | true | false | false | 0.1 | 0.1 | false |
Ammunition Small | 10 | true | false | true | 0 | 15 | true | |
Ammunition Medium | 10 | true | false | true | 0 | 15 | true | |
Ammunition Large | 10 | true | false | true | 0 | 15 | true | |
Fuel Small | 10 | 37 | true | false | true | 0 | 8 | true |
Fuel Medium | 10 | 50 | true | false | true | 0 | 8 | true |
Fuel Large | 10 | 75 | true | false | true | 0 | 8 | true |
Fuel External | 20 | 50 | true | false | false | 0 | 0.78 | false |
Wing Left | 10 | 150 | true | false | true | 0.02 | 0.46 | true |
Wing Right | 10 | 150 | true | false | true | 0.02 | 0.46 | true |
Elevator | 10 | 150 | true | false | true | 0.02 | 0.46 | true |
Rudder | 10 | 100 | true | false | true | 0.02 | 0.44 | true |
Plane Fuel | 10 | 50 | true | false | true | 0 | 3 | true |
Plane Engine | 10 | 150 | true | false | true | 0.05 | 1 | true |
Plane Engine Left | 10 | 150 | true | false | true | 0.05 | 1 | true |
Plane Engine Right | 10 | 150 | true | false | true | 0.05 | 1 | true |
Fuselage | 10 | 10000 | true | true | false | 0.02 | 0.5 | false |
Vehicle Handling
Each drivable surface in the game has a material type that determines how a vehicle handles when driving on it. The modifiers are as follows:
- onRoadPercent - the portion of the maximum 'onroad' speed of the vehicle that it can travel at when on the surface
- tractionMul - the portion of the maximum traction of the vehicle
- wobbliness
Name | onRoadPercent | tractionMul | wobbliness |
---|---|---|---|
Dirt | 0.46 | 0.8 | 1 |
LooseDirt | 0.32 | 0.7 | 0.9 |
Forest | 0.35 | 0.9 | 1 |
Swamp | 0 | 0.6 | 0.3 |
DirtRoad | 0.9 | 1 | 0.1 |
AsphaltRoad | 1 | 1 | 0 |
Sand | 0.38 | 0.6 | 0.5 |
Rock | 0.7 | 0.9 | 0.6 |
GrassField | 0.63 | 0.75 | 0.9 |
CornField | 0.32 | 0.85 | 1 |
Cobblestone | 0.95 | 0.9 | 0.2 |
- ↑ https://heroesandgenerals.com/forums/topic/90567-111-weapon-and-ammunition-configuration-values/?tab=comments#comment-1296980
- ↑ https://heroesandgenerals.com/2020/01/update-1-17-1-minor-release/
- ↑ https://heroesandgenerals.com/2019/02/changelog-1-13-2-new-fighter-planes/ "Lowered amount of damage tracks can transfer to the vehicle from 225 to 75 per track"