Scaling and Stat Conventions; Formulas


#1

Units of Measurement

  • The game runs in real time (i.e. 1 game second = 1 real life second).
  • Model scale is 8 elmos per meter.
  • Unit speed scale is the same as model scale. 1 elmo / frame (i.e. the value in the unitdef) = 3.75 m/s = 13.5 kph = 7.29 kt = 8.39 mph = 12.3 fps.
  • Weapon range scale is roughly 1 elmo per meter, but this is very flexible, since a strict translation would not be good for gameplay.
  • Weapon velocity scale is 2 elmos/s per m/s, a compromise between model scale and weapon range scale.

Damages:

  • Kinetic (AP/APC/APCBC/APCR/APDS shells): projectile weight in kg * 400 + 200 Sqrt(projectile weight in kg) * 1000.
  • Shaped charge (HEAT): explosive weight in kg * 4000
  • Explosive (small AoE): (chemical + kinetic energy) / 2.5 kJ
  • Explosive (large AoE): chemical energy / 2.5 kJ
  • Figure 5 kJ chemical energy per gram of explosive, or 2000 damage per kg.
  • Infantry do 2x damage relative to these conventions? (needed to make infantry AT not fail, but would be strange for smallarms)

Hit Points:

  • Vehicle: (3.5^log10(vehicle weight in kg)) * 50

(Note: I am not tied to these particular conventions, though I would like conventions of some kind.)

Armor Penetration
Damage modifier = 1 / (1 + exp((armor - penetration) / ARMOR_SCALE), where armor and penetration are in mm. Currently ARMOR_SCALE is 20.
Explosive weapons get effective penetration equal to sqrt(damage) * 2.2 mm.

Cost Estimation
AFVs:
attack capability = exp(penetration / (2 * ARMOR_SCALE)) * damage / reload + anti-infantry value
defense capability = exp(armor / (2 * ARMOR_SCALE)) * hp
estimated cost = sqrt(attack * defense) * scale factor


#2

While adding gunners to my ships, I had to scale them (gunners) by 0.75, only then did they fit. Gunners were taken from existing models, they should be in the same scale as all other infantry.

This means that either inf scale is a bit too big compared to vehicles or scale of my models is a bit too small (should be scaled by 1/0.75 = 1.33). At least those of them not textured by Spiked, I’m not sure if he changed the scale or not.