Celivalnya — Gunnery Rangeprototype 0.1 · By VasiliyM · tankcoach.net · RU

Celivalnya — Gunnery Range

By VasiliyM · tankcoach.net

Shoot at the tank. Mouse — aim, LMB — fire, wheel — arcade ↔ sniper ×4/×8/×16, Shift — toggle arcade/sniper, Esc — release the mouse. Mouse sensitivity is set separately for arcade and sniper (at the top).

The main thing you can test on yourself here: the shell does not fly from your reticle, but from the server’s. The server receives your aim 10 times per second and lags 70–85 ms behind — at any ping. Fire right after a fast turn (a “snap shot”) — and the server fires where your reticle was a moment ago.

The reticle colour tells you what is under its centre: green — will penetrate, red — won’t penetrate, white — off the tank. In “Training” mode you also see the server reticle (pink dashes — as in the game, about 75 ms late plus half your ping; the cross — where the shell will actually go). A round is 10 shots, then the breakdown.

Shot 0/10Score 0Penetrations 0Peeks 0/0

Last shot

No shots yet.
penetrablenot penetrable weak spot

Round

Honest about the model: what is measured, what is simplified
  • measured The server receives your aim on a tick of about 10 Hz; the server reticle lags 70–85 ms and hardly depends on ping (5851 shots).
  • measured Shot confirmation arrives after ping + about 87 ms (310 shots).
  • measured Snap shots: when turning up to 5°/s — 65 % hits, at 30+ °/s — 17 % (108 shots). The threshold is 12–13°/s.
  • measured Shell distribution inside the circle — by radius, concentrated towards the centre: half the shells land within 0.37 R. The current WG and Lesta versions are identical (125 million shots, statistics by the mod’s author).
  • model Ping cancels out: the shot and the aim travel over the same channel, and the server takes the aim sent no later than the press − 25 ms. The average matches the measurements.
  • simplified The three guns' parameters are provisional: stabilized — bigger circle, aims in fast, barely blooms when turning; regular — smaller circle, takes longer to aim in; unstabilized — blooms a lot when turning, fully aimed it is the most accurate. To be refined from vehicle data.
  • training The reload is short (2 s by default) on purpose: it makes you want to fire before the gun is aimed in — and the misses show it.
  • simplified Circle growth: ×√(1 + (k·aiming speed)²). The coefficients are not matched against the game.
  • simplified The server circle = the client circle at the moment of the last send that got through.
  • provisional The mouse sensitivity scale is our own (1.0 = 0.06° per mouse count in arcade) and is not matched against the game setting. For comparison, degrees per centimetre and centimetres per full turn are shown.
  • simplified Moving target: the speeds are provisional (heavy 30, medium 50, wheeled LT 75 km/h); the shell flies straight at a constant speed (1000 / 900 / 800 m/s for the three guns); the enemy tank’s position on the client is treated as exact (measured position desync is tens of centimetres).
  • simplified “Angled peek”: the tank is a box model with its own dimensions and thicknesses (LFP 100 mm, UFP 150, side 60, turret cheeks 170, mantlet 300, turret side 90); every gun penetrates 200 mm, ricochet above 70°; the track is spaced armour; the cupola is always penetrated.
  • measured The reticle distance jumps when the target goes unspotted: the ray goes into the ground behind it or to the maximum distance (in the logs 157→720, 399→720, 442→720 m); in 34 of 42 blind shots the jump was only 10–60 m — the ground right behind the tank.
  • model Ballistics: the gun is elevated for the reticle distance by g·L/(2v²); at the target distance the shell is above the line of sight by g·D·(L−D)/(2v²) (over 42 blind shots the sign and magnitude matched, the sample is small). Gravity is 9.81 for all three guns (in the game different shells have 6–9.81). When the distance jumps, the gun moves vertically in one step (within a tick of about 0.1 s) by g·ΔL/(2v²) — the circle does not bloom and the aiming is not reset (netprobe 6.28 measurement, 01.10: 4 clean jumps up to 140 m, 3 spot/unspot events at the reticle). Jumps to 720 m on a stationary vehicle and artillery are not checked yet.
  • measured Your own (client) reticle in the game is recalculated on a tick of about 10 times per second, not every frame (netprobe 6.28: intervals of 100–129 ms in 97 % of updates). The trainer does the same; how the game interface smooths movement between ticks is not measured, hence three options. The default is “every frame”: only it gives the snap-shot penalty seen in the measurements (≈43 % hits on a snap shot at about 10°/s); if the visible reticle lagged by a tick, it would coincide with the server’s and snap shots would cost almost nothing, while the data says they do (65 % → 17 %).
  • model Lead circle (“Training”, “Moving target”): target speed × (shell flight + 75 ms of server lag), lowered for the overshoot along the arc (a reticle on empty space looks at the ground far away or at the horizon). Dispersion doesn’t go anywhere — the circle gives the centre of the aiming circle, not a guaranteed hit.
  • model “Blind”, “Training”: the blue “aim here” circle shows where to put the reticle so the shell lands in the middle of the penetrable zone (hull side 1.35 m / LFP 0.68 m) of the invisible tank. You need to aim lower by less than the full overshoot: the lower the reticle, the closer the ray hits the ground and the less the gun elevates — the point is found exactly.
  • simplified Armour is binary: a zone either penetrates or not. Ballistics are straight, no shell drop.
  • simplified “Lag spike / packet loss”: your aim doesn’t get through during that time, the shot is processed when the connection is back.