Loading page
LOADING FAN-MADE COMPANION SIM TELEMETRY
On Grid is deterministic: the same seed plus the same calls always produces the same battle, down to the last point of damage. Nothing below is hidden tuning — these are the formulas the engine actually runs, and every constant on this page is read out of the engine at build time rather than transcribed, so the page cannot quietly fall out of date. Each battle's kill report carries a MATH view that shows these same numbers for every volley that was fired.
Mechanics are simplified but spirit-aligned. Exact where you can look it up — hull stats, resists, and module fittings come straight from the EVE SDE. Right ordering where you can't: tracking, application, and speed all behave the way they do in EVE even though the sim resolves them in far fewer terms. Range is three stances rather than meters, and transversal and falloff curves are dropped outright — a simulator cares about them; a doctrine practice ground does not.
hit = clamp( tracking × min(1, targetSig / refSig) × (refVel / targetSpeed), 5%, 95% )
Three terms, in the ordering that matters: how well the gun tracks, how big the target paints, how fast it moves. Big guns lose to small fast hulls, always. Every input is the value as flown — a webbed target is slower, a painted target is bigger, and a dampened attacker tracks worse, because all of them are modifiers through the one pipeline (§6). Nothing is ever a certainty in either direction: the band is clamped to 5%–95%.
The speed term has no ceiling of its own, and that cuts both ways: a target slower than the gun's reference speed is easier to hit than one exactly at it, all the way up to the 95% rail. Slowing down is never free — which is what gives the aggressive stance a real price and makes a web worth firing at something that was already sluggish.
roll > 0.98 → wrecking, 3× damage · otherwise damage × (0.5 + roll), i.e. 0.5×–1.5×
A landed turret volley is not a fixed number. It rolls a quality multiplier averaging about 1×, with a 2% chance of a wrecking shot at 3×. Missiles skip this roll entirely — they are exact, and pay for it in application instead.
application = clamp( min(1, targetSig / refSig) × √(refVel / targetSpeed) × guidance, 20%, 100% )
Missiles always land. What varies is how much of the volley applies — a heavy missile that catches a frigate delivers a fraction of its listed damage. Speed still defends, but softer than against turrets (the square root is the whole difference): missiles chase. The floor is 20% — even a perfect defensive profile eats something.
Guidance is uncapped for the same reason the turret speed term is: a guidance bonus offsets a speed or signature penalty instead of being thrown away on a volley that already applies in full. The 100% ceiling is the outer clamp, not the term.
raw = base × damageMult × qualityRoll × overheat × application × overtime
layerDamage = raw × layerResonance[damageType]
Damage is dealt per type — a Scourge Heavy Missile is kinetic, a Fusion round is explosive with a kinetic tail — and each type meets the target's resonance for the layer it is currently chewing through: shield, then armor, then hull. Resonances are exact SDE values, so the damage-type holes you know from EVE are the holes here. When a volley breaks through a layer, the remainder is converted back out of that layer's resonance before meeting the next one, so overkill is never double-taxed.
| Module | Touches | Magnitude | Notes |
|---|---|---|---|
| Stasis webifier | velocity | 0.45× | Slower target: easier to track, worse at dodging missiles |
| Target painter | signature | 1.5×–1.55× | Bigger target: both weapon systems apply harder |
| Sensor dampener | tracking + sensor strength | 0.7×–0.75× / 0.5× | A damped ship is measurably easier to jam — the one real fleet synergy |
| Tracking disruptor | tracking | 0.55× | Turret hulls only — an illegal action against a missile boat, not a weak one |
| ECM | the target's turn | strength 6–10 | chance = clamp(strength / sensorStrength, 10%, 85%); a jam costs one turn |
| Energy neutralizer | capacitor | 120–200 GJ | Deterministic — takes what is there and no more |
Every timed effect lasts 3 rounds, which is what keeps a support turn worth taking: one turn of EWAR buys two turns of shooting. Cap warfare is honestly weak against Minmatar — autocannons and charge-fed boosters cost no capacitor, so there is nothing to deny.
A module stops when its hull does. Kill the ship projecting a web, painter, dampener, or tracking disruptor and the effect comes off the grid immediately, with whatever duration it had left. ECM is the exception, and it is not an inconsistency: a jam is a lock break that already happened, so a jammed ship sits out its turns even if the jammer is a wreck. Killing support early is the counter to support.
value = (base + Σ adds) × Π unpenalized × Π (1 + (mult − 1) × exp(−(i / 2.67)²))
Every bonus in the game — skill, module, hull, stance, EWAR — is an attribute modifier resolved in one place. Flat adds land first and are never penalized (a shield extender adds real SDE hitpoints). Penalized multipliers are sorted strongest-first and diluted by EVE's stacking curve:
| Nth strongest | 1 | 2 | 3 | 4 | 5 |
|---|---|---|---|---|---|
| Effectiveness | 100% | 87% | 57% | 28% | 11% |
Stances and hull bonuses are exempt, exactly as in EVE. Piling on a fourth webifier is close to wasted; a fourth kind of advantage is not.
Range is three stances rather than meters. Switching is free and happens alongside whatever else the ship does that turn.
| Stance | Tracking | Velocity |
|---|---|---|
| AGGRESSIVE | 1.25× | 0.6× |
| BALANCED | — | — |
| EVASIVE | 0.8× | 1.3× |
Velocity also sets initiative: the faster ship acts first, ties broken by the smaller signature. Burning evasive to dodge a volley costs you the tracking to land your own.
Overheat is an attack variant, not a turn spent buffing: fire now at 1.5× damage for +40 heat. Above 60 heat the option locks out, and heat sheds 15 per round. Spending a whole turn to improve the next volley would always lose to simply firing twice, so the sim does not offer that trade.
from round 18: damage × (1 + 0.2 × (round − 18)) · hard stop at round 30
Overtime is a published sim rule, not a hidden nudge. Two tanky fleets that would grind forever instead converge, because from round 18 every volley from both sides hits 20% harder per round. If round 30 arrives anyway, the fleet holding the larger fraction of its total hitpoints wins on points.
6 skills, 5 levels each, EVE-sized bonuses that run through the same pipeline as everything else and are stacking-exempt. Skills gate; they do not dominate — outcomes are decided by fit and piloting, with training as the edge. Hostile doctrine fleets fly at baseline skills, deliberately.
| Skill | Effect |
|---|---|
| Weapon Upgrades | +2% damage per level |
| Target Analysis | +2% application per level |
| Navigation | +2% velocity per level |
| Evasive Maneuvering | -2% signature per level |
| Capacitor Systems | +2% capacitor per level |
| Repair Systems | +2% repair amount per level |
The hostile fleet is not a fixed wall. It scales to what you bring, on two independent dials, and both are auditable from the fit snapshot on your kill report.
fitScore = Σ tierWeight(module), where T1 0 · Meta 1 · T2 2 · Faction 3
level = number of thresholds [1, 5, 9, 13] the score has passed
Racks.Every fitted module scores its tier weight; the fleet total maps to a calibration level, and the doctrine flies that level's racks — STANDARD RACKS → FIELD-REFIT RACKS → VETERAN RACKS → HARDENED RACKS → ELITE RACKS. The rule for what it actually fits is player-identical: the doctrine flies the best legal rack it can afford, walking its last module down to a cheaper one in the same family and dropping it when nothing cheaper exists. A level never fields a weaker rack than the level below it.
Hulls. Navy and tech-two hulls are a tier no stack of faction modules answers, so they are a separate dial: bring a class above tech one and the doctrine escalates that whole class in kind. An upgraded hull also floors the rack level (T1 → L0, Navy → L1, T2 → L1).
Calibration reads your fit, never your earned-item count. A pilot who never opens the fitting bay always faces standard issue — progress is never punished for existing.
A battle is a seed plus an ordered list of calls. Replaying them reproduces the fight exactly — the random number generator's state is part of the battle state, so every roll is reproducible rather than merely repeatable. Daily fights are resolved server-side by replaying your recorded calls through this same engine; the outcome stored is the one the server computed, never one the client reported. Engine version ongrid-8 — replays are rejected across engine changes rather than silently reinterpreted.